using this (for testing purpose) :
$ ansible-galaxy install COPYING
- error: the file downloaded was not a tar.gz
- COPYING was NOT installed successfully.
- you can use --ignore-errors to skip failed roles.
this result in COPYING being erased, which is surprising for the user.
This also prevent erasing requirements.yml if someone use the wrong flag.
Defaults to the system wide `roles-path` when `path` is not specified in the
provided `role-file`. An example installing nginx to a relative path specified
by the `role-file`.
- src: https://github.com/bennojoy/nginx
path: vagrant/roles/
Only print a blank line between plays when also doing --list-hosts and/or
--list-tasks, otherwise this output just a long list of blank lines, one for
each play.
`ansible-galaxy init --offline ...` can create a role without
talking to the galaxy api server
`ansible-galaxy install ...` only needs to talk to the galaxy api
server for galaxy roles, not tar files or scm archives
Fixed a bug in command line role installation
Older git archive commands create tar archives even with a tar.gz
extension. So change it to always create tar archives and have
the install_role method cope.
Removed ssh roles from the test case as they don't work unless
you can connect to bitbucket via ssh and have your key there.
Corrected a minor typo in error messages
* Roles can now be given a friendly name as third field in role spec csv
* Roles can be installed from URL (not just from archived SCMs)
* Integration tests to demonstrate this
* Unit tests to ensure that role spec parsing works as expected
This addresses a bug in ansible-pull where running ansible-pull
with an existing inventory causes the ansible job that does
the SCM checkout to run twice - once for localhost and once
for the fully qualified hostname.
This can cause a race condition, and usually results in one
of the ansible checkouts failing because one of the scm checkouts
has its references updated underneath it. Although the SCM checkout
actually succeeds, ansible fails with non-zero exit status, and
so ansible-pull does not continue.
Now that localhost is implicit for ansible runs, the ansible
scm checkout can be done using just localhost as a target.
A fairly trivial change since `Role Name` and `Example Playbook`
will likely be modified anyways. However, since all the other
sections are aligned properly, felt it would be nice to "clean this up".
Before:
Role Name
========
Example Playbook
-------------------------
After:
Role Name
=========
Example Playbook
----------------
Without this fix you have to enter your vault password before you realize
that you forgot to pass in the filename. This commit checks that an
filename argument was at least passed on the command line.