Exemple #1
0
def machine_context(admin_user_client, service_client,  # NOQA
                    super_client, request):  # NOQA
    ctx = create_context(admin_user_client, create_project=True,
                         add_host=True)
    origMachineSchemas = service_client.list_dynamic_schema(name='machine')
    request.addfinalizer(
        lambda: cleanup(service_client, origMachineSchemas))
    remove_schemas(service_client, ['fooConfig', 'barConfig', 'machine',
                                    'host'])
    service_client.wait_success(service_client.create_dynamic_schema(
                                name='fooConfig',
                                parent='baseMachineConfig',
                                definition=FOO_DEFINITION,
                                roles=['project', 'owner', 'member',
                                       'superadmin', 'readonly']))
    service_client.wait_success(service_client.create_dynamic_schema(
                                name='barConfig',
                                parent='baseMachineConfig',
                                definition=BAR_DEFINITION,
                                roles=['project', 'owner', 'member',
                                       'superadmin', 'readonly']))
    service_client.wait_success(service_client.create_dynamic_schema(
                                name='machine',
                                parent='physicalHost',
                                definition=MACHINE_DEFINITION,
                                roles=['project', 'owner', 'member']))
    service_client.wait_success(service_client.create_dynamic_schema(
                                name='machine',
                                parent='physicalHost',
                                definition=SUPER_MACHINE_DEFINITION,
                                roles=['superadmin', 'admin']))
    service_client.wait_success(service_client.create_dynamic_schema(
                                name='machine',
                                parent='physicalHost',
                                definition=MACHINE_READ_ONLY_DEFINITION,
                                roles=['readonly', 'agent']))
    service_client.wait_success(service_client.create_dynamic_schema(
        name='host',
        parent='host',
        definition=MACHINE_DEFINITION,
        roles=['project', 'owner', 'member']))
    service_client.wait_success(service_client.create_dynamic_schema(
        name='host',
        parent='host',
        definition=SUPER_MACHINE_DEFINITION,
        roles=['superadmin', 'admin']))
    service_client.wait_success(service_client.create_dynamic_schema(
                                name='host',
                                parent='host',
                                definition=MACHINE_READ_ONLY_DEFINITION,
                                roles=['readonly', 'agent']))
    super_client.reload_schema()
    ctx.client.reload_schema()
    return ctx
Exemple #2
0
def machine_context(
        admin_user_client,
        service_client,  # NOQA
        super_client,
        request):  # NOQA
    ctx = create_context(admin_user_client, create_project=True, add_host=True)
    origMachineSchemas = service_client.list_dynamic_schema(name='machine')
    request.addfinalizer(lambda: cleanup(service_client, origMachineSchemas))
    remove_schemas(service_client, ['fooConfig', 'barConfig', 'machine'])
    service_client.wait_success(
        service_client.create_dynamic_schema(
            name='fooConfig',
            parent='baseMachineConfig',
            definition=FOO_DEFINITION,
            roles=['project', 'owner', 'member', 'superadmin', 'readonly']))
    service_client.wait_success(
        service_client.create_dynamic_schema(
            name='barConfig',
            parent='baseMachineConfig',
            definition=BAR_DEFINITION,
            roles=['project', 'owner', 'member', 'superadmin', 'readonly']))
    service_client.wait_success(
        service_client.create_dynamic_schema(
            name='machine',
            parent='physicalHost',
            definition=MACHINE_DEFINITION,
            roles=['project', 'owner', 'member']))
    service_client.wait_success(
        service_client.create_dynamic_schema(
            name='machine',
            parent='physicalHost',
            definition=SUPER_MACHINE_DEFINITION,
            roles=['superadmin', 'admin']))
    service_client.wait_success(
        service_client.create_dynamic_schema(
            name='machine',
            parent='physicalHost',
            definition=MACHINE_READ_ONLY_DEFINITION,
            roles=['readonly', 'agent']))
    super_client.reload_schema()
    ctx.client.reload_schema()
    return ctx
Exemple #3
0
def remove_schemas(service_client, schemas):  # NOQA
    for schema in schemas:
        got_schemas = service_client.list_dynamic_schema(name=schema)
        for got_schema in got_schemas:
            if got_schema.state != 'purged':
                service_client.wait_success(got_schema.remove())