Mercurial > libervia-backend
comparison libervia/backend/memory/migration/versions/8974efc51d22_create_tables_for_pubsub_caching.py @ 4071:4b842c1fb686
refactoring: renamed `sat` package to `libervia.backend`
author | Goffi <goffi@goffi.org> |
---|---|
date | Fri, 02 Jun 2023 11:49:51 +0200 |
parents | sat/memory/migration/versions/8974efc51d22_create_tables_for_pubsub_caching.py@d5116197e403 |
children | 0d7bb4df2343 |
comparison
equal
deleted
inserted
replaced
4070:d10748475025 | 4071:4b842c1fb686 |
---|---|
1 """create tables for Pubsub caching | |
2 | |
3 Revision ID: 8974efc51d22 | |
4 Revises: 602caf848068 | |
5 Create Date: 2021-07-27 16:38:54.658212 | |
6 | |
7 """ | |
8 from alembic import op | |
9 import sqlalchemy as sa | |
10 from libervia.backend.memory.sqla_mapping import JID, Xml | |
11 | |
12 | |
13 # revision identifiers, used by Alembic. | |
14 revision = '8974efc51d22' | |
15 down_revision = '602caf848068' | |
16 branch_labels = None | |
17 depends_on = None | |
18 | |
19 | |
20 def upgrade(): | |
21 # ### commands auto generated by Alembic - please adjust! ### | |
22 op.create_table('pubsub_nodes', | |
23 sa.Column('id', sa.Integer(), nullable=False), | |
24 sa.Column('profile_id', sa.Integer(), nullable=True), | |
25 sa.Column('service', JID(), nullable=True), | |
26 sa.Column('name', sa.Text(), nullable=False), | |
27 sa.Column('subscribed', sa.Boolean(create_constraint=True, name='subscribed_bool'), nullable=False), | |
28 sa.Column('analyser', sa.Text(), nullable=True), | |
29 sa.Column('sync_state', sa.Enum('IN_PROGRESS', 'COMPLETED', 'ERROR', 'NO_SYNC', name='sync_state', create_constraint=True), nullable=True), | |
30 sa.Column('sync_state_updated', sa.Float(), nullable=False), | |
31 sa.Column('type', sa.Text(), nullable=True), | |
32 sa.Column('subtype', sa.Text(), nullable=True), | |
33 sa.Column('extra', sa.JSON(), nullable=True), | |
34 sa.ForeignKeyConstraint(['profile_id'], ['profiles.id'], name=op.f('fk_pubsub_nodes_profile_id_profiles'), ondelete='CASCADE'), | |
35 sa.PrimaryKeyConstraint('id', name=op.f('pk_pubsub_nodes')), | |
36 sa.UniqueConstraint('profile_id', 'service', 'name', name=op.f('uq_pubsub_nodes_profile_id')) | |
37 ) | |
38 op.create_table('pubsub_items', | |
39 sa.Column('id', sa.Integer(), nullable=False), | |
40 sa.Column('node_id', sa.Integer(), nullable=False), | |
41 sa.Column('name', sa.Text(), nullable=False), | |
42 sa.Column('data', Xml(), nullable=False), | |
43 sa.Column('created', sa.DateTime(), server_default=sa.text('(CURRENT_TIMESTAMP)'), nullable=False), | |
44 sa.Column('updated', sa.DateTime(), server_default=sa.text('(CURRENT_TIMESTAMP)'), nullable=False), | |
45 sa.Column('parsed', sa.JSON(), nullable=True), | |
46 sa.ForeignKeyConstraint(['node_id'], ['pubsub_nodes.id'], name=op.f('fk_pubsub_items_node_id_pubsub_nodes'), ondelete='CASCADE'), | |
47 sa.PrimaryKeyConstraint('id', name=op.f('pk_pubsub_items')), | |
48 sa.UniqueConstraint('node_id', 'name', name=op.f('uq_pubsub_items_node_id')) | |
49 ) | |
50 # ### end Alembic commands ### | |
51 | |
52 | |
53 def downgrade(): | |
54 # ### commands auto generated by Alembic - please adjust! ### | |
55 op.drop_table('pubsub_items') | |
56 op.drop_table('pubsub_nodes') | |
57 # ### end Alembic commands ### |