Ejemplo n.º 1
0
    def test_role_restrictions_upgrade_from_6_0_to_6_1(self):
        roles_meta_original = {
            'controller': {
                'name':
                'Controller',
                'restrictions': [{
                    'condition': '1 == 2',
                    'message': 'Always false'
                }]
            },
            'no-edit': {
                'name': 'No restrictions will be changed here',
            }
        }
        restriction_definitions = {
            'controller': [{
                'condition': '1 == 1',
                'message': 'Always true'
            }]
        }
        roles_meta_after = copy.deepcopy(roles_meta_original)
        roles_meta_after['controller']['restrictions'] = \
            restriction_definitions['controller']

        self.assertEqual(
            upgrade_role_restrictions_6_0_to_6_1(roles_meta_original,
                                                 restriction_definitions),
            roles_meta_after)
Ejemplo n.º 2
0
    def test_role_restrictions_upgrade_from_6_0_to_6_1(self):
        roles_meta_original = {
            'controller': {
                'name': 'Controller',
                'restrictions': [
                    {
                        'condition': '1 == 2',
                        'message': 'Always false'
                    }
                ]
            },
            'no-edit': {
                'name': 'No restrictions will be changed here',
            }
        }
        restriction_definitions = {
            'controller': [
                {
                    'condition': '1 == 1',
                    'message': 'Always true'
                }
            ]
        }
        roles_meta_after = copy.deepcopy(roles_meta_original)
        roles_meta_after['controller']['restrictions'] = \
            restriction_definitions['controller']

        self.assertEqual(
            upgrade_role_restrictions_6_0_to_6_1(
                roles_meta_original,
                restriction_definitions
            ),
            roles_meta_after
        )
Ejemplo n.º 3
0
def upgrade_data():
    connection = op.get_bind()

    select = text(
        """SELECT id, roles_metadata, attributes_metadata, networks_metadata
        from releases""")
    update = text(
        """UPDATE releases
        SET roles_metadata = :roles, attributes_metadata = :attrs,
        networks_metadata = :networks
        WHERE id = :id""")
    r = connection.execute(select)

    for release in r:
        roles_meta = upgrade_role_limits_6_0_to_6_1(
            jsonutils.loads(release[1]),
            _limits_to_update)
        roles_meta = upgrade_role_restrictions_6_0_to_6_1(
            roles_meta,
            _new_role_restrictions)
        for role_name, role in six.iteritems(roles_meta):
            role.update(_new_roles_metadata.get(role_name, {}))
        attributes_meta = upgrade_attributes_metadata_6_0_to_6_1(
            jsonutils.loads(release[2]))
        networks_meta = upgrade_networks_metadata_to_6_1(
            jsonutils.loads(release[3]), _bonding_metadata)
        connection.execute(
            update,
            id=release[0],
            roles=jsonutils.dumps(roles_meta),
            attrs=jsonutils.dumps(attributes_meta),
            networks=jsonutils.dumps(networks_meta),
        )

    update_modes = text(
        'UPDATE releases SET modes = :modes')
    connection.execute(update_modes, modes=jsonutils.dumps(
        ['ha_compact', 'multinode']))

    upgrade_master_node_settings(connection)
    upgrade_6_0_to_6_1_plugins_cluster_attrs_use_ids_mapping(connection)
    upgrade_ubuntu_cobbler_profile_6_0_to_6_1(connection)
    upgrade_cluster_attributes_6_0_to_6_1(connection)
    upgrade_vip_types_6_0_to_6_1(connection)
    upgrade_network_groups_metadata_6_0_to_6_1(connection)

    # do not deploy 6.0.x releases
    upgrade_release_set_deployable_false(
        connection, [
            '2014.2-6.0',
            '2014.2.2-6.0.1'])
Ejemplo n.º 4
0
def upgrade_data():
    connection = op.get_bind()

    select = text(
        """SELECT id, roles_metadata, attributes_metadata, networks_metadata
        from releases"""
    )
    update = text(
        """UPDATE releases
        SET roles_metadata = :roles, attributes_metadata = :attrs,
        networks_metadata = :networks
        WHERE id = :id"""
    )
    r = connection.execute(select)

    for release in r:
        roles_meta = upgrade_role_limits_6_0_to_6_1(jsonutils.loads(release[1]), _limits_to_update)
        roles_meta = upgrade_role_restrictions_6_0_to_6_1(roles_meta, _new_role_restrictions)
        for role_name, role in six.iteritems(roles_meta):
            role.update(_new_roles_metadata.get(role_name, {}))
        attributes_meta = upgrade_attributes_metadata_6_0_to_6_1(jsonutils.loads(release[2]))
        networks_meta = upgrade_networks_metadata_to_6_1(jsonutils.loads(release[3]), _bonding_metadata)
        connection.execute(
            update,
            id=release[0],
            roles=jsonutils.dumps(roles_meta),
            attrs=jsonutils.dumps(attributes_meta),
            networks=jsonutils.dumps(networks_meta),
        )

    update_modes = text("UPDATE releases SET modes = :modes")
    connection.execute(update_modes, modes=jsonutils.dumps(["ha_compact", "multinode"]))

    upgrade_master_node_settings(connection)
    upgrade_6_0_to_6_1_plugins_cluster_attrs_use_ids_mapping(connection)
    upgrade_ubuntu_cobbler_profile_6_0_to_6_1(connection)
    upgrade_cluster_attributes_6_0_to_6_1(connection)
    upgrade_vip_types_6_0_to_6_1(connection)
    upgrade_network_groups_metadata_6_0_to_6_1(connection)

    # do not deploy 6.0.x releases
    upgrade_release_set_deployable_false(connection, ["2014.2-6.0", "2014.2.2-6.0.1"])
Ejemplo n.º 5
0
def upgrade_data():
    connection = op.get_bind()

    select = text("""SELECT id, roles_metadata, attributes_metadata
        from releases""")
    update = text("""UPDATE releases
        SET roles_metadata = :roles, attributes_metadata = :attrs
        WHERE id = :id""")
    r = connection.execute(select)

    for release in r:
        roles_meta = upgrade_role_limits_6_0_to_6_1(
            jsonutils.loads(release[1]), _limits_to_update)
        roles_meta = upgrade_role_restrictions_6_0_to_6_1(
            roles_meta, _new_role_restrictions)
        attributes_meta = upgrade_attributes_metadata_6_0_to_6_1(
            jsonutils.loads(release[2]))
        connection.execute(update,
                           id=release[0],
                           roles=jsonutils.dumps(roles_meta),
                           attrs=jsonutils.dumps(attributes_meta))

    upgrade_master_node_settings(connection)