Esempio n. 1
0
def upgrade():
    # ### commands auto generated by Alembic - please adjust! ###
    op.create_table('blacklist_tokens',
    sa.Column('id', sa.Integer(), autoincrement=True, nullable=False),
    sa.Column('token', sa.String(length=500), nullable=False),
    sa.Column('blacklisted_on', sa.DateTime(), nullable=True),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_index(op.f('ix_blacklist_tokens_token'), 'blacklist_tokens', ['token'], unique=True)
    op.create_table('movies',
    sa.Column('id', models.GUID(length=32), nullable=False),
    sa.Column('name', sa.String(length=80), nullable=False),
    sa.Column('director', sa.String(length=80), nullable=False),
    sa.Column('popularity', mysql.FLOAT(precision=10, scale=1), nullable=True),
    sa.Column('genre', sa.Text(), nullable=False),
    sa.Column('imdb_score', mysql.FLOAT(precision=10, scale=1), nullable=True),
    sa.Column('views', sa.Integer(), nullable=True),
    sa.Column('created_by', models.GUID(length=32), nullable=True),
    sa.Column('updated_by', models.GUID(length=32), nullable=True),
    sa.Column('created_at', sa.DateTime(), nullable=True),
    sa.Column('updated_at', sa.DateTime(), nullable=True),
    sa.ForeignKeyConstraint(['created_by'], ['admin_users.id'], ),
    sa.ForeignKeyConstraint(['updated_by'], ['admin_users.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_index(op.f('ix_movies_director'), 'movies', ['director'], unique=False)
    op.create_index(op.f('ix_movies_name'), 'movies', ['name'], unique=False)
def upgrade():
    # ### commands auto generated by Alembic - please adjust! ###
    op.create_table(
        'crons', sa.Column('id', models.GUID(), nullable=False),
        sa.Column('webapp_id', models.GUID(), nullable=True),
        sa.Column('command', sa.String(length=256), nullable=False),
        sa.Column('hour', sa.String(length=256), nullable=True),
        sa.Column('minute', sa.String(length=256), nullable=True),
        sa.Column('month', sa.String(length=256), nullable=True),
        sa.Column('month_day', sa.String(length=256), nullable=True),
        sa.Column('week_day', sa.String(length=256), nullable=True),
        sa.Column('created_at', sa.DateTime(), nullable=True),
        sa.Column('updated_at', sa.DateTime(), nullable=True),
        sa.ForeignKeyConstraint(
            ['webapp_id'],
            ['webapps.id'],
        ), sa.PrimaryKeyConstraint('id'), sa.UniqueConstraint('id'))
def upgrade():
    # ### commands auto generated by Alembic - please adjust! ###
    op.create_table('users',
    sa.Column('id', sa.String(length=32), nullable=False),
    sa.Column('name', sa.String(length=255), nullable=False),
    sa.PrimaryKeyConstraint('id'),
    sa.UniqueConstraint('id'),
    sa.UniqueConstraint('name')
    )
    op.create_table('tosses',
    sa.Column('id', models.GUID(), nullable=False),
    sa.Column('elected', sa.String(length=32), nullable=True),
    sa.Column('excludes', sa.String(length=255), nullable=True),
    sa.Column('name', sa.String(length=255), nullable=True),
    sa.Column('created_at', sa.DateTime(), nullable=True),
    sa.ForeignKeyConstraint(['elected'], ['users.id'], ),
    sa.PrimaryKeyConstraint('id'),
    sa.UniqueConstraint('id')
    )
def upgrade():
    # ### commands auto generated by Alembic - please adjust! ###
    op.add_column('capsules',
                  sa.Column('delegate_fqdns', sa.Boolean(), nullable=False))
    op.add_column('capsules',
                  sa.Column('delegate_tls', sa.Boolean(), nullable=False))
    op.add_column('capsules', sa.Column('tls_crt', sa.Text(), nullable=True))
    op.add_column('capsules', sa.Column('tls_key', sa.Text(), nullable=True))
    op.add_column(
        'capsules',
        sa.Column('tls_redirect_https', sa.Boolean(), nullable=False))
    op.drop_column('capsules', 'delegate_webapp_admin')
    op.add_column('fqdns', sa.Column('capsule_id',
                                     models.GUID(),
                                     nullable=True))

    op.create_foreign_key(None, 'fqdns', 'capsules', ['capsule_id'], ['id'])

    # Replace webapp_ids by capsule_ids in fqdns table (look in capsules table for matching)
    op.execute(
        "UPDATE fqdns f, capsules c SET f.capsule_id = c.id WHERE c.webapp_id = f.webapp_id;"
    )

    # # Migrate tls data from webapps to capsules
    op.execute("UPDATE capsules c, webapps w "
               "SET "
               "c.tls_redirect_https = w.tls_redirect_https, "
               "c.tls_key = w.tls_key, "
               "c.tls_crt = w.tls_crt "
               "WHERE w.id = c.webapp_id")

    op.drop_constraint('fqdns_ibfk_1', 'fqdns', type_='foreignkey')

    # Cleanup old column
    op.drop_column('fqdns', 'webapp_id')
    op.drop_column('webapps', 'tls_key')
    op.drop_column('webapps', 'tls_crt')
    op.drop_column('webapps', 'tls_redirect_https')
def upgrade():
    # ### commands auto generated by Alembic - please adjust! ###
    op.create_table(
        'runtimes', sa.Column('id', models.GUID(), nullable=False),
        sa.Column('name', sa.String(length=256), nullable=False),
        sa.Column('desc', sa.String(length=256), nullable=False),
        sa.Column('fam', sa.String(length=256), nullable=False),
        sa.Column('runtime_type',
                  sa.Enum('webapp', 'addon', name='runtimetypeenum'),
                  nullable=False),
        sa.Column('created_at', sa.DateTime(), nullable=True),
        sa.Column('updated_at', sa.DateTime(), nullable=True),
        sa.PrimaryKeyConstraint('id'), sa.UniqueConstraint('id'))
    op.create_table(
        'users', sa.Column('id', models.GUID(), nullable=False),
        sa.Column('name', sa.String(length=32), nullable=False),
        sa.Column('role',
                  sa.Enum('user', 'admin', 'superadmin', name='roleenum'),
                  nullable=False),
        sa.Column('created_at', sa.DateTime(), nullable=True),
        sa.Column('updated_at', sa.DateTime(), nullable=True),
        sa.PrimaryKeyConstraint('id'), sa.UniqueConstraint('id'),
        sa.UniqueConstraint('name'))
    op.create_table('apptokens', sa.Column('id', models.GUID(),
                                           nullable=False),
                    sa.Column('app', sa.String(length=256), nullable=False),
                    sa.Column('owner_id', models.GUID(), nullable=True),
                    sa.Column('token', sa.String(length=256), nullable=False),
                    sa.Column('created_at', sa.DateTime(), nullable=True),
                    sa.Column('updated_at', sa.DateTime(), nullable=True),
                    sa.ForeignKeyConstraint(
                        ['owner_id'],
                        ['users.id'],
                    ), sa.PrimaryKeyConstraint('id'),
                    sa.UniqueConstraint('id'), sa.UniqueConstraint('token'))
    op.create_table(
        'available_options', sa.Column('id', models.GUID(), nullable=False),
        sa.Column('runtime_id', models.GUID(), nullable=True),
        sa.Column('access_level',
                  sa.Enum('user', 'admin', 'superadmin', name='roleenum'),
                  nullable=False),
        sa.Column('tag', sa.String(length=256), nullable=False),
        sa.Column('field_name', sa.String(length=256), nullable=False),
        sa.Column('field_description', sa.String(length=256), nullable=True),
        sa.Column('value_type',
                  sa.Enum('integer',
                          'float',
                          'boolean',
                          'string',
                          'file',
                          name='optionvaluetypeenum'),
                  nullable=False),
        sa.Column('default_value', sa.String(length=256), nullable=True),
        sa.ForeignKeyConstraint(
            ['runtime_id'],
            ['runtimes.id'],
        ), sa.PrimaryKeyConstraint('id'), sa.UniqueConstraint('id'))
    op.create_table('sshkeys', sa.Column('id', models.GUID(), nullable=False),
                    sa.Column('public_key', sa.Text(), nullable=False),
                    sa.Column('user_id', models.GUID(), nullable=True),
                    sa.Column('created_at', sa.DateTime(), nullable=True),
                    sa.Column('updated_at', sa.DateTime(), nullable=True),
                    sa.ForeignKeyConstraint(
                        ['user_id'],
                        ['users.id'],
                    ), sa.PrimaryKeyConstraint('id'),
                    sa.UniqueConstraint('id'))
    op.create_table(
        'webapps', sa.Column('id', models.GUID(), nullable=False),
        sa.Column('runtime_id', models.GUID(), nullable=True),
        sa.Column('tls_redirect_https', sa.Boolean(), nullable=True),
        sa.Column('tls_crt', sa.Text(), nullable=True),
        sa.Column('tls_key', sa.Text(), nullable=True),
        sa.Column('env', sa.Text(), nullable=True),
        sa.Column('quota_volume_size', sa.String(length=256), nullable=True),
        sa.Column('quota_memory_max', sa.String(length=256), nullable=True),
        sa.Column('quota_cpu_max', sa.String(length=256), nullable=True),
        sa.Column('created_at', sa.DateTime(), nullable=True),
        sa.Column('updated_at', sa.DateTime(), nullable=True),
        sa.ForeignKeyConstraint(
            ['runtime_id'],
            ['runtimes.id'],
        ), sa.PrimaryKeyConstraint('id'), sa.UniqueConstraint('id'))
    op.create_table(
        'available_option_validation_rules',
        sa.Column('id', models.GUID(), nullable=False),
        sa.Column('available_option_id', models.GUID(), nullable=True),
        sa.Column('type',
                  sa.Enum('regex',
                          'min',
                          'max',
                          'eq',
                          'neq',
                          'format',
                          name='validationruleenum'),
                  nullable=False),
        sa.Column('arg', sa.String(length=256), nullable=False),
        sa.ForeignKeyConstraint(
            ['available_option_id'],
            ['available_options.id'],
        ), sa.PrimaryKeyConstraint('id'), sa.UniqueConstraint('id'))
    op.create_table(
        'capsules', sa.Column('id', models.GUID(), nullable=False),
        sa.Column('uid', sa.Integer(), autoincrement=True, nullable=False),
        sa.Column('name', sa.String(length=256), nullable=False),
        sa.Column('webapp_id', models.GUID(), nullable=True),
        sa.Column('created_at', sa.DateTime(), nullable=True),
        sa.Column('updated_at', sa.DateTime(), nullable=True),
        sa.ForeignKeyConstraint(
            ['webapp_id'],
            ['webapps.id'],
        ), sa.PrimaryKeyConstraint('uid'), sa.UniqueConstraint('id'),
        sa.UniqueConstraint('name'), sa.UniqueConstraint('uid'))
    op.create_table('fqdns', sa.Column('id', models.GUID(), nullable=False),
                    sa.Column('webapp_id', models.GUID(), nullable=True),
                    sa.Column('name', sa.String(length=256), nullable=False),
                    sa.Column('alias', sa.Boolean(), nullable=False),
                    sa.ForeignKeyConstraint(
                        ['webapp_id'],
                        ['webapps.id'],
                    ), sa.PrimaryKeyConstraint('id'),
                    sa.UniqueConstraint('id'))
    op.create_table(
        'addons', sa.Column('id', models.GUID(), nullable=False),
        sa.Column('runtime_id', models.GUID(), nullable=True),
        sa.Column('capsule_id', models.GUID(), nullable=True),
        sa.Column('name', sa.String(length=256), nullable=False),
        sa.Column('description', sa.String(length=256), nullable=True),
        sa.Column('uri', sa.String(length=256), nullable=True),
        sa.Column('env', sa.Text(), nullable=True),
        sa.Column('quota_volume_size', sa.String(length=256), nullable=True),
        sa.Column('quota_memory_max', sa.String(length=256), nullable=True),
        sa.Column('quota_cpu_max', sa.String(length=256), nullable=True),
        sa.Column('created_at', sa.DateTime(), nullable=True),
        sa.Column('updated_at', sa.DateTime(), nullable=True),
        sa.ForeignKeyConstraint(
            ['capsule_id'],
            ['capsules.id'],
        ), sa.ForeignKeyConstraint(
            ['runtime_id'],
            ['runtimes.id'],
        ), sa.PrimaryKeyConstraint('id'), sa.UniqueConstraint('id'))
    op.create_table('capsules_sshkeys',
                    sa.Column('capsule_id', models.GUID(), nullable=True),
                    sa.Column('sshkey_id', models.GUID(), nullable=True),
                    sa.ForeignKeyConstraint(
                        ['capsule_id'],
                        ['capsules.id'],
                    ), sa.ForeignKeyConstraint(
                        ['sshkey_id'],
                        ['sshkeys.id'],
                    ))
    op.create_table('capsules_users',
                    sa.Column('capsule_id', models.GUID(), nullable=True),
                    sa.Column('user_id', models.GUID(), nullable=True),
                    sa.ForeignKeyConstraint(
                        ['capsule_id'],
                        ['capsules.id'],
                    ), sa.ForeignKeyConstraint(
                        ['user_id'],
                        ['users.id'],
                    ))
    op.create_table(
        'options', sa.Column('id', models.GUID(), nullable=False),
        sa.Column('webapp_id', models.GUID(), nullable=True),
        sa.Column('addon_id', models.GUID(), nullable=True),
        sa.Column('tag', sa.String(length=256), nullable=True),
        sa.Column('field_name', sa.String(length=256), nullable=True),
        sa.Column('value', sa.String(length=256), nullable=True),
        sa.ForeignKeyConstraint(
            ['addon_id'],
            ['addons.id'],
        ), sa.ForeignKeyConstraint(
            ['webapp_id'],
            ['webapps.id'],
        ), sa.PrimaryKeyConstraint('id'), sa.UniqueConstraint('id'))