Example #1
0
    def test_release_attributes_metadata_upgrade_51_to_60(self):
        sample_group = {
            "field1": {
                "type":
                "text",
                "restrictions": [{
                    "action":
                    "hide",
                    "condition":
                    "cluster:net_provider != 'neutron' or "
                    "networking_parameters:net_l23_provider? != 'nsx'"
                }],
                "description":
                "Description",
                "label":
                "Label"
            },
            "field2": {
                "type":
                "radio",
                "values": [{
                    "restrictions": [
                        "settings:common.libvirt_type.value != 'kvm' or "
                        "not (cluster:net_provider == 'neutron' and "
                        "networking_parameters:segmentation_type? == 'vlan')"
                    ],
                    "data":
                    "value1",
                    "description":
                    "Description1",
                    "label":
                    "Label1"
                }, {
                    "restrictions":
                    ["settings:common.libvirt_type.value == 'kvm?'"],
                    "data":
                    "value2",
                    "description":
                    "Description2",
                    "label":
                    "Label2"
                }]
            }
        }
        attributes_metadata = {"editable": {"group": sample_group}}

        upgrade_release_attributes_51_to_60(attributes_metadata)

        self.assertEqual(
            sample_group["field1"]["restrictions"][0]["condition"],
            "cluster:net_provider != 'neutron' or "
            "networking_parameters:net_l23_provider != 'nsx'")
        self.assertEqual(
            sample_group["field2"]["values"][0]["restrictions"][0],
            "settings:common.libvirt_type.value != 'kvm' or "
            "not (cluster:net_provider == 'neutron' and "
            "networking_parameters:segmentation_type == 'vlan')")
        self.assertEqual(
            sample_group["field2"]["values"][1]["restrictions"][0],
            "settings:common.libvirt_type.value == 'kvm?'")
Example #2
0
    def test_release_attributes_metadata_upgrade_51_to_60(self):
        sample_group = {
            "field1": {
                "type": "text",
                "restrictions": [{
                    "action": "hide",
                    "condition": "cluster:net_provider != 'neutron' or "
                    "networking_parameters:net_l23_provider? != 'nsx'"
                }],
                "description": "Description",
                "label": "Label"
            },
            "field2": {
                "type": "radio",
                "values": [{
                    "restrictions": [
                        "settings:common.libvirt_type.value != 'kvm' or "
                        "not (cluster:net_provider == 'neutron' and "
                        "networking_parameters:segmentation_type? == 'vlan')"
                    ],
                    "data": "value1",
                    "description": "Description1",
                    "label": "Label1"
                }, {
                    "restrictions": [
                        "settings:common.libvirt_type.value == 'kvm?'"
                    ],
                    "data": "value2",
                    "description": "Description2",
                    "label": "Label2"
                }]
            }
        }
        attributes_metadata = {
            "editable": {
                "group": sample_group
            }
        }

        upgrade_release_attributes_51_to_60(attributes_metadata)

        self.assertEqual(
            sample_group["field1"]["restrictions"][0]["condition"],
            "cluster:net_provider != 'neutron' or "
            "networking_parameters:net_l23_provider != 'nsx'"
        )
        self.assertEqual(
            sample_group["field2"]["values"][0]["restrictions"][0],
            "settings:common.libvirt_type.value != 'kvm' or "
            "not (cluster:net_provider == 'neutron' and "
            "networking_parameters:segmentation_type == 'vlan')"
        )
        self.assertEqual(
            sample_group["field2"]["values"][1]["restrictions"][0],
            "settings:common.libvirt_type.value == 'kvm?'"
        )
Example #3
0
def upgrade_releases():
    connection = op.get_bind()

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

    for release in r:
        attrs_meta = upgrade_release_attributes_51_to_60(
            jsonutils.loads(release[1]))
        roles_meta = upgrade_release_roles_51_to_60(jsonutils.loads(
            release[2]),
                                                    add_meta=ADDED_ROLES_META)
        connection.execute(update,
                           id=release[0],
                           attrs=jsonutils.dumps(attrs_meta),
                           roles=jsonutils.dumps(roles_meta))
Example #4
0
def upgrade_releases():
    connection = op.get_bind()

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

    for release in r:
        attrs_meta = upgrade_release_attributes_51_to_60(
            jsonutils.loads(release[1]))
        roles_meta = upgrade_release_roles_51_to_60(
            jsonutils.loads(release[2]), add_meta=ADDED_ROLES_META)
        connection.execute(
            update,
            id=release[0],
            attrs=jsonutils.dumps(attrs_meta),
            roles=jsonutils.dumps(roles_meta)
        )