Commit graph

57 commits

Author SHA1 Message Date
James Cammarata
ce3ef7f4c1 Making the switch to v2 2015-05-03 21:47:26 -05:00
James Cammarata
317728f649 Allow ansible-galaxy to install symlinks 2015-03-23 09:21:12 -05:00
Brian Coca
9f83af51b7 Merge pull request #9129 from lotia/devel
Clean up template comment text in ansible-galaxy
2015-02-26 22:16:55 -05:00
Monty Taylor
38e81083cd Add issue_tracker_url to the galaxy template
There is an optional issue_tracker_url setting that can be set in
meta/main.yml:galaxy_info. Include it in the generated template
commented out so that it can be filled out if desired.
2015-02-10 08:44:45 -05:00
Daniel Upton
78fb13657a Ignore errors from shutil.rmtree when removing temporary directory 2015-02-09 13:33:48 +00:00
Brian Coca
0ba2298fdd used del instead of pop, removed unused pprint import
Conflicts:
	lib/ansible/modules/core
	lib/ansible/modules/extras
2014-11-20 15:36:55 -05:00
Brian Coca
40caa11082 implemented info action for galaxy 2014-11-12 16:23:49 -05:00
Toshio Kuratomi
e91e30cd5e Fix unspecified role versions.
Fixes #9236
2014-10-09 03:11:46 -04:00
Ali Asad Lotia
9083643a7e Clean up template comment text in ansible-galaxy
Since support for non-galaxy templates is available in 1.8, the existing
comment in the default_meta_template requiring specified dependencies be
available via galaxy was no longer valid. That comment is now removed.
2014-09-24 22:47:12 +01:00
James Cammarata
889dfc4374 Merge pull request #8959 from willthames/galaxy_ssh_clone
Allow fairly common ssh repo clone path to work
2014-09-23 14:58:29 -05:00
James Cammarata
b7a74e216f Merge pull request #8948 from sergevanginderachter/issue_8823
ansible-galaxy: exit with rc 1 if role doesn't exist/is not found
2014-09-16 21:47:29 -05:00
Toshio Kuratomi
c6b26ff7c7 Remove duplicate call to remove tmp role file 2014-09-15 14:45:57 -07:00
Michael Scherer
b9acaccc1d Do not remove local role file if given on the commandline
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.
2014-09-13 12:31:56 +02:00
Will Thames
537472f42c Make ansible-galaxy work as expected
This change fixes hg galaxy roles
Roles also get installed if roles path is missing, which
the tests currently require (fixes #8950)
2014-09-10 09:16:30 +10:00
Serge van Ginderachter
2474ce5819 Exit with rc 1 if role doesn't exist/is not found
fixes #8823
	modified:   bin/ansible-galaxy
2014-09-09 21:57:23 +02:00
James Cammarata
aa46fcf096 Add error checking to ansible-galaxy to verify the roles_path is valid 2014-09-09 10:59:53 -05:00
James Cammarata
7b4df6e98e Fixing ansible-galaxy bug introduced in 399fe322 2014-09-08 13:20:51 -05:00
James Cammarata
f14dba8b2f Don't re-add galaxy deps if they've already been added for install
Fixes #8890
2014-09-05 12:53:49 -05:00
James Cammarata
9adde1eab0 Fix instance comparison for deps in bin/ansible-galaxy
Fixes #8884
2014-09-04 09:35:03 -05:00
John Dewey
44b0ee5322 Can override each role's install path
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/
2014-08-27 16:43:39 -07:00
Michael DeHaan
d66bb47db7 Fixing a typo, still some more work to do on CLI. 2014-08-22 09:57:10 -04:00
Michael DeHaan
399fe32287 Clarify examples further. 2014-08-21 18:48:02 -04:00
Michael DeHaan
2e95e21cad Remove some debug in ansible-galaxy upgrades, one of which raises errors down some code paths. 2014-08-21 18:24:40 -04:00
Michael DeHaan
e7c0b95074 Work in progress on bin/ansible-galaxy changes testing. 2014-08-21 17:15:23 -04:00
Will Thames
bf9ea81c4b Make galaxy work when API server not available
`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
2014-08-21 17:15:23 -04:00
Will Thames
31540246dd Handle older git archive commands
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
2014-08-21 17:15:23 -04:00
Will Thames
ada9074276 Allow installation of roles from yaml roles file
Added docs
Added more tests
Improved how roles are returned from the parsers
2014-08-21 17:15:23 -04:00
Will Thames
46b59b02ed Friendly Role Names and roles from URLs
* 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
2014-08-21 17:15:23 -04:00
Will Thames
c2fe33f9f4 Tidied up a little, added tests
Moved repo_url_to_role_name to common method in ansible.utils
Added unit test for repo_url_to_role_name
Added integration tests for galaxy
2014-08-21 17:15:23 -04:00
Will Thames
bf3066e650 Change to how SCM is determined
Change SCM determination from executing git/hg commands to explicit
in URL.

Fix check for already installed dependencies
2014-08-21 17:15:23 -04:00
Will Thames
36177396c4 Allow ansible-galaxy to install roles from URLs
ansible-galaxy can now refer to SCM URLs (git and hg at this point)
for role names
Dependencies need to use the full SCM URLs too.
Otherwise all seems to work well

Test rolesfile
```
http://bitbucket.org/willthames/git-ansible-galaxy,v1.1
https://bitbucket.org/willthames/hg-ansible-galaxy
```
(works with ssh too)
2014-08-21 17:15:23 -04:00
James Cammarata
f8845af195 Add path checking for relative/escaped tar filenames in the ansible-galaxy command 2014-08-06 13:25:29 -05:00
John Dewey
4432ca3836 Align markdown headers
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
    ----------------
2014-07-17 10:29:58 -07:00
John Barker
aa87afaa87 Add space after full stop in ansible-galaxy help 2014-03-17 18:52:44 +00:00
Cristian Ciupitu
0749112286 Micro-optimization: replace s.find(x)!=-1 with x in s
timeit shows a speedup of ~3x on Python 2.7.5 x86_64.
It also makes the code a bit shorter.
2014-03-16 13:10:28 -04:00
James Cammarata
52c9c1dc39 Fixing usage string in ansible-galaxy install for role files 2014-02-15 09:57:52 -06:00
Michael DeHaan
3b8fd62ff9 More site rename things. 2014-01-28 20:29:42 -05:00
Michael DeHaan
d07a3b5e9b AnsibleWorks -> Ansible 2014-01-28 20:29:42 -05:00
James Cammarata
fc30467593 Adding an "Example Playbook" section to the README template for ansible-galaxy
Fixes 5397
2014-01-24 15:39:30 -06:00
James Cammarata
593098108e Adding suggested licenses to the ansible-galaxy meta template 2014-01-24 15:34:01 -06:00
jctanner
1d9e78f2ab Merge pull request #5376 from bob-smith/galaxyhelp
Display context appropriate help and inform the user they can do '--help <command>'
2014-01-14 08:37:42 -08:00
James Cammarata
ccbc99fe4f Fixed splitting of role/user name when username has a '.' in it
This may still be an issue if users create roles with a '.' in the name though.
We will probably have to disallow that in the role naming convention.
2014-01-06 10:42:41 -05:00
Joshua Lund
ed39bebaa8 Fixing a small typo in the Galaxy README template 2013-12-24 16:05:39 -07:00
John Barker
d607f2ccf5 Add some blank lines in help to add readability 2013-12-20 21:08:14 +00:00
John Barker
ed858f9f72 Display context appropriate help and inform the user they can do '--help
<command>
2013-12-20 20:27:24 +00:00
James Tanner
43a1e503c3 Set default role license to BSD 2013-12-20 13:14:14 -05:00
James Tanner
c37fa5ddce Use os.pathsep to split roles_path instead of a colon 2013-12-20 12:13:22 -05:00
James Tanner
82d145534c Split roles_path on colon separators and use the first path for the installation path 2013-12-20 11:43:38 -05:00
James Tanner
904ba869cc Create a default README.md with ansible-galaxy init 2013-12-20 11:29:08 -05:00
James Cammarata
0d4294da42 Don't create main.yml in files/templates directories on galaxy init 2013-12-20 09:26:42 -06:00