Currently mazer uses the 'Repositories' based v1 Galaxy REST API for installing from Galaxy.
Mazer needs to be updated to the the 'Collections' based v2 Galaxy REST API instead.
This primary means changes to ansible_galaxy.rest_api, ansible_galaxy.download, and the ansible_galaxy.fetch modules.
[x] Update ansible_galaxy.rest_api to include the v2 collections API endpoints
[x] Update 'publish' api to use v2 API
[x] Update to include support for looking up collections by namespace and name (collection equiv of ansible_galaxy.rest_api.GalaxyApi.lookup_repo_by_name)
[x] Any other changes required (potentially including changes to how the client enforces what Galaxy REST API version is used since now v1/v2 may be used together)
[x] Update ansible_galaxy.fetch and the galaxy_url fetcher to use the 'Collections' based API.
[x] Change how the artifact download url is found (ie, using whats provided from Galaxy instead of Github download urls)
[x] changes in REST API results structures?
[x] maybe collection version selection changes?
[x] Update ansible_galaxy.download to work with v2 collection download links
[x] If Galaxy API provides additional info to use (auth info, CDN specific http headers or params needed, etc) update to use it.
[x] Test/verify and fix/implement if required any http redirection support needed
MAZER VERSION
name = mazer
version = 0.4.0
config_file = /home/adrian/.ansible/mazer.yml
uname = Linux, newswoop, 4.18.16-100.fc27.x86_64, #1 SMP Sun Oct 21 09:33:00 UTC 2018, x86_64
executable_location = /home/adrian/venvs/mazer040test/bin/mazer
python_version = 3.6.6 (default, Jul 19 2018, 16:29:00) [GCC 7.3.1 20180303 (Red Hat 7.3.1-5)]
python_executable = /home/adrian/venvs/mazer040test/bin/python
Currently mazer uses the 'Repositories' based v1 Galaxy REST API for installing from Galaxy. Mazer needs to be updated to the the 'Collections' based v2 Galaxy REST API instead.
This primary means changes to
ansible_galaxy.rest_api
,ansible_galaxy.download
, and theansible_galaxy.fetch
modules.ansible_galaxy.rest_api
to include the v2 collections API endpointsansible_galaxy.fetch
and thegalaxy_url
fetcher to use the 'Collections' based API.ansible_galaxy.download
to work with v2 collection download linksMAZER VERSION