Example #1
0
def restore_legacy_patching():
    op.add_column(
        'releases',
        sa.Column(
            'can_update_from_versions',
            fields.JSON(),
            nullable=False,
            server_default='[]'
        ))
    op.add_column(
        'clusters',
        sa.Column(
            'pending_release_id',
            sa.Integer(),
            nullable=True
        ))
    op.create_foreign_key(
        'fk_pending_release_id',
        'clusters',
        'releases',
        ['pending_release_id'],
        ['id'])

    upgrade_enum(
        "clusters",                 # table
        "status",                   # column
        "cluster_status",           # ENUM name
        cluster_statuses_new,       # new options
        cluster_statuses_old,       # old options
    )
Example #2
0
def extend_segmentation_type_downgrade():

    segmentation_type_old = ('vlan', 'gre')
    segmentation_type_new = ('vlan', 'gre', 'tun')

    upgrade_enum('neutron_config', 'segmentation_type', 'segmentation_type',
                 segmentation_type_new, segmentation_type_old)
Example #3
0
def downgrade_remove_vmware():
    op.add_column(
        'releases',
        sa.Column('vmware_attributes_metadata', fields.JSON(), nullable=True))

    op.create_table('vmware_attributes',
                    sa.Column('id', sa.Integer(), nullable=False),
                    sa.Column('cluster_id', sa.Integer()),
                    sa.Column('editable', fields.JSON()),
                    sa.ForeignKeyConstraint(
                        ['cluster_id'],
                        ['clusters.id'],
                    ), sa.PrimaryKeyConstraint('id'))

    upgrade_enum(
        "cluster_changes",  # table
        "name",  # column
        "possible_changes",  # ENUM name
        cluster_changes_new,  # new options
        cluster_changes_old  # old options
    )

    op.drop_constraint('vmware_attributes_cluster_id_fkey',
                       'vmware_attributes',
                       type_='foreignkey')

    op.create_foreign_key('vmware_attributes_cluster_id_fkey',
                          'vmware_attributes',
                          'clusters', ['cluster_id'], ['id'],
                          ondelete='CASCADE')
Example #4
0
def downgrade_release_state():
    connection = op.get_bind()

    connection.execute(sa.sql.text("UPDATE releases SET state='available' WHERE state!='unavailable'"))
    op.add_column("releases", sa.Column("is_deployable", sa.Boolean(), nullable=False, server_default="true"))

    upgrade_enum("releases", "state", "release_state", release_states_new, release_states_old)
Example #5
0
def upgrade_release_state():
    connection = op.get_bind()
    op.drop_column("releases", "is_deployable")

    upgrade_enum("releases", "state", "release_state", release_states_old, release_states_new)

    connection.execute(sa.sql.text("UPDATE releases SET state='manageonly' WHERE state!='unavailable'"))
Example #6
0
def downgrade_remove_vmware():
    op.add_column(
        'releases',
        sa.Column('vmware_attributes_metadata', fields.JSON(), nullable=True))

    op.create_table(
        'vmware_attributes',
        sa.Column('id', sa.Integer(), nullable=False),
        sa.Column('cluster_id', sa.Integer()),
        sa.Column('editable', fields.JSON()),
        sa.ForeignKeyConstraint(['cluster_id'], ['clusters.id'], ),
        sa.PrimaryKeyConstraint('id'))

    upgrade_enum(
        "cluster_changes",          # table
        "name",                     # column
        "possible_changes",         # ENUM name
        cluster_changes_new,        # new options
        cluster_changes_old         # old options
    )

    op.drop_constraint(
        'vmware_attributes_cluster_id_fkey',
        'vmware_attributes',
        type_='foreignkey'
    )

    op.create_foreign_key(
        'vmware_attributes_cluster_id_fkey',
        'vmware_attributes', 'clusters',
        ['cluster_id'], ['id'],
        ondelete='CASCADE'
    )
Example #7
0
def add_node_discover_error_downgrade():
    upgrade_enum(
        "nodes",
        "error_type",
        "node_error_type",
        node_errors_new,
        node_errors_old
    )
def downgrade_orchestrator_task_types():
    upgrade_enum(
        'deployment_graph_tasks',
        'type',
        'deployment_graph_tasks_type',
        orchestrator_task_types_new,
        orchestrator_task_types_old
    )
Example #9
0
def downgrade_neutron_l23_providers():
    upgrade_enum(
        "neutron_config",           # table
        "net_l23_provider",         # column
        "net_l23_provider",         # ENUM name
        neutron_l23_providers_new,  # old options
        neutron_l23_providers_old   # new options
    )
Example #10
0
def downgrade_bond_modes():
    upgrade_enum(
        'node_bond_interfaces',     # table
        'mode',                     # column
        'bond_mode',                # ENUM name
        bond_modes_new,             # old options
        bond_modes_old,             # new options
    )
Example #11
0
def downgrade_node_status_attributes():
    upgrade_enum(
        "nodes",                    # table
        "status",                   # column
        "node_status",              # ENUM name
        node_statuses_new,          # old options
        node_statuses_old           # new options
    )
Example #12
0
def task_names_downgrade():
    upgrade_enum(
        "tasks",
        "name",
        "task_name",
        task_names_new,
        task_names_old
    )
Example #13
0
def downgrade_task_names():
    upgrade_enum(
        "tasks",  # table
        "name",  # column
        "task_name",  # ENUM name
        task_names_new,  # old options
        task_names_old  # new options
    )
Example #14
0
def downgrade_task_names():
    upgrade_enum(
        "tasks",                    # table
        "name",                     # column
        "task_name",                # ENUM name
        task_names_new,             # old options
        task_names_old              # new options
    )
Example #15
0
def downgrade_node_stop_deployment_error_type():
    upgrade_enum(
        "nodes",
        "error_type",
        "node_error_type",
        node_errors_new,
        node_errors_old
    )
Example #16
0
def downgrade_transaction_names():
    migration.upgrade_enum(
        'tasks',
        'name',
        'task_name',
        TASK_NAMES_NEW,
        TASK_NAMES_OLD
    )
Example #17
0
def downgrade_transaction_names():
    upgrade_enum(
        'tasks',
        'name',
        'task_name',
        transaction_names_new,
        transaction_names_old
    )
Example #18
0
def task_names_upgrade():
    upgrade_enum(
        "tasks",
        "name",
        "task_name",
        task_names_old,
        task_names_new
    )
Example #19
0
def extend_segmentation_type_downgrade():

    segmentation_type_old = ('vlan', 'gre')
    segmentation_type_new = ('vlan', 'gre', 'tun')

    upgrade_enum('neutron_config',
                 'segmentation_type',
                 'segmentation_type',
                 segmentation_type_new,
                 segmentation_type_old)
