Skip to content
This repository has been archived by the owner on Oct 9, 2024. It is now read-only.

Push new versions to Ansible Galaxy #23

Open
AMeng opened this issue Aug 24, 2016 · 5 comments
Open

Push new versions to Ansible Galaxy #23

AMeng opened this issue Aug 24, 2016 · 5 comments

Comments

@AMeng
Copy link
Contributor

AMeng commented Aug 24, 2016

Can we get the newest release pushed to Ansible Galaxy? The latest version available there is 1.3.0.
https://galaxy.ansible.com/groover/tomcat/

@ghost
Copy link

ghost commented Aug 24, 2016

Hi, I'd love to do that, but this is somewhat political. galaxy today uses tight github integration. github API is quite limited for us in terms of what Ansible is allowed to do. For that reason it is not impossible that Galaxy can do things it should not be allowed to.

We discussed this on Ansiblefest in London, discussed this here at Silpion, ... No solution up to now.

Our workaround for that is to use requirements yaml pointing src: to github URL.

I fear there will be no quick solution for this particular issue here. I'll take it for another opportunity to create discussion at Silpion how to proceed with that, and have this issue kept open.

@AMeng
Copy link
Contributor Author

AMeng commented Aug 24, 2016

That's understandable. The main issue with using src: with the github URL is that you don't get the dependency resolution. This role becomes particularly cumbersome as its dependencies have dependencies. So my requirements file looks something like:

- src: https://github.com/silpion/ansible-lib
  name: silpion.lib
  version: 2.0.2
- src: https://github.com/silpion/ansible-util
  name: silpion.util
  version: 2.0.4
- src: https://github.com/silpion/ansible-tomcat
  name: groover.tomcat
  version: 2.1.0

Its now up to the end user to correctly manage this dependency chain.

One possible (but annoying) solution might be to create a separate GitHub organization that only hosts open source projects. Perhaps allowing galaxy access to that organization might be more acceptable.

@ghost
Copy link

ghost commented Aug 25, 2016

Never seen that. Just tested the following:

$ cat requirements.yml
---
- src: https://github.com/silpion/ansible-tomcat
  name: silpion.tomcat
  version: 2.1.0
$ ansible-galaxy install -r requirements.yml -p .
- extracting silpion.tomcat to ./silpion.tomcat
- silpion.tomcat was installed successfully
- adding dependency: silpion.util
- extracting silpion.util to ./silpion.util
- silpion.util was installed successfully
- adding dependency: silpion.lib
- extracting silpion.lib to ./silpion.lib
- silpion.lib was installed successfully
$ ls -lF
total 4
-rw-------  1 kusch users  93 Aug 25 10:24 requirements.yml
drwx------ 10 kusch users 420 Aug 25 10:25 silpion.lib/
drwx------ 12 kusch users 520 Aug 25 10:25 silpion.tomcat/
drwx------ 11 kusch users 480 Aug 25 10:25 silpion.util/
$ ansible --version
ansible 2.1.1.0
  config file = /etc/ansible/ansible.cfg
  configured module search path = Default w/o overrides

@AMeng
Copy link
Contributor Author

AMeng commented Aug 29, 2016

Ah, I see you have your dependencies specified as the GitHub sources now within these repos. I think its the case where you reference galaxy sources while installing from GitHub that you run into these isues.

Perfect, thanks!

@livin
Copy link

livin commented Feb 13, 2017

Hello, I've tried to install groover.tomcat role for my ansible solution and it failed on resolving dependency for slipion.util:

ansible-galaxy install -r requirements.yml
- downloading role 'tomcat', owned by groover
- downloading role from https://github.com/silpion/ansible-tomcat/archive/1.3.0.tar.gz
- extracting groover.tomcat to /etc/ansible/roles/groover.tomcat
- groover.tomcat was installed successfully
[DEPRECATION WARNING]: The comma separated role spec format, use the 
yaml/explicit format instead..
This feature will be removed in a future release.
 Deprecation warnings can be disabled by setting deprecation_warnings=False in 
ansible.cfg.
- adding dependency: silpion.util
- downloading role 'util', owned by silpion
 [WARNING]: - silpion.util was NOT installed successfully: - sorry, silpion.util
was not found on https://galaxy.ansible.com.

ERROR! - you can use --ignore-errors to skip failed roles and finish processing the list.

I am going to try with custom dependencies with github urls which you provided here, but it's obviously a big confusion here. Also there is a confusion with role name registered in Ansible Galaxy - groover.tomcat and GitHub repo user slipion.

So I vote up to this issue to be solved if possible

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants