Skip to content
Snippets Groups Projects
  • Alexander Pace's avatar
    25e355e1
    Two migrations: · 25e355e1
    Alexander Pace authored
        - 0052_update_gstlalcbc_O3b_cert.py: gstlalcbc was issued a new cert at CIT.
          I manually migrated on production and playground, but i'm backing up the
          migration here.
        - 0005_add_coinc_far_and_em_type.py: snapshotting the migration for the new
          `em_coinc` and `em_type` data fields. This will most likely change.
    25e355e1
    History
    Two migrations:
    Alexander Pace authored
        - 0052_update_gstlalcbc_O3b_cert.py: gstlalcbc was issued a new cert at CIT.
          I manually migrated on production and playground, but i'm backing up the
          migration here.
        - 0005_add_coinc_far_and_em_type.py: snapshotting the migration for the new
          `em_coinc` and `em_type` data fields. This will most likely change.
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
0052_update_gstlalcbc_O3b_cert.py 1.25 KiB
# -*- coding: utf-8 -*-
# Generated by Django 1.11.20 on 2019-06-03 20:10
from __future__ import unicode_literals

from django.db import migrations

# The new cert and subject line came as a result of gstlalcbc's old 
# certificate expiring on Oct 1, 2019. The new cert was generated 
# on Oct 7, 2019 and expires Oct 7, 2020. So this one should get 
# through O3b.

ACCOUNT = {
    'name': 'gstlalcbc',
    'new_cert': '/DC=org/DC=cilogon/C=US/O=LIGO/OU=Robots/CN=cbc.ligo.caltech.edu/CN=gstlalcbc/CN=Chad Hanna/CN=UID:chad.hanna.robot',
}


def add_cert(apps, schema_editor):
    RobotUser = apps.get_model('auth', 'User')

    # Get user
    user = RobotUser.objects.get(username=ACCOUNT['name'])

    # Create new certificate
    user.x509cert_set.create(subject=ACCOUNT['new_cert'])


def delete_cert(apps, schema_editor):
    RobotUser = apps.get_model('ligoauth', 'RobotUser')

    # Get user
    user = RobotUser.objects.get(username=ACCOUNT['name'])

    # Delete new certificate
    cert = user.x509cert_set.get(subject=ACCOUNT['new_cert'])
    cert.delete()


class Migration(migrations.Migration):

    dependencies = [
        ('ligoauth', '0051_populate_grb_managers_authgroup'),
    ]

    operations = [
        migrations.RunPython(add_cert, delete_cert),
    ]