Example #20
0
def downgrade_schema():
    # commands auto generated by Alembic - please adjust! ###
    op.drop_column('nodes', 'replaced_provisioning_info')
    op.drop_column('nodes', 'replaced_deployment_info')
    upgrade_enum(
        "neutron_config",  # table
        "net_l23_provider",  # column
        "net_l23_provider",  # ENUM name
        neutron_l23_providers_new,  # old options
        neutron_l23_providers_old  # new options
    )

    upgrade_enum(
        "cluster_changes",  # table
        "name",  # column
        "possible_changes",  # ENUM name
        cluster_changes_new,  # new options
        cluster_changes_old,  # old options
    )
    upgrade_enum(
        "notifications",  # table
        "topic",  # column
        "notif_topic",  # ENUM name
        notification_topics_new,  # new options
        notification_topics_old,  # old options
    )
    upgrade_enum(
        "tasks",  # table
        "name",  # column
        "task_name",  # ENUM name
        task_names_new,  # old options
        task_names_old  # new options
    )
    upgrade_enum(
        "clusters",  # table
        "status",  # column
        "cluster_status",  # ENUM name
        cluster_statuses_new,  # old options
        cluster_statuses_old  # new options
    )

    op.drop_constraint('fk_pending_release_id', 'clusters', type_='foreignkey')
    op.drop_column('clusters', 'pending_release_id')
    op.drop_column('releases', 'can_update_from_versions')
    op.create_table(
        'red_hat_accounts', sa.Column('id', sa.Integer(), nullable=False),
        sa.Column('username', sa.String(length=100), nullable=False),
        sa.Column('password', sa.String(length=100), nullable=False),
        sa.Column('license_type',
                  sa.Enum('rhsm', 'rhn', name='license_type'),
                  nullable=False),
        sa.Column('satellite', sa.String(length=250), nullable=False),
        sa.Column('activation_key', sa.String(length=300), nullable=False),
        sa.PrimaryKeyConstraint('id'))
Example #21
0
def downgrade_schema():
    ### commands auto generated by Alembic - please adjust! ###
    op.drop_column("nodes", "replaced_provisioning_info")
    op.drop_column("nodes", "replaced_deployment_info")
    upgrade_enum(
        "neutron_config",  # table
        "net_l23_provider",  # column
        "net_l23_provider",  # ENUM name
        neutron_l23_providers_new,  # old options
        neutron_l23_providers_old,  # new options
    )

    upgrade_enum(
        "cluster_changes",  # table
        "name",  # column
        "possible_changes",  # ENUM name
        cluster_changes_new,  # new options
        cluster_changes_old,  # old options
    )
    upgrade_enum(
        "notifications",  # table
        "topic",  # column
        "notif_topic",  # ENUM name
        notification_topics_new,  # new options
        notification_topics_old,  # old options
    )
    upgrade_enum(
        "tasks",  # table
        "name",  # column
        "task_name",  # ENUM name
        task_names_new,  # old options
        task_names_old,  # new options
    )
    upgrade_enum(
        "clusters",  # table
        "status",  # column
        "cluster_status",  # ENUM name
        cluster_statuses_new,  # old options
        cluster_statuses_old,  # new options
    )

    op.drop_constraint("fk_pending_release_id", "clusters", type_="foreignkey")
    op.drop_column("clusters", "pending_release_id")
    op.drop_column("releases", "can_update_from_versions")
    op.create_table(
        "red_hat_accounts",
        sa.Column("id", sa.Integer(), nullable=False),
        sa.Column("username", sa.String(length=100), nullable=False),
        sa.Column("password", sa.String(length=100), nullable=False),
        sa.Column("license_type", sa.Enum("rhsm", "rhn", name="license_type"), nullable=False),
        sa.Column("satellite", sa.String(length=250), nullable=False),
        sa.Column("activation_key", sa.String(length=300), nullable=False),
        sa.PrimaryKeyConstraint("id"),
    )
Example #22
0
def downgrade_schema():
    # OpenStack workload statistics
    op.drop_table('oswl_stats')
    drop_enum('oswl_resource_type')

    upgrade_enum(
        'releases',  # table
        'state',  # column
        'release_state',  # ENUM name
        release_states_new,  # new options
        release_states_old,  # old options
    )

    op.drop_column('clusters', 'deployment_tasks')
    op.drop_column('releases', 'deployment_tasks')
Example #23
0
def drop_legacy_patching():
    upgrade_enum(
        "clusters",                 # table
        "status",                   # column
        "cluster_status",           # ENUM name
        cluster_statuses_old,       # old options
        cluster_statuses_new,       # new options
    )

    op.drop_constraint(
        'fk_pending_release_id',
        'clusters',
        type_='foreignkey'
    )
    op.drop_column('clusters', 'pending_release_id')
    op.drop_column('releases', 'can_update_from_versions')
Example #24
0
def upgrade_release_state():
    connection = op.get_bind()
    op.drop_column('releases', 'is_deployable')

    upgrade_enum(
        'releases',
        'state',
        'release_state',
        release_states_old,
        release_states_new,
    )

    connection.execute(
        sa.sql.text(
            "UPDATE releases SET state='manageonly' WHERE state!='unavailable'"
        ))
Example #25
0
def upgrade():
    ### commands auto generated by Alembic - please adjust! ###
    op.add_column(
        'releases',
        sa.Column(
            'can_update_from_versions',
            JSON(),
            nullable=False,
            server_default='[]'
        )
    )
    op.add_column(
        'clusters',
        sa.Column(
            'pending_release_id',
            sa.Integer(),
            nullable=True
        )
    )
    op.create_foreign_key(
        'fk_pending_release_id',
        'clusters',
        'releases',
        ['pending_release_id'],
        ['id'],
    )
    upgrade_enum(
        "clusters",                 # table
        "status",                   # column
        "cluster_status",           # ENUM name
        cluster_statuses_old,       # old options
        cluster_statuses_new        # new options
    )
    upgrade_enum(
        "tasks",                    # table
        "name",                     # column
        "task_name",                # ENUM name
        task_names_old,             # old options
        task_names_new              # new options
    )
    upgrade_enum(
        "notifications",            # table
        "topic",                    # column
        "notif_topic",              # ENUM name
        old_notification_topics,    # old options
        new_notification_topics,    # new options
    )
    upgrade_enum(
        "cluster_changes",          # table
        "name",                     # column
        "possible_changes",         # ENUM name
        cluster_changes_old,        # old options
        cluster_changes_new         # new options
    )

    op.drop_table('red_hat_accounts')
    drop_enum('license_type')
Example #26
0
def upgrade_schema():
    ### commands auto generated by Alembic - please adjust! ###
    op.add_column("releases", sa.Column("can_update_from_versions", JSON(), nullable=False, server_default="[]"))
    op.add_column("releases", sa.Column("wizard_metadata", JSON(), nullable=True))
    op.add_column("clusters", sa.Column("pending_release_id", sa.Integer(), nullable=True))
    op.create_foreign_key("fk_pending_release_id", "clusters", "releases", ["pending_release_id"], ["id"])
    upgrade_enum(
        "clusters",  # table
        "status",  # column
        "cluster_status",  # ENUM name
        cluster_statuses_old,  # old options
        cluster_statuses_new,  # new options
    )
    upgrade_enum(
        "tasks",  # table
        "name",  # column
        "task_name",  # ENUM name
        task_names_old,  # old options
        task_names_new,  # new options
    )
    upgrade_enum(
        "notifications",  # table
        "topic",  # column
        "notif_topic",  # ENUM name
        notification_topics_old,  # old options
        notification_topics_new,  # new options
    )
    upgrade_enum(
        "cluster_changes",  # table
        "name",  # column
        "possible_changes",  # ENUM name
        cluster_changes_old,  # old options
        cluster_changes_new,  # new options
    )

    upgrade_enum(
        "neutron_config",  # table
        "net_l23_provider",  # column
        "net_l23_provider",  # ENUM name
        neutron_l23_providers_old,  # old options
        neutron_l23_providers_new,  # new options
    )

    op.drop_table("red_hat_accounts")
    drop_enum("license_type")
    op.add_column("nodes", sa.Column("replaced_deployment_info", JSON(), nullable=True))
    op.add_column("nodes", sa.Column("replaced_provisioning_info", JSON(), nullable=True))
