A simple web application, to mimic the v2 API endpoints for Ansible Galaxy Collections, with no database, just a directory with artifacts
-
go install github.com/sivel/amanda@latest
(You can use theGOBIN
env variable to install to a custom location) -
Create a directory to hold the artifacts, which by default is named
artifacts
and lives in the current working directory -
Drop
ansible-galaxy collection build/download
artifacts in theartifacts
directory -
Run the app:
./amanda -artifacts=/path/to/artifacts
-
Install collections:
ansible-galaxy collection install -s http://hostname:5000/api namespace.collection
Alongside the .tar.gz
artifact for a collection, create a file with the same base name and a .asc
extension.
A quick example on creating and verifying the signature:
cd collections/ansible_collections/namespace/name
ansible-galaxy collection build
tar -Oxzf namespace-name-1.0.0.tar.gz MANIFEST.json | gpg --output namespace-name-1.0.0.asc --detach-sign --armor --local-user email@example.org -
tar -Oxzf namespace-name-1.0.0.tar.gz MANIFEST.json | gpg --verify namespace-name-1.0.0.asc -