diff --git a/awx/main/migrations/_credentialtypes.py b/awx/main/migrations/_credentialtypes.py index 69a45f9fb8..948a4f5a73 100644 --- a/awx/main/migrations/_credentialtypes.py +++ b/awx/main/migrations/_credentialtypes.py @@ -125,6 +125,11 @@ def migrate_to_v2_credentials(apps, schema_editor): if any([getattr(cred, field) for field in ssh_type.defined_fields]): new_cred.save(force_insert=True) + # copy parent roles + for role_type in ('read_role', 'admin_role', 'use_role'): + for role in getattr(cred, role_type).parents.all(): + getattr(new_cred, role_type).parents.add(role) + for jt in job_templates: jt.credential = new_cred jt.save()