Example #27
0
def downgrade():
    ### commands auto generated by Alembic - please adjust! ###
    upgrade_enum(
        "cluster_changes",          # table
        "name",                     # column
        "possible_changes",         # ENUM name
        cluster_changes_new,        # new options
        cluster_changes_old,        # old options
    )
    upgrade_enum(
        "notifications",            # table
        "topic",                    # column
        "notif_topic",              # ENUM name
        new_notification_topics,    # new options
        old_notification_topics,    # old options
    )
    upgrade_enum(
        "tasks",                    # table
        "name",                     # column
        "task_name",                # ENUM name
        task_names_new,             # old options
        task_names_old              # new options
    )
    upgrade_enum(
        "clusters",                 # table
        "status",                   # column
        "cluster_status",           # ENUM name
        cluster_statuses_new,       # old options
        cluster_statuses_old        # new options
    )

    op.drop_constraint(
        'fk_pending_release_id',
        'clusters',
        type_='foreignkey'
    )
    op.drop_column('clusters', 'pending_release_id')
    op.drop_column('releases', 'can_update_from_versions')
    op.create_table('red_hat_accounts',
                    sa.Column('id', sa.Integer(), nullable=False),
                    sa.Column('username',
                              sa.String(length=100),
                              nullable=False),
                    sa.Column('password',
                              sa.String(length=100),
                              nullable=False),
                    sa.Column('license_type', sa.Enum('rhsm', 'rhn',
                                                      name='license_type'),
                              nullable=False),
                    sa.Column('satellite',
                              sa.String(length=250),
                              nullable=False),
                    sa.Column('activation_key',
                              sa.String(length=300),
                              nullable=False),
                    sa.PrimaryKeyConstraint('id')
                    )
Example #28
0
def upgrade_remove_vmware():
    connection = op.get_bind()
    op.drop_constraint('vmware_attributes_cluster_id_fkey',
                       'vmware_attributes',
                       type_='foreignkey')
    op.drop_table('vmware_attributes')
    op.drop_column('releases', 'vmware_attributes_metadata')
    delete = sa.sql.text("""DELETE FROM cluster_changes
        WHERE name = 'vmware_attributes'""")
    connection.execute(delete)
    upgrade_enum(
        "cluster_changes",  # table
        "name",  # column
        "possible_changes",  # ENUM name
        cluster_changes_old,  # old options
        cluster_changes_new  # new options
    )
Example #29
0
def upgrade_remove_vmware():
    connection = op.get_bind()
    op.drop_constraint(
        'vmware_attributes_cluster_id_fkey',
        'vmware_attributes',
        type_='foreignkey'
    )
    op.drop_table('vmware_attributes')
    op.drop_column('releases', 'vmware_attributes_metadata')
    delete = sa.sql.text(
        """DELETE FROM cluster_changes
        WHERE name = 'vmware_attributes'""")
    connection.execute(delete)
    upgrade_enum(
        "cluster_changes",          # table
        "name",                     # column
        "possible_changes",         # ENUM name
        cluster_changes_old,        # old options
        cluster_changes_new         # new options
    )
Example #30
0
def downgrade_release_state():
    connection = op.get_bind()

    connection.execute(
        sa.sql.text(
            "UPDATE releases SET state='available' WHERE state!='unavailable'")
    )
    op.add_column(
        'releases',
        sa.Column(
            'is_deployable',
            sa.Boolean(),
            nullable=False,
            server_default='true',
        ))

    upgrade_enum(
        'releases',
        'state',
        'release_state',
        release_states_new,
        release_states_old,
    )
Example #31
0
def upgrade_schema():
    op.add_column('clusters',
                  sa.Column('deployment_tasks', fields.JSON(), nullable=True))
    op.add_column('releases',
                  sa.Column('deployment_tasks', fields.JSON(), nullable=True))

    upgrade_enum(
        'releases',  # table
        'state',  # column
        'release_state',  # ENUM name
        release_states_old,  # old options
        release_states_new,  # new options
    )
    # OpenStack workload statistics
    op.create_table(
        'oswl_stats', sa.Column('id', sa.Integer, nullable=False),
        sa.Column('cluster_id', sa.Integer, nullable=False, index=True),
        sa.Column('created_date', sa.Date, nullable=False, index=True),
        sa.Column('updated_time', sa.Time, nullable=False),
        sa.Column('resource_type',
                  sa.Enum('vm',
                          'tenant',
                          'volume',
                          'security_group',
                          'keystone_user',
                          'flavor',
                          'cluster_stats',
                          name='oswl_resource_type'),
                  nullable=False,
                  index=True),
        sa.Column('resource_data', fields.JSON(), nullable=True),
        sa.Column('resource_checksum', sa.Text, nullable=True),
        sa.Column('is_sent',
                  sa.Boolean,
                  nullable=False,
                  default=False,
                  index=True), sa.PrimaryKeyConstraint('id'))
Example #32
0
def task_statuses_downgrade():
    upgrade_enum("tasks", "status", "task_status", task_statuses_new, task_statuses_old)
Example #33
0
def task_names_downgrade():
    upgrade_enum("tasks", "name", "task_name", task_names_new, task_names_old)
