ansible-galaxy cli can't talk to galaxy server

Bug #2048469 reported by Markus Falb
16
This bug affects 3 people
Affects Status Importance Assigned to Milestone
ansible-core (Ubuntu)
Confirmed
Undecided
Unassigned

Bug Description

~~~
$ podman run -ti ubuntu:22.04
root@524fb540d6c1:/# lsb_release -rd
Description: Ubuntu 22.04.3 LTS
Release: 22.04
root@524fb540d6c1:/# apt update && apt install ansible-core python3-pip
... lots of output
~~~

~~~
root@524fb540d6c1:/# apt-cache policy ansible-core
ansible-core:
  Installed: 2.12.0-1ubuntu0.1
  Candidate: 2.12.0-1ubuntu0.1
  Version table:
 *** 2.12.0-1ubuntu0.1 500
        500 http://archive.ubuntu.com/ubuntu jammy-updates/universe amd64 Packages
        100 /var/lib/dpkg/status
     2.12.0-1 500
        500 http://archive.ubuntu.com/ubuntu jammy/universe amd64 Packages
~~~

~~~
root@524fb540d6c1:/# ansible-galaxy --version
ansible-galaxy [core 2.12.0]
  config file = None
  configured module search path = ['/root/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = /usr/lib/python3/dist-packages/ansible
  ansible collection location = /root/.ansible/collections:/usr/share/ansible/collections
  executable location = /usr/bin/ansible-galaxy
  python version = 3.10.12 (main, Nov 20 2023, 15:14:05) [GCC 11.4.0]
  jinja version = 3.0.3
  libyaml = True
~~~

~~~
root@524fb540d6c1:/# ansible-galaxy collection install community.general
Starting galaxy collection install process
Process install dependency map
ERROR! Unexpected Exception, this is probably a bug: CollectionDependencyProvider.find_matches() got an unexpected keyword argument 'identifier'
to see the full traceback, use -vvv
~~~

this is the wrong error message, sadly enough
I install an older version of resolvelib.

~~~
root@524fb540d6c1:/# pip install "resolvelib<0.6.0"
Collecting resolvelib<0.6.0
  Downloading resolvelib-0.5.4-py2.py3-none-any.whl (12 kB)
Installing collected packages: resolvelib
  Attempting uninstall: resolvelib
    Found existing installation: resolvelib 0.8.1
    Not uninstalling resolvelib at /usr/lib/python3/dist-packages, outside environment /usr
    Can't uninstall 'resolvelib'. No files were found to uninstall.
Successfully installed resolvelib-0.5.4
WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
~~~

the error has changed.
here is the bug that I want to report: I try to install a collection, but can't

~~~
root@524fb540d6c1:/# ansible-galaxy collection install community.general
Starting galaxy collection install process
Process install dependency map
[WARNING]: Skipping Galaxy server https://galaxy.ansible.com/api/. Got an unexpected error when getting available versions of collection community.general:
'/api/v3/plugin/ansible/content/published/collections/index/community/general/versions/'
ERROR! Unexpected Exception, this is probably a bug: '/api/v3/plugin/ansible/content/published/collections/index/community/general/versions/'
to see the full traceback, use -vvv
~~~

It is possible to specify the old galaxy, which is read-only in a frozen state.
This is to prove that the resolvelib hack from above does work.

~~~
root@524fb540d6c1:/# ansible-galaxy collection install -s https://old-galaxy.ansible.com community.general
Starting galaxy collection install process
Process install dependency map
Starting collection install process
Downloading https://old-galaxy.ansible.com/download/community-general-7.4.0.tar.gz to /root/.ansible/tmp/ansible-local-4941qi_yav66/tmpj6v26kip/community-general-7.4.0-c4jvvfft
Installing 'community.general:7.4.0' to '/root/.ansible/collections/ansible_collections/community/general'
community.general:7.4.0 was installed successfully
~~~

However, only old content is available from old galaxy.
Hard rewording of the summary: ansible-galaxy is unusable.

description: updated
Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in ansible-core (Ubuntu):
status: New → Confirmed
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.