diff options
-rw-r--r-- | qa/suites/rgw/crypt/2-kms/barbican.yaml | 15 | ||||
-rw-r--r-- | qa/suites/rgw/tempest/tasks/rgw_tempest.yaml | 12 | ||||
-rw-r--r-- | qa/tasks/barbican.py | 7 | ||||
-rw-r--r-- | qa/tasks/keystone.py | 44 |
4 files changed, 56 insertions, 22 deletions
diff --git a/qa/suites/rgw/crypt/2-kms/barbican.yaml b/qa/suites/rgw/crypt/2-kms/barbican.yaml index a84a1627bfb..0e0cda6204f 100644 --- a/qa/suites/rgw/crypt/2-kms/barbican.yaml +++ b/qa/suites/rgw/crypt/2-kms/barbican.yaml @@ -15,30 +15,41 @@ tasks: - tox: [ client.0 ] - keystone: client.0: - sha1: 12.0.0.0b2 + sha1: 17.0.0.0rc2 force-branch: master - tenants: + domains: + - name: default + description: Default Domain + projects: - name: admin description: Admin Tenant + domain: default - name: rgwcrypt description: Encryption Tenant + domain: default - name: barbican description: Barbican + domain: default - name: s3 description: S3 project + domain: default users: - name: admin password: ADMIN project: admin + domain: default - name: rgwcrypt-user password: rgwcrypt-pass project: rgwcrypt + domain: default - name: barbican-user password: barbican-pass project: barbican + domain: default - name: s3-user password: s3-pass project: s3 + domain: default roles: [ name: admin, name: Member, name: creator ] role-mappings: - name: admin diff --git a/qa/suites/rgw/tempest/tasks/rgw_tempest.yaml b/qa/suites/rgw/tempest/tasks/rgw_tempest.yaml index ad2de4858b5..3f94dce94aa 100644 --- a/qa/suites/rgw/tempest/tasks/rgw_tempest.yaml +++ b/qa/suites/rgw/tempest/tasks/rgw_tempest.yaml @@ -8,15 +8,20 @@ tasks: - tox: [ client.0 ] - keystone: client.0: - sha1: 12.0.0.0b2 + sha1: 17.0.0.0rc2 force-branch: master - tenants: + domains: + - name: default + description: Default Domain + projects: - name: admin description: Admin Tenant + domain: default users: - name: admin password: ADMIN project: admin + domain: default roles: [ name: admin, name: Member ] role-mappings: - name: admin @@ -46,7 +51,9 @@ tasks: identity: uri: http://{keystone_public_host}:{keystone_public_port}/v2.0/ uri_v3: http://{keystone_public_host}:{keystone_public_port}/v3/ + auth_version: v3 admin_role: admin + default_domain_name: default object-storage: reseller_admin_role: admin object-storage-feature-enabled: @@ -69,6 +76,7 @@ overrides: osd_min_pg_log_entries: 10 osd_max_pg_log_entries: 10 client: + rgw keystone api version: 3 rgw keystone admin token: ADMIN rgw keystone accepted roles: admin,Member rgw keystone implicit tenants: true diff --git a/qa/tasks/barbican.py b/qa/tasks/barbican.py index 6c7f97376ec..71f3a7346e3 100644 --- a/qa/tasks/barbican.py +++ b/qa/tasks/barbican.py @@ -394,9 +394,12 @@ def task(ctx, config): - tox: [ client.0 ] - keystone: client.0: - sha1: 12.0.0.0b2 + sha1: 17.0.0.0rc2 force-branch: master - tenants: + domains: + - name: default + description: Default Domain + projects: - name: admin description: Admin Tenant - name: rgwcrypt diff --git a/qa/tasks/keystone.py b/qa/tasks/keystone.py index 21ff816e280..058804fe6b1 100644 --- a/qa/tasks/keystone.py +++ b/qa/tasks/keystone.py @@ -157,6 +157,13 @@ def configure_instance(ctx, config): # prepare the config file run_in_keystone_dir(ctx, client, [ + 'source', + f'{get_toxvenv_dir(ctx)}/bin/activate', + run.Raw('&&'), + 'tox', '-e', 'genconfig' + ]) + run_in_keystone_dir(ctx, client, + [ 'cp', '-f', 'etc/keystone.conf.sample', 'etc/keystone.conf' @@ -287,8 +294,8 @@ def run_section_cmds(ctx, cclient, section_cmd, specials, auth_section = [ ( 'os-token', 'ADMIN' ), - ( 'os-identity-api-version', '2.0' ), - ( 'os-url', 'http://{host}:{port}/v2.0'.format(host=admin_host, + ( 'os-identity-api-version', '3' ), + ( 'os-url', 'http://{host}:{port}/v3'.format(host=admin_host, port=admin_port) ), ] @@ -299,16 +306,16 @@ def run_section_cmds(ctx, cclient, section_cmd, specials, [ '--debug' ]) def create_endpoint(ctx, cclient, service, url, adminurl=None): - endpoint_section = { - 'service': service, - 'publicurl': url, - } + endpoint_sections = [ + {'service': service, 'interface': 'public', 'url': url}, + ] if adminurl: - endpoint_section.update( { - 'adminurl': adminurl, - } ) - return run_section_cmds(ctx, cclient, 'endpoint create', 'service', - [ endpoint_section ]) + endpoint_sections.append( + {'service': service, 'interface': 'admin', 'url': adminurl} + ) + run_section_cmds(ctx, cclient, 'endpoint create', + 'service,interface,url', + endpoint_sections) @contextlib.contextmanager def fill_keystone(ctx, config): @@ -316,22 +323,24 @@ def fill_keystone(ctx, config): for (cclient, cconfig) in config.items(): # configure tenants/projects + run_section_cmds(ctx, cclient, 'domain create', 'name', + cconfig['domains']) run_section_cmds(ctx, cclient, 'project create', 'name', - cconfig['tenants']) + cconfig['projects']) run_section_cmds(ctx, cclient, 'user create', 'name', cconfig['users']) run_section_cmds(ctx, cclient, 'role create', 'name', cconfig['roles']) run_section_cmds(ctx, cclient, 'role add', 'name', cconfig['role-mappings']) - run_section_cmds(ctx, cclient, 'service create', 'name', + run_section_cmds(ctx, cclient, 'service create', 'type', cconfig['services']) public_host, public_port = ctx.keystone.public_endpoints[cclient] - url = 'http://{host}:{port}/v2.0'.format(host=public_host, + url = 'http://{host}:{port}/v3'.format(host=public_host, port=public_port) admin_host, admin_port = ctx.keystone.admin_endpoints[cclient] - admin_url = 'http://{host}:{port}/v2.0'.format(host=admin_host, + admin_url = 'http://{host}:{port}/v3'.format(host=admin_host, port=admin_port) create_endpoint(ctx, cclient, 'keystone', url, admin_url) # for the deferred endpoint creation; currently it's used in rgw.py @@ -371,7 +380,10 @@ def task(ctx, config): - keystone: client.0: force-branch: master - tenants: + domains: + - name: default + description: Default Domain + projects: - name: admin description: Admin Tenant users: |