Example #34
0
def downgrade_schema():
    # Add interface properties
    op.drop_column('node_bond_interfaces', 'interface_properties')
    op.drop_column('node_nic_interfaces', 'interface_properties')
    # Add bond properties
    op.drop_column('node_bond_interfaces', 'bond_properties')
    op.add_column('node_bond_interfaces',
                  sa.Column('flags', fields.JSON(), nullable=True))
    # Introduce linux bonds
    upgrade_enum(
        'node_bond_interfaces',  # table
        'mode',  # column
        'bond_mode',  # ENUM name
        bond_modes_new,  # new options
        bond_modes_old,  # old options
    )
    # OpenStack workload statistics
    op.drop_table('oswl_stats')
    drop_enum('oswl_resource_type')

    upgrade_enum(
        "cluster_changes",  # table
        "name",  # column
        "possible_changes",  # ENUM name
        cluster_changes_new,  # new options
        cluster_changes_old,  # old options
    )

    upgrade_enum(
        'releases',  # table
        'state',  # column
        'release_state',  # ENUM name
        release_states_new,  # new options
        release_states_old,  # old options
    )

    upgrade_enum(
        "nodes",  # table
        "status",  # column
        "node_status",  # ENUM name
        node_statuses_new,  # old options
        node_statuses_old  # new options
    )

    op.create_table(
        'release_orchestrator_data',
        sa.Column('id', sa.Integer(), nullable=False),
        sa.Column('release_id', sa.Integer(), nullable=False),
        sa.Column('repo_metadata', fields.JSON(), nullable=False),
        sa.Column('puppet_manifests_source', sa.Text(), nullable=False),
        sa.Column('puppet_modules_source', sa.Text(), nullable=False),
        sa.ForeignKeyConstraint(
            ['release_id'],
            ['releases.id'],
        ), sa.PrimaryKeyConstraint('id'))

    op.drop_table('vmware_attributes')
    op.drop_column('releases', 'vmware_attributes_metadata')
    op.drop_column('clusters', 'deployment_tasks')
    op.drop_column('node_nic_interfaces', 'driver')
    op.drop_column('node_nic_interfaces', 'bus_info')
    op.drop_column('releases', 'deployment_tasks')
    op.drop_constraint('node_roles_node_fkey', 'node_roles')
    op.create_foreign_key('node_roles_node_fkey', 'node_roles', 'nodes',
                          ['node'], ['id'])

    op.drop_constraint('pending_node_roles_node_fkey', 'pending_node_roles')
    op.create_foreign_key('pending_node_roles_node_fkey', 'pending_node_roles',
                          'nodes', ['node'], ['id'])

    op.drop_constraint('node_attributes_node_id_fkey', 'node_attributes')
    op.create_foreign_key('node_attributes_node_id_fkey', 'node_attributes',
                          'nodes', ['node_id'], ['id'])
    op.drop_column('ip_addrs', 'vip_type')
    drop_enum('network_vip_types')

    # Plugins table changes
    op.drop_column('plugins', 'groups')
    op.drop_column('plugins', 'authors')
    op.drop_column('plugins', 'licenses')
    op.drop_column('plugins', 'homepage')
Example #35
0
def upgrade_schema():
    connection = op.get_bind()

    vrouter_enum = sa.Enum('haproxy', 'vrouter', name='network_vip_types')
    vrouter_enum.create(op.get_bind(), checkfirst=False)

    op.add_column('ip_addrs', sa.Column('vip_type',
                                        vrouter_enum,
                                        nullable=True))

    op.add_column('clusters',
                  sa.Column('deployment_tasks', fields.JSON(), nullable=True))
    op.add_column('node_nic_interfaces',
                  sa.Column('driver', sa.Text(), nullable=True))
    op.add_column('node_nic_interfaces',
                  sa.Column('bus_info', sa.Text(), nullable=True))
    op.add_column('releases',
                  sa.Column('deployment_tasks', fields.JSON(), nullable=True))
    op.add_column(
        'releases',
        sa.Column('vmware_attributes_metadata', fields.JSON(), nullable=True))
    op.create_table('vmware_attributes',
                    sa.Column('id', sa.Integer(), nullable=False),
                    sa.Column('cluster_id', sa.Integer()),
                    sa.Column('editable', fields.JSON()),
                    sa.ForeignKeyConstraint(
                        ['cluster_id'],
                        ['clusters.id'],
                    ), sa.PrimaryKeyConstraint('id'))

    upgrade_enum(
        'releases',  # table
        'state',  # column
        'release_state',  # ENUM name
        release_states_old,  # old options
        release_states_new,  # new options
    )

    upgrade_enum(
        "cluster_changes",  # table
        "name",  # column
        "possible_changes",  # ENUM name
        cluster_changes_old,  # old options
        cluster_changes_new  # new options
    )

    upgrade_enum(
        "nodes",  # table
        "status",  # column
        "node_status",  # ENUM name
        node_statuses_old,  # old options
        node_statuses_new  # new options
    )
    # OpenStack workload statistics
    op.create_table(
        'oswl_stats', sa.Column('id', sa.Integer, nullable=False),
        sa.Column('cluster_id', sa.Integer, nullable=False, index=True),
        sa.Column('created_date', sa.Date, nullable=False, index=True),
        sa.Column('updated_time', sa.Time, nullable=False),
        sa.Column('resource_type',
                  sa.Enum('vm',
                          'tenant',
                          'volume',
                          'security_group',
                          'keystone_user',
                          'flavor',
                          'cluster_stats',
                          'image',
                          name='oswl_resource_type'),
                  nullable=False,
                  index=True),
        sa.Column('resource_data', fields.JSON(), nullable=True),
        sa.Column('resource_checksum', sa.Text, nullable=True),
        sa.Column('is_sent',
                  sa.Boolean,
                  nullable=False,
                  default=False,
                  index=True), sa.PrimaryKeyConstraint('id'))

    op.drop_constraint('node_roles_node_fkey', 'node_roles')
    op.create_foreign_key('node_roles_node_fkey',
                          'node_roles',
                          'nodes', ['node'], ['id'],
                          ondelete='CASCADE')

    op.drop_constraint('pending_node_roles_node_fkey', 'pending_node_roles')
    op.create_foreign_key('pending_node_roles_node_fkey',
                          'pending_node_roles',
                          'nodes', ['node'], ['id'],
                          ondelete='CASCADE')

    op.drop_constraint('node_attributes_node_id_fkey', 'node_attributes')
    op.create_foreign_key('node_attributes_node_id_fkey',
                          'node_attributes',
                          'nodes', ['node_id'], ['id'],
                          ondelete='CASCADE')
    # Introduce linux bonds
    upgrade_enum(
        'node_bond_interfaces',  # table
        'mode',  # column
        'bond_mode',  # ENUM name
        bond_modes_old,  # old options
        bond_modes_new,  # new options
    )
    # Add bond properties
    op.drop_column('node_bond_interfaces', 'flags')
    op.add_column(
        'node_bond_interfaces',
        sa.Column('bond_properties',
                  fields.JSON(),
                  nullable=False,
                  server_default='{}'))
    # Add interface properties
    op.add_column(
        'node_nic_interfaces',
        sa.Column('interface_properties',
                  fields.JSON(),
                  nullable=False,
                  server_default='{}'))
    op.add_column(
        'node_bond_interfaces',
        sa.Column('interface_properties',
                  fields.JSON(),
                  nullable=False,
                  server_default='{}'))

    move_orchestrator_data_to_attributes(connection)
    op.drop_table('release_orchestrator_data')

    # Plugins migrations
    op.add_column(
        'plugins',
        sa.Column('groups', fields.JSON(), nullable=False,
                  server_default='[]'))
    op.add_column(
        'plugins',
        sa.Column('authors',
                  fields.JSON(),
                  nullable=False,
                  server_default='[]'))
    op.add_column(
        'plugins',
        sa.Column('licenses',
                  fields.JSON(),
                  nullable=False,
                  server_default='[]'))
    op.add_column('plugins', sa.Column('homepage', sa.Text(), nullable=True))
