Ansible is a radically simple IT automation platform that makes your applications and systems easier to deploy. Avoid writing scripts or custom code to deploy and update your applications— automate in a language that approaches plain English, using SSH, with no agents to install on remote systems.
Python PowerShell Shell Makefile Tcl Go
Switch branches/tags
v2.4.3.0-0.5.rc2 v2.4.3.0-0.4.rc1 v2.4.3.0-0.2.beta2 v2.4.3.0-0.1.beta1 v2.4.3-0.3.beta3 v2.4.2.0-1 v2.4.2.0-0.5.rc1 v2.4.2.0-0.4.beta4 v2.4.2.0-0.3.beta3 v2.4.2.0-0.2.beta2 v2.4.2.0-0.1.beta1 v2.4.1.0-1 v2.4.1.0-0.4.rc2 v2.4.1.0-0.3.rc1 v2.4.1.0-0.2.beta2 v2.4.1.0-0.1.beta1 v2.4.0.0-1 v2.4.0.0-0.5.rc5 v2.4.0.0-0.4.rc4 v2.4.0.0-0.3.rc3 v2.4.0.0-0.2.rc2 v2.4.0.0-0.1.rc1 v2.3.3.0-1 v2.3.3.0-0.3.rc3 v2.3.3.0-0.2.rc2 v2.3.3.0-0.1.rc1 v2.3.2.0-1 v2.3.2.0-0.5.rc5 v2.3.2.0-0.4.rc4 v2.3.2.0-0.3.rc3 v2.3.2.0-0.2.rc2 v2.3.2.0-0.1.rc1 v2.3.1.0-1 v2.3.1.0-0.2.rc2 v2.3.1.0-0.1.rc1 v2.3.0.0-1 v2.3.0.0-0.6.rc6 v2.3.0.0-0.5.rc5 v2.3.0.0-0.4.rc4 v2.3.0.0-0.3.rc3 v2.3.0.0-0.2.rc2 v2.3.0.0-0.1.rc1 v2.2.3.0-1 v2.2.3.0-0.1.rc1 v2.2.2.0-1 v2.2.2.0-0.2.rc2 v2.2.2.0-0.1.rc1 v2.2.1.0-1 v2.2.1.0-0.5.rc5 v2.2.1.0-0.4.rc4 v2.2.1.0-0.3.rc3 v2.2.1.0-0.2.rc2 v2.2.1.0-0.1.rc1 v2.2.0.0-1 v2.2.0.0-0.4.rc4 v2.2.0.0-0.3.rc3 v2.2.0.0-0.2.rc2 v2.2.0.0-0.1.rc1 v2.1.6.0-1 v2.1.6.0-0.1.rc1 v2.1.5.0-1 v2.1.5.0-0.2.rc2 v2.1.5.0-0.1.rc1 v2.1.4.0-1 v2.1.4.0-0.3.rc3 v2.1.4.0-0.2.rc2 v2.1.4.0-0.1.rc1 v2.1.3.0-1 v2.1.3.0-0.3.rc3 v2.1.3.0-0.2.rc2 v2.1.3.0-0.1.rc1 v2.1.2.0-1 v2.1.2.0-0.5.rc5 v2.1.2.0-0.4.rc4 v2.1.2.0-0.3.rc3 v2.1.2.0-0.2.rc2 v2.1.2.0-0.1.rc1 v2.1.1.0-1 v2.1.1.0-0.5.rc5 v2.1.1.0-0.4.rc4 v2.1.1.0-0.3.rc3 v2.1.1.0-0.2.rc2 v2.1.1.0-0.1.rc1 v2.1.0.0-1 v2.1.0.0-0.4.rc4 v2.1.0.0-0.3.rc3 v2.1.0.0-0.2.rc2 v2.1.0.0-0.1.rc1 v2.0.2.0-1 v2.0.2.0-0.4.rc4 v2.0.2.0-0.3.rc3 v2.0.2.0-0.2.rc2 v2.0.2.0-0.1.rc1 v2.0.1.0-1 v2.0.1.0-0.2.rc2 v2.0.1.0-0.1.rc1 v2.0.0.2-1 v2.0.0.1-1 v2.0.0.0-1 v2.0.0-0.9.rc4
Nothing to show
Latest commit e970ae1 Jan 23, 2018 @deiwin deiwin committed with willthames ecs_ecr: Fix AWS ECR repository creation (#34798)
* ecs_ecr: Remove registry ID from create repository call

[Boto3 documentation][1] specifies 'repositoryName' as the only expected
argument. The `**build_kwargs(registry_id)` part also adds 'registryId' which,
when executed, fails with: 'Unknown parameter in input: “registryId”, must be
one of: repositoryName'.

[AWS API documentation][2] also lists only the 'repositoryName' parameter. I.e.
this is not a problem with the boto3 library.

The default registry ID for the account that's making the request will be used
when creating the rpository. This means that if the `registry_id` specified by
the user is different from the default registry ID, then the policy changes
following the repository creation would fail, because the repository will have
been created in one repository but subsequent calls try to modify it in
another. Added a safeguard against this scenario.

[1]: https://boto3.readthedocs.io/en/latest/reference/services/ecr.html#ECR.Client.create_repository
[2]: https://docs.aws.amazon.com/AmazonECR/latest/APIReference/API_CreateRepository.html

* Fix concurrent ECR integration tests

If the `ecr_name` is the same in multiple concurrent test runs, then they can
interfere with one another causing both to fail. The `resource_prefix` is
guaranteed to be unique for different jobs running in CI an so avoids this
issue while also making it easier to identify the test which created the
resource.
Permalink
Failed to load latest commit information.
.github Conjur Lookup Plugin (#34280) Jan 23, 2018
bin Error early if executing python version doesn't meet documented minim… Jan 9, 2018
contrib Add hash making inventory caches unique to inventory script ran (#34742) Jan 23, 2018
docs Clarify when and how to enable ANSIBLE_DEBUG (#35220) Jan 23, 2018
examples Implement plugin filtering Jan 23, 2018
hacking Port sts_assume_role to boto3 (#32569) Jan 22, 2018
lib/ansible ecs_ecr: Fix AWS ECR repository creation (#34798) Jan 24, 2018
licenses Create a short license for PSF and MIT. (#32212) Nov 6, 2017
packaging [new module] Add Azure Container Instance support - cloud/azure/azure… Jan 17, 2018
test ecs_ecr: Fix AWS ECR repository creation (#34798) Jan 24, 2018
ticket_stubs add bug_internal_api.md to ticket_stubs (#34370) Jan 3, 2018
.coveragerc Docker image updates for integration tests. (#26054) Jun 23, 2017
.gitattributes avoid exporting files useless to dist Jun 23, 2017
.gitignore Keywords docs (#32807) Nov 11, 2017
.gitmodules Code cleanup. Dec 8, 2016
.mailmap Fix syntax typo Dec 24, 2017
.yamllint Add module support to yamllint sanity test. (#34964) Jan 16, 2018
CHANGELOG.md Documentation and changelog for the plugin_filtering config option Jan 23, 2018
CODING_GUIDELINES.md PEP8 set the line limit (#32578) Nov 6, 2017
CONTRIBUTING.md Update CONTRIBUTING.md to point to the right stuff (#32258) Oct 27, 2017
COPYING license file should be in source tree Mar 16, 2012
MANIFEST.in powershell setup fixes (#27516) Jul 31, 2017
MODULE_GUIDELINES.md Moving guidelines to the official docs (#32260) Oct 27, 2017
Makefile Fix make clean to remove test reports correctly Sep 18, 2017
README.md devel usage README update (#30369) Sep 14, 2017
RELEASES.txt updated from stable.24 Jan 4, 2018
ROADMAP.rst No hardcoding roadmaps (#32981) Nov 16, 2017
VERSION Bump the versions now that devel is 2.5 Sep 6, 2017
ansible-core-sitemap.xml Remove remnants of obsolete fireball mode. Dec 9, 2016
docsite_requirements.txt Fixes the build issue pertaining to sphinx-build which is required to… Mar 14, 2017
requirements.txt Cyptography pr 20566 rebase (#25560) Jun 27, 2017
setup.py set the zip_safe flag to False (#32194) Oct 27, 2017
shippable.yml Split Windows tests into 4 groups. Jan 12, 2018
tox.ini Fail hard when tests pass that are expected to fail Dec 21, 2017

README.md

PyPI version Build Status

Ansible

Ansible is a radically simple IT automation system. It handles configuration-management, application deployment, cloud provisioning, ad-hoc task-execution, and multinode orchestration - including trivializing things like zero downtime rolling updates with load balancers.

Read the documentation and more at https://ansible.com/

You can find installation instructions here for a variety of platforms. Most users should probably install a released version of Ansible from pip, a package manager or our release repository. Officially supported builds of Ansible are also available. Some power users run directly from the development branch - while significant efforts are made to ensure that devel is reasonably stable, you're more likely to encounter breaking changes when running Ansible this way.

Design Principles

  • Have a dead simple setup process and a minimal learning curve
  • Manage machines very quickly and in parallel
  • Avoid custom-agents and additional open ports, be agentless by leveraging the existing SSH daemon
  • Describe infrastructure in a language that is both machine and human friendly
  • Focus on security and easy auditability/review/rewriting of content
  • Manage new remote machines instantly, without bootstrapping any software
  • Allow module development in any dynamic language, not just Python
  • Be usable as non-root
  • Be the easiest IT automation system to use, ever.

Get Involved

  • Read Community Information for all kinds of ways to contribute to and interact with the project, including mailing list information and how to submit bug reports and code to Ansible.
  • All code submissions are done through pull requests. Take care to make sure no merge commits are in the submission, and use git rebase vs git merge for this reason. If submitting a large code change (other than modules), it's probably a good idea to join ansible-devel and talk about what you would like to do or add first and to avoid duplicate efforts. This not only helps everyone know what's going on, it also helps save time and effort if we decide some changes are needed.
  • Users list: ansible-project
  • Development list: ansible-devel
  • Announcement list: ansible-announce - read only
  • irc.freenode.net: #ansible

Branch Info

  • Releases are named after Led Zeppelin songs. (Releases prior to 2.0 were named after Van Halen songs.)
  • The devel branch corresponds to the release actively under development.
  • Various release-X.Y branches exist for previous releases.
  • We'd love to have your contributions, read Community Information for notes on how to get started.

Authors

Ansible was created by Michael DeHaan (michael.dehaan/gmail/com) and has contributions from over 1000 users (and growing). Thanks everyone!

Ansible is sponsored by Ansible, Inc

License

GNU General Public License v3.0

See COPYING to see the full text.