add bp:keystone-v3-jobs
Keystone v3 based check and gate jobs Change-Id: I450edf46cbbbf16382e28607259c620db3dee1b0
This commit is contained in:
parent
740e6a567f
commit
ca28163976
89
specs/keystone-v3-jobs.rst
Normal file
89
specs/keystone-v3-jobs.rst
Normal file
@ -0,0 +1,89 @@
|
||||
::
|
||||
|
||||
This work is licensed under a Creative Commons Attribution 3.0 Unported License.
|
||||
|
||||
http://creativecommons.org/licenses/by/3.0/legalcode
|
||||
|
||||
..
|
||||
|
||||
=====================================
|
||||
Keystone v3 based check and gate jobs
|
||||
=====================================
|
||||
|
||||
https://blueprints.launchpad.net/tempest/+spec/keystone-v3-jobs
|
||||
|
||||
Check and gate jobs using keystone V3
|
||||
|
||||
Problem description
|
||||
===================
|
||||
|
||||
All check and gate jobs at the moment rely on keystone v2 as identity
|
||||
service. Blueprint multi-keystone-api-version-tests introduces in tempest
|
||||
the ability to run tests relying on keystone V3 API only.
|
||||
The version of the keystone API to be used is controlled via a configuration
|
||||
flag. Dedicated jobs are requied to exercise the V3 option, in preparation
|
||||
for keystone V2 deprecation planned for Juno.
|
||||
|
||||
|
||||
Proposed change
|
||||
===============
|
||||
|
||||
Setup keystone v3 jobs to be run initially as experimental only.
|
||||
They will be promoted then to check and eventually gate.
|
||||
|
||||
Running fully v3 jobs is beyond the scope of tempest and infrastructure
|
||||
alone, as it requires changes in other OpenStack projects:
|
||||
|
||||
- python bindings to either support keystone v3 API or consume Keystone
|
||||
Client Session Objects (see http://www.jamielennox.net/blog/2014/02/24/client-session-objects/)
|
||||
- core services to be integrated with keystone v3 model and API
|
||||
Such changes are defined in details in dedicated blueprints.
|
||||
|
||||
As dependencies will be implemented in Juno, it won't be possible
|
||||
to run full v3 jobs against Icehouse. The keystone v3 jobs can still
|
||||
be used against icehouse, with the limitation that only the authentication
|
||||
of tempest clients and creation of isolated user and projects will be
|
||||
based on the v3 API.
|
||||
|
||||
Alternatives
|
||||
------------
|
||||
It would be possible to run all tests via v2 and v3 in parallel.
|
||||
However this would significantly increase the gate duration.
|
||||
|
||||
Implementation
|
||||
==============
|
||||
|
||||
Assignee(s)
|
||||
-----------
|
||||
Andrea Frittoli <andrea.frittoli@hp.com>
|
||||
|
||||
Milestones
|
||||
----------
|
||||
Target Milestone for completion:
|
||||
Juno-final
|
||||
|
||||
Work Items
|
||||
----------
|
||||
- Define a localrc variable in devstack for auth_version=v3
|
||||
- Define an option in devstack-gate to setup the localrc variable
|
||||
- Define two jobs in the experimental pipeline for tempest:
|
||||
dsvm-keystonev3-full and dsvm-neutron-keystonev3-full
|
||||
- Track the progress of dependencies, and enhance jobs accordingly
|
||||
- Run the jobs on demand until all issues are fixed and results are stable
|
||||
- Promote the jobs to check for tempest
|
||||
- Promote the jobs to check for all projects
|
||||
- Promote the jobs to gate
|
||||
|
||||
|
||||
Dependencies
|
||||
============
|
||||
|
||||
A fully v3 check job depends on having v3 support in a number of places
|
||||
|
||||
- tempest framework and its tests https://blueprints.launchpad.net/tempest/+spec/multi-keystone-api-version-tests
|
||||
- official python bindings and CLI tools
|
||||
- openstack services
|
||||
|
||||
The current jobs will only be partially v3 until all dependencies are met.
|
||||
The migration strategy from identity API v2 to v3 will be documented as part of
|
||||
https://blueprints.launchpad.net/keystone/+spec/document-v2-to-v3-transition
|
Loading…
x
Reference in New Issue
Block a user