Skip to content
Snippets Groups Projects
Commit 4c6d3b21 authored by Tanner Prestegard's avatar Tanner Prestegard Committed by GraceDB
Browse files

Create account and update cert for geo-ext-trig

parent e102ef5a
No related branches found
No related tags found
No related merge requests found
# -*- coding: utf-8 -*-
# Generated by Django 1.11.18 on 2019-01-24 03:04
from __future__ import unicode_literals
from django.db import migrations
OLD = {
'username': 'gerrit.kuehn@LIGO.ORG',
'cert': '/DC=org/DC=ligo/O=LIGO/OU=Services/CN=ext-alert/geo-ws4.geo.rt.aei.uni-hannover.de',
}
ACCOUNT = {
'username': 'geo-ext-trig',
'email': 'gerrit.kuehn@ligo.org',
'first_name': '',
'last_name': 'GEO Ext-Trig',
}
NEW_CERT = '/DC=org/DC=cilogon/C=US/O=LIGO/OU=Robots/CN=geo-ws4.geo.rt.aei.uni-hannover.de/CN=geo-ext_alert/CN=Gerrit Kuehn/CN=UID:gerrit.kuehn.robot'
def add_account_and_update_certs(apps, schema_editor):
RobotUser = apps.get_model('ligoauth', 'RobotUser')
X509Cert = apps.get_model('ligoauth', 'X509Cert')
# Delete old_cert
old_cert = X509Cert.objects.filter(subject=OLD['cert'])
if old_cert.exists():
# Cert does not appear to be in the previous migrations
old_cert.delete()
# Create new user
user = RobotUser.objects.create(**ACCOUNT)
# Create new certificate
user.x509cert_set.create(subject=NEW_CERT)
def remove_account_and_revert_certs(apps, schema_editor):
User = apps.get_model('auth', 'User')
RobotUser = apps.get_model('ligoauth', 'RobotUser')
# Get previous user
user = User.objects.get(username=OLD['username'])
# Don't create old cert since it's expired anyway
#user.x509cert_set.create(subject=OLD['cert'])
# Delete new account and certs
new_user = RobotUser.objects.get(username=ACCOUNT['username'])
new_cert = new_user.x509cert_set.get(subject=NEW_CERT)
new_cert.delete()
new_user.user_ptr.delete()
class Migration(migrations.Migration):
dependencies = [
('ligoauth', '0022_update_olib_certs'),
]
operations = [
migrations.RunPython(add_account_and_update_certs,
remove_account_and_revert_certs),
]
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment