# Two namespaces created after migration to Galaxy NG

**URL:** <https://forum.ansible.com/t/two-namespaces-created-after-migration-to-galaxy-ng/2142>\
**Category:** Get Help\
**Tags:** galaxy-ng\
**Created:** [November 4, 2023, 9:13am UTC](https://forum.ansible.com/t/two-namespaces-created-after-migration-to-galaxy-ng/2142 "2023-11-04T09:13:06Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![karolpivo](https://sea1.discourse-cdn.com/ansible/user_avatar/forum.ansible.com/karolpivo/32/1417_2.png) [@karolpivo](https://forum.ansible.com/u/karolpivo)\
**Post date:** [November 4, 2023, 9:13am UTC](https://forum.ansible.com/t/two-namespaces-created-after-migration-to-galaxy-ng/2142/1 "2023-11-04T09:13:06Z")

</div>

Hi,

After Galaxy NG release there are two namespaces for our Org.

Original namespace: SlingNode  
New namespace: slingnode

We are ok to keep either but we can’t publish to SlingNode. We can publish to “slingnode” but when we install the role using

`ansible-galaxy role install slingnode.ethereum`

it installs the role from SlingNode namespace that we don’t have access to.

```auto
ansible-galaxy role info slingnode.ethereum

Role: slingnode.ethereum
        description: Deploy Ethereum nodes.
        commit: 4c7b5c2d7a5c2a83a9fc0e30921a9bb8bb51febf
        commit_message: add: Updated docker images (#138)
        created: 2023-05-08T21:37:33.265436Z
        download_count: 513
        github_branch: master
        github_repo: slingnode-ansible-ethereum
        github_user: SlingNode
        id: 26391
        imported: 2023-09-18T10:34:56.350051-04:00
        modified: 2023-10-29T18:46:27.193590Z
        path: ('/home/kp/.ansible/roles', '/usr/share/ansible/roles', '/etc/ansible/roles')
        upstream_id: 61821
        username: SlingNode

```

our github org is [SlingNode · GitHub](https://github.com/SlingNode/)

Can we please correct it ?

Thanks

---

<div class="post-metadata">

**Author:** ![tannerjc](https://sea1.discourse-cdn.com/ansible/user_avatar/forum.ansible.com/tannerjc/32/985_2.png) [@tannerjc](https://forum.ansible.com/u/tannerjc)\
**Post date:** [November 4, 2023, 3:47pm UTC](https://forum.ansible.com/t/two-namespaces-created-after-migration-to-galaxy-ng/2142/2 "2023-11-04T15:47:07Z")

</div>

I’ve bound [standalone SlingNode](https://galaxy.ansible.com/ui/standalone/namespaces/6445/) to [v3 slingnode](https://galaxy.ansible.com/ui/namespaces/slingnode) which grants you admin over the SlingNode namespace.

On old-galaxy the namespace was “slingnode” …

```auto
[jtanner@p1 ~]$ curl -s 'https://old-galaxy.ansible.com/api/v1/roles/?owner__username=slingnode&name=ethereum' | jq '.results[] | {"created":.created,"namespace":.summary_fields.namespace.name,"name":.name}'
{
  "created": "2023-03-24T16:17:14.238891Z",
  "namespace": "slingnode",
  "name": "ethereum"
}

```

In new galaxy as you’ve pointed out we have 2 …

```auto
[jtanner@p1 ~]$ curl -s 'https://galaxy.ansible.com/api/v1/roles/?owner__username=slingnode&name=ethereum' | jq '.results[] | {"created":.created,"namespace":.summary_fields.namespace.name,"name":.name}'
{
  "created": "2023-05-08T21:37:33.265436Z",
  "namespace": "SlingNode",
  "name": "ethereum"
}
{
  "created": "2023-11-04T08:00:02.097492Z",
  "namespace": "slingnode",
  "name": "ethereum"
}

```

Installing slingnode.etherium comes from the first because that one was created first on new galaxy (via a previously incorrect sync logic). I’m not sure why imports are going to the new “slingnode” … are you perhaps doing `ansible-galaxy role import slingnode slingnode-ansible-ethereum` instead of `ansible-galaxy role import SlingNode slingnode-ansible-ethereum` ?

If we want roles to import and install from the second lowercase “slingnode” instead, it’d be best to delete the roles in “SlingNode” and then also delete the “SlingNode” namespace. However, it would be more technically correct to use “SlingNode” as the true namespace name since that is the true github username, which would mean deleting the roles in “slingnode” and then also deleting “slingnode”.

I’m not sure which path you’d like to go down, but in my opinion we should keep “SlingNode” and delete “slingnode” per the documentation I wrote in [Changing Roles](https://ansible.readthedocs.io/projects/galaxy-ng/en/latest/community/userguide/#changing-roles)

Do you have a preference? In either case, you are able to delete the ones you don’t want via [deleting roles](https://ansible.readthedocs.io/projects/galaxy-ng/en/latest/community/userguide/#changing-the-namespace-name-or-the-github_user)

---

<div class="post-metadata">

**Author:** ![karolpivo](https://sea1.discourse-cdn.com/ansible/user_avatar/forum.ansible.com/karolpivo/32/1417_2.png) [@karolpivo](https://forum.ansible.com/u/karolpivo)\
**Post date:** [November 4, 2023, 4:46pm UTC](https://forum.ansible.com/t/two-namespaces-created-after-migration-to-galaxy-ng/2142/3 "2023-11-04T16:46:34Z")

</div>

Hi,

thanks for the reply.

I agree we should keep “SlingNode”. Please delete the lowercase “slingnode”.

After our imports to SlingNode stopped working (when we lost the admin access), we changed the import jobs to go to “slingnode” which worked, but then we couldn’t install the roles.

In summary, let’s keep “SlingNode” that matches the Github username and delete “slingnode”.

I have deleted all roles from “slingnode” and I have successfully published new versions to SlingNode.

Thank you

---

<div class="post-metadata">

**Author:** ![tannerjc](https://sea1.discourse-cdn.com/ansible/user_avatar/forum.ansible.com/tannerjc/32/985_2.png) [@tannerjc](https://forum.ansible.com/u/tannerjc)\
**Post date:** [November 5, 2023, 1:29am UTC](https://forum.ansible.com/t/two-namespaces-created-after-migration-to-galaxy-ng/2142/4 "2023-11-05T01:29:43Z")

</div>

The “slingnode” namespace has been deleted.