Example #36
0
def upgrade_schema():
    connection = op.get_bind()

    vrouter_enum = sa.Enum("haproxy", "vrouter", name="network_vip_types")
    vrouter_enum.create(op.get_bind(), checkfirst=False)

    op.add_column("ip_addrs", sa.Column("vip_type", vrouter_enum, nullable=True))

    op.add_column("clusters", sa.Column("deployment_tasks", fields.JSON(), nullable=True))
    op.add_column("node_nic_interfaces", sa.Column("driver", sa.Text(), nullable=True))
    op.add_column("node_nic_interfaces", sa.Column("bus_info", sa.Text(), nullable=True))
    op.add_column("releases", sa.Column("deployment_tasks", fields.JSON(), nullable=True))
    op.add_column("releases", sa.Column("vmware_attributes_metadata", fields.JSON(), nullable=True))
    op.add_column("releases", sa.Column("modes", fields.JSON(), nullable=True))
    op.create_table(
        "vmware_attributes",
        sa.Column("id", sa.Integer(), nullable=False),
        sa.Column("cluster_id", sa.Integer()),
        sa.Column("editable", fields.JSON()),
        sa.ForeignKeyConstraint(["cluster_id"], ["clusters.id"]),
        sa.PrimaryKeyConstraint("id"),
    )

    upgrade_enum(
        "releases",  # table
        "state",  # column
        "release_state",  # ENUM name
        release_states_old,  # old options
        release_states_new,  # new options
    )

    upgrade_enum(
        "cluster_changes",  # table
        "name",  # column
        "possible_changes",  # ENUM name
        cluster_changes_old,  # old options
        cluster_changes_new,  # new options
    )

    upgrade_enum(
        "nodes",  # table
        "status",  # column
        "node_status",  # ENUM name
        node_statuses_old,  # old options
        node_statuses_new,  # new options
    )
    # OpenStack workload statistics
    op.create_table(
        "oswl_stats",
        sa.Column("id", sa.Integer, nullable=False),
        sa.Column("cluster_id", sa.Integer, nullable=False, index=True),
        sa.Column("created_date", sa.Date, nullable=False, index=True),
        sa.Column("updated_time", sa.Time, nullable=False),
        sa.Column(
            "resource_type",
            sa.Enum(
                "vm",
                "tenant",
                "volume",
                "security_group",
                "keystone_user",
                "flavor",
                "cluster_stats",
                "image",
                name="oswl_resource_type",
            ),
            nullable=False,
            index=True,
        ),
        sa.Column("resource_data", fields.JSON(), nullable=True),
        sa.Column("resource_checksum", sa.Text, nullable=True),
        sa.Column("is_sent", sa.Boolean, nullable=False, default=False, index=True),
        sa.PrimaryKeyConstraint("id"),
    )

    op.drop_constraint("node_roles_node_fkey", "node_roles")
    op.create_foreign_key("node_roles_node_fkey", "node_roles", "nodes", ["node"], ["id"], ondelete="CASCADE")

    op.drop_constraint("pending_node_roles_node_fkey", "pending_node_roles")
    op.create_foreign_key(
        "pending_node_roles_node_fkey", "pending_node_roles", "nodes", ["node"], ["id"], ondelete="CASCADE"
    )

    op.drop_constraint("node_attributes_node_id_fkey", "node_attributes")
    op.create_foreign_key(
        "node_attributes_node_id_fkey", "node_attributes", "nodes", ["node_id"], ["id"], ondelete="CASCADE"
    )
    # Introduce linux bonds
    upgrade_enum(
        "node_bond_interfaces",  # table
        "mode",  # column
        "bond_mode",  # ENUM name
        bond_modes_old,  # old options
        bond_modes_new,  # new options
    )
    # Add bond properties
    op.drop_column("node_bond_interfaces", "flags")
    op.add_column(
        "node_bond_interfaces", sa.Column("bond_properties", fields.JSON(), nullable=False, server_default="{}")
    )
    # Add interface properties
    op.add_column(
        "node_nic_interfaces", sa.Column("interface_properties", fields.JSON(), nullable=False, server_default="{}")
    )
    op.add_column(
        "node_bond_interfaces", sa.Column("interface_properties", fields.JSON(), nullable=False, server_default="{}")
    )

    move_orchestrator_data_to_attributes(connection)
    op.drop_table("release_orchestrator_data")

    # Plugins migrations
    op.add_column("plugins", sa.Column("groups", fields.JSON(), nullable=False, server_default="[]"))
    op.add_column("plugins", sa.Column("authors", fields.JSON(), nullable=False, server_default="[]"))
    op.add_column("plugins", sa.Column("licenses", fields.JSON(), nullable=False, server_default="[]"))
    op.add_column("plugins", sa.Column("homepage", sa.Text(), nullable=True))

    upgrade_enum(
        "tasks",  # table
        "name",  # column
        "task_name",  # ENUM name
        task_names_old,  # old options
        task_names_new,  # new options
    )
Example #37
0
def task_statuses_upgrade():
    upgrade_enum('tasks', 'status', 'task_status', task_statuses_old,
                 task_statuses_new)
Example #38
0
def upgrade_schema():
    op.add_column(
        'releases',
        sa.Column(
            'is_deployable',
            sa.Boolean(),
            nullable=False,
            server_default='true',
        )
    )
    op.add_column(
        'node_nic_interfaces',
        sa.Column('driver', sa.Text(), nullable=True))
    op.add_column(
        'node_nic_interfaces',
        sa.Column('bus_info', sa.Text(), nullable=True))
    
    op.drop_column('node_bond_interfaces', 'flags')
    op.add_column(
        'node_bond_interfaces',
        sa.Column('bond_properties',
                  fields.JSON(),
                  nullable=False,
                  server_default='{}'))
    # Add interface properties
    op.add_column(
        'node_nic_interfaces',
        sa.Column('interface_properties',
                  fields.JSON(),
                  nullable=False,
                  server_default='{}'))
    op.add_column(
        'node_bond_interfaces',
        sa.Column('interface_properties',
                  fields.JSON(),
                  nullable=False,
                  server_default='{}'))

    op.create_table('action_logs',
                    sa.Column('id', sa.Integer, nullable=False),
                    sa.Column(
                        'actor_id',
                        sa.String(length=64),
                        nullable=True
                    ),
                    sa.Column(
                        'action_group',
                        sa.String(length=64),
                        nullable=False
                    ),
                    sa.Column(
                        'action_name',
                        sa.String(length=64),
                        nullable=False
                    ),
                    sa.Column(
                        'action_type',
                        sa.Enum('http_request', 'nailgun_task',
                                name='action_type'),
                        nullable=False
                    ),
                    sa.Column(
                        'start_timestamp',
                        sa.DateTime,
                        nullable=False
                    ),
                    sa.Column(
                        'end_timestamp',
                        sa.DateTime,
                        nullable=True
                    ),
                    sa.Column(
                        'is_sent',
                        sa.Boolean,
                        default=False
                    ),
                    sa.Column(
                        'additional_info',
                        JSON(),
                        nullable=False
                    ),
                    sa.Column(
                        'cluster_id',
                        sa.Integer,
                        nullable=True
                    ),
                    sa.Column(
                        'task_uuid',
                        sa.String(36),
                        nullable=True
                    ),
                    sa.PrimaryKeyConstraint('id'))
    op.create_table('master_node_settings',
                    sa.Column('id', sa.Integer, nullable=False),
                    sa.Column(
                        'master_node_uid',
                        sa.String(36),
                        nullable=False
                    ),
                    sa.Column(
                        'settings',
                        JSON(),
                        default={}
                    ),
                    sa.PrimaryKeyConstraint('id'))
    op.create_table(
        'plugins',
        sa.Column('id', sa.Integer(), nullable=False),
        sa.Column('name', sa.String(length=100), nullable=False),
        sa.Column('title', sa.String(length=100), nullable=False),
        sa.Column('version', sa.String(length=32), nullable=False),
        sa.Column('description', sa.String(length=400), nullable=True),
        sa.Column('releases', JSON(), nullable=True),
        sa.Column('fuel_version', JSON(), nullable=True),
        sa.Column('package_version', sa.String(length=32), nullable=False),
        sa.PrimaryKeyConstraint('id'),
        sa.UniqueConstraint('name', 'version', name='_name_version_unique')
    )
    op.create_table(
        'cluster_plugins',
        sa.Column('id', sa.Integer(), nullable=False),
        sa.Column('plugin_id', sa.Integer(), nullable=False),
        sa.Column('cluster_id', sa.Integer(), nullable=True),
        sa.ForeignKeyConstraint(['cluster_id'], ['clusters.id'], ),
        sa.ForeignKeyConstraint(
            ['plugin_id'], ['plugins.id'], ondelete='CASCADE'),
        sa.PrimaryKeyConstraint('id')
    )
    op.create_table(
        'nodegroups',
        sa.Column('id', sa.Integer(), nullable=False),
        sa.Column('cluster_id', sa.Integer(), nullable=True),
        sa.Column('name', sa.String(length=50), nullable=False),
        sa.ForeignKeyConstraint(['cluster_id'], ['clusters.id']),
        sa.PrimaryKeyConstraint('id')
    )
    op.create_unique_constraint(None, 'clusters', ['name'])
    op.add_column(
        'network_groups',
        sa.Column('group_id', sa.Integer(), nullable=True)
    )

    op.add_column('nodes', sa.Column('group_id', sa.Integer(), nullable=True))

    # We need this code here because the "upgrade_node_groups" function
    # relies on "cluster_id" column from "network_groups" table.
    connection = op.get_bind()
    upgrade_node_groups(connection)

    op.drop_column('network_groups', 'cluster_id')
    op.add_column(
        'node_roles',
        sa.Column('primary', sa.Boolean(),
                  nullable=False, server_default='false'))
    op.add_column(
        'pending_node_roles',
        sa.Column('primary', sa.Boolean(),
                  nullable=False, server_default='false'))

    upgrade_enum(
        'node_bond_interfaces',     # table
        'mode',                     # column
        'bond_mode',                # ENUM name
        bond_modes_old,             # old options
        bond_modes_new,             # new options
    )
