Example #1
0
    def test_release_roles_metadata_upgrade_50_to_51(self):
        ceilometer_depends = {
            'condition': {
                "settings:additional_components.ceilometer.value": True
            },
            'warning': "Ceilometer should be enabled"
        }
        new_ceilometer_depends = {
            'condition': "settings:additional_components.ceilometer.value == "
                         "true",
            'warning': "Ceilometer should be enabled"
        }

        roles_metadata_50 = {
            'mongo': {
                'name': "Telemetry - MongoDB",
                'description': "A feature-complete and recommended "
                               "database for storage of metering data "
                               "from OpenStack Telemetry (Ceilometer)",
                'conflicts': ['compute',
                              'ceph-osd',
                              'zabbix-server'],
                'depends': [ceilometer_depends]
            }
        }

        roles_metadata_51 = upgrade_release_roles_50_to_51(
            roles_metadata_50
        )

        self.assertEqual(
            roles_metadata_51["mongo"]["depends"],
            [new_ceilometer_depends]
        )
def upgrade_releases(connection):
    select = text(
        """SELECT id, attributes_metadata, roles_metadata
        from releases""")
    update = text(
        """UPDATE releases
        SET attributes_metadata = :attrs, roles_metadata = :roles,
        wizard_metadata = :wiz_meta
        WHERE id = :id""")
    r = connection.execute(select)

    # reading fixture files in loop is in general a bad idea and as long as
    # wizard_metadata is the same for all existing releases getting it can
    # be moved outside of the loop

    for release in r:
        attrs_meta = upgrade_release_attributes_50_to_51(
            jsonutils.loads(release[1]))
        roles_meta = upgrade_release_roles_50_to_51(
            jsonutils.loads(release[2]))
        connection.execute(
            update,
            id=release[0],
            attrs=jsonutils.dumps(attrs_meta),
            roles=jsonutils.dumps(roles_meta),
            wiz_meta=jsonutils.dumps(_wizard_meta)
        )
Example #3
0
    def test_release_roles_metadata_upgrade_50_to_51(self):
        ceilometer_depends = {
            'condition': {
                "settings:additional_components.ceilometer.value": True
            },
            'warning': "Ceilometer should be enabled"
        }
        new_ceilometer_depends = {
            'condition': "settings:additional_components.ceilometer.value == "
            "true",
            'warning': "Ceilometer should be enabled"
        }

        roles_metadata_50 = {
            'mongo': {
                'name':
                "Telemetry - MongoDB",
                'description':
                "A feature-complete and recommended "
                "database for storage of metering data "
                "from OpenStack Telemetry (Ceilometer)",
                'conflicts': ['compute', 'ceph-osd', 'zabbix-server'],
                'depends': [ceilometer_depends]
            }
        }

        roles_metadata_51 = upgrade_release_roles_50_to_51(roles_metadata_50)

        self.assertEqual(roles_metadata_51["mongo"]["depends"],
                         [new_ceilometer_depends])
Example #4
0
def upgrade_releases(connection):
    select = text(
        """SELECT id, attributes_metadata, roles_metadata
        from releases""")
    update = text(
        """UPDATE releases
        SET attributes_metadata = :attrs, roles_metadata = :roles,
        wizard_metadata = :wiz_meta
        WHERE id = :id""")
    r = connection.execute(select)

    # reading fixture files in loop is in general a bad idea and as long as
    # wizard_metadata is the same for all existing releases getting it can
    # be moved outside of the loop

    for release in r:
        attrs_meta = upgrade_release_attributes_50_to_51(
            jsonutils.loads(release[1]))
        roles_meta = upgrade_release_roles_50_to_51(
            jsonutils.loads(release[2]))
        connection.execute(
            update,
            id=release[0],
            attrs=jsonutils.dumps(attrs_meta),
            roles=jsonutils.dumps(roles_meta),
            wiz_meta=jsonutils.dumps(_wizard_meta)
        )