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?'")
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?'" )
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))
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) )