Example #39
0
def downgrade_transaction_names():
    upgrade_enum('tasks', 'name', 'task_name', transaction_names_new,
                 transaction_names_old)
Example #40
0
def upgrade_schema():
    op.add_column(
        'releases',
        sa.Column(
            'is_deployable',
            sa.Boolean(),
            nullable=False,
            server_default='true',
        ))
    op.add_column('node_nic_interfaces',
                  sa.Column('driver', sa.Text(), nullable=True))
    op.add_column('node_nic_interfaces',
                  sa.Column('bus_info', sa.Text(), nullable=True))

    op.drop_column('node_bond_interfaces', 'flags')
    op.add_column(
        'node_bond_interfaces',
        sa.Column('bond_properties',
                  fields.JSON(),
                  nullable=False,
                  server_default='{}'))
    # Add interface properties
    op.add_column(
        'node_nic_interfaces',
        sa.Column('interface_properties',
                  fields.JSON(),
                  nullable=False,
                  server_default='{}'))
    op.add_column(
        'node_bond_interfaces',
        sa.Column('interface_properties',
                  fields.JSON(),
                  nullable=False,
                  server_default='{}'))

    op.create_table(
        'action_logs', sa.Column('id', sa.Integer, nullable=False),
        sa.Column('actor_id', sa.String(length=64), nullable=True),
        sa.Column('action_group', sa.String(length=64), nullable=False),
        sa.Column('action_name', sa.String(length=64), nullable=False),
        sa.Column('action_type',
                  sa.Enum('http_request', 'nailgun_task', name='action_type'),
                  nullable=False),
        sa.Column('start_timestamp', sa.DateTime, nullable=False),
        sa.Column('end_timestamp', sa.DateTime, nullable=True),
        sa.Column('is_sent', sa.Boolean, default=False),
        sa.Column('additional_info', JSON(), nullable=False),
        sa.Column('cluster_id', sa.Integer, nullable=True),
        sa.Column('task_uuid', sa.String(36), nullable=True),
        sa.PrimaryKeyConstraint('id'))
    op.create_table(
        'master_node_settings', sa.Column('id', sa.Integer, nullable=False),
        sa.Column('master_node_uid', sa.String(36), nullable=False),
        sa.Column('settings', JSON(), default={}),
        sa.PrimaryKeyConstraint('id'))
    op.create_table(
        'plugins', sa.Column('id', sa.Integer(), nullable=False),
        sa.Column('name', sa.String(length=100), nullable=False),
        sa.Column('title', sa.String(length=100), nullable=False),
        sa.Column('version', sa.String(length=32), nullable=False),
        sa.Column('description', sa.String(length=400), nullable=True),
        sa.Column('releases', JSON(), nullable=True),
        sa.Column('fuel_version', JSON(), nullable=True),
        sa.Column('package_version', sa.String(length=32), nullable=False),
        sa.PrimaryKeyConstraint('id'),
        sa.UniqueConstraint('name', 'version', name='_name_version_unique'))
    op.create_table(
        'cluster_plugins', sa.Column('id', sa.Integer(), nullable=False),
        sa.Column('plugin_id', sa.Integer(), nullable=False),
        sa.Column('cluster_id', sa.Integer(), nullable=True),
        sa.ForeignKeyConstraint(
            ['cluster_id'],
            ['clusters.id'],
        ),
        sa.ForeignKeyConstraint(['plugin_id'], ['plugins.id'],
                                ondelete='CASCADE'),
        sa.PrimaryKeyConstraint('id'))
    op.create_table('nodegroups', sa.Column('id', sa.Integer(),
                                            nullable=False),
                    sa.Column('cluster_id', sa.Integer(), nullable=True),
                    sa.Column('name', sa.String(length=50), nullable=False),
                    sa.ForeignKeyConstraint(['cluster_id'], ['clusters.id']),
                    sa.PrimaryKeyConstraint('id'))
    op.create_unique_constraint(None, 'clusters', ['name'])
    op.add_column('network_groups',
                  sa.Column('group_id', sa.Integer(), nullable=True))

    op.add_column('nodes', sa.Column('group_id', sa.Integer(), nullable=True))

    # We need this code here because the "upgrade_node_groups" function
    # relies on "cluster_id" column from "network_groups" table.
    connection = op.get_bind()
    upgrade_node_groups(connection)

    op.drop_column('network_groups', 'cluster_id')
    op.add_column(
        'node_roles',
        sa.Column('primary',
                  sa.Boolean(),
                  nullable=False,
                  server_default='false'))
    op.add_column(
        'pending_node_roles',
        sa.Column('primary',
                  sa.Boolean(),
                  nullable=False,
                  server_default='false'))

    upgrade_enum(
        'node_bond_interfaces',  # table
        'mode',  # column
        'bond_mode',  # ENUM name
        bond_modes_old,  # old options
        bond_modes_new,  # new options
    )
Example #41
0
def task_statuses_upgrade():
    upgrade_enum('tasks', 'status', 'task_status',
                 task_statuses_old, task_statuses_new)
