Git credentials for private ansible collection?

We run awx in a kubernetes cluster, and have some local ansible modules we want to use with it. I've made those into a Collection, and put that into our internal git repos (Azure Devops).

Now I'm trying to convince awx to actually install them! If I package the collection up as a tarball (using ansible-galaxy collection build) and put it on some random http server, it will fetch it OK. Supposedly I can also use a format like this in the requirements.yml file:

- name: https://MyOrganisation@dev.azure.com/MyOrganisation/MyProject/our-ansible-collection.git
type: git
version: main

The error I'm getting is that it's not a valid tar file. It's not clear if it's successfully downloading the file though. It doesn't look like awx passes any special credentials to galaxy, and the downloaded file appears to only be a few hundred bytes in size (according to the error dump).

Does anyone else already do this?

try something like this:

- name: git@github.com:ORG/REPO.git,main

OK, but what ssh key will that use? It's not a public repo.

Whichever one you set as the “SCM CREDENTIAL” on the project settings.

ERROR! Invalid collection name 'git@github.com:ORG/REPO.git,main', name must be in the format <namespace>.<collection>. Please make sure namespace and collection name contains characters from [a-zA-Z0-9_] only.

even with `type: git` beneath it. So I don't think it is recognising it as a git repo

Same for this, which is what works to actually clone the repo in question:

name: git@ssh.dev.azure.com:v3/ORG/PROJECT/repo

I had some time to look at this again. In ansible-galaxy 2.10 on my desktop, this works:

With awx 15.01 (comes with Ansible 2.9) it doesn’t recognise that as a valid collection name.

Also, I think I have to use SSH for the project, since nothing in awx is passing credentials to galaxy, so it would only be whatever ssh key is set up to sync the project.

So back to venvs to get a newer ansible, I guess.