We had some things (namespaces, roles, collections) corrected - probably manually - on the legacy Galaxy instance, in the past (see GitHub ansible/galaxy#2535). It looks like the data was attempted to migrate, but the - presumably manual - corrections seem to have caused duplicate namespaces and roles.
See, for example, the role painless.software
I maintain:
- Role: “painless.software” →
https://galaxy.ansible.com/ui/standalone/roles/painless/software/
- GitHub repository: “painless-software/ansible-role-software” →
https://github.com/painless-software/ansible-role-software
Note that the content on the role page of the new Galaxy instance points to a non-existing repository on GitHub, because it assumes the 1:1 mapping of Ansible namespace and GitHub user or org name.
Note that I do not own the “painless” user or org name on GitHub.
The resources now found on Galaxy are:
- Searching in Roles > Role Namespaces for “painless” yields 2 results:
- “painless-software” (incorrect namespace, correct icon)
- “painless” (correct namespace, incorrect icon → looks like GitHub user “painless”)
- Searching in Collections > Namespaces for “painless” yields only 1 result:
- “painless” (correct namespace, correct icon)
- (Note: Nothing is found searching for “painless-software”)
- Role “painless-software.software” →
https://galaxy.ansible.com/ui/standalone/roles/painless-software/software/
(incorrect namespace, correct icon) - Role “painless.software” →
https://galaxy.ansible.com/ui/standalone/roles/painless/software/
(correct namespace, incorrect icon → looks like GitHub user “painless”) - Namespace for Roles, “painless-software” →
https://galaxy.ansible.com/ui/standalone/namespaces/5371/
(incorrect namespace, correct icon) - Namespace for Roles, “painless” →
https://galaxy.ansible.com/ui/standalone/namespaces/9580/
(correct namespace, incorrect icon → looks like GitHub user “painless”) - Namespace for Collections, “painless-software” →
https://galaxy.ansible.com/ui/namespaces/painless-software/
(404 Not Found → which is correct) - Namespace for Collections, “painless” →
https://galaxy.ansible.com/ui/namespaces/painless/
(correct namespace, correct icon)
Sorry for the plain URLs; as a new user I’m not allowed to have more than 2 URLs in a post.
Also, as a consequence, my users cannot install the painless.software
role anymore; it must now be called painless-software.software
for the installation to succeed:
$ ansible-galaxy install painless.software
Starting galaxy role install process
- downloading role 'software', owned by painless
- downloading role from https://github.com/painless/ansible-role-software/archive/master.tar.gz
[ERROR]: failed to download the file: HTTP Error 404: Not Found
[WARNING]: - painless.software was NOT installed successfully.
ERROR! - you can use --ignore-errors to skip failed roles and finish processing the list.
Will this be corrected in an already-planned cleanup task?
Should users report such discrepancies?