ACA-6528 Role Team assignment support EDA assignments with name - #205
ACA-6528 Role Team assignment support EDA assignments with name#205rohitthakur2590 wants to merge 13 commits into
Conversation
ed2bede to
47c8191
Compare
CasC NotificationThis PR touches areas that may affect the CasC collections (e.g. infra.aap_configuration). Detected changes in CasC-monitored areas:
Please tag the CasC collections team in this PR so they are aware of the change.
|
Signed-off-by: Rohit Thakur <rothakur1210@gmail.com>
CasC NotificationThis PR touches areas that may affect the CasC collections (e.g. infra.aap_configuration). Detected changes in CasC-monitored areas:
Please tag the CasC collections team in this PR so they are aware of the change.
|
CasC NotificationThis PR touches areas that may affect the CasC collections (e.g. infra.aap_configuration). Detected changes in CasC-monitored areas:
Please tag the CasC collections team in this PR so they are aware of the change.
|
CasC NotificationThis PR touches areas that may affect the CasC collections (e.g. infra.aap_configuration). Detected changes in CasC-monitored areas:
Please tag the CasC collections team in this PR so they are aware of the change.
|
CasC NotificationThis PR touches areas that may affect the CasC collections (e.g. infra.aap_configuration). Detected changes in CasC-monitored areas:
Please tag the CasC collections team in this PR so they are aware of the change.
|
CasC NotificationThis PR touches areas that may affect the CasC collections (e.g. infra.aap_configuration). Detected changes in CasC-monitored areas:
Please tag the CasC collections team in this PR so they are aware of the change.
|
CasC NotificationThis PR touches areas that may affect the CasC collections (e.g. infra.aap_configuration). Detected changes in CasC-monitored areas:
Please tag the CasC collections team in this PR so they are aware of the change.
|
CasC NotificationThis PR touches areas that may affect the CasC collections (e.g. infra.aap_configuration). Detected changes in CasC-monitored areas:
Please tag the CasC collections team in this PR so they are aware of the change.
|
|
DVCS PR Check Results: Could not find JIRA key(s) in PR title, branch name, or commit messages |
CasC NotificationThis PR touches areas that may affect the CasC collections (e.g. infra.aap_configuration). Detected changes in CasC-monitored areas:
Please tag the CasC collections team in this PR so they are aware of the change.
|
Description
- What is being changed?
plugins/action/role_team_assignment.py: Added _FULL_TYPE_OVERRIDES dict and eda_projects endpoint key to _SERVICE_LOOKUP_PATH_MAP. Updated _get_expected_endpoint() to check full content type overrides before falling back to suffix-based lookup.$encrypted$ false-positive on password comparison; aligned update_secrets behavior with stable-2.6 semantics.
plugins/modules/role_team_assignment.py: Documented eda_projects as the correct type value for EDA project assignments, with explicit note that projects routes to Controller.
plugins/action/role_definition.py / related: Corrected valid EDA project permissions — eda.sync_project (not eda.use_project), eda.view_rulebook included.
plugins/action/user.py: Fixed
Integration tests (role_team_assignments_test, role_definitions_test) and molecule converge updated to cover EDA project lifecycle.
- Why is this change needed?
EDA projects (eda.project) and Controller projects (awx.project) both use the suffix project, causing the assignment module to resolve both to the same endpoint (/api/controller/v2/projects/). This means any attempt to assign a role scoped to an EDA project would silently target Controller instead, returning a wrong resource lookup or a 404.
This blocks the use case described in ACA-6206 / AAPRFE-2614: teams and users cannot be granted role-based access to EDA projects through ansible.platform collection CaC playbooks.
- How does this change address the issue?
The suffix-based endpoint resolution (project → projects) is now short-circuited by a full content type override map. When content_type is exactly eda.project, the module routes to eda_projects → /api/eda/v1/projects/ instead of falling through to projects → /api/controller/v2/projects/. Controller project assignments (awx.project) are unaffected and continue routing correctly.
The fix is covered by integration tests that create an EDA project, define a role scoped to eda.project, assign it using type: eda_projects, verify idempotency, and clean up — all against a live Gateway.
Assisted By: Claude Code Sonet 4.6
Type of Change
Self-Review Checklist
meta/routing.yml)deprecated:block inDOCUMENTATIONwith removal versionTesting Instructions
Prerequisites
Steps to Test
Expected Results
Additional Context
Required Actions
CasC Notification
Screenshots/Logs