mirror of
https://github.com/ansible/awx.git
synced 2026-05-07 01:17:37 -02:30
Add logging and reduce migration to one operation
This commit is contained in:
committed by
Oleksii Baranov
parent
2d114a4d16
commit
46227f14a1
@@ -1,31 +0,0 @@
|
|||||||
# Generated by Django 3.2.16 on 2023-03-14 18:25
|
|
||||||
|
|
||||||
from django.db import migrations
|
|
||||||
|
|
||||||
from awx.main.models import CredentialType
|
|
||||||
|
|
||||||
|
|
||||||
class Migration(migrations.Migration):
|
|
||||||
def update_cyberark_ccp_name(apps, schema_editor):
|
|
||||||
CredentialType.setup_tower_managed_defaults(apps)
|
|
||||||
aim_types = apps.get_model('main', 'CredentialType').objects.filter(namespace='aim').order_by('id')
|
|
||||||
|
|
||||||
if aim_types.count() == 2:
|
|
||||||
original, renamed = aim_types.all()
|
|
||||||
apps.get_model('main', 'Credential').objects.filter(credential_type_id=original.id).update(credential_type_id=renamed.id)
|
|
||||||
original.delete()
|
|
||||||
|
|
||||||
def update_cyberark_conjur_name(apps, schema_editor):
|
|
||||||
CredentialType.setup_tower_managed_defaults(apps)
|
|
||||||
conjur_types = apps.get_model('main', 'CredentialType').objects.filter(namespace='conjur').order_by('id')
|
|
||||||
|
|
||||||
if conjur_types.count() == 2:
|
|
||||||
original, renamed = conjur_types.all()
|
|
||||||
apps.get_model('main', 'Credential').objects.filter(credential_type_id=original.id).update(credential_type_id=renamed.id)
|
|
||||||
original.delete()
|
|
||||||
|
|
||||||
dependencies = [
|
|
||||||
('main', '0176_inventorysource_scm_branch'),
|
|
||||||
]
|
|
||||||
|
|
||||||
operations = [migrations.RunPython(update_cyberark_ccp_name), migrations.RunPython(update_cyberark_conjur_name)]
|
|
||||||
18
awx/main/migrations/0179_change_cyberark_plugin_names.py
Normal file
18
awx/main/migrations/0179_change_cyberark_plugin_names.py
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
# Generated by Django 3.2.16 on 2023-03-16 15:16
|
||||||
|
from django.db import migrations
|
||||||
|
|
||||||
|
from awx.main.migrations._credentialtypes import migrate_credential_type
|
||||||
|
from awx.main.models import CredentialType
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
def update_cyberark_plugin_names(apps, schema_editor):
|
||||||
|
CredentialType.setup_tower_managed_defaults(apps)
|
||||||
|
migrate_credential_type(apps, 'aim')
|
||||||
|
migrate_credential_type(apps, 'conjur')
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
('main', '0178_instance_group_admin_migration'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [migrations.RunPython(update_cyberark_plugin_names)]
|
||||||
@@ -1,6 +1,9 @@
|
|||||||
|
import logging
|
||||||
|
|
||||||
from awx.main.models import CredentialType
|
from awx.main.models import CredentialType
|
||||||
from django.db.models import Q
|
from django.db.models import Q
|
||||||
|
|
||||||
|
logger = logging.getLogger('awx.main.migrations')
|
||||||
|
|
||||||
DEPRECATED_CRED_KIND = {
|
DEPRECATED_CRED_KIND = {
|
||||||
'rax': {
|
'rax': {
|
||||||
@@ -76,3 +79,14 @@ def add_tower_verify_field(apps, schema_editor):
|
|||||||
def remove_become_methods(apps, schema_editor):
|
def remove_become_methods(apps, schema_editor):
|
||||||
# this is no longer necessary; schemas are defined in code
|
# this is no longer necessary; schemas are defined in code
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
|
||||||
|
def migrate_credential_type(apps, namespace):
|
||||||
|
ns_types = apps.get_model('main', 'CredentialType').objects.filter(namespace=namespace).order_by('created')
|
||||||
|
if ns_types.count() == 2:
|
||||||
|
original, renamed = ns_types.all()
|
||||||
|
logger.info(f'There are credential types to migrate in the "{namespace}" namespace: {original.name}')
|
||||||
|
apps.get_model('main', 'Credential').objects.filter(credential_type_id=original.id).update(credential_type_id=renamed.id)
|
||||||
|
|
||||||
|
logger.info(f'Removing old credential type: {renamed.name}')
|
||||||
|
original.delete()
|
||||||
|
|||||||
Reference in New Issue
Block a user