# Foreign roles in AAP help

**URL:** <https://forum.ansible.com/t/foreign-roles-in-aap-help/43988>\
**Category:** Get Help\
**Tags:** aap\
**Created:** [July 22, 2025, 2:45pm UTC](https://forum.ansible.com/t/foreign-roles-in-aap-help/43988 "2025-07-22T14:45:37Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![carlyle705](https://sea1.discourse-cdn.com/ansible/user_avatar/forum.ansible.com/carlyle705/32/5552_2.png) [@carlyle705](https://forum.ansible.com/u/carlyle705)\
**Post date:** [July 22, 2025, 2:45pm UTC](https://forum.ansible.com/t/foreign-roles-in-aap-help/43988/1 "2025-07-22T14:45:37Z")

</div>

Folks, recently I experienced something weird. I’m using AAP2.4 and 2.5, it happens on both versions.

I have a github repository which contains a bunch if ansible roles and each role is a directory with proper role structure (default, meta, tasks, etc). When calling the roles from another ansible playbook located in a different repository, we need to have “roles/requirements.yml” defined, for example:

```auto
- src: https://github.com/my-org/roles-repo.git
scm: git
version: main
name: foreign

```

When calling the foreign role, we normally use this structure:

```auto
- name: calling foreign role 1
include role:
name: "{{ item }}"
loop:
- foreign/role1
- foreigh/role2
- ......

```

But in my case, it is not working. When I login to the controller, I discovered this folder structure:

```auto
|--foreign
   |--foreign
      |--role1
      |--role2
   default (Last foreign role default folder)
   meta (Last foreign role meta folder)
   tasks (Last foreign role tasks folder)

```

So when calling the foreign roles, I have to do this: (this is working in my case)

```auto
- foreign/foreign/role1
- foreign/foreign/role2

```

In order to let the AAP controller to put the last role into foreign/foreign/ folder, I have to add a fake role “zzz-fake-role” in the roles-repo repository and it becomes the last foreign role.

I’m I doing something wrong? Any help would be appreciated 🙂