Example #42
0
def task_statuses_downgrade():
    upgrade_enum('tasks', 'status', 'task_status',
                 task_statuses_new, task_statuses_old)
Example #43
0
def downgrade_schema():
    # Add interface properties
    op.drop_column('node_bond_interfaces', 'interface_properties')
    op.drop_column('node_nic_interfaces', 'interface_properties')
    # Add bond properties
    op.drop_column('node_bond_interfaces', 'bond_properties')
    op.add_column(
        'node_bond_interfaces',
        sa.Column('flags', fields.JSON(), nullable=True))
    # Introduce linux bonds
    upgrade_enum(
        'node_bond_interfaces',     # table
        'mode',                     # column
        'bond_mode',                # ENUM name
        bond_modes_new,             # new options
        bond_modes_old,             # old options
    )
    # OpenStack workload statistics
    op.drop_table('oswl_stats')
    drop_enum('oswl_resource_type')

    upgrade_enum(
        "cluster_changes",          # table
        "name",                     # column
        "possible_changes",         # ENUM name
        cluster_changes_new,        # new options
        cluster_changes_old,        # old options
    )

    upgrade_enum(
        'releases',                 # table
        'state',                    # column
        'release_state',            # ENUM name
        release_states_new,         # new options
        release_states_old,         # old options
    )

    upgrade_enum(
        "nodes",                    # table
        "status",                   # column
        "node_status",              # ENUM name
        node_statuses_new,          # old options
        node_statuses_old           # new options
    )

    op.create_table(
        'release_orchestrator_data',
        sa.Column('id', sa.Integer(), nullable=False),
        sa.Column('release_id', sa.Integer(), nullable=False),
        sa.Column('repo_metadata', fields.JSON(), nullable=False),
        sa.Column(
            'puppet_manifests_source', sa.Text(), nullable=False),
        sa.Column(
            'puppet_modules_source', sa.Text(), nullable=False),
        sa.ForeignKeyConstraint(['release_id'], ['releases.id'], ),
        sa.PrimaryKeyConstraint('id'))

    op.drop_table('vmware_attributes')
    op.drop_column('releases', 'vmware_attributes_metadata')
    op.drop_column('clusters', 'deployment_tasks')
    op.drop_column('node_nic_interfaces', 'driver')
    op.drop_column('node_nic_interfaces', 'bus_info')
    op.drop_column('releases', 'deployment_tasks')
    op.drop_constraint('node_roles_node_fkey', 'node_roles')
    op.create_foreign_key(
        'node_roles_node_fkey', 'node_roles', 'nodes', ['node'], ['id'])

    op.drop_constraint('pending_node_roles_node_fkey', 'pending_node_roles')
    op.create_foreign_key(
        'pending_node_roles_node_fkey', 'pending_node_roles', 'nodes',
        ['node'], ['id'])

    op.drop_constraint('node_attributes_node_id_fkey', 'node_attributes')
    op.create_foreign_key(
        'node_attributes_node_id_fkey', 'node_attributes', 'nodes',
        ['node_id'], ['id'])
    op.drop_column('ip_addrs', 'vip_type')
    drop_enum('network_vip_types')

    # Plugins table changes
    op.drop_column('plugins', 'groups')
    op.drop_column('plugins', 'authors')
    op.drop_column('plugins', 'licenses')
    op.drop_column('plugins', 'homepage')
Example #44
0
def upgrade_schema():
    connection = op.get_bind()

    vrouter_enum = sa.Enum('haproxy', 'vrouter',
                           name='network_vip_types')
    vrouter_enum.create(op.get_bind(), checkfirst=False)

    op.add_column(
        'ip_addrs',
        sa.Column('vip_type', vrouter_enum, nullable=True)
    )

    op.add_column(
        'clusters',
        sa.Column('deployment_tasks', fields.JSON(), nullable=True))
    op.add_column(
        'node_nic_interfaces',
        sa.Column('driver', sa.Text(), nullable=True))
    op.add_column(
        'node_nic_interfaces',
        sa.Column('bus_info', sa.Text(), nullable=True))
    op.add_column(
        'releases',
        sa.Column('deployment_tasks', fields.JSON(), nullable=True))
    op.add_column(
        'releases',
        sa.Column('vmware_attributes_metadata', fields.JSON(), nullable=True))
    op.create_table(
        'vmware_attributes',
        sa.Column('id', sa.Integer(), nullable=False),
        sa.Column('cluster_id', sa.Integer()),
        sa.Column('editable', fields.JSON()),
        sa.ForeignKeyConstraint(['cluster_id'], ['clusters.id'], ),
        sa.PrimaryKeyConstraint('id'))

    upgrade_enum(
        'releases',                 # table
        'state',                    # column
        'release_state',            # ENUM name
        release_states_old,         # old options
        release_states_new,         # new options
    )

    upgrade_enum(
        "cluster_changes",          # table
        "name",                     # column
        "possible_changes",         # ENUM name
        cluster_changes_old,        # old options
        cluster_changes_new         # new options
    )

    upgrade_enum(
        "nodes",                    # table
        "status",                   # column
        "node_status",              # ENUM name
        node_statuses_old,          # old options
        node_statuses_new           # new options
    )
    # OpenStack workload statistics
    op.create_table('oswl_stats',
                    sa.Column('id', sa.Integer, nullable=False),
                    sa.Column(
                        'cluster_id',
                        sa.Integer,
                        nullable=False,
                        index=True
                    ),
                    sa.Column(
                        'created_date',
                        sa.Date,
                        nullable=False,
                        index=True
                    ),
                    sa.Column(
                        'updated_time',
                        sa.Time,
                        nullable=False
                    ),
                    sa.Column(
                        'resource_type',
                        sa.Enum('vm',
                                'tenant',
                                'volume',
                                'security_group',
                                'keystone_user',
                                'flavor',
                                'cluster_stats',
                                'image',
                                name='oswl_resource_type'),
                        nullable=False,
                        index=True
                    ),
                    sa.Column(
                        'resource_data',
                        fields.JSON(),
                        nullable=True
                    ),
                    sa.Column(
                        'resource_checksum',
                        sa.Text,
                        nullable=True
                    ),
                    sa.Column(
                        'is_sent',
                        sa.Boolean,
                        nullable=False,
                        default=False,
                        index=True
                    ),
                    sa.PrimaryKeyConstraint('id'))

    op.drop_constraint('node_roles_node_fkey', 'node_roles')
    op.create_foreign_key(
        'node_roles_node_fkey', 'node_roles', 'nodes', ['node'], ['id'],
        ondelete='CASCADE')

    op.drop_constraint('pending_node_roles_node_fkey', 'pending_node_roles')
    op.create_foreign_key(
        'pending_node_roles_node_fkey', 'pending_node_roles', 'nodes',
        ['node'], ['id'], ondelete='CASCADE')

    op.drop_constraint('node_attributes_node_id_fkey', 'node_attributes')
    op.create_foreign_key(
        'node_attributes_node_id_fkey', 'node_attributes', 'nodes',
        ['node_id'], ['id'], ondelete='CASCADE')
    # Introduce linux bonds
    upgrade_enum(
        'node_bond_interfaces',     # table
        'mode',                     # column
        'bond_mode',                # ENUM name
        bond_modes_old,             # old options
        bond_modes_new,             # new options
    )
    # Add bond properties
    op.drop_column('node_bond_interfaces', 'flags')
    op.add_column(
        'node_bond_interfaces',
        sa.Column('bond_properties',
                  fields.JSON(),
                  nullable=False,
                  server_default='{}'))
    # Add interface properties
    op.add_column(
        'node_nic_interfaces',
        sa.Column('interface_properties',
                  fields.JSON(),
                  nullable=False,
                  server_default='{}'))
    op.add_column(
        'node_bond_interfaces',
        sa.Column('interface_properties',
                  fields.JSON(),
                  nullable=False,
                  server_default='{}'))

    move_orchestrator_data_to_attributes(connection)
    op.drop_table('release_orchestrator_data')

    # Plugins migrations
    op.add_column(
        'plugins',
        sa.Column(
            'groups', fields.JSON(), nullable=False, server_default='[]'))
    op.add_column(
        'plugins',
        sa.Column(
            'authors', fields.JSON(), nullable=False, server_default='[]'))
    op.add_column(
        'plugins',
        sa.Column(
            'licenses', fields.JSON(), nullable=False, server_default='[]'))
    op.add_column(
        'plugins',
        sa.Column('homepage', sa.Text(), nullable=True))
