From a454102e77febf6c6517090a3c2c1798b3e06ed7 Mon Sep 17 00:00:00 2001 From: Ryan Petrello Date: Thu, 13 Jun 2019 17:18:48 -0400 Subject: [PATCH] delete a few really old migration utility files --- awx/main/migrations/_ask_for_variables.py | 9 --- awx/main/migrations/_cleanup_deleted.py | 85 ----------------------- awx/main/migrations/_team_cleanup.py | 13 ---- 3 files changed, 107 deletions(-) delete mode 100644 awx/main/migrations/_ask_for_variables.py delete mode 100644 awx/main/migrations/_cleanup_deleted.py delete mode 100644 awx/main/migrations/_team_cleanup.py diff --git a/awx/main/migrations/_ask_for_variables.py b/awx/main/migrations/_ask_for_variables.py deleted file mode 100644 index 932849b638..0000000000 --- a/awx/main/migrations/_ask_for_variables.py +++ /dev/null @@ -1,9 +0,0 @@ -def migrate_credential(apps, schema_editor): - '''If credential is not currently present, set ask_for_credential_on_launch - equal to True, and otherwise leave it as the default False value. - ''' - JobTemplate = apps.get_model('main', 'JobTemplate') - for jt in JobTemplate.objects.iterator(): - if jt.credential is None: - jt.ask_credential_on_launch = True - jt.save() diff --git a/awx/main/migrations/_cleanup_deleted.py b/awx/main/migrations/_cleanup_deleted.py deleted file mode 100644 index 1a7e3cbb87..0000000000 --- a/awx/main/migrations/_cleanup_deleted.py +++ /dev/null @@ -1,85 +0,0 @@ -# Copyright (c) 2016 Ansible, Inc. -# All Rights Reserved. - -# Python -import logging - -# Django -from django.db import transaction -from django.utils.dateparse import parse_datetime - -def cleanup_deleted(apps, schema_editor): - logger = logging.getLogger('awx.main.migrations.cleanup_deleted') - - def cleanup_model(model): - - ''' - Presume the '_deleted_' string to be in the 'name' field unless considering the User model. - When considering the User model, presume the '_d_' string to be in the 'username' field. - ''' - logger.debug('cleaning up model %s', model) - - name_field = 'name' - name_prefix = '_deleted_' - active_field = None - n_deleted_items = 0 - for field in model._meta.fields: - if field.name in ('is_active', 'active'): - active_field = field.name - if field.name == 'is_active': # is User model - name_field = 'username' - name_prefix = '_d_' - if not active_field: - logger.warning('skipping model %s, no active field', model) - return n_deleted_items - qs = model.objects.filter(**{ - active_field: False, - '%s__startswith' % name_field: name_prefix, - }) - pks_to_delete = set() - for instance in qs.iterator(): - dt = parse_datetime(getattr(instance, name_field).split('_')[2]) - if not dt: - logger.warning('unable to find deleted timestamp in %s field', name_field) - else: - action_text = 'deleting' - logger.info('%s %s', action_text, instance) - n_deleted_items += 1 - instance.delete() - - # Cleanup objects in batches instead of deleting each one individually. - if len(pks_to_delete) >= 50: - model.objects.filter(pk__in=pks_to_delete).delete() - pks_to_delete.clear() - if len(pks_to_delete): - model.objects.filter(pk__in=pks_to_delete).delete() - return n_deleted_items - - logger = logging.getLogger('awx.main.commands.cleanup_deleted') - handler = logging.StreamHandler() - handler.setFormatter(logging.Formatter('%(message)s')) - logger.addHandler(handler) - logger.propagate = False - - with transaction.atomic(): - n_deleted_items = 0 - - models = [ - apps.get_model('auth', "User"), - apps.get_model('main', 'Credential'), - apps.get_model('main', 'CustomInventoryScript'), - apps.get_model('main', 'Group'), - apps.get_model('main', 'Host'), - apps.get_model('main', 'Inventory'), - apps.get_model('main', 'NotificationTemplate'), - apps.get_model('main', 'Organization'), - apps.get_model('main', 'Permission'), - apps.get_model('main', 'Schedule'), - apps.get_model('main', 'Team'), - apps.get_model('main', 'UnifiedJob'), - apps.get_model('main', 'UnifiedJobTemplate'), - ] - - for model in models: - n_deleted_items += cleanup_model(model) - logger.log(99, "Removed %d items", n_deleted_items) diff --git a/awx/main/migrations/_team_cleanup.py b/awx/main/migrations/_team_cleanup.py deleted file mode 100644 index 7c0db85309..0000000000 --- a/awx/main/migrations/_team_cleanup.py +++ /dev/null @@ -1,13 +0,0 @@ -# Python -import logging -from django.utils.encoding import smart_text - -logger = logging.getLogger('rbac_migrations') - -def migrate_team(apps, schema_editor): - '''If an orphan team exists that is still active, delete it.''' - Team = apps.get_model('main', 'Team') - for team in Team.objects.iterator(): - if team.organization is None: - logger.info(smart_text(u"Deleting orphaned team: {}".format(team.name))) - team.delete()