Ansible Community
      • Sharing URL Link copied
      • /edit
      • View mode
        • Edit mode
        • View mode
        • Book mode
        • Slide mode
        Edit mode View mode Book mode Slide mode
      • Customize slides
      • Note Permission
      • Read
        • Owners
        • Signed-in users
        • Everyone
        Owners Signed-in users Everyone
      • Write
        • Owners
        • Signed-in users
        • Everyone
        Owners Signed-in users Everyone
      • Engagement control Commenting, Suggest edit, Emoji Reply
    • Invite by email
      Invitee
    • Publish Note

      Share your work with the world Congratulations! 🎉 Your note is out in the world Publish Note

      Your note will be visible on your profile and discoverable by anyone.
      Your note is now live.
      This note is visible on your profile and discoverable online.
      Everyone on the web can find and read all notes of this public team.
      See published notes
      Unpublish note
      Please check the box to agree to the Community Guidelines.
      View profile
    • Commenting
      Permission
      Disabled Forbidden Owners Signed-in users Everyone
    • Enable
    • Permission
      • Forbidden
      • Owners
      • Signed-in users
      • Everyone
    • Suggest edit
      Permission
      Disabled Forbidden Owners Signed-in users Everyone
    • Enable
    • Permission
      • Forbidden
      • Owners
      • Signed-in users
    • Emoji Reply
    • Enable
    • Versions and GitHub Sync
    • Note settings
    • Engagement control
    • Transfer ownership
    • Delete this note
    • Insert from template
    • Import from
      • Dropbox
      • Google Drive
      • Gist
      • Clipboard
    • Export to
      • Dropbox
      • Google Drive
      • Gist
    • Download
      • Markdown
      • HTML
      • Raw HTML
Menu Note settings Versions and GitHub Sync Sharing URL Help
Menu
Options
Engagement control Transfer ownership Delete this note
Import from
Dropbox Google Drive Gist Clipboard
Export to
Dropbox Google Drive Gist
Download
Markdown HTML Raw HTML
Back
Sharing URL Link copied
/edit
View mode
  • Edit mode
  • View mode
  • Book mode
  • Slide mode
Edit mode View mode Book mode Slide mode
Customize slides
Note Permission
Read
Owners
  • Owners
  • Signed-in users
  • Everyone
Owners Signed-in users Everyone
Write
Owners
  • Owners
  • Signed-in users
  • Everyone
