mirror of
https://github.com/ansible/awx.git
synced 2026-06-27 09:28:01 -02:30
AAP-37080 Delete the cleanup_tokens system job template (#15711)
Delete the cleanup_tokens system job template
This commit is contained in:
@@ -3,7 +3,7 @@
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.db import migrations, models
|
||||
from awx.main.migrations._create_system_jobs import create_clearsessions_jt, create_cleartokens_jt
|
||||
from awx.main.migrations._create_system_jobs import create_clearsessions_jt
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
@@ -14,7 +14,7 @@ class Migration(migrations.Migration):
|
||||
operations = [
|
||||
# Schedule Analytics System Job Template
|
||||
migrations.RunPython(create_clearsessions_jt, migrations.RunPython.noop),
|
||||
migrations.RunPython(create_cleartokens_jt, migrations.RunPython.noop),
|
||||
# previously ran create_cleartokens_jt, logic for this has been removed
|
||||
migrations.AlterField(
|
||||
model_name='systemjob',
|
||||
name='job_type',
|
||||
|
||||
44
awx/main/migrations/0200_delete_token_cleanup_job.py
Normal file
44
awx/main/migrations/0200_delete_token_cleanup_job.py
Normal file
@@ -0,0 +1,44 @@
|
||||
# Generated by Django 4.2.16 on 2024-12-18 16:05
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
from awx.main.migrations._create_system_jobs import delete_clear_tokens_sjt
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('main', '0199_alter_oauth2application_unique_together_and_more'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.RunPython(delete_clear_tokens_sjt, migrations.RunPython.noop),
|
||||
migrations.AlterField(
|
||||
model_name='systemjob',
|
||||
name='job_type',
|
||||
field=models.CharField(
|
||||
blank=True,
|
||||
choices=[
|
||||
('cleanup_jobs', 'Remove jobs older than a certain number of days'),
|
||||
('cleanup_activitystream', 'Remove activity stream entries older than a certain number of days'),
|
||||
('cleanup_sessions', 'Removes expired browser sessions from the database'),
|
||||
],
|
||||
default='',
|
||||
max_length=32,
|
||||
),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='systemjobtemplate',
|
||||
name='job_type',
|
||||
field=models.CharField(
|
||||
blank=True,
|
||||
choices=[
|
||||
('cleanup_jobs', 'Remove jobs older than a certain number of days'),
|
||||
('cleanup_activitystream', 'Remove activity stream entries older than a certain number of days'),
|
||||
('cleanup_sessions', 'Removes expired browser sessions from the database'),
|
||||
],
|
||||
default='',
|
||||
max_length=32,
|
||||
),
|
||||
),
|
||||
]
|
||||
@@ -4,7 +4,7 @@ from django.utils.timezone import now
|
||||
|
||||
logger = logging.getLogger('awx.main.migrations')
|
||||
|
||||
__all__ = ['create_clearsessions_jt', 'create_cleartokens_jt']
|
||||
__all__ = ['create_clearsessions_jt', 'delete_clear_tokens_sjt']
|
||||
|
||||
'''
|
||||
These methods are called by migrations to create various system job templates
|
||||
@@ -46,33 +46,8 @@ def create_clearsessions_jt(apps, schema_editor):
|
||||
sched.save()
|
||||
|
||||
|
||||
def create_cleartokens_jt(apps, schema_editor):
|
||||
def delete_clear_tokens_sjt(apps, schema_editor):
|
||||
SystemJobTemplate = apps.get_model('main', 'SystemJobTemplate')
|
||||
Schedule = apps.get_model('main', 'Schedule')
|
||||
ContentType = apps.get_model('contenttypes', 'ContentType')
|
||||
sjt_ct = ContentType.objects.get_for_model(SystemJobTemplate)
|
||||
now_dt = now()
|
||||
schedule_time = now_dt.strftime('%Y%m%dT%H%M%SZ')
|
||||
|
||||
sjt, created = SystemJobTemplate.objects.get_or_create(
|
||||
job_type='cleanup_tokens',
|
||||
defaults=dict(
|
||||
name='Cleanup Expired OAuth 2 Tokens',
|
||||
description='Cleanup expired OAuth 2 access and refresh tokens',
|
||||
polymorphic_ctype=sjt_ct,
|
||||
created=now_dt,
|
||||
modified=now_dt,
|
||||
),
|
||||
)
|
||||
if created:
|
||||
sched = Schedule(
|
||||
name='Cleanup Expired OAuth 2 Tokens',
|
||||
rrule='DTSTART:%s RRULE:FREQ=WEEKLY;INTERVAL=1' % schedule_time,
|
||||
description='Removes expired OAuth 2 access and refresh tokens',
|
||||
enabled=True,
|
||||
created=now_dt,
|
||||
modified=now_dt,
|
||||
extra_data={},
|
||||
)
|
||||
sched.unified_job_template = sjt
|
||||
sched.save()
|
||||
for sjt in SystemJobTemplate.objects.filter(job_type='cleanup_tokens'):
|
||||
logger.info(f'Deleting system job template id={sjt.id} due to removal of local OAuth2 tokens')
|
||||
sjt.delete()
|
||||
|
||||
Reference in New Issue
Block a user