Compare commits

...

2 Commits

Author SHA1 Message Date
eea11ef5ba Changed serializer and added new values to views 2020-11-19 23:49:46 -05:00
2544b3a4cc Updated model to suit @pepper 2020-11-19 23:49:26 -05:00
7 changed files with 63 additions and 16 deletions

View File

@ -5,8 +5,8 @@ from .models import Migration
class MigrationAdmin(admin.ModelAdmin): class MigrationAdmin(admin.ModelAdmin):
list_display = ('migration_status', 'booked_time', list_display = ('ticket_id', 'booked_date' , 'booked_time',
'ticket_id', 'domain', 'brand', 'print_missed_migrations') 'migration_status', 'domain', 'brand')
search_fields = ['domain', 'booked_time', search_fields = ['domain', 'booked_time',
'username', 'ticket_id', 'migration_status'] 'username', 'ticket_id', 'migration_status']

View File

@ -0,0 +1,18 @@
# Generated by Django 3.1.3 on 2020-11-18 01:40
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('api', '0011_migration_migration_cmd'),
]
operations = [
migrations.AddField(
model_name='migration',
name='extra_scripts_run',
field=models.BooleanField(default=False),
),
]

View File

@ -0,0 +1,25 @@
# Generated by Django 3.1.3 on 2020-11-20 03:48
from django.db import migrations, models
import django.utils.timezone
class Migration(migrations.Migration):
dependencies = [
('api', '0012_migration_extra_scripts_run'),
]
operations = [
migrations.AddField(
model_name='migration',
name='booked_date',
field=models.DateField(default=django.utils.timezone.now, verbose_name='Migration booked for'),
preserve_default=False,
),
migrations.AlterField(
model_name='migration',
name='booked_time',
field=models.CharField(max_length=200),
),
]

View File

@ -11,7 +11,8 @@ class Migration(models.Model):
default=uuid.uuid4, primary_key=True) default=uuid.uuid4, primary_key=True)
submit_time = models.DateField('migrtation submitted on') submit_time = models.DateField('migrtation submitted on')
domain = models.CharField(max_length=200) domain = models.CharField(max_length=200)
booked_time = models.DateTimeField('Migration booked for') booked_date = models.DateField('Migration booked for')
booked_time = models.CharField(max_length=200)
original_server = models.CharField(max_length=200) original_server = models.CharField(max_length=200)
new_server = models.CharField(max_length=200) new_server = models.CharField(max_length=200)
username = models.CharField(max_length=200) username = models.CharField(max_length=200)
@ -27,14 +28,14 @@ class Migration(models.Model):
'Date to be terminated', null=True, blank=True) 'Date to be terminated', null=True, blank=True)
migration_cmd = models.CharField(max_length=200, null=True, blank=True) migration_cmd = models.CharField(max_length=200, null=True, blank=True)
is_urgent = models.BooleanField(default=False) is_urgent = models.BooleanField(default=False)
# extra_scripts_run = models.BooleanField(default=False) extra_scripts_run = models.BooleanField(default=False)
def print_missed_migrations(self): # def print_missed_migrations(self):
now = timezone.now() # now = timezone.date()
return now >= self.booked_time and self.migration_status == 'Booked' # return now >= self.booked_date and self.migration_status == 'Booked'
print_missed_migrations.admin_order_field = 'booked_time' # print_missed_migrations.admin_order_field = 'booked_time'
print_missed_migrations.boolean = True # print_missed_migrations.boolean = True
print_missed_migrations.short_description = "Was this migration missed?" # print_missed_migrations.short_description = "Was this migration missed?"
def __str__(self): def __str__(self):
return self.domain + ' ' + self.ticket_id return self.domain + ' ' + self.ticket_id

View File

@ -6,6 +6,7 @@ class MigrationOverView(serializers.ModelSerializer):
model = Migration model = Migration
fields = ['id', fields = ['id',
'domain', 'domain',
'booked_date',
'booked_time', 'booked_time',
'migration_status', 'migration_status',
'term_date'] 'term_date']
@ -16,6 +17,7 @@ class MigrationSerializer(serializers.ModelSerializer):
fields = ['id', fields = ['id',
'submit_time', 'submit_time',
'domain', 'domain',
'booked_date',
'booked_time', 'booked_time',
'original_server', 'original_server',
'new_server', 'new_server',
@ -28,4 +30,5 @@ class MigrationSerializer(serializers.ModelSerializer):
'additional_domains', 'additional_domains',
'migration_type', 'migration_type',
'term_date', 'term_date',
'migration_cmd'] 'migration_cmd',
'extra_scripts_run']

View File

@ -74,7 +74,7 @@ class MigrationsBooked(APIView):
''' '''
def get(self, request, format=None): def get(self, request, format=None):
limit = checkLimit(request.GET.get('limit', '')) limit = checkLimit(request.GET.get('limit', ''))
migrations = MigrationOverView(Migration.objects.filter( migrations = MigrationSerializer(Migration.objects.filter(
migration_status="Booked",)[:limit], many=True) migration_status="Booked",)[:limit], many=True)
return Response(migrations.data, status=status.HTTP_200_OK) return Response(migrations.data, status=status.HTTP_200_OK)

View File

@ -25,7 +25,7 @@ SECRET_KEY = 'cq3daur*kk2+*-)@s%wq1c+pc7xi-c1ig@-%wq)m7pn3+zxbre'
# SECURITY WARNING: don't run with debug turned on in production! # SECURITY WARNING: don't run with debug turned on in production!
DEBUG = True DEBUG = True
ALLOWED_HOSTS = ['10.6.9.42', 'benjamyn.love', 'localhost'] ALLOWED_HOSTS = ['10.6.9.32', 'benjamyn.love', 'localhost']
# Application definition # Application definition
@ -80,9 +80,9 @@ WSGI_APPLICATION = 'migratorapi.wsgi.application'
DATABASES = { DATABASES = {
'default': { 'default': {
'ENGINE': 'django.db.backends.mysql', 'ENGINE': 'django.db.backends.mysql',
'NAME': 'devmigs', 'NAME': 'newDevAPI',
'USER': 'devmig', 'USER': 'devAPI',
'PASSWORD': 'XXgDh1i6w8rqp4BG', 'PASSWORD': 'Pat9Mnug2LO1SZMq',
'HOST': '127.0.0.1', 'HOST': '127.0.0.1',
'PORT': '3306', 'PORT': '3306',
} }