Owners Signed-in users Everyone
Engagement control Commenting, Suggest edit, Emoji Reply
  • Invite by email
    Invitee
  • Publish Note

    Share your work with the world Congratulations! 🎉 Your note is out in the world Publish Note

    Your note will be visible on your profile and discoverable by anyone.
    Your note is now live.
    This note is visible on your profile and discoverable online.
    Everyone on the web can find and read all notes of this public team.
    See published notes
    Unpublish note
    Please check the box to agree to the Community Guidelines.
    View profile
    Engagement control
    Commenting
    Permission
    Disabled Forbidden Owners Signed-in users Everyone
    Enable
    Permission
    • Forbidden
    • Owners
    • Signed-in users
    • Everyone
    Suggest edit
    Permission
    Disabled Forbidden Owners Signed-in users Everyone
    Enable
    Permission
    • Forbidden
    • Owners
    • Signed-in users
    Emoji Reply
    Enable
    Import from Dropbox Google Drive Gist Clipboard
       owned this note    owned this note      
    Published Linked with GitHub
    Subscribed
    • Any changes
      Be notified of any changes
    • Mention me
      Be notified of mention me
    • Unsubscribe
    Subscribe
    # Ansible Contributor Summit 2021.09 ###### tags: `contributor summit` ![](https://i.imgur.com/H4PC7MK.png) **Date:** Tuesday, September 28, 2021 and Friday, October 1, 2021 **Time:** 13:00 - 21:00 UTC (check your local time for [Tuesday](https://www.timeanddate.com/worldclock/fixedtime.html?msg=Ansible+Contributor+Summit+2021.09&iso=20210928T13&ah=8), [Friday](https://www.timeanddate.com/worldclock/fixedtime.html?msg=Ansible+Contributor+Summit+2021.09&iso=20211001T13&ah=8)) **Register:** please register on [Eventbrite](https://ansiblecs202109.eventbrite.com/?aff=hackmd) **Location:** We're using Matrix as the event platform. For specific rooms, please see details in the Agenda. **Matrix Chat (preferred):** [Ansible Social Room](https://matrix.to/#/#social:ansible.com), [Main Conference Room](https://matrix.to/#/#summit:ansible.com) and [Training Room](https://matrix.to/#/#workshops:ansible.com) **IRC:** [#ansible-social](https://web.libera.chat/#ansible-social), [#ansible-conf](https://web.libera.chat/#ansible-conf) and [#ansible-workshops](https://web.libera.chat/#ansible-workshops) on Libera Chat (same rooms, bridged) **YouTube live streams:** [Day 1](https://youtu.be/rk73ND-uP3A) and [Day 2](https://youtu.be/CbGMUiHpJs0) (embedded in the Main Conference Room if you're using the Element client for Matrix) **Code of Conduct:** [Ansible's CoC](https://docs.ansible.com/ansible/latest/community/code_of_conduct.html) ## What is Contributor Summit This is your opportunity to meet with many members of the Ansible Development team and fellow contributors to help shape the future of Ansible 1. Read the details and register on [Eventbrite](https://ansiblecs202109.eventbrite.com/?aff=hackmd) 2. Put your name further down this HackMD note under ["Attendees"](#Attendees) 3. Look at the "Potential Topics" section and add your thoughts, vote by doing +YOURNAME (i.e. +gundalow), previous years we did +1, though that's difficult to track ## How do I attend 1. RSVP via [Eventbrite](https://ansiblecs202109.eventbrite.com/?aff=hackmd) (you can select one or both days) 2. Get a [Matrix client](https://hackmd.io/@ansible-community/community-matrix-faq#What-client-should-I-use), join the [Ansible Social Room](https://matrix.to/#/#social:ansible.com) anytime before or during the event, say hi. 3. During the presentations, join the [Main Conference Room](https://matrix.to/#/#summit:ansible.com) to participate in the discussions. See [this matrix FAQ](https://hackmd.io/@ansible-community/community-matrix-faq) for details on how to use Matrix. # Agenda **Times in UTC** ## Day 2: * **13:00** (25 min) [Welcome and Announcements](#Welcome-and-Announcements) * **13:25** (25 min) [Network Team](#Network-Team) * **13:50** (25 min) [Security Team](#Security-Team) * **14:15** (15 min) break * **14:30** (25 min) [Recognizing Contributor (Badges)](#Recognizing-Contributor-Badges) * **14:55** (25 min) [Matrix](#Matrix) * **15:20** (25 min) [Increasing asynchronous discussion](#Increasing-asynchronous-discussion) * **15:45** (1 hr 15 min) lunch/social hours * **17:00** (25 min) [Developer Tooling](#Developer-Tooling) * **17:25** (25 min) [Making the Community more self sufficient](#Making-the-Community-more-self-sufficient-%E2%80%93-Brainstorming) * **17:50** (25 min) [Galaxy update](#Galaxy-update) * **18:15** (15 min) break * **18:30** (25 min) [Executor Team](#Executor-Team) * **18:55** (40 min) [Core Team](#Core-Team) * **19:35** (25 min) [Cloud Team](#Cloud-Team) * **20:00** (15 min) break * **20:15** (25 min) [If we could wave a magic wand and fix 5 most annoying things](#If-we-could-wave-a-magic-wand-and-fix-5-most-annoying-things-what-would-they-be) * **20:40** [Closing](#Closing) (Day 1 has been [Archived](#Archive) below) ## Day 2 (Friday, October 1, 2021) **Location**: [Main Conference Room](https://matrix.to/#/#summit:ansible.com) or [#ansible-conf](https://web.libera.chat/#ansible-conf) on Libera (same room, bridged) ### Welcome and Announcements * Summary of Tuesday (& links) * New maintainers * Steering Committee updates - Ompragash * Everybody to say, in chat * Name, GitHub * What they are hoping to get from today * What involvement (if any) they've had with the Ansible Community * Summary of sessions of the rest of the day (so you can start thinking about it) **Q&A** - *Feel free to add your questions here - Yourname* - ### Network Team **Chair**: Brad, Nilashish, Rohit, Gomathi **Location**: [Main Conference Room](https://matrix.to/#/#summit:ansible.com) or [#ansible-conf](https://web.libera.chat/#ansible-conf) on Libera (same room, bridged) * [Brad] Network [Roadmap](https://github.com/ansible/community/wiki/Network%3A2021-Till-Dec-Roadmap) * [Brad, Nilashish] What are resource modules, and how to build them * [Brad] [Introduction to Resource Modules](https://docs.ansible.com/ansible/latest/network/user_guide/network_resource_modules.html) * [Nilashish] [Developer Guide](https://github.com/ansible-network/cli_rm_builder/blob/main/docs/rm_dev_guide.md) * Proposals * [Nilashish] [Plugin to validate network configuration against a predefined rule set](https://github.com/ansible-collections/ansible.network/issues/15) * Add support for a config validation plugin that evaluates network configurations against a predefined set of rules and renders warnings/failures based on the outcome of the validation task. This is aimed to precede `*_config` tasks in a playbook and would allow us to catch potential errors in the candidate config before the succeeding tasks make configuration changes on the target. The rule set(s) are expected to be implemented by the users based on their exact needs and target platforms. * [Rohit] [Platform agnostic role `ansible.network.resource_manager` to manage network resources](https://github.com/ansible-collections/ansible.network/issues/13) * Provide a single platform agnostics entry point to manage all the resources supported for given network os. * This will be achieved by implementing a platform-agnostic role ansible.network.network_resource as part of ansible.network collection. * [Gomathi] [GRPC connection plugin to interact with network devices that support gRPC](https://github.com/ansible-collections/ansible.network/issues/9) * GRPC connection plugin to interact with network devices that support gRPC * [Nilashish] Dynamic argspec generation from docstring. * [Full list](https://github.com/ansible-collections/ansible.network/labels/proposal) **Q&A** - *Feel free to add your questions here - Yourname* - Would the [Plugin to validate network configuration against a predefined rule set](https://github.com/ansible-collections/ansible.network/issues/15) live under the specific os collection or ansible.network? Where would these rule sets/schemeas be maintianed? - Ryan Merolle - Likely in `ansible.utils`. Writing the individual rules would be upto the individual. - It would be great to build a library and community of writing rulesets. Thats something that should be looked at once the base functionality (DSL) is written. - ptoal: The thing I'm trying to understand about the resource manager is whether or not it's intuitive. Hard to tell from just that drive-by. :S [link](https://matrix.to/#/!slARxOhTdwmkrkTXzr:ansible.im/$qAqCa_94hMaNqyFauas7o8FUuUeFAjrjZhKe9wV-fu4) ### Security Team **Chair:** Sumit, Craig **Location**: [Main Conference Room](https://matrix.to/#/#summit:ansible.com) or [#ansible-conf](https://web.libera.chat/#ansible-conf) on Libera (same room, bridged) * [Craig] [Ansible security automation overview](https://www.ansible.com/blog/topic/security-automation) * [Craig] Ansible Security Automation in Firewall policy automation space. * [Sumit] How resource modules are utilised in the context of security automation. * [Sumit] [Ansible Security Roadmap](https://github.com/ansible/community/wiki/Security:2021-Till-Dec-Roadmap). **Q&A** - *Feel free to add your questions here - Yourname* - ### Recognizing Contributor (Badges) **Chair**: Ompragash **Location**: [Main Conference Room](https://matrix.to/#/#summit:ansible.com) or [#ansible-conf](https://web.libera.chat/#ansible-conf) on Libera (same room, bridged) - How can we recognise and reward contributors - [Openbadges.org](https://openbadges.org/) FIXME: Details of what we are wanting to achieve. **Q&A** - *Feel free to add your questions here - Yourname* - Can collection owners award ansible badges outside of github/ansible ? -Sean Sullivan - We can (and should) award badges to all types of contributions, such as Meetup organisers, attending a Contributors Summit - GitHub activity would be automatic - Curr ### Matrix **Chair**: Greg **Location**: [Main Conference Room](https://matrix.to/#/#summit:ansible.com) or [#ansible-conf](https://web.libera.chat/#ansible-conf) on Libera (same room, bridged) - Recap of the arguments and votes on Matrix so far - Where we are at with the rollout - What's up next with the Matrix plan **Q&A** - When will we bridge to discord? - Question: On Tuesday I think you mentioned that you can link your IRC to a new Matrix ID? Is that true, and if so, how? -jrglynn2 - question: is there a plan to include a jitsi app in these different matrix rooms? ( that would allow for impromptu meetings ) -elrey741 ### Increasing asynchronous discussion **Chair**: Greg, gundalow **Location**: [Main Conference Room](https://matrix.to/#/#summit:ansible.com) or [#ansible-conf](https://web.libera.chat/#ansible-conf) on Libera (same room, bridged) Discussion: [How to make meeting / discussion process more inclusive](https://github.com/ansible-community/community-topics/issues/38) *Feel free to leave feedback here* * Audit of places people talk about Ansible, general and specific **Q&A** - *Feel free to add your questions here - Yourname* - ### Developer Tooling **Chair**: Brad, Ganesh, Priyam, Rick, Sorin, Sviatoslav **Location**: [Main Conference Room](https://matrix.to/#/#summit:ansible.com) or [#ansible-conf](https://web.libera.chat/#ansible-conf) on Libera (same room, bridged) * [Brad] Ansible devtools team introduction and charter * [Ganesh] Ansible Devtools team roadmap (https://github.com/ansible/community/wiki/Devtools%3A2021-Till-Dec-Roadmap and https://github.com/orgs/ansible/projects/72) * [Brad/Rick] Introduction to ansible-navigator * [Sorin/Sviatoslav] Introduction to ansible-lint and molecule * [Ganesh] Ansible Language Server, extension overview and call for action * https://github.com/ansible/ansible-language-server * https://github.com/ansible/vscode-ansible/ * [Priyam] Setting up Ansible language server dev environment with vscode extension and demo **Q&A** - *Feel free to add your questions here - Yourname* - Is there a list of which IDE you have implemented, or tracking issues for ones you haven't? - gundalow ### Making the Community more self sufficient -- Brainstorming **Chair**: abadger **Location**: [Main Conference Room](https://matrix.to/#/#summit:ansible.com) or [#ansible-conf](https://web.libera.chat/#ansible-conf) on Libera (same room, bridged) This is a session to collect ideas for making the community less dependent on Red Hat. We'll record ideas and write down actionable items. * * Easier to make a collection (ompragash) * `ansible-galaxy collection init example_ns.example_collection --type community` * Pull Request [Added Community Collection Template as a collection-type to create new collections locally](https://github.com/ansible/ansible/pull/74901) * Can we make this flexible (by taking a URL to template) * Can we use cookiecutter to do the templating? (Ask the core team... it would add another dependency to ansible-core so it might be a nonstarter) * ssbarnea says that if we only need deps that we already have (jinja2), then adding another dep isn't useful. * sivel says that cookiecutter as a dep was already rejected for the extra dep. * Improving Communication (andersson007) * Decision workflow 1. [community-topics repository](https://github.com/ansible-community/community-topics/issues) 2. [Changes impacting Contributors issue](https://github.com/ansible-collections/overview/issues/45) 3. [Bullhorn](https://github.com/ansible/community/wiki/News#the-bullhorn) 4. Reddit & Twitter * Would like to have these sources of information listed in READMEs * Would like to have collection owners and other projects use these resources for distributing information to contributors. * How do we get more people to subscribe to The Bullhorn and Changes impacting Community * How do we increase the usefulness of these * Should [Changes impacting Contributors issue](https://github.com/ansible-collections/overview/issues/45) be a repo, rather than an issue * Pinboards * What are they. A pinboard it's just a **pinned** GitHub issue labeled as "pinboard" for general announcements and quick random questions. The main goal of the issue is to notify repository subscribers. * What should they link to (we should have links to the following also in every README) * [Bullhorn](https://github.com/ansible/community/wiki/News#the-bullhorn) * [Changes impacting Contributors issue](https://github.com/ansible-collections/overview/issues/45) * [community-topics repository](https://github.com/ansible-community/community-topics/issues) * [Ansible communication guide](https://docs.ansible.com/ansible/latest/community/communication.html) * [Contributor summit wiki page](https://github.com/ansible/community/wiki/Contributor-Summit) * READMEs, importance: they should (among other things): * Welcome newcomers * Contain links to the things mentioned above (Bullhorn, Changes impacting, community-topics, Ansible communication guide, Contributor summit wiki page) * Contain links to dev guides, quick-start guides, manuals, instruqt scenarios, maintainer guidelines, contributor path, etc. * Describe how a project is governed, how to reach out to maintainers * [Example README](https://github.com/ansible-collections/community.mysql) * Getting community involved in creating the packages (dericcrago/abadger1999) * ansible package * PPAs * Delegating permissions and privileges (dmsimard) * GitHub repository settings (description, labels, environments, secrets) * [GitHub ACLs](https://docs.github.com/en/organizations/managing-access-to-your-organizations-repositories/repository-permission-levels-for-an-organization) As a contributor, you can do but other things need the repo * Content Team uses Zuul for GitOps * Example: Zuul has token to do work on the repo. When a user pushes a tag to the repo, zuul sees that event and performs additional actions on behalf of the user using its token. * Some other projects do this programatically (so there is a program which is a proxy for some actions) * [GitHub settings App](https://github.com/apps/settings) * What use cases * repo description * repo topics * github environments * "I also can't see some of those settings, even in a read-only way (like environments)," * github secrets * read access to security tab of repo (Dependabot alerts etc.) * Anything else ? * **Q&A** - *Feel free to add your questions here - Yourname* - ### Galaxy update **Chair**: Andrew Crosby (Ansible Galaxy & Automation Hub) **Location**: [Main Conference Room](https://matrix.to/#/#summit:ansible.com) or [#ansible-conf](https://web.libera.chat/#ansible-conf) on Libera (same room, bridged) * Update on Survey * Update on building & publishing roles and collections * galaxy-importer changes * new log messages on imports **Q&A** - *Feel free to add your questions here - Yourname* - felix: hmm, where do I find this 'browse code of imported roles' feature in (community) galaxy? I've never noticed it, and can't find it right now [[link]](https://matrix.to/#/!slARxOhTdwmkrkTXzr:ansible.im/$2YWiDw9QTNUVXKezillesCp-KQPvvws5kPe3QtaUAOM) - felix: at least for me, on a role page I only see a link to the repo itself, not links for specific versions to tags on GH. or maybe I'm misunderstanding something? ### Executor Team **Chair**: eqrx **Location**: [Main Conference Room](https://matrix.to/#/#summit:ansible.com) or [#ansible-conf](https://web.libera.chat/#ansible-conf) on Libera (same room, bridged) * What is receptor and how to use it for inter-bear communication ʕ•ᴥ•ʔ Receptor is an overlay network intended to ease the distribution of work across a large and dispersed collection of workers. Receptor nodes establish peer-to-peer connections with each other via existing networks. Once connected, the Receptor mesh provides datagram (UDP-like) and stream (TCP-like) capabilities to applications, as well as robust unit-of-work handling with resiliency against transient network failures. In this talk I want to give an overview what problems this project can solve and how it does that. See https://github.com/ansible/receptor for code and issues. Help welcome :) **Q&A** - *Feel free to add your questions here - Yourname* - ### Core Team **Chair**: nitzmahone **Location**: [Main Conference Room](https://matrix.to/#/#summit:ansible.com) or [#ansible-conf](https://web.libera.chat/#ansible-conf) on Libera (same room, bridged) * Data Tagging - Discussion and demo of extensible mechanism for tagging data throughout Ansible Core. Tracks data provenance, allows deprecation warnings on access (eg, deprecated module return values, facts), declarative tagging/masking of sensitive data, better error messages, and more. (nitzmahone) * Split Controller/Target implementation in ansible-test - discussion and demo of what's coming in 2.13 to enable true distributed/remote testing of Ansible and modules, discrete controller/module Python versions, etc. Draft PR at https://github.com/ansible/ansible/pull/75605 (mattclay/nitzmahone) * Drinking from the `devel` firehose (or not)? (nitzmahone) * Pie in the sky - Discussion around some of the in flight discussions being held around controller Python version support, Jinja Native, and extending the lifecycle of versions. (sivel) **Q&A** - *Feel free to add your questions here - Yourname* - Will this help with `no_log` - utoddl (nitz): yes, that's the hope - maybe some `!secret` tag in yaml which can mark something as secret, so that it won't end up in the output even if it appears in places that don't use no_log - felix (nitz): yeah, I wrote that actually, though YAML tags are tricky because you can only have one at a time (in the YAML itself); we'd have to come up with a surrogate tag grammar that fits inside YAML's tag spec if we needed to support > 1 - cidrblock: Can inventory plugins tag data? (nitz): you betcha, that's how the ini demo I did works - Will there be some form of "null" helper we can use so that we can start adding Data Tagging to collections and not break things on older versions of Ansible? (Yes, everyone could write their own, but that's going to result in a mess) - tremble (nitz): good question, it's worth some thought on backporting at least a single dummy tag that people could alias arbitrary imports to to make that easier... ~~- Are stable branches feature-frozen? I was reading abut backporting a PR and see a contradiction. or I likely do not understand. - timeisler~~ - `devel` vs `milestone` branches: are you all going to publish community guidelines about how to test against devel moving forward? some best practices to make sure people who test against devel can maintain some predictability? - FIXME add provisional ansible-core release dates - gundalow - Can we have a high level doc with release dates, versions, python-controler, python-remote. - gundalow - ### Cloud Team **Chair**: jillr **Location**: [Main Conference Room](https://matrix.to/#/#summit:ansible.com) or [#ansible-conf](https://web.libera.chat/#ansible-conf) on Libera (same room, bridged) * Cloud Roadmap * kubernets.core refactoring **Q&A** - *Feel free to add your questions here - Yourname* - aparna-patil: Hi folks! I started contributing to Ansible collection from Oct 2020 and continuing same this year as and when get time. I wanted to know if there is any centralized wiki page/ link where we can see the roadmap for Ansible collection like Azure/AWS etc so can better understand the community's priority and help accordingly with contribution? ### If we could wave a magic wand and fix 5 most annoying things, what would they be **Chair**: gundalow **Location**: [Main Conference Room](https://matrix.to/#/#summit:ansible.com) or [#ansible-conf](https://web.libera.chat/#ansible-conf) on Libera (same room, bridged) **Q&A** - *Feel free to add your questions here - Yourname* - I would have python read the argument_spec from the docs instead of maintaining it in two different places - Alexei (russoz) - Find Proof of Concept PR - Document what's needed to get this finished - mostly it never made it into core as we would need 2nd thing which is 'controller side module rea - dmsimard: Improve installation performance of the Ansible community package - After ansible-2.10 we moved from mono-repo to ansible-core & 85+ collections in the `ansible` package. It turns out that installing hundreds (if not thousands) of files takes a long time -- there are technological limitations (i.e, setuptools and symlinks) and legal constraints (can we/should we remove tests from the collections? should they be included when doing a build of a collection in the first place?). - tremble: Supporting multiple versions of ansible-test is a PITA for CI - In general I guess - making `ansible-test` more configurable on a per-collection basis. the new `test/config.yml` is a step forward, but we can't use it for testing ansible < 2.12 - For example the AWS collections dropped support for Python <3.6, but we've no clean way to disable the related sanity tests without a ton of C&P in `ignore-2.x.txt` - Can / Should ansible-test be broken off from ansible/ansible - Possibly, It's on the dev-tools roadmap to think about the future of ansible-test and how it relates to ansible-lint and molecule - timeisler: I am used to pass/fail/skip style of test results so understanding ansible-test output is my current challenge, whether for unit or integration. - timeisler can we get some examples please - bcoca: files roles, variable scope/ precedence, connection management (avoid the hoops for networking/cloud) +felix +tremble - https://github.com/ansible/proposals/issues/191 - jrglynn2: i think training sessions like the instruqt sessions, or what tadeboro walked through on Tuesday, those are great for newbies - so more of those, with corresponding documentation - gundalow: prioritize simplicity as a feature - Please give example - Setting up the dev environment is a hassle for newcomers - we should not need to have specific directory structure to be able to test (`ansible_collection/NAMESPACE/COLLECTION_NAME`)(Alex/russoz) - tremble: Add a mechanism for 'locally' scoped variables/facts (I currently hack around this using vars on a block). It's very easy for the current global namespace to get polluted by using set_fact for temporary variables. Unfortunately sometimes you need to use set_fact for things like omit to behave the way you'd expect - cognifloyd: preserve modules and reuse python interpreter instances (ala [mitogen](https://mitogen.networkgenomics.com/ansible_detailed.html)) on target hosts in core. This should reduce network transfer time for oft-used modules, and reduce the cost of starting up a new python interpreter over and over ad nauseum. - bcoca: automatic installation of module dependencies (i.e, boto3 for aws things) ### Closing **Chair**: gundalow **Location**: [Main Conference Room](https://matrix.to/#/#summit:ansible.com) or [#ansible-conf](https://web.libera.chat/#ansible-conf) on Libera (same room, bridged) ### Potential Topics * ansible-core * Details and timeline for Ansible Galaxy NG migration (what was ultimately decided?) +geerlingguy +tas-sos +felixfontein * What to expect when you want your collection added to the Ansible package (cidrblock) # Attendees Please put your name (irc nick / matrix ID) if you are attending * Carol Chen (cybette / @cybette:ansible.im) * Jeff Geerling (geerlingguy) * Greg Sutcliffe (gwmngilfen-work / @gwmngilfen:ansible.im) * Tadej Borovšak (tadeboro) * Tasos Lisgaras (Tas-sos) * Ompragash (ompragash) * David Moreau-Simard (@dmsimard) * Martin Schurz (schurzi) * Sviatoslav Sydorenko (Libera.chat / GitHub ID: @webknjaz) * Jim Glynn (jrglynn2) * Abhijeet Kasurde (Akasurde) * Alina Buzachis (abuzachis) * Andrei Klychkov (Libera.chat: andersson007_, GitHub ID: @Andersson007) * Alex Sowitzki (eqrx / @as:eqrx.net) * Nilashish Chakraborty (nilashishc) * Sean M. Collins (Libera.chat / GitHub = sc68cal) * Felix Fontein (Libera/GH: felixfontein) * René Moser (resmo) * Ganesh B. Nalawade (ganeshrn / @ganeshrn:ansible.im) * Sumit Jaiswal (libera.chat/GH: justjais) * Sorin Sbarnea (zbr / @ssbarnea:ansible.im) * Brian Scholer (Libera/GH: briantist) * Priyam Sahoo (GH: priyamsahoo) * Nate Case (Qalthos / @qalthos:ansible.im) * Matt Davis (nitzmahone / @nitzmahone:ansible.im) * Christoph Hille (hille721) * sivel * Gomathi Selvi (GomathiselviS) * Tony Schneider (tonys) * Jill Rouleau (jillr) * Simon Dodsley (simondodsley) * Hideki Saito (hsaito / @saito-hideki) * Todd Lewis (utoddl) * David Duncan (davdunc/davdunc2) * Rick Elrod (relrod) * Marcelo Mello (mmello) * Michael J. O'Neill (omichael) * Rahul Belokar (be_rahul) * Chris Meyers (cmeyers) * Dominik Wombacher (wombelix) * Patrick Toal (ptoal) * Matthew butch (apple4ever) * Matt Clay (mattclay) * Mark Chappell (tremble / @mchappell) * Alexei Znamensky (russoz) # Archive ## Day 1: * **13:00** (15 min) Welcome and Overview - gundalow * **13:15** (30 min) [Setting up a development environment](#Group-instructor-led-class-in-setting-up-a-development-environment) - tadeboro * **13:45** (30 min) [Self-paced Instruqt](#Self-paced-Instruqt) - ompragash * **14:15** (15 min) break * **14:30** (30 min) [Hackathon overview](#Hackathon) - cybette & team * **15:00** (30 min) [Ask a Maintainer](#Ask-A-Maintainer) - jillr, dmsimard & spotz * **15:30** onwards - hacking, training (Instruqt), Q&A, discussions ## Day 1 (Tuesday, September 28, 2021) ### Overview ### Group instructor-led class in setting up a development environment **Format:** Interactive (with instructions for on-demand self-paced learning at a later time) **Duration:** ~20 minutes for basic setup, then ~10 minutes for Q&A **Host:** tadeboro **Location**: [Main Conference Room](https://matrix.to/#/#summit:ansible.com) or [#ansible-conf](https://web.libera.chat/#ansible-conf) on Libera (same room, bridged) **About this session** The main purpose of the session is to help you set up a minimalistic but complete Ansible collection development environment. At the end of the class, you will be able to: 1. Clone existing Ansible collection. 2. Run sanity and unit tests from that collection. 3. Use different Ansible versions to check collection compatibility with all stable Ansible releases. Although we will work on an existing Ansible collection during the demo, the instructions presented also work when setting up a new Ansible collection. And if there are questions about that, we can also have a quick look into it if the will permit. **prerequisite** * A computer or a virtual machine with admin access (for installing Docker, git, Python, etc.). * A healthy dose of stubborness ;) **Background reading** * Docker installation instructions: https://docs.docker.com/engine/install/ * Dev guide: https://docs.ansible.com/ansible/devel/dev_guide/index.html * Env setup: https://docs.ansible.com/ansible/devel/dev_guide/developing_modules_general.html#environment-setup * Testing: https://docs.ansible.com/ansible/devel/dev_guide/developing_collections_testing.html **Q&A** - ~~gwmngilfen: should work with podman too, I guess?~~ - answered by felixfontein [link](https://matrix.to/#/!slARxOhTdwmkrkTXzr:ansible.im/$-UBXkkb06Abe8F0Bm10BeED09CX5vKHEYj22umK_P4A) - Honiix: Don't Molecule have replaced Vagrant? :) [link](https://matrix.to/#/!slARxOhTdwmkrkTXzr:ansible.im/$nZESSL6SNeSG1TMLrmr0mh51GefS8KqEeiFiH9X31Qg) - Molecule is targetted towards running integration tests - ~~killergoalieK: So fun question, anyone know when RH is going to move past 2.9?~~ - answered by cidrblock [link](https://matrix.to/#/!slARxOhTdwmkrkTXzr:ansible.im/$00iNX7DD1jbnt5mwafMU5uODpYmW6Tj6XZ0vZEvLFE0) - [Red Hat Ansible Automation Platform Life Cycle ](https://access.redhat.com/support/policy/updates/ansible-automation-platform) - [Red Hat Ansible Tower Life Cycle](https://access.redhat.com/support/policy/updates/ansible-tower) - Honiix: We have multiple way of setup the developper Python interpreter, Same for the controller. What are the options for the targets of the playbook? Can we use venv as ansible_python_interpreter? [link](https://matrix.to/#/!slARxOhTdwmkrkTXzr:ansible.im/$oIwHB0iCY02xYtN7RmH0WxCCz6iKy-Iqr8qpMEFIwCY) - You can use Ansible to setup Python environment on the target node, then in the next role, use that freshly created virtual environment - ~~Josh Corrick: Is the -docker switch for ansible-test using docker, or can you use podman?~~ - answered by felixfontein [link](https://matrix.to/#/!slARxOhTdwmkrkTXzr:ansible.im/$2Lmf34NEBZ98a-FT1mWYPxFKtkn6TxtVSa9p9IHL6nQ) - for ansible-core 2.12.0b1, `--docker` will prefer Docker if available, but will pick podman if it isn't. you can set ANSIBLE_TEST_PREFER_PODMAN=1 to make it first try podman. - Enphuego: where are the setup playbooks used in the example? [link](https://matrix.to/#/!slARxOhTdwmkrkTXzr:ansible.im/$2Lmf34NEBZ98a-FT1mWYPxFKtkn6TxtVSa9p9IHL6nQ) - https://github.com/xlab-steampunk/ansible-dev-env ### Ask A Maintainer **Format:** Interactive, self-paced, etc **Duration:** ~30 minutes **Chairs:** jillr, dmsimard, spotz **Location**: [Main Conference Room](https://matrix.to/#/#summit:ansible.com) or [#ansible-conf](https://web.libera.chat/#ansible-conf) on Libera (same room, bridged) **About this session** This will be an interactive session covering questions from the community about what it means to be/become a maintainer of an open source Ansible project. This includes modules and plugins, roles, playbooks and collections as well as tooling. Some of the topics that are expected to be covered include: * How do open source projects actually work or operate ? * How to do code reviews and maintain CI ? * Who are the different people or what are the roles in a project/community ? * What are the responsibilities of a maintainer ? * When we say we're looking for maintainers for a project, what would that actually mean to a person who wants to pursue that ? **Background reading** * [Ansible collection maintaining guide](https://github.com/ansible/community-docs/blob/main/maintaining.rst) **Q&A** ~~netopsengineer: As someone who is comfortable with creating modules, and collections, at small scale, what type of resources are available for "noobs" for the more advanced developer experience type tools like antsi-bull or collection_prep, and helping learn the developer workflow around those tools? Day 0 turn up you guys have made modules and collections straightforward with the init commands, but the Day 1 and beyond maintenance seems like a steep step for someone new with current documentation around those topics~~. [link](https://matrix.to/#/!slARxOhTdwmkrkTXzr:ansible.im/$3s-BhKlwRgpgwj8uSU8D4zOxU4Rx5mHdH-iicImgqcQ) ~~gwmngilfen: I'll go with "how can I make the maintainers life easier?" because thats the same as "how does my patch get merged quicker"~~ [link](https://matrix.to/#/!slARxOhTdwmkrkTXzr:ansible.im/$yKpwnNk5bMfoUv-xozfK6r3C6tQa2np6dc0z5NZ2-5c) ~~gwmngilfen: I'm also interested in the "non-code contributions" topic too~~ [link](https://matrix.to/#/!slARxOhTdwmkrkTXzr:ansible.im/$NpIulKzL5cTARgMeOyUdtg_g1y3j8M7Aq6NXP7M4I6Y) ~~honiix: Question: What's the better option between 1 big repo for the whole collection or 1 repo per role + meta repo for the collection?~~ [link](https://matrix.to/#/!slARxOhTdwmkrkTXzr:ansible.im/$6xwJsmGwtBmbDpPWPEI8RR2OB5GOUJ2Jcc9tQcA301s) ### Hackathon [Training Room]: https://matrix.to/#/#workshops:ansible.com [#ansible-workshops on Libera]: https://web.libera.chat/#ansible-workshops [AnsibleFest]: https://www.ansible.com/ansiblefest [Ansible Contributor Summit]: https://ansiblecs202109.eventbrite.com/?aff=hackmd [elevator pitches]: https://hackmd.io/@ansible-community/hackathon-202109-pitches [individual schedule]: https://cryptpad.fr/sheet/#/2/sheet/edit/4jve2phOiwiVJqKvD7MgFf61/ [group schedule template]: https://cryptpad.fr/sheet/#/2/sheet/view/YEIEitTTaDIYBGVdzWfYdWdkGrk1m1Tdt0T42UPg1h8/ [Ansible Community Team's schedule]: https://cryptpad.fr/sheet/#/2/sheet/view/Cn3683yt+9Q+dsYIggjbYQZ6cLncqt94vkM-C090yac/ [Ansible Community Instruqt Labs]: https://play.instruqt.com/redhat/topics/ansible-community [Ansible Community Guide]: https://docs.ansible.com/ansible/latest/community/index.html **Format**: Interactive, self-paced, etc **Hosts**: Members of the Ansible Community **Location**: [Training Room] (preferred) or [#ansible-workshops on Libera] (same room, bridged) **About this session**: - **Who?** Anyone with an interest in contributing to Ansible. This includes people that have never contributed and are unsure of how to get started, existing contributors, maintainers, anyone with an interest in contributing in some way to Ansible. - **What?** Hackathon - Contribute to Ansible or your favorite Collection(s). Resources (people, labs, docs, etc) will be available to help people through the entire process. - **Where?** Over an IRC <-> Matrix bridge with impromptu screen sharing provided by Jitsi - **When?** All throughout [AnsibleFest] and [Ansible Contributor Summit] - **Why?** Improve Ansible or your favorite Collection(s) - **How?** Stop by our IRC <-> Matrix bridge (see location above) during [AnsibleFest] and [Ansible Contributor Summit] to get started! **Getting Started**: - **Recommended Prerequisites** - [GitHub](https://github.com/) account - Check out the background reading below (if applicable) - **First Steps** - Browse the list of "[elevator pitches]" - Add yourself to the [individual schedule] to let others know when you're planning to attend - **Did not find what you were looking for in the "[elevator pitches]"? That's ok, you can start your own!** - Copy this [group schedule template] to create your own group schedule (for an example, check out the [Ansible Community Team's schedule]) - Add your schedule and elevator pitch (this can be anything related to Ansible) to the list of [elevator pitches] - **Found what you were looking for in the "[elevator pitches]"? Great!** - Stop by the IRC <-> Matrix bridge to sync up with others - **Check back here for the latest updates / info!** - **Background Reading** - [Ansible Community Instruqt Labs] - [Ansible Community Guide] **Q&A** - *Feel free to add your questions here - Yourname* - ### Self-paced (Instruqt) **Format:** Interactive, self-paced, etc **Hosts:** Ompragash **Location**: [Training Room](https://matrix.to/#/#workshops:ansible.com) **About this session** This is a self-paced training course using the Instruqt platform. The Ansible Community Team (and other students!) will be in the [Training Matrix room](https://matrix.to/#/#workshops:ansible.com) during the day, so please stop by and tell us how you're doing, or ask for help. We suggest the following order for the labs, though each lab is stand alone, so feel to pick what you are interested in. * [Creating your own collection](https://play.instruqt.com/embedv2/redhat/tracks/ansible-community-creating-your-own-collection?token=em_zcnbza2ex66zqptw) * [Testing A Pull Request Locally](https://play.instruqt.com/embedv2/redhat/tracks/ansible-community-testing-pull-request-locally?token=em_6ke967cktu5m9cww) * [How to develop a Ansible module](https://play.instruqt.com/embedv2/redhat/tracks/ansible-community-developing-ansible-module?token=em_W1mnN4dZouYAhFBI) ` * [Adding integration tests to Ansible Collections](https://play.instruqt.com/embedv2/redhat/tracks/adding-integration-tests-to-ansible-collections?token=em_6uMp_ZmBv4Fuug-z) * [Testing Collections](https://play.instruqt.com/embedv2/redhat/tracks/community-fixing-a-bug?token=em_l4flalsa12evd97a) [Start the self-paced labs](https://www.ansible.com/products/ansible-community-training) Please ensure you leave a rating at the end of the course, then provide [feedback](https://github.com/ansible/instruqt/discussions/54) If you'd like how these interactive labs are structured, take a look at the [product labs](https://www.ansible.com/products/ansible-training). **Q&A** timeislerT: Why was curl used to get timezone.py instead of an ansible-galaxy cmd? [link](https://matrix.to/#/!slARxOhTdwmkrkTXzr:ansible.im/$kuiNpqBNDOwCQc-RotqstWP1VELThDVigToU0RQjF-A) **Notes** Instruqt is new (replacing the Katacoda lab from last year), we'd love your feedback to help improve it for the future Please leave your [feedback via GitHub](https://github.com/ansible/instruqt/discussions/54) *We will randomly select some people that leave feedback to send some special swag to.*

    Import from clipboard

    Paste your markdown or webpage here...

    Advanced permission required

    Your current role can only read. Ask the system administrator to acquire write and comment permission.

    This team is disabled

    Sorry, this team is disabled. You can't edit this note.

    This note is locked

    Sorry, only owner can edit this note.

    Reach the limit

    Sorry, you've reached the max length this note can be.
    Please reduce the content or divide it to more notes, thank you!

    Import from Gist

    Import from Snippet

    or

    Export to Snippet

    Are you sure?

    Do you really want to delete this note?
    All users will lose their connection.

    Create a note from template

    Create a note from template

    Oops...
    This template has been removed or transferred.
    Upgrade
    All
    • All
    • Team
    No template.

    Create a template

    Upgrade

    Delete template

    Do you really want to delete this template?
    Turn this template into a regular note and keep its content, versions, and comments.

    This page need refresh

    You have an incompatible client version.
    Refresh to update.
    New version available!
    See releases notes here
    Refresh to enjoy new features.
    Your user state has changed.
    Refresh to load new user state.

    Sign in

    Forgot password

    or

    By clicking below, you agree to our terms of service.

    Sign in via Facebook Sign in via Twitter Sign in via GitHub Sign in via Dropbox Sign in with Wallet
    Wallet ( )
    Connect another wallet

    New to HackMD? Sign up

    Help

    • English
    • 中文
    • Français
    • Deutsch
    • 日本語
    • Español
    • Català
    • Ελληνικά
    • Português
    • italiano
    • Türkçe
    • Русский
    • Nederlands
    • hrvatski jezik
    • język polski
    • Українська
    • हिन्दी
    • svenska
    • Esperanto
    • dansk

    Documents

    Help & Tutorial

    How to use Book mode

    Slide Example

    API Docs

    Edit in VSCode

    Install browser extension

    Contacts

    Feedback

    Discord

    Send us email

    Resources

    Releases

    Pricing

    Blog

    Policy

    Terms

    Privacy

    Cheatsheet

    Syntax Example Reference
    # Header Header 基本排版
    - Unordered List
    • Unordered List
    1. Ordered List
    1. Ordered List
    - [ ] Todo List
    • Todo List
    > Blockquote
    Blockquote
    **Bold font** Bold font
    *Italics font* Italics font
    ~~Strikethrough~~ Strikethrough
    19^th^ 19th
    H~2~O H2O
    ++Inserted text++ Inserted text
    ==Marked text== Marked text
    [link text](https:// "title") Link
    ![image alt](https:// "title") Image
    `Code` Code 在筆記中貼入程式碼
    ```javascript
    var i = 0;
    ```
    var i = 0;
    :smile: :smile: Emoji list
    {%youtube youtube_id %} Externals
    $L^aT_eX$ LaTeX
    :::info
    This is a alert area.
    :::

    This is a alert area.

    Versions and GitHub Sync
    Get Full History Access

    • Edit version name
    • Delete

    revision author avatar     named on  

    More Less

    Note content is identical to the latest version.
    Compare
      Choose a version
      No search result
      Version not found
    Sign in to link this note to GitHub
    Learn more
    This note is not linked with GitHub
     

    Feedback

    Submission failed, please try again

    Thanks for your support.

    On a scale of 0-10, how likely is it that you would recommend HackMD to your friends, family or business associates?

    Please give us some advice and help us improve HackMD.

     

    Thanks for your feedback

    Remove version name

    Do you want to remove this version name and description?

    Transfer ownership

    Transfer to
      Warning: is a public team. If you transfer note to this team, everyone on the web can find and read this note.

        Link with GitHub

        Please authorize HackMD on GitHub
        • Please sign in to GitHub and install the HackMD app on your GitHub repo.
        • HackMD links with GitHub through a GitHub App. You can choose which repo to install our App.
        Learn more  Sign in to GitHub

        Push the note to GitHub Push to GitHub Pull a file from GitHub

          Authorize again
         

        Choose which file to push to

        Select repo
        Refresh Authorize more repos
        Select branch
        Select file
        Select branch
        Choose version(s) to push
        • Save a new version and push
        • Choose from existing versions
        Include title and tags
        Available push count

        Pull from GitHub

         
        File from GitHub
        File from HackMD

        GitHub Link Settings

        File linked

        Linked by
        File path
        Last synced branch
        Available push count

        Danger Zone

        Unlink
        You will no longer receive notification when GitHub file changes after unlink.

        Syncing

        Push failed

        Push successfully