Convert some datetime columns to include timezone

This commit is contained in:
Kelly McDonald 2021-04-28 10:00:22 -04:00
parent 71a63c049d
commit c029dad688
3 changed files with 32 additions and 2 deletions

View File

@ -5,6 +5,7 @@ from crc import db, ma
from crc.models.study import StudyModel, StudySchema, WorkflowMetadataSchema, WorkflowMetadata
from crc.models.workflow import WorkflowModel
from crc.services.ldap_service import LdapService
from sqlalchemy import func
class TaskEventModel(db.Model):
@ -27,7 +28,7 @@ class TaskEventModel(db.Model):
mi_count = db.Column(db.Integer)
mi_index = db.Column(db.Integer)
process_name = db.Column(db.String)
date = db.Column(db.DateTime)
date = db.Column(db.DateTime(timezone=True),default=func.now())
class TaskEventModelSchema(SQLAlchemyAutoSchema):

View File

@ -3,6 +3,7 @@ import enum
import marshmallow
from marshmallow import EXCLUDE
from marshmallow_sqlalchemy import SQLAlchemyAutoSchema
from sqlalchemy import func
from crc import db
from crc.models.file import FileModel, FileDataModel
@ -87,7 +88,7 @@ class WorkflowModel(db.Model):
workflow_spec = db.relationship("WorkflowSpecModel")
total_tasks = db.Column(db.Integer, default=0)
completed_tasks = db.Column(db.Integer, default=0)
last_updated = db.Column(db.DateTime)
last_updated = db.Column(db.DateTime(timezone=True),default=func.now())
# Order By is important or generating hashes on reviews.
dependencies = db.relationship(WorkflowSpecDependencyFile, cascade="all, delete, delete-orphan",
order_by="WorkflowSpecDependencyFile.file_data_id")

View File

@ -0,0 +1,28 @@
"""update type on task_events table and workflow table
Revision ID: abeffe547305
Revises: 665624ac29f1
Create Date: 2021-04-28 08:51:16.220260
"""
from alembic import op
import sqlalchemy as sa
# revision identifiers, used by Alembic.
revision = 'abeffe547305'
down_revision = '665624ac29f1'
branch_labels = None
depends_on = None
def upgrade():
op.execute("alter table task_event alter column date type timestamp with time zone")
op.execute("alter table workflow alter column last_updated type timestamp with time zone")
pass
def downgrade():
op.execute("alter table task_event alter column date type timestamp without time zone")
op.execute("alter table workflow alter column last_updated type timestamp without time zone")
pass