Example #45
0
def task_names_upgrade():
    upgrade_enum("tasks", "name", "task_name", task_names_old, task_names_new)
Example #46
0
def task_statuses_downgrade():
    upgrade_enum('tasks', 'status', 'task_status', task_statuses_new,
                 task_statuses_old)
Example #47
0
def downgrade_orchestrator_task_types():
    upgrade_enum('deployment_graph_tasks', 'type',
                 'deployment_graph_tasks_type', orchestrator_task_types_new,
                 orchestrator_task_types_old)
Example #48
0
def upgrade_schema():
    # commands auto generated by Alembic - please adjust! ###
    op.add_column(
        'releases',
        sa.Column('can_update_from_versions',
                  JSON(),
                  nullable=False,
                  server_default='[]'))
    op.add_column('releases',
                  sa.Column('wizard_metadata', JSON(), nullable=True))
    op.add_column('clusters',
                  sa.Column('pending_release_id', sa.Integer(), nullable=True))
    op.create_foreign_key(
        'fk_pending_release_id',
        'clusters',
        'releases',
        ['pending_release_id'],
        ['id'],
    )
    upgrade_enum(
        "clusters",  # table
        "status",  # column
        "cluster_status",  # ENUM name
        cluster_statuses_old,  # old options
        cluster_statuses_new  # new options
    )
    upgrade_enum(
        "tasks",  # table
        "name",  # column
        "task_name",  # ENUM name
        task_names_old,  # old options
        task_names_new  # new options
    )
    upgrade_enum(
        "notifications",  # table
        "topic",  # column
        "notif_topic",  # ENUM name
        notification_topics_old,  # old options
        notification_topics_new,  # new options
    )
    upgrade_enum(
        "cluster_changes",  # table
        "name",  # column
        "possible_changes",  # ENUM name
        cluster_changes_old,  # old options
        cluster_changes_new  # new options
    )

    upgrade_enum(
        "neutron_config",  # table
        "net_l23_provider",  # column
        "net_l23_provider",  # ENUM name
        neutron_l23_providers_old,  # old options
        neutron_l23_providers_new  # new options
    )

    op.drop_table('red_hat_accounts')
    drop_enum('license_type')
    op.add_column('nodes',
                  sa.Column('replaced_deployment_info', JSON(), nullable=True))
    op.add_column(
        'nodes', sa.Column('replaced_provisioning_info', JSON(),
                           nullable=True))
Example #49
0
def add_node_discover_error_downgrade():
    upgrade_enum("nodes", "error_type", "node_error_type", node_errors_new,
                 node_errors_old)
Example #50
0
def downgrade_transaction_names():
    migration.upgrade_enum('tasks', 'name', 'task_name', TASK_NAMES_NEW,
                           TASK_NAMES_OLD)
Example #51
0
def downgrade_schema():
    upgrade_enum(
        "tasks",  # table
        "name",  # column
        "task_name",  # ENUM name
        task_names_new,  # old options
        task_names_old,  # new options
    )
    # Add interface properties
    op.drop_column("node_bond_interfaces", "interface_properties")
    op.drop_column("node_nic_interfaces", "interface_properties")
    # Add bond properties
    op.drop_column("node_bond_interfaces", "bond_properties")
    op.add_column("node_bond_interfaces", sa.Column("flags", fields.JSON(), nullable=True))
    # Introduce linux bonds
    upgrade_enum(
        "node_bond_interfaces",  # table
        "mode",  # column
        "bond_mode",  # ENUM name
        bond_modes_new,  # new options
        bond_modes_old,  # old options
    )
    # OpenStack workload statistics
    op.drop_table("oswl_stats")
    drop_enum("oswl_resource_type")

    upgrade_enum(
        "cluster_changes",  # table
        "name",  # column
        "possible_changes",  # ENUM name
        cluster_changes_new,  # new options
        cluster_changes_old,  # old options
    )

    upgrade_enum(
        "releases",  # table
        "state",  # column
        "release_state",  # ENUM name
        release_states_new,  # new options
        release_states_old,  # old options
    )

    upgrade_enum(
        "nodes",  # table
        "status",  # column
        "node_status",  # ENUM name
        node_statuses_new,  # old options
        node_statuses_old,  # new options
    )

    op.create_table(
        "release_orchestrator_data",
        sa.Column("id", sa.Integer(), nullable=False),
        sa.Column("release_id", sa.Integer(), nullable=False),
        sa.Column("repo_metadata", fields.JSON(), nullable=False),
        sa.Column("puppet_manifests_source", sa.Text(), nullable=False),
        sa.Column("puppet_modules_source", sa.Text(), nullable=False),
        sa.ForeignKeyConstraint(["release_id"], ["releases.id"]),
        sa.PrimaryKeyConstraint("id"),
    )

    op.drop_table("vmware_attributes")
    op.drop_column("releases", "vmware_attributes_metadata")
    op.drop_column("clusters", "deployment_tasks")
    op.drop_column("node_nic_interfaces", "driver")
    op.drop_column("node_nic_interfaces", "bus_info")
    op.drop_column("releases", "deployment_tasks")
    op.drop_column("releases", "modes")
    op.drop_constraint("node_roles_node_fkey", "node_roles")
    op.create_foreign_key("node_roles_node_fkey", "node_roles", "nodes", ["node"], ["id"])

    op.drop_constraint("pending_node_roles_node_fkey", "pending_node_roles")
    op.create_foreign_key("pending_node_roles_node_fkey", "pending_node_roles", "nodes", ["node"], ["id"])

    op.drop_constraint("node_attributes_node_id_fkey", "node_attributes")
    op.create_foreign_key("node_attributes_node_id_fkey", "node_attributes", "nodes", ["node_id"], ["id"])
    op.drop_column("ip_addrs", "vip_type")
    drop_enum("network_vip_types")

    # Plugins table changes
    op.drop_column("plugins", "groups")
    op.drop_column("plugins", "authors")
    op.drop_column("plugins", "licenses")
    op.drop_column("plugins", "homepage")