Skip to content
Snippets Groups Projects

Add timestamps to workflow and capability requests

Merged Daniel Lyons requested to merge add-created-updated-timestamps into main
3 files
+ 147
1
Compare changes
  • Side-by-side
  • Inline
Files
3
"""add created/updated timestamps to capability and workflow requests
Revision ID: 72cee10f1f0d
Revises: 50ff97fe0c2a
Create Date: 2021-03-10 10:30:01.160958
"""
from alembic import op
import sqlalchemy as sa
# revision identifiers, used by Alembic.
revision = "72cee10f1f0d"
down_revision = "50ff97fe0c2a"
branch_labels = None
depends_on = None
def upgrade():
op.add_column(
"capability_requests",
sa.Column(
"created_at",
sa.DateTime(timezone=True),
server_default=sa.func.now(),
nullable=False,
),
)
op.add_column(
"workflow_requests",
sa.Column(
"created_at",
sa.DateTime(timezone=True),
server_default=sa.func.now(),
nullable=False,
),
)
op.add_column(
"capability_requests",
sa.Column(
"updated_at",
sa.DateTime(timezone=True),
server_default=sa.func.now(),
nullable=False,
),
)
op.add_column(
"workflow_requests",
sa.Column(
"updated_at",
sa.DateTime(timezone=True),
server_default=sa.func.now(),
nullable=False,
),
)
op.execute(
"""
create or replace function update_updated_at_timestamp() RETURNS trigger LANGUAGE plpgsql AS $$
BEGIN
NEW.updated_at := current_timestamp;
RETURN NEW;
END;
$$;"""
)
op.execute(
"""
create trigger capability_request_updated
before update on capability_requests
for each row execute function update_updated_at_timestamp();"""
)
op.execute(
"""
create trigger workflow_request_updated
before update on workflow_requests
for each row execute function update_updated_at_timestamp();"""
)
def downgrade():
op.drop_column("capability_requests", "created_at")
op.drop_column("workflow_requests", "created_at")
op.drop_column("capability_requests", "updated_at")
op.drop_column("workflow_requests", "updated_at")
op.execute("drop trigger workflow_request_updated on workflow_requests")
op.execute("drop trigger capability_request_updated on capability_requests")
op.execute("drop function update_updated_at_timestamp")
Loading