diff --git a/.gitattributes b/.gitattributes index 11b6d8ff8aab957ea864c81e91d2ff26989a1e01..7e05dac0224b28a66d9e5fcea345eb88dd6dde1f 100644 --- a/.gitattributes +++ b/.gitattributes @@ -4245,7 +4245,7 @@ SAS/LSMR/src/lsmr/lsmrapp/__init__.py -text SAS/LSMR/src/lsmr/lsmrapp/admin.py -text SAS/LSMR/src/lsmr/lsmrapp/apps.py -text SAS/LSMR/src/lsmr/lsmrapp/migrations/0001_initial.py -text -SAS/LSMR/src/lsmr/lsmrapp/migrations/0002_auto_20180802_1653.py -text +SAS/LSMR/src/lsmr/lsmrapp/migrations/0002_auto_20180905_1530.py -text SAS/LSMR/src/lsmr/lsmrapp/migrations/0003_populate.py -text SAS/LSMR/src/lsmr/lsmrapp/migrations/CMakeLists.txt -text SAS/LSMR/src/lsmr/lsmrapp/migrations/__init__.py -text diff --git a/SAS/LSMR/src/lsmr/lsmrapp/migrations/0002_auto_20180802_1653.py b/SAS/LSMR/src/lsmr/lsmrapp/migrations/0002_auto_20180905_1530.py similarity index 99% rename from SAS/LSMR/src/lsmr/lsmrapp/migrations/0002_auto_20180802_1653.py rename to SAS/LSMR/src/lsmr/lsmrapp/migrations/0002_auto_20180905_1530.py index 060a10a0197f7c3df1ae3110f5db2851eae25318..50cbdd8d9083a601e08dbd1021a65b8068388d8d 100644 --- a/SAS/LSMR/src/lsmr/lsmrapp/migrations/0002_auto_20180802_1653.py +++ b/SAS/LSMR/src/lsmr/lsmrapp/migrations/0002_auto_20180905_1530.py @@ -1,4 +1,4 @@ -# Generated by Django 2.0.6 on 2018-08-02 16:53 +# Generated by Django 2.0.6 on 2018-09-05 15:30 import django.contrib.postgres.fields import django.contrib.postgres.fields.jsonb diff --git a/SAS/LSMR/src/lsmr/lsmrapp/migrations/0003_populate.py b/SAS/LSMR/src/lsmr/lsmrapp/migrations/0003_populate.py index 150dc5bf1761b74ee59a322a712786d5124521d9..a04814750485b9a2c7a1ca87fe0d81e4dad227f3 100644 --- a/SAS/LSMR/src/lsmr/lsmrapp/migrations/0003_populate.py +++ b/SAS/LSMR/src/lsmr/lsmrapp/migrations/0003_populate.py @@ -6,7 +6,7 @@ from ..populate import * class Migration(migrations.Migration): dependencies = [ - ('lsmrapp', '0002_auto_20180802_1653'), + ('lsmrapp', '0002_auto_20180905_1530'), ] operations = [ migrations.RunPython(populate_choices) ] diff --git a/SAS/LSMR/src/lsmr/lsmrapp/models/scheduling.py b/SAS/LSMR/src/lsmr/lsmrapp/models/scheduling.py index 69c9a0f1789561a5cd9b060eae62d8a593c23f62..0723083f85029b3aedb5798f3ffa4eae96a90a9b 100644 --- a/SAS/LSMR/src/lsmr/lsmrapp/models/scheduling.py +++ b/SAS/LSMR/src/lsmr/lsmrapp/models/scheduling.py @@ -2,9 +2,10 @@ This file contains the database models """ -from django.db.models import Model, CharField, DateTimeField, BooleanField, ForeignKey, CASCADE, IntegerField, SET_NULL, PROTECT, ManyToManyField +from django.db.models import ForeignKey, CharField, DateTimeField, BooleanField, IntegerField, ManyToManyField, \ + CASCADE, SET_NULL, PROTECT from django.contrib.postgres.fields import ArrayField, JSONField -from .specification import AbstractChoice, BasicCommon, Template, NamedCommon, WorkRequestBlueprint +from .specification import AbstractChoice, BasicCommon, Template, NamedCommon # , WorkRequestBlueprint from enum import Enum @@ -49,7 +50,7 @@ class TaskTypeChoice(AbstractChoice): class Choices(Enum): OBSERVATION = "observation" PIPELINE = "pipeline" - COYP = "copy" + COPY = "copy" INSPECTION = "inspection" DELETION = "deletion" @@ -72,13 +73,16 @@ class TaskTemplate(Template): queue = BooleanField(default=False) realtime = BooleanField(default=False) + class DefaultTaskTemplate(BasicCommon): name = CharField(max_length=30, unique=True) template = ForeignKey('TaskTemplate', on_delete=PROTECT) + class DataproductSpecificationTemplate(Template): pass + class DefaultDataproductSpecificationTemplate(BasicCommon): name = CharField(max_length=30, unique=True) template = ForeignKey('DataproductSpecificationTemplate', on_delete=PROTECT) @@ -97,7 +101,7 @@ class Task(BasicCommon): specification = JSONField() work_request_blueprint = ForeignKey('WorkRequestBlueprint', null=True, on_delete=SET_NULL) template = ForeignKey('TaskTemplate', null=False, on_delete=CASCADE) - #resource_claim = ForeignKey("ResourceClaim", null=False, on_delete=CASCADE) # todo <-- how is this external reference supposed to work? + # resource_claim = ForeignKey("ResourceClaim", null=False, on_delete=CASCADE) # todo <-- how is this external reference supposed to work? class DataproductRelation(BasicCommon): diff --git a/SAS/LSMR/src/lsmr/urls.py b/SAS/LSMR/src/lsmr/urls.py index d28700a64addb39e9bf16f7d23ff826ce505cd14..6a2bd93b01e26e6931ebc788c5073261bf1e62ae 100644 --- a/SAS/LSMR/src/lsmr/urls.py +++ b/SAS/LSMR/src/lsmr/urls.py @@ -35,7 +35,7 @@ urlpatterns = [ # REST Router # -router = routers.SimpleRouter() +router = routers.DefaultRouter() router.register(r'tags', viewsets.TagsViewSet) # SPECIFICATION diff --git a/SAS/LSMR/src/remakemigrations.py b/SAS/LSMR/src/remakemigrations.py index 221d2e677eaa328a79bec481473745a62690d439..12599d8341c2369cfc700292717c1cb5b73d47d5 100755 --- a/SAS/LSMR/src/remakemigrations.py +++ b/SAS/LSMR/src/remakemigrations.py @@ -25,13 +25,13 @@ class Migration(migrations.Migration): def execute_and_log(cmd): - logger.info('Executing: %s' % cmd) + logger.info('COMMAND: %s' % cmd) p = sp.Popen(cmd, shell=True, stdout=sp.PIPE, stderr=sp.PIPE) out, err = p.communicate() if out is not None: - logger.info("STDOUT: %s" % out) + logger.info("STDOUT: %s" % out.decode('utf-8').strip()) if err is not None: - logger.info("STDERR: %s" % err) + logger.info("STDERR: %s" % err.decode('utf-8').strip()) def delete_old_migrations(): @@ -39,7 +39,7 @@ def delete_old_migrations(): files = glob_migrations() for f in [path for path in files if ("auto" in path or "populate" in path)]: - logger.info('...deleting %s' % f) + logger.info('Deleting: %s' % f) os.remove(f) execute_and_log('svn rm %s' % f) @@ -56,7 +56,7 @@ def make_populate_migration(): migration = template % last_migration path = here + relapath + '%s_populate.py' % str(int(last_migration.split('_')[0])+1).zfill(4) - logger.info('...writing to %s' % path) + logger.info('Writing to: %s' % path) with open(path,'w') as f: f.write(migration) @@ -72,7 +72,7 @@ def determine_last_migration(): files = [os.path.basename(path) for path in files] f = max(files) last_migration = f.split('.py')[0] - logger.info('...determined last migration: %s' % last_migration) + logger.info('Determined last migration: %s' % last_migration) return last_migration