aristanetworks / avd

Arista Validated Designs
https://avd.arista.com
Apache License 2.0
286 stars 205 forks source link

Ansible-Galaxy requirements.yml hiccups due to repo structure #1001

Closed ryanmerolle closed 2 years ago

ryanmerolle commented 3 years ago

Issue Type

Summary

Throwing this out there given this repo is not exactly setup like most ansible-galaxy collection repos. This is more of an issue for users who want to track to devel branch using a requirements.yml file.

Component Name

airsta.avd

Steps to reproduce

The below functionality as documented by Ansible, does not work as is given galaxy expects the manifast.json / galaxy.yml file in the root of the repo.

---
collections:
   - name: https://github.com/aristanetworks/ansible-avd.git
     type: git
     version: devel

The workaround is to append the path to the actual collection source as below:

---
collections:
   - name: https://github.com/aristanetworks/ansible-avd.git#ansible_collections/arista/avd
     type: git
     version: devel

Expected results

Unfortunately when downloading the tarball version of the devel branch, you cannot specify the required path for ansible-galaxy to search for the collection because it expects an ansible-galaxy compliant artifact (quoted from the Ansible community in libre.chat)

collections:
   - name: https://github.com/aristanetworks/ansible-avd/archive/devel.tar.gz

The install should work as is, but again because of the non-standard collection repo directory structure, it does not.

Actual results

The above requirements.yml item will not take a path like the git repo item will. As such the following error message shows up.

Downloading https://github.com/aristanetworks/ansible-avd/archive/devel.tar.gz to /home/user1/.ansible/tmp/ansible-local-752h74l7azr/tmpe2biem1a
ERROR! Collection at '/home/user1/.ansible/tmp/ansible-local-752h74l7azr/tmpe2biem1a/devel.tar2m4g0k1y.gz' does not contain the required file MANIFEST.json.

Additional Context & Thoughts

The only reason why I care about this is because:

Options:

ryanmerolle commented 3 years ago

This is sort of a pain right now because 3.0.0rc1 is not listed on galaxy and you cannot install using galaxy via git or a tar, you have to manually add this rc1 release for testing.

github-actions[bot] commented 2 years ago

This issue is stale because it has been open 90 days with no activity. Remove stale label or comment or this will be closed in 15 days