How can I help?

Hi Community,

I’d like to help the development efforts. I am a systems engineer but I don’t work with (m)any fun technologies at work; I’m attracted by the Ansible project for many reasons. I have, on my computer, set up a dev-like environment comprised of different VM flavours, and I am now playing with various modules and playbooks as well as going through the source code. I read CONTRIBUTING.md but I don’t have any features to propose or bugs to report. I’m looking at the issue tracker on Github but I’m not sure where to start. My question could be the following:

  • Is there any particular dev area, such as a module, where dev effort is most needed?
  • Is any of you looking for help working on a bug or new feature?

Thanks for your time,
Clement

Modules are generally the easiest part of Ansible to start working on, as they’re pretty self-contained. Some of the modules are pretty complex though, like the ec2* and other cloud modules. If you have any questions about the code in general, just ask us here. I’d recommend filtering the issues with the “module” tag and either the “bug_report” or “feature_idea” tags to see what you might be interested in tackling.

I’m in the same situation as Clément, i should start with modules too or is there anything more important now to help with?

Thank you James.

Hi Mario. I usually recommend modules as a starting point because they generally execute in a linear way that’s easy to understand (and as I mentioned above, they’re pretty self-contained without too many moving pieces). The core components are a bit more involved since there are several classes that interact with each other (Runner, Inventory, and Playbook/Play/Task), but if you’re an experienced programmer and want to dive into those parts by all means go for it. If you’re looking for something specific to tackle, look through the GitHub issue list for bugs that might interest you.

If you (or anyone else) need any pointers on where to get started with a particular issue, or if you have any other questions regarding issues, just ping me here on the devel list or on IRC (jimi|ansible).

Thanks!

Thank you very much James, i’ve joined ansible channel in IRC and I’m going to filter issues related to module and start to fix issues :slight_smile:

Awesome, looking forward to reviewing them!

Glad to see the interest and welcome!

I’d also make another suggestion - helping close bugs, even if they don’t occur for you, would be immensely valuable.

We have a lot of great module submissions now in the review queue, and getting MORE of those right now would create more backlog. So don’t always feel you need to add a whole module unless you have one you are already using in production and think it would be a good one to have.

I’d look through the existing list of tickets and see if you’d like to work on any of those, and much of them can provide an interesting way to get involved in the codebase.

https://github.com/ansible/ansible/issues?q=is%3Aopen+is%3Aissue+label%3Abug_report

Things are labelled “P1” through “P5” based on severity/importance, though as we’re generally cracking on the P2 items, finding some module specific issues in the P3 bucket would be a GREAT way to dive in.

If you’re more interested in features, see https://github.com/ansible/ansible/labels/feature_idea - though having a discussion about a feature on ansible-devel prior to implementing can often be a good idea and save some extra efforts if we decide to tweak it’s interface or implementation.

“Thank you very much James, i’ve joined ansible channel in IRC and I’m going to filter issues related to module and start to fix issues :)”

I’m skimming too fast - excellent!

Feel free to ask any development/code related questions here!

Thank you very much to all for your responses, i think i will start fixing issues to learn who Ansible works inside and i thinks as you said that this a helpful task for all :smiley: