Contributing new features into the win_get_url core module

Hi,

I have extended the win_get_url Ansible module with some new features for my own purposes and I am wondering how can I contribute it back?

My local version is:

  • able to download a directory with subdirectories/files
  • if the destination folder/file doesn’t exist it creates it
  • if the destination folder/file exist it doesn’t update it

What do you think, is it something valuable to contribute back?
What are the next steps which I should make?
I have read this on the module’s documentation page: “This module is maintained by those with core commit privileges”. What does it mean regarding to next steps?
I understand that you will have a code freeze because of you preparing for the new release but I have to start it somewhere.

Thank You,
Kind Regards,
Edit

Hi

This sounds useful, so the next step would be preparing a pull request so that others can review your changes.

One thing worth considering is trying to make options similar to the get_url module, just so it is easy to switch to the windows version if needed.

Don't worry about who maintains it. Some modules are considered to be essential for ansible to function and so get more scrutiny from the ansible core team.

Some general advice about pull requests. Its worth spending a little time getting familiar with git and github if you aren't already. Don't be surprised if you get asked to make changes. Also, well worth reading the guidelines on creating documentation and testing that your changes to the documents parse ok by running ansible-doc on your changed module. One thing that helps get pull requests merged is having tests. Writing integration tests for ansible is straightforward as the integration tests are just playbooks. From a source checkout, have a look in test/integration/targets - they are useful to know about anyway as often contain examples of how to do things.

Hope this helps,

Jon

Hi,

Thank you for your reply.
I have some question about the pull request. I understand that I have to merge into the devel branch but which branch may I use to add my changes?
Am I suppose to create one? What are the naming conventions? Where should I subscribe to be able to cut a branch?
Should both the Linux and the Windows module updates go to the same branch/pull request?
Thank You,
Kind Regards,
Edit

If you start out with forking the Ansible repo in github (there’s a button for that) into your own github account you can do the following:
git clone https://github.com//ansible
cd ansible
git checkout -b “win_url_improvements”

git add .
git commit -m “Made nice changes”
git push origin win_url_improvements

If you go to “your” copy of the ansible repo on github now, it will have a button for submitting a pull request. You should request pulling your own win_url_improvements branch into ansible/ansible:devel