Release-announce
Threads by month
- ----- 2025 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- 1 participants
- 17222 discussions
We are happy to announce the release of:
senlin 3.0.0: OpenStack Clustering
This release is part of the ocata release series.
Download the package from:
https://tarballs.openstack.org/senlin/
Please report issues through launchpad:
https://bugs.launchpad.net/senlin
For more details, please see below.
3.0.0
^^^^^
New Features
************
* A new API "cluster-op" is introduced to trigger a profile type
specific operation on all nodes in a cluster. This API is available
since API micro-version 1.4.
* Docker container profile now supports operations like restart,
pause and unpause.
* A new, optional parameter "destroy_after_deletion" is added to the
cluster-del-nodes request since API micro-version 1.4.
* The health manager is improved to use dynamic timers instead of
fix interval timers when polling cluster's status.
* Error messages returned from API requests are now unified. All
parameter validation failures of the same reason returns a similar
message.
* A configuration option "exclude_derived_actions" is introduced
into the "dispatchers" group for controlling whether derived actions
should lead into event notifications and/or DB records.
* A event_purge subcommand is added to senlin-manage tool for
purging events generated in a specific project.
* Health policy recovery actions now contains a list of dictionaries
instead of a list of simple names. This is to make room for workflow
invocations.
* Many new operations are added to os.nova.server profile type.
These operations can be shown using the "profile-type-ops" API.
* Added new *node-operation* API for performing profile type
supported operations on a node.
* New API "node-op" is introduced for triggering profile type
specific operations on a node. This is available since API micro-
version 1.4.
* Event notifications (versioned) are added to enable senlin-engine
to send out messaging events when configured. The old event repo is
adapted to follow the same design.
* Versioned request support in API, RPC and engine layers.
* Basic support for event/notification.
* Enables osprofiler support.
* Rally plugin for cluster scaling in.
* Batch policy support for cluster actions.
* Integration test for message receiver.
* A new API "profile-type-ops" is introduced to expose the profile
type specific operations' schema to end users.
* Integrated OSProfiler into Senlin, support using OSProfiler to
measure performance of Senlin.
* Profile type list and policy type list now returns the support
status for each type since API micro-version 1.5.
* RPC requests from the API service to the engine service are fully
managed using versioned objects now. This will enable a smooth
upgrade for the service in future.
Upgrade Notes
*************
* For resources which has a user, a project and a domain property,
the lengths of these columns are increased from 32 chars to 64 chars
for a better conformance with Keystone.
* New setup configuration items are provided to enable the "message"
and/or "database" event generation.
Critical Issues
***************
* The problem of having clusters or nodes still locked by actions
executed by a dead engine is fixed.
Security Issues
***************
* Multi-tenancy is enhanced so that an admin role user has to
respect project isolation unless explicitly asking for an exception.
Bug Fixes
*********
* Fixed the problem that health manager related configuration
options were not properly exposed.
* Removed LB_STATUS_POLLING from health policy since LBaaS still
cannot provide reliable node status update.
* The health policy recovery actions is designed to be a list but
the current implementation can only handle one action. This is now
explicitly checked.
* Fixed the problem that the "updated_at" timestamp of a node was
not correctly updated.
* The notifications of profile type specific operations were not
properly reporting the operation's name. This has been fixed.
* Fixed the notification logic so that it uses the proper transport
obtained from oslo.messaging.
* Fixed bug related to cluster-collect API where the path parameter
is None.
* When attaching a policy (especially a health policy) to a cluster,
users may choose to keep the policy disabled. This has to be
considered in the health manager and other places. This issue is
fixed.
* A nova server, if booted from volume, will not return a valid
image ID. This situation is now taken care of.
Other Notes
***********
* The retrieval of some resources such as actions and policies are
optimized to avoid object instantiation.
Changes in senlin 2.0.0.0b3..3.0.0
----------------------------------
6c484a0 Release notes for final RC of Ocata
a7dcfdf Fix start checking condition
651ebcd Fix receiver reference documentation
dc2e77d Support 'enabled' in attach callback
54effec Rename get_service_context to get_service_credentials
9a36b10 Fix node show detail image id error
9de60c4 Add db purge in senlin manage
5814299 User reference doc for deletion policy
6c821d6 User reference documentation for zone policy
6dfb47b User reference documentation for region policy
660826e User reference documentation for LB policy (1)
2db4532 Improve params check when resize
9970034 Revise 'cluster_check' RPC fail log
5d1b9ae Tutorial for autoscaling
0813d8a User reference for affinity policy
aa2ded7 Use dynamic timer for cluster status polling
c9c34bf Update API-REF for the cluster-del-node API
f0e5b58 Fix node deletion logic
8b5e5d0 Fixing enabling order for OSProfiler plugins
cb670fc Update UPPER_CONSTRAINTS_FILE for stable/ocata
b6d8b09 Update .gitreview for stable/ocata
a0ed0da Move 'to_dict' to cluster object
25c356a Remove 'load_all' from cluster_policy module
39c8e92 Make room from heat event listener
cd119ea Rename 'VM_LIFECYCLE_EVENTS' to 'LIFECYCLE_EVENTS'
33f5e62 Move 'to_dict' to node object
6d6fd5a Driver for glance v2
cde0407 Add 'server_create_image' operation for nova driver
0442035 Revise UUID field checking
bd57130 Remove 'load_all' from profile/policy base
3736077 Ensure server zone is updated properly
cc3e528 Remove 'load_all' from receiver and action base
907a85d Decision to keep our copy of NonNegativeInteger
4235334 Remove unused notification_sample method
7064036 Add more nova server operations
c65d22b Enforce context validation for profiles
321c872 Make rebuild an operation for nova server
1f7813d Revise TODO list and FEATURE list based on meetup
4c9fa8b Updated from global requirements
72021a3 Ensure cluster recovery is triggered after polling
e5a65f7 Fix cluster health registry creating issue
9fee8ff Fix cluster health policy attach fail
aca026f Typo fix: exisiting => existing
b9861bd revise tempest api test for policy 2
b903c35 revise tempest api test for profile/policy types
6338a3c revise tempest api test for node 2
9d4854b revise tempest api test for events
503ba3e revise tempest api test for policy 1
61ec7c8 revise tempest api test for profile 2
40889bf Fix health check enable/disable problem
339cb9f revise tempest api test for profile 1
30693e8 Add 'enabled' column to health registry
8583987 revise versioned objects' exception message
998127d Add developer doc for health policy
0b41c90 Return support status in policy type show
8f29239 Fix typo in policy-type-list related code
8989e76 revise tempest api test for node 1
c5ed386 Return support status in profile type show
9ebd4be revise tempest api test for cluster 5
fa78792 Fix log issue in do cluster check action
b5afb16 Add floating ip operations to neutron driver
d5d5d5b Promote unit test coverage for ClusterAction.do_recover
0e15e0b Updated from global requirements
dfe86f4 Release notes backlog for ocata-3
6a7ed0f Fix receiver create parameter checking
21af422 Perform action check when attach health policy
76d93fa revise tempest api for cluster 4
d3147c7 Remove LB_STATUS_POLLING from health detection type
42ec822 revise tempest api for cluster 3
52953fa Add security_group_find to neutron driver
f8129c6 Fix various problems in doc tree
748bc46 revise tempest api for cluster 2
2de93ce Add port_create/port_delete to neutron driver
5c580e4 unify exceptions' message
14cc2d0 revise BadRequest exception message
7117121 Fix cluster-list failed of ResourceNotFound problem
c5e4c50 Updated from global requirements
24fc2d1 Fix _add_listener cannot get project
ed9f088 improve tempest api for action show
c2f0a3f improve tempest test for action list
fcc7f28 revise tempest api test for cluster policy
7717991 revise tempest api test for cluster-1
c594da3 Replaced e.message with str(e)
26fc50b Fix cluster-check cannot work problem
8926f2b Revise health policy example
cf1de30 Fix user, project, domain columns in sqlalchemy
440b417 Updated from global requirements
b535d8b Bump API micro-version to 1.5
c17500a Return support status in profile/policy type list
3bf1136 Revise Profile.from_object name
b972215 Revise workflow intergation spec with new recover design
b9fd782 Documentation on API changes
b7b0e6a Add 'VERSIONS' to all profile/policy types
913d04e Trivial: add the missing comment in do_scale_in
968ec36 Revise cluster action class names
d9fecb2 Api support for "destroy_after_deletion" in cluster del nodes
e9ebeed Fix bug in ClusterAction._delete_nodes
6ae5836 Revise issue in do_del_nodes
cc2ad9c Update api history.rst about destroy_after_deletion
72297dc Replace the definition about action cause in action with it in consts
0d1afa8 Revise Log.Warning in leave operation
1491372 Revise history.rst format for rendering
aef2d11 Unit test for ClusterAction.do_update
4836171 Remove conditional "if child:" in _create_nodes
c36fda7 Explicitly state that 406 will be raised
475da20 API test for node-operation call
51e15b5 Fix operation handler invocation in node
590a1ec Bump max micro-version for V1 API to 1.4
6ac37be Revise navigation level of "6.3 Reviewing Patches"
6af4709 Split API tests for node actions
ec73344 API test for cluster-collect
4de8b2b Split API tests for cluster actions
8f6e6dc Explicitly spell out cloud backend choices
a4d44f0 Api-ref update for filter "user_id" in receiver list
625546d Fix coverage test failed problem
7fb2a98 Remove unnecessary coding format in files
ae931ed Hook service clean up to lock breaker
eac0a93 Api support for filter "user_id" in receiver list
8270e47 Revise webhook middleware
1322a01 Engine support for filter "user_id" in receiver list
4e050f1 Objects support for filter "user_id" in receiver list
4d70b88 Enforce project_safe checking for admin users
f7c1084 Extend Senlin to support mistral workflow service
d9d0700 Remove NotificationAction field type
398f7e5 Updated from global requirements
32baad1 Trivial: fix typos about stringify
626d7ce DB API for cleaning mess left by dead engine
7599602 Split the unit tests for cluster_action
f8765f5 Use call to repleace call2
a569e3c Remove call method in rpc client
c67163c Delete python bytecode file
341a6f2 Prepare for removing call method
337c17d Revise FEATURES pipeline
9961b30 Some operations for container profile
aecafe2 Additional operations for docker driver
bffc1ee Add IntegerParam data type in schema
0521fe6 Remove the temporary flag "rpc_use_object" in config.py
1c3083b Documentation for node-operation API
ff26e22 API layer support for node-operation
62d9fe9 Exclude derived actions by default in events
dc866f0 Enable healthmgr related opts
ab72c5b Add validation to health policy
be23d87 Trivial: Revise TODO comments
02cee38 Improve event logging for x_OPERATION actions
ab4858b Revise health policy to add action params
64f7137 Add additional description to message config
c81e431 API-REF for the cluster-operations API
64b66bc Optimize notification to use its own transport
6d4440f Fix sample health policy yaml files
12e1787 Bumping the version of ClusterDelNodeRequest
d25f76f Revise parameter description in config.py
d4058b5 Revise the event.rst
ec27e2b Trivial: modify the description of node op
d9da610 Cover event dispatchers related opts in senlin.conf.sample
fc382cc API layer support to cluster-operation API
624b0db Engine support to cluster-operation call
dc647fd Action support to CLUSTER_OPERATION
c649b5f Replace profile_type_xyz2 with profile_type_xyz
d3d4e62 Replace profile_xyz2 with profile_xyz
74e556c revise event notification doc
c221b4a Replace webhook_trigger2 with webhook_trigger
a051b0c Use policy_* to replace policy_*2
cb730b8 Replace receiver_xyz2 with receiver_xyz
df887d8 Request object for cluster-operation
2892e85 Use event_* to replace event_*2
129e558 Use node_* to replace node_*2
a7a9727 Use cluster_* to replace cluster_*2
84e2288 Use request_context to replace request_context2
bc907e5 API-REF documentation for profile-type-ops API
82a47a6 Replace credential_xyz2 with credential_xyz
0c84744 Replace get-revision2 with get-revision
57b7c14 API support for profile_type_ops
a4ad800 User/developer doc for event dispatchers
7c27ef2 Add parameter in CLUSTER_DEL_NODES action
7755f85 Correct the key in test_action_base.py
a5b46cd Use action_* to replace action_*2
5d604c7 Improve the coverage of node updated_at
482095a Improve error message for Json field validation
1977333 Trivial: remove two TODO items
fbdcb51 Trivial: fix pep8 error in rally job plugin
111b003 Engine support to NODE_OPERATION
ede9533 NODE_OPERATION action support
e3f1450 Node do_operation support
1d4118d Improve Operation schema validation
df79902 add missing param about alarm create
63c9d7f Updated from global requirements
3322ab5 Add user and project support in action parse
6cd8046 Trivial: Revise the parameter description in node_get2
580842f Trivial: Revise the code annotation in cluster_collect2
9022785 Trivial: Revise the parameter description in cluster_scale_in2
9b324a9 Remove deadcode about request_context
561642c Trivial: Revise the code annotation in cluster_add_nodes2
6264c4b Add profile_type_ops RPC call
f39a053 Trivial: Revise the parameter name of event_get2
06d3f07 Remove deadcode about get_revision
3422cdc Revise the class GetRevisionRequest
d221fcd Remove dead code about credential_update
089bafe Add ProfileTypeOpListRequest
3b62d76 Add request object for node operations
ceff778 Versioned request and engine support for credential_update
d5477d2 Trivial: fix the error description in receiver_list2
35f470c Trivial: fix the error description in receiver_get2
0d5c415 Disable message notification by default
f03f6b8 Updated from global requirements
0c082cf fix typo in doc
d5068b3 Modify the description of profile validate
b7e855f Trivial: fix the parameter description error in _validate_policy
7c18e48 Removes unnecessary utf-8 encoding
d60c352 Make soft link _50_senlin.py from enabled folder
12dabd9 Reorg the documentation structure
97ebd36 use receiver_obj to load receiver objects
494181a Api support for get-revision2
3c1e0ca Add get-revision requests in object and service
5bfa76e use action_obj to load action objects
bba864d Remove dead code about credential_get
6808f5e API support for credential_get2
9405ee6 use policy_obj to load policy objects
cbf46fe Versioned object and engine support for credential_get
b31955c Trivial: Arrange the imported objects in alphabetical order
6a4cee9 Fix typo in examples
fb43c5a rework profile-get2/list2
fb2bfd4 Fix Senlin tempest plugin
7b6a56e Remove '_get_host_cluster' method from docker profile
f844e31 Remove 'get_specified_node' method from container
2d361c7 Add 'do_validate' to docker profile
ec341aa revise node api (2)
4feebb0 Support to more nova server operations
480a461 revise node api (1)
644cedb revise action api
7ccbc53 Fix usage of NotImplementedError
ae429ec revise profile api
292abeb revise cluster-policy api
e3e40d8 revise event API
119f48a revise receiver api
5a2c548 revise profile-types api
1c22df6 use util method to parse request object in policy_types
0b9b783 revise policy-api to use parse_request()
b3f036f use util method to parse request obj
ae69863 Updated from global requirements
aa54b06 Add checking exception in node-list2
7312bab Remove dead code about credential_create
ac0c327 API support for credential_create2
6fa4fdd Add checking exception in action_create2
c0fe021 Ensure objects are registered in api process
7ea0ae8 Move event-find into object layer
de6a739 Move action-find to object layer
1b56ea9 Enhance the parameter check for "path"
6a5948a Move receiver-find to object layer
71c1c3d Move policy_find to object layer
befc4e8 Move profile-find into object layer
940f510 Move 'node-find' to object layer.
677f30f Move cluster-find to object layer
cc564b1 Updated from global requirements
9698a00 Add configuration option for event logging
6375191 Release note for Ocata-2
a3e7d49 Versioned request and engine support for credential_create
33d5495 Add name none test for profile_update
ec728ac Remove some dead code in rpc client
8542ba8 Add http_proxy_to_wsgi to api-paste
5918e4b handle exception when creating nova server.
baef0ab Remove useless decorator for _validate_policy
3696125 Set max_size to cfg.CONF.max_nodes_per_cluster if -1.
07d0210 rally jobs for cluster-scale-in
1fa3099 'project_safe' is a required parameter
8fec06a Fix node dependency handling in docker profile
6935347 Improve DB API for node dependency
cfb796c Remove dead code about action-delete
b6e8d75 Remove retry logic from lock_acquire
f84a1a0 Lookup a random action to execute
995d67b Use util function in cluster API (4)
1b9eba5 Use util function in cluster API (3)
1e8e67d Use util function in cluster API (2)
6dec34e Use util function in cluster API (1)
e179ae9 Doc update for node replace
29d127d Utility function for API request conversion
51479b8 Remove dead code about receiver-notify
7aba702 API support for receiver_notify2
300f4a0 Engine support for receiver_notify2
815daea remove dead code related to cluster-policy
7dc18fc remove dead code of cluster-policy-get2
21e9a32 api layer support cluster-policy-get2
470bf7c Fix policy-update in engine layer
7166786 Fix profile-update caused name null
cbd79b8 remove dead code of cluster-policy-list
1435f76 api layer support cluster-policy-list2
45a7aaa engine service support cluster-policy-list2
702c449 engine service support cluster-policy-get2
2a556cb fields obj support cluster-policy-get2
edbd937 Remove dead code about node_create in engine layer
92537bf Add engine support for action_delete2
2f9021a Request object for action-delete
474aaab Add engine support for action_create2
eef14a6 Add version map search to base object
013e853 Versioned request object for receiver_nofity
3733516 Augment request context with api microversion
074908e Updated from global requirements
c68aab1 Fix implementation of docker profile deletion
426a086 Request object for action-create
6818855 fields obj support cluster-policy-list2
8dbe43b Fix object attributeError when node update
5a33ec4 Add a TODO item for oslo.messaging version bump
179b2f8 kill dead code in engine service and rpc
5e13ee1 api support webhook-trigger2
cfa8548 engine service support webhook-trigger2
caf5ef3 Remove 'ProfileTypeNotMatch' exception type
4861674 Remove 'InvalidParameter' exception type
3af7a92 fields object support webhook trigger
bdd3249 Correct the installation doc, fix path of openrc
4307e0f Move 'parse_bool_param' to api common
34db568 Remove 'validate_sort_params"
6f17b83 Replace 'parse_int_param' with 'get_positive_int'
63799e5 Fix docker create class method
3da316a Fix profile create - call subclass methods
8bd5749 Temporarily disable failed receiver integration test
c956421 Rework profile_create call
a654684 Remove 'InvalidSchemaError' exception type
e4d3361 Replace 'SpecValidationFailed' with 'InvalidSpec'
1db16b0 Refactor exception types for schema/constraints
7d23859 Chnage exception type for policy type not found
c800687 Get both event drivers into action
f784508 Change exception type for profile type not found
6ad1738 Rename 'status' parameter to 'phase' in db driver
d20ce53 Remove redundant parameters from event interface
af21c41 Further simplify event module
c93385c Further simplify event dispatch interface
f1fe45d Add event dispatcher pluggin infrastructure
476cb53 Updated from global requirements
565c104 Fix import method to follow community guideline
8d76e8f Rename node/cluster dependency key name
55e0d04 Remove dead code about receiver-delete
592dd90 API support for receiver-delete2
fce557b Add a TODO item about test
c7f7a3a Minor change on event code in action modules
fad37c6 Add consts definition for notification priority and phase
bd8f341 Remove request id TODO item
9e9d037 Trivial: revise class InternalError comment
7316e55 Extract common logic into base class
0b83480 Simplify database driver for notification/events
4718411 Fix event calls from action base
cd39fd9 Tweak 'cluster' and 'node' member of actions
9a2d5b1 Remove event logging for action signal
12c2381 Forbid deleting a cluster if it is referenced by container nodes
03e6ff7 Forbid deleting vm nodes from a cluster which have containers running on
15d68db Minor tweak to Database event driver
5ed2c51 Remove dead codes related to profile_type in rpc layer
7fb97b0 Remove dead codes related to profile_create in engine layer.
3eff6f1 Remove dead codes related to profile_validate in engine layer
f8074c8 Message driver for event notification
0f8fdcf Versioned notifications for node actions
a469b9a Merge all notification objects/payloads
5695e8f Show team and repo badges on README
618a081 Updated from global requirements
a40b0bc Remove dead codes related to profile_type_get in engine layer
70a9f5d Remove dead codes related to profile_type_list in engine layer
b082b28 Add/delete container node profile id to/from vm cluster 'dependents' property
659525a Notification for cluster actions
1bcd46c Trivial: remove some redundant comment
1f6e9bd Allow None to be passed for Exception payload
cb19dad Add a hacking check rule
4f72db3 Update .gitignore
fc11c32 Revise status_reason when create container fail
f51ad09 API support for profile-create2
270c0f7 Engine support for profile-create2
006b896 Tweak base objects/fields for notification
99d31fb Exception payload for error notification
e0e05f3 New fields for versioned notification
9748b00 Remove NotificationPayloadBase class
1bdc36f Registry support for notification classes
c747d57 Fix devstack plugin setup
9da0f69 Updated from global requirements
3c4e636 Remove dead code about event get
f1df661 Remove dead code about event-list
7f74832 Fix nova resource leak
fba443a API support for profile_type_get2
2368a82 Engine support for profile_type_get2
8f51521 API support for profile_type_list2
a5eb516 Engine support for profile_type_list2
dde1beb revise error in replace-nodes unit test
33d86e7 Modify the cli in doc of policy attach command
405d2ff Versioned request objects for profile_type
19e85f7 Engine support for receiver_delete2
44505b5 Versioned request object for receiver-delete
36facf6 Remove dead code related to profile-delete in engine layer
a59acaa Remove dead code related to profile-update in engine layer
005aac8 Remove dead code related to profile-get in engine layer
6fc6463 Fix an error in integration test
1ccbc9f Update host node 'dependents' when create/delete container node
9a5b682 API support for profile-validate2
3292d9e Move notifications object down one level
a51e19f revise error handling in cluster-delete
8149388 revise error handling in cluster-del-nodes
744e864 revise error handling in cluster-add-nodes
6d6f8a0 Api support for event_get2
8e9df10 Add engine support for event_get2
58b0d98 Add request object for event-get
13a6af7 revise error handling in replace_nodes
5f8865e Revise event dump to use the DB driver
4839c08 Support action project_safe in db layer
388d3c3 Add sort key "cluster_id" for event list
6ea729c Remove dead code about action get
e4d4bd3 Revise action's raise catch
c8d2a8b Remove dead code about action list
d99336b Api support for event_list2
e1ef2fe Add TODO item about referencing existing pool
4e60f44 Support sort key "oid" in event list
33569fd remove some useless rpc code
6c96a22 remove dead code about policy-type-list
aa98cac api support policy-type-list2
6a33bf7 Engine support for profile-validate2
bbdc0b8 Revise versioned object fields for profile-create2
5ba7512 Updated from global requirements
fcbb4e3 Add engine support for event_list2
3921538 Add request object for event-list
e9570e2 Revise the DB event dumper
c0905e8 Revise ex_lbas.yaml cannot be found
eb05e6e Update the cli in doc of policy command
2569165 API support for profile-get2
fd52869 API support for profile-update2
b47d9b6 Move event database driver out of engine
337e5ab Remove unsupported sort key "user"
9e24b33 add batch policy spec
90585cf Remove unsupported sort key "priority"
b71c082 remove dead code in rpc
d17ed4e Revise profile-validate2 object fields
de708e7 Remove dead code related to profile list
b4d0ebc APi support for profile-delete2
acc74ed Engine support for profile-delete2
9e885ac Engine support for profile-update2
bdab7b3 Updated from global requirements
7b3513c fix policy-list2 error
c39ebf0 engine service support policy-type-list2
ad958d0 fields support policy-type-list2
ad290e0 Fix environment unit test
0b23e18 Move approved spec into the 'approved dir
3d72ebc API support for profile-list2
16d7890 Engine support for profile-list2
db1e3c3 Enable dummy (empty) objects
1545d23 Engine support for profile-get2
b54c366 Remove dead code about receiver_get2
4551ea5 Use receiver_get2 in webhook middleware
ebd932b remove dead code about policy-type-get
c34ff29 api layer support policy-type-get2
8b34c42 Fix unit test for policy_validate
69c016c API support for receiver_get2
4ebf94f Engine support for receiver-get
bcd79bb engine service support policy-type-get2
1bc0467 Add toggle in devstack plugin to run senlin-api under Apache2
1d726ac versioned obj support policy type get v2
677d0cd Api support for action_get2
e81a44b Add engine support for action_get2
9fe1181 Add request object for action-get
5115859 remove dead code of policy delete
4791b7f remove dead code of policy create
c701fb6 api support policy- create2
7d8ff51 engine service support policy create v2
0d5153a Fix unstable test about policy_update
8f1d4fb prepare for policy-create v2
7754f7e Api support for action_list2
0534100 remove dead code in policy validate
23a84df api support policy validate v2
dbd4da1 engine service support policy validate v2
a2380cc fields support policy-validate2
5f736d3 Remove dead code about receiver list
cbd1dc2 API support for receiver_list2
cd563e7 A spec for generic event/notification support
354784b Add support to have Senlin API run under Apache
64af753 Add engine support for action_list2
b8bf4a9 Revise TODO list
60a002b Add request object for action-list
a25c755 Versioned request object for receiver get
afea612 Updated from global requirements
f43e66d Versioned objects for profile request
555b162 api layer support policy delete v2
fa3e42b Replace oslo_utils.timeutils.isotime
b0c67cd Updated from global requirements
b62c22c Remove container nodes information from dependents property of cluster
0e9c8a3 Replaces uuid.uuid4 with uuidutils.generate_uuid()
de6c5c9 Move container spec to approved dir
d920ffd Ensure /v1 endpoint returns proper version info
d0d67e8 engine support policy delete v2
dc93a29 remove dead code in policy update
9d227a6 api support policy update v2
4d74d63 engine work prepare for policy update v2
17bb9c9 Engine support for receiver_list2
1fda9b9 Versioned request object for receiver list
61388cd Fix an error in API reference for receiver list
0ebe263 Remove some obsolete rpc client calls
9176577 Minor fix on node-create API
1a2f90f Remove dead code about receiver_create2
381253d API support for receiver_create2
0e9f9c5 Engine support for receiver_create2
8677843 remove dead code in policy get
2d2c46d api support policy get v2
0ff348b engine support policy get v2
e041997 remove dead code in policy list
a389702 Versioned request object for receiver create
b6132f8 Further remove some useless RPC client code
770e274 Remove dead code when migrating to cluster-delete v2
a5fbe15 API layer rework for cluster-delete
fd81cdd Object and engine prep for cluster-delete v2
469b3c5 api support policy list v2
e0f37b8 Updated from global requirements
6f26991 engine prepare for policy list v2
fbcb54f Fix order in updating lock table and action table
70edb59 support versioned resource for policy
518fe0c Remove dead code about node check/recover
f2b1b25 Remove dead code after migrating cluster-collect
68c52c7 API support for node_check2 and node_receove2
e3b0f30 API support to cluster-collect v2
801f938 Engine support to cluster-collect v2
738a74a Versioned object for cluster-collect request
5b58136 Fix an error in API reference for receiver create
ccb1d87 Split action name definition for cluster and node
779cb39 Remove dead engine code about replace nodes
e33bc9e API support to cluster-replace-nodes v2
a29beaa Engine layer cluster-replace-nodes v2
97b6a0b Request object for replace nodes request
e89ea97 Engine support for node_check2 and node_recover2
45468d5 Verioned req object for node check/recover
86e7ab0 Add UniqueDict field type
b614c47 Remove dead code about node-delete
6eb870d API support for node_delete2
780b346 Versioned req object and engine support for node delete
6e80bdb Add filters "policy_name" and "policy_type" for policy binding list
557776a Remove some dead code in rpc client
ee1766b Remove dead code about cluster check/recover
ef6db86 Updated from global requirements
503db8b Tune health manager to use new RPC
5efc333 API layer support to cluster check/recover v2
7b4070c Engine support to objectified cluster check/recover
093b7cf Versioned objects for check/recover requests
2fd686f remove dead code in node action layer
b058729 Kill dead code wrt cluster policy detach/update
4c305d3 check size constraint in cluster action layer
375de2f API layer objectified policy detach and update
8718bf4 Engine support for policy update/detach
9482e60 Request object for policy update and detach
9439d71 Remove dead engine code wrt cluster policy attach
58df918 API layer support for cluster-policy-attach2
8ff5303 Integration test for message receiver
cc41c98 Engine layer cluster-policy-attach2
8c3ab04 Request object for cluster policy attach operation
5f55e50 Remove dead code about node update
aabae3a API support for node_update2
e5998ae Engine support for node_update2
b04db0e Remove engine dead code related to scaling
00e3fe0 API support for cluster scale v2
b855ca8 Engine support for cluster scale in/out v2
68d2cc3 Objects for scaling requests
1fcc584 Add request objects for node update
56b67ae cluster delete action handler for batch policy
bd10698 Rename request object classes for cluster/node list
24d9948 Minor revise clustering_client for tempest test
2ed11d8 Add Zaqar messaging client for tempest integration test
2c6429c batch policy support "cluster delete"
e2b9d35 Fix status_reson when active nodes equal to desired
c914eb1 Add a bandit environment to tox
a4fd97b Clean DETECTION_TYPES definition in health_policy module
f4f6f34 Clean action name definition in cluster and node modules
e567237 Clean cluster status definition in cluster module
3f6e892 Revise cluster_policy_get_by_type
9f04bd6 Minor revise normalize_req
3c8a935 Add cluster_policy_get_by_name to db api
b069fcb Updated from global requirements
7836c92 Add unit test in test_cluster_update_cluster_bad_status
04d0149 Remove dead code about node get
069aa6a API support for node_get2
f082d38 Request object and engine support for node_get
e5409e3 Add "policy_type" and "policy_name" to CLUSTER_POLICY_ATTRS
05ad95e Remove dead code about node-list
518bbc1 API support for node_list2
f89fc22 Add engine support for node_list2
e551d95 Add request object for node-list
33de348 Modify node status const using
b51a39c Remove redundant parameter comment
25ee32a Add developer doc for osprofiler
2a5aa0d Standardize log translation
f623022 Clean node status definition in node module
9ae9d86 Remove get_session
29d899c Add NODE_STATUSES definition into consts
6560290 Use 'openstack' command-client to replace 'senlin receiver-create'
4f444b6 Remove dead code about node_create
913a96e log.exception should use _LE of i18n
5a01445 Add API support for node_create2
59130cb Add engine support for node_create2
3f1f274 functional test for batch policy
d800499 action handler support batch policy
bee7f7d Request object for node-create
a865fc5 Remove dead code related to cluster resize
7fee0ef API support for cluster-resize2
fad485c Use openstack command-client to replace some deprecated senlin commands
213a1be Updated from global requirements
0d0551b Revise cluster.rt to rt
2be8d4c Add request/response sample for policy validate API doc
89f4b96 Tune enum fields for validation
d83b06b Add request/response sample for profile validate API doc
ffb1a90 Configure Zaqar options in devstack plugin
a801f67 Engine support for cluster-resize2
76d5e60 Add missed requirement of keystoneauth1
09f29e5 Stricter validation for cluster-create
b10a120 Updated from global requirements
9e5f2fc Support batch policy
0e2b031 Request object for cluster-resize
3df1e20 Add 'Boolean' and 'AdjustmentType' fields
1cbc7b3 Remove dead code for cluster-del-nodes
a21432c API support for cluster-del-nodes2
2a13c91 Engine support for cluster-del-nodes2
4203ad9 Object for cluster-del-nodes request
c47253d Remove dead code from engine
05e39e1 Remove dead code from api layer
da1bfa8 Switching to objectified RPC
d4e45a8 Address a TODO in message receiver
84fb370 Fix engine and engine test cases
6fb6be3 Fix cluster list checking
d552ab1 Trivial: fix a comment typo in engine service
b2b0379 Stricter object fields checking
48533ce Validation when cluster create missing cluster key
c0a1559 API support to cluster-add-nodes2
27ff242 Engine support for cluster-add-nodes2
5d59242 ClusterAddNodes request object
533e0dc Add IdentityList field type
df17e67 Api Ref of cluster replace nodes
070a01d API support for cluster-update2
8877846 Updated from global requirements
8b0592f Engine support for cluster-update2
d403726 Versioned object for cluster update request
bde9677 API support to cluster_get2
5e021e4 Engine support to cluster_get2
d72ed72 Add ClusterGetRequest object
6e683c3 API and functional test for node replace
f7fd5ba Integrate osprofiler into Senlin
6e26e29 Add developer doc for message receiver
c2cb0d3 API cluster-list2
22b0570 Add user doc for message receiver
f390b2f Some guidelines for code reviews
bf0130a Support api microversion for tempest API test
43132f8 Add 'jsonschema' to required packages
b0e953a Engine support to cluster_list2
1e8fbd5 Engine service cluster_list2
8b0da69 Change max api version
04ef635 Updated from global requirements
bac2123 Updated from global requirements
1896742 Revise lb_policy version
1279249 Add ClusterListRequestBody to objects
433e964 Add Sort field as versioned object
45d83c3 Add cluster.rt[nodes] type unit test
aabb3f5 desired_capacity default value to min_size default value
0ab1224 Revise node-list in engine layer
f169942 Fix typos in glossary.rst & profiles.rst
5c026f1 Reworked cluster-create API
5bac5fb Tweak name field
b4ca17d Prepare engine for object deserialization
1090056 Util function for normalizing requests
5877a62 Tweak object base classes for serialization
c78f80c Add RPC call for passing object as parameters
8aa420c API support node replace
fff2e6b Add config option 'rpc_use_object'
374c806 Prepare engine and client for object parameters
4c3d19b Engine service cluster request v2
b14d372 Add Capacity/CapacityField to senlin objects
7a0396e Add missing 'timeout' field to cluster create
ea92f14 Fix some pep8 errors
ba178ce Enforce max_nodes_per_cluster in check_size_params
af07b62 Fix miscalculation of desired_capacity
a02b13f Set workers min=0
670b40d Correct desired when create node with cluster_id
c0e8ca7 Fix the incorrect version and release details
93a2777 Updated from global requirements
290d5d2 Updated from global requirements
122d38a Updated from global requirements
4e7dd22 Fix typo in comment
d06646b Revision to TODO list
b3b52dd More unit tests for schema module
fb5acf7 More unit tests for schema module
ee532d7 Stop adding ServiceAvailable group option
b54982e Fix typos in parameters.yaml
511f0eb More unit tests for schema module
188c496 Updated from global requirements
05f9019 Schema unit tests
8e8df45 Display symbolic levels instead of numbers in event list
e32f1e8 Fix action context usage in message receiver
551b61a Fix typos in parameters.yaml
14d53ad Fix message receiver
eefea23 Fix incorrect order of params of assertEqual()
138de6e Release notes for newton RC2
2bae36f Quick fix on message receiver
7d5a4ee Implement receiver notification handling
2ad337f Updated from global requirements
d1ab25a Unit test for Json get_schema
78dbe8d Add doc about cloud_backend
ddfc65e Removed redundant 'the'
18d8d08 Fix typos in context.py&clusters.rst
44baebd Add Apache 2.0 license to source file
6a74b1a Updated from global requirements
9f4d615 Avoid Forcing the Translation of Translatable Variables
bbdc783 Modify minor problem in service.py
8b66649 Fix some typos
2b43726 Using assertTrue() instead of assertEqual(True)
cff2562 Fix service manage cleanup
6e22519 Versioned object for cluster create request
a67f9b0 Update description for filters and sort
20b3198 Address a TODO item in integration test
25e6048 Fix typo in docstrings
23f4eaf Fix typo in docstrings
002bd20 Fix typo
d48230e Add Name and NameField support
26dadae Creating new keypair for integration test
0c07d74 Revise the bindings.rst
c119a80 change cb to cm
905aff3 Add to_json_schema support to Object fields
a14f0e8 Revise the clusters.rst
5053942 Specifying proper subscription ttl
e096d4e Revise the actions.rst
80e438c Fix CONF.set_override for type enforcement
6978c10 Fix integration test
2d04ea8 Fix the valid keys for filtering event list in doc
01eed0e Support template_url for heat profile
c1cb708 Add missing ":command:" markup for the command
69a618b Fix error in user/action.rst
74315da Fix evnet-list show
6450d3e Updated from global requirements
44251d9 revise the "cluster-policy-attach"
bb7ce2f Use constant instead of 'STRING'
0b076dc Fix handling of ResourceNotFound that is not thrown
a0645ee Translate error-level log messages for LOG.error
0b567c3 Correct reraising of exception
b23367d Cleanse zaqar driver for functions unused
e292d5f Revise TODO.rst
fd1ee5a Add new config option for Zaqar queue
3e96189 Define new config options for receiver notification
32d16e2 Use new min_size/max_size when eval cluster status
e1cf9c1 Fix FEATURES.rst error
2f9b240 Fix cluster_check from health manage
be52efd Fix error in registry.py
b671b6b Fix error in tutorial/receivers.rst
f62a607 Fix user/policy_types.rst error
e5feaa0 Revise schema _validate_version
045b1ee Replace 'MagicMock' with 'Mock'
233975e Fix typos in api-ref/source/policies.inc
b078325 modify profile_update
8815826 Correct driver calls in affinity policy
4580228 Cleanse nova driver for unused calls
355e79f Clean neutron driver interface for unused calls
db36a6e Remove unuse keystone interface functions
f066a44 Move is_engine_dead test to common utils
32d59e9 Fix capacity calculation in scaling actions
7b7e364 Tweak CLUSTER_DEL_NODES for base capacity
875f9c7 Tweak CLUSTER_ADD_NODE action for capacity update
5e0e156 Updated from global requirements
07d4ad5 fix typos in TODO.rst
71d5986 Fix a typo in template.rst
f7ea48b Fix typos in scaling_policy.py & service.py
54978f4 Fix error in authorization.rst
383d0cf Fix error in deletion_v1.rst
1656f45 Service support node replace
27c8d47 Delete engine from db when stop engine
350040f fix typos in doc
11a88f0 Remove a finished TODO in comment
0080669 Fix a typo in utils.py
8cc86b0 Fix nova_v2 test driver
7402288 Use new desired when eval cluster status
faf6b7c Fix error in actions.rst
9046b8a Fix error in template.rst
1e33351 Fix error in container-cluster
905ea2e Remove unnecessary setUp
6fa7a07 Rework NODE_LEAVE action logic
a72e6ef Modify test_service_manage_report_cleanup
e72c80c Fix error in FEATURES.rst
f2141cd Fix error in status.yaml
3ceb3d9 Fix misspelling in parameters.yaml
ce1f607 Fix error in actions.inc
936f0b8 Rework NODE_JOIN logic
dc7904e Fix error in conf.py
59891d1 Rework NODE_DELETE action logic
4259837 Rework NODE_CREATE action logic
7edb329 API and engine support for receiver notifying
07576db Support cluster replace action
375268b Select roles for trust building
654409a Fix error in senlin-manage.rst
0d5e470 Fix some typos in doc
ff7223b Fix error in receivers.rst
e28c0ea Fix error in policies.rst
67ca4d5 Remove is_admin judge in xyz_get_all at db layer
f67c830 Enable senlin policy for dashboard via devstack installation
baba687 Rebase deletion policy on real capacity
5d79494 Rebase LB policy on real capacity of cluster
6931b68 Rebase affinity policy on real capacity of clusters
4801d78 Enable health policy to base on real capacity
d42e638 Add a unit test for deletion policy
59dd2cc Have zone policy based on real capacity
7fb6ecb Have region policy to base on current capacity
e914c23 Have RESIZE based on real capacity
2c9c978 Enable parse_resize_params to handle current capacity
5696020 Rebase RESIZE operation on actual capacity
bfc9a46 Allow node count api to carry filters
853b1d1 Fix error in membership.rst
4508deb Fix error in clusters.rst
28b3de3 Fix error in glossary.rst
2188dca Update XyzNotFound to ResourceNotFound
f687f28 Remove ClusterBusy exception
d89f79b Refact ResourceInUse exception
ce042e6 Unit test for policy load with db object
c8cc352 Fix specs/container-cluster.rst error
6d8044a Update reno for stable/newton
17a62db Release notes for RC1 release
f27ec4b Remove block_device_mapping property
508c91d Fix typo 'duplcate' to 'duplicate'
ab13b26 Fix various properties of nova server profile
bee0de7 Fix docs for node and cluster
5054da1 profile "type_name" synchronize with code
dcb6685 Fix error in authorization.rst
a5b4c7f fix typo in doc
a529bcc Fix error in zone_v1.rst
55aff44 Fix user/Nodes.rst error
6c89807 Remove PROFILE_METADATA in profile_list filter_whitelist
a39b4f3 Fix error in region_v1.rst
19f942e Fix user/bindings.rst synchronize with code
7f807e8 Synchronize user/profiles.rst with code
c4eb45d Fix user/clusters.rst error
98bc739 Fix error in loadbalance_v1.rst
101facb Fix error in deletion_v1.rst
65e1a06 Fix error in action.rst
a75905e Rework nova server update logic
78a77ed Unit tests for password checking/update
51951b1 Rework _delete_interfaces and unit tests
437a264 Fix error in policy_type.rst
f2472b8 Add exception handling to _add_interfaces
78d8867 Rework network validation logic for nova server
90a62de Optimize EResourceOperation
27911c6 Rework network update logic for nova server
d203962 Tweak network update for nova server
b86de75 Update class `ResourceInUse`
2069f86 Refine flavor validation
4d4b600 Updated from global requirements
a4dfcc0 Rework name checking and updating
4e7d765 TrivialFix: Remove cfg import unused
ce888c6 Rework _update_image logic for nova server profile
6042327 [api-ref] Re-allocation response example
61ef6db remove ProfileInUse
6771f84 Fix error in profile_type.rst
3e8952e Use scenario for image and keypair unit tests
dd30178 Use scenario for az and flavor validation test
0bcf387 Revise feature items
cddc870 Split nova server profile unit tests
33cff24 Tweak exception handling for server update
8d75470 [api-ref] Correct parameter's type
eb9842b Build trust for receiver creation
8600b2b Delete dependencies when deleting a node or cluster
27b8a5e Tweak not found exception handling
9d17e42 Fix unit test for nova server network validation
2fec710 Improve network resolving for nova server
dffd1dd Improve get_details for heat stack profile
babce56 [api-ref] Update version response table
68ca4fe Guard against nova exception when creating server
fc73747 Rename 'keypair_get_by_name' to 'keypair_find'
8fd7648 [api-ref] Add 'Show All' button
12a120d Add 'dependents' property to cluster
e9fe2f1 Grammatical mistake in node.rst
bad8db0 Misspelling in cluster.rst
846de6b Guard against driver error for nova validation
e310f0e [api-ref] Remove parameters unused
d1fa751 Rework rally test jobs
cbe7f05 Handle exceptions of docker driver
f54fc21 Fix receiver create
26f0c6a Store node relationship into 'dependents'
75f6d96 Don't import unused logging
e79455f [api-ref] Correcting parameter's types
fe6712c Fix API history doc
48e44cc Modify parameters' type
be0ac27 Misspelling in the comment of cluster and node
aad8911 cluster-check results the status error
84d139e Refactor CLUSTER_RESIZE handler
3538688 Refactor container profile for driver calls
2bb8476 Refactor heat stack profile driver calls
1eeac5a Refactor nova server profile for driver calls
5fbc05e Refactor LB policy for driver calls
b589e67 Add dependents column to node and cluster tables
5284f2a Updated from global requirements
717b4be Refactor region placement policy
48494c1 Refactor zone placement policy
aa43f97 Refactor affinity policy
a198eab Some more release notes for newton-3
Diffstat (except docs and test files)
-------------------------------------
.gitignore | 2 +
.gitreview | 1 +
FEATURES.rst | 188 +-
HACKING.rst | 1 +
README.rst | 9 +
TODO.rst | 85 +-
api-ref/source/actions.inc | 4 +-
api-ref/source/clusters.inc | 100 +
api-ref/source/conf.py | 4 +-
api-ref/source/index.rst | 2 +
api-ref/source/nodes.inc | 47 +
api-ref/source/parameters.yaml | 177 +-
api-ref/source/policies.inc | 20 +-
api-ref/source/policy_types.inc | 19 +
api-ref/source/profile_types.inc | 76 +-
api-ref/source/profiles.inc | 12 +
api-ref/source/receivers.inc | 2 +-
.../source/samples/cluster-del-nodes-request.json | 3 +-
.../source/samples/cluster-operation-request.json | 10 +
.../samples/cluster-replace-nodes-request.json | 7 +
api-ref/source/samples/node-operation-request.json | 5 +
.../samples/policy-type-show-response-v1.5.json | 63 +
.../samples/policy-types-list-response-v1.5.json | 52 +
.../source/samples/policy-validate-request.json | 16 +
.../source/samples/policy-validate-response.json | 25 +
.../source/samples/profile-type-ops-response.json | 15 +
.../samples/profile-type-show-response-v1.5.json | 69 +
.../samples/profile-types-list-response-v1.5.json | 28 +
.../source/samples/profile-validate-request.json | 22 +
.../source/samples/profile-validate-response.json | 31 +
api-ref/source/status.yaml | 4 +-
api-ref/source/versions.inc | 12 +-
devstack/README.rst | 3 +
devstack/apache-senlin.template | 34 +
devstack/lib/senlin | 96 +-
.../user/scenarios/autoscaling_ceilometer.rst | 272 ---
etc/senlin/api-paste.ini | 9 +-
etc/senlin/policy.json | 4 +
examples/policies/batch_policy.yaml | 15 +
examples/policies/health_policy_event.yaml | 15 +
examples/policies/health_policy_poll.yaml | 15 +-
examples/profiles/README.rst | 2 +-
rally-jobs/plugins/senlin_plugin.py | 51 +-
rally-jobs/senlin-senlin.yaml | 67 +-
...ction-policy-optimization-06ea45eb3dcbe33a.yaml | 4 +
.../affinity-policy-fix-72ae92dc8ffcff00.yaml | 3 +
.../capacity-calculation-4fd389ff12107dfb.yaml | 6 +
.../cluster-node-dependents-3bdbebd773d276d1.yaml | 4 +
.../cluster-node-status-e7fced162b415452.yaml | 3 +
.../notes/cluster-ops-433a5aa608a0eb7f.yaml | 5 +
.../notes/container-ops-e57d096742202206.yaml | 4 +
...estroy-nodes-after-remove-37bffdc35a9b7a96.yaml | 4 +
releasenotes/notes/doc-fixes-cd8c7006f8c66387.yaml | 3 +
.../notes/dynamic-timer-67f053499f4b32e2.yaml | 4 +
.../enforce-multi-tenancy-ee27b9bfec7ba405.yaml | 4 +
.../notes/error-messages-bd8b5a6d12e2c4af.yaml | 4 +
...event-for-derived-actions-8bd44367fa683dbc.yaml | 5 +
.../notes/event-purge-db868a063e18eafb.yaml | 4 +
.../fix-health-mgr-opts-99898614f37c5d74.yaml | 4 +
.../forbid-cluster-deletion-a8b0f55aaf0aa106.yaml | 4 +
.../notes/health-lb-polling-32d83803c77cc1d8.yaml | 4 +
.../health-policy-actions-936db8bc3ed08aec.yaml | 7 +
.../keystone-conformance-4e729da9e88b4fb3.yaml | 5 +
...ck-break-for-dead-service-0abd3d3ea333622c.yaml | 4 +
.../notes/message-receiver-3432826515f8e70c.yaml | 4 +
.../metadata-query-profile-9c45d99db7b30207.yaml | 4 +
.../more-policy-validation-ace6a4f890b2a500.yaml | 4 +
.../more-server-operations-dd77e83b705c28f0.yaml | 4 +
.../notes/node-op-api-a7bede34c51854ee.yaml | 4 +
releasenotes/notes/node-ops-115d9d64f6e261db.yaml | 4 +
.../node-update-timestamp-43b9639e22267598.yaml | 4 +
.../notification-operations-c7bdaa9b56e5011f.yaml | 4 +
.../notification-support-a7e2ebc816bb4009.yaml | 8 +
.../notification-transport-ae49e9cb1813cd96.yaml | 4 +
.../nova-server-validation-60612c1185738104.yaml | 4 +
.../notes/nova-update-opt-7372e4d189e483aa.yaml | 4 +
.../nova-update-validation-dca7de984c2071d1.yaml | 4 +
releasenotes/notes/ocata-2-c2e184a0b76231e8.yaml | 8 +
.../notes/path-check-collect-1e542762cbcd65d2.yaml | 3 +
.../notes/policy-enabling-61d0c38aecf314eb.yaml | 5 +
.../notes/profile-type-ops-1f0f2e6e6b5b1999.yaml | 4 +
.../receiver-create-trust-bd5fdeb059e68330.yaml | 3 +
.../receiver-filter-by-user-ab35a2ab8e2690d1.yaml | 4 +
.../notes/remove-bdm-v1-4533677f3bca3c5d.yaml | 4 +
.../notes/senlin-osprofiler-fc8cb7161bdb1a6e.yaml | 4 +
.../notes/server-image-id-27c1619fa818c6a0.yaml | 4 +
.../notes/service-cleanup-afacddfacd7b4dcd.yaml | 4 +
.../notes/support-status-f7383a53ddcae908.yaml | 4 +
.../notes/template-url-19075b68d9a35a80.yaml | 3 +
.../versioned-rpc-requests-2df5d878c279e933.yaml | 5 +
releasenotes/source/conf.py | 3 +-
releasenotes/source/index.rst | 1 +
releasenotes/source/newton.rst | 6 +
requirements.txt | 33 +-
senlin/api/common/util.py | 60 +-
senlin/api/common/wsgi.py | 14 +-
senlin/api/middleware/context.py | 7 +-
senlin/api/middleware/fault.py | 22 +-
senlin/api/middleware/trust.py | 19 +-
senlin/api/middleware/version_negotiation.py | 8 +-
senlin/api/middleware/webhook.py | 12 +-
senlin/api/openstack/history.rst | 47 +-
senlin/api/openstack/v1/actions.py | 37 +-
senlin/api/openstack/v1/build_info.py | 4 +-
senlin/api/openstack/v1/cluster_policies.py | 32 +-
senlin/api/openstack/v1/clusters.py | 440 ++--
senlin/api/openstack/v1/events.py | 39 +-
senlin/api/openstack/v1/nodes.py | 196 +-
senlin/api/openstack/v1/policies.py | 91 +-
senlin/api/openstack/v1/policy_types.py | 24 +-
senlin/api/openstack/v1/profile_types.py | 31 +-
senlin/api/openstack/v1/profiles.py | 108 +-
senlin/api/openstack/v1/receivers.py | 107 +-
senlin/api/openstack/v1/router.py | 18 +
senlin/api/openstack/v1/version.py | 18 +-
senlin/api/openstack/v1/webhooks.py | 14 +-
senlin/cmd/api.py | 4 +
senlin/cmd/api_wsgi.py | 41 +
senlin/cmd/engine.py | 2 +
senlin/cmd/manage.py | 41 +
senlin/common/config.py | 98 +-
senlin/common/constraints.py | 12 +-
senlin/common/consts.py | 92 +-
senlin/common/context.py | 30 +-
senlin/common/exception.py | 142 +-
senlin/common/messaging.py | 53 +-
senlin/common/profiler.py | 46 +
senlin/common/scaleutils.py | 68 +-
senlin/common/schema.py | 279 ++-
senlin/common/utils.py | 107 +-
senlin/db/api.py | 43 +-
senlin/db/sqlalchemy/api.py | 360 ++-
senlin/db/sqlalchemy/migrate_repo/manage.py | 13 +
.../versions/006_node_cluster_dependents_column.py | 28 +
.../migrate_repo/versions/007_placeholder.py | 15 +
.../migrate_repo/versions/008_placeholder.py | 15 +
.../migrate_repo/versions/009_placeholder.py | 15 +
.../versions/010_user_project_length.py | 26 +
.../migrate_repo/versions/011_registry_enable.py | 22 +
senlin/db/sqlalchemy/models.py | 4 +
senlin/drivers/base.py | 2 -
senlin/drivers/container/docker_v1.py | 17 +
senlin/drivers/openstack/glance_v2.py | 31 +
senlin/drivers/openstack/keystone_v3.py | 51 +-
senlin/drivers/openstack/lbaas.py | 7 +-
senlin/drivers/openstack/neutron_v2.py | 107 +-
senlin/drivers/openstack/nova_v2.py | 156 +-
senlin/drivers/openstack/zaqar_v2.py | 48 +-
senlin/engine/actions/base.py | 139 +-
senlin/engine/actions/cluster_action.py | 678 ++++--
senlin/engine/actions/node_action.py | 154 +-
senlin/engine/cluster.py | 133 +-
senlin/engine/cluster_policy.py | 22 -
senlin/engine/dispatcher.py | 35 +-
senlin/engine/environment.py | 4 +-
senlin/engine/event.py | 244 +-
senlin/engine/health_manager.py | 214 +-
senlin/engine/node.py | 149 +-
senlin/engine/receivers/base.py | 42 +-
senlin/engine/receivers/message.py | 204 +-
senlin/engine/receivers/webhook.py | 6 +-
senlin/engine/registry.py | 13 +-
senlin/engine/scheduler.py | 42 +-
senlin/engine/senlin_lock.py | 56 +-
senlin/engine/service.py | 2376 ++++++++++---------
senlin/events/__init__.py | 0
senlin/events/base.py | 49 +
senlin/events/database.py | 63 +
senlin/events/message.py | 69 +
senlin/hacking/checks.py | 17 +-
senlin/objects/__init__.py | 14 +
senlin/objects/action.py | 65 +-
senlin/objects/base.py | 86 +-
senlin/objects/cluster.py | 58 +
senlin/objects/cluster_policy.py | 25 +
senlin/objects/event.py | 25 +-
senlin/objects/fields.py | 521 ++++-
senlin/objects/health_registry.py | 12 +-
senlin/objects/node.py | 94 +-
senlin/objects/notification.py | 292 ++-
senlin/objects/policy.py | 44 +
senlin/objects/profile.py | 44 +
senlin/objects/receiver.py | 55 +-
senlin/objects/requests/__init__.py | 0
senlin/objects/requests/actions.py | 69 +
senlin/objects/requests/build_info.py | 19 +
senlin/objects/requests/cluster_policies.py | 37 +
senlin/objects/requests/clusters.py | 237 ++
senlin/objects/requests/credentials.py | 39 +
senlin/objects/requests/events.py | 46 +
senlin/objects/requests/nodes.py | 109 +
senlin/objects/requests/policies.py | 95 +
senlin/objects/requests/policy_type.py | 28 +
senlin/objects/requests/profile_type.py | 36 +
senlin/objects/requests/profiles.py | 97 +
senlin/objects/requests/receivers.py | 97 +
senlin/objects/requests/webhooks.py | 31 +
senlin/objects/service.py | 4 +
senlin/policies/affinity_policy.py | 41 +-
senlin/policies/base.py | 127 +-
senlin/policies/batch_policy.py | 150 +-
senlin/policies/deletion_policy.py | 14 +-
senlin/policies/health_policy.py | 90 +-
senlin/policies/lb_policy.py | 46 +-
senlin/policies/region_placement.py | 29 +-
senlin/policies/scaling_policy.py | 26 +-
senlin/policies/zone_placement.py | 31 +-
senlin/profiles/base.py | 128 +-
senlin/profiles/container/docker.py | 283 ++-
senlin/profiles/os/heat/stack.py | 93 +-
senlin/profiles/os/nova/server.py | 997 +++++---
senlin/rpc/client.py | 324 +--
.../api/actions/test_action_list_negative.py | 66 +-
.../api/actions/test_action_show_negative.py | 11 +-
.../api/api_versions/test_api_version_show.py | 2 +-
.../api/api_versions/test_api_versions_list.py | 2 +-
.../test_cluster_policy_list_negative.py | 49 +-
.../test_cluster_policy_show_negative.py | 47 +-
.../tempest/api/clusters/test_cluster_action.py | 324 ---
.../api/clusters/test_cluster_action_negative.py | 975 +-------
.../tempest/api/clusters/test_cluster_add_nodes.py | 270 +++
.../tempest/api/clusters/test_cluster_check.py | 80 +
.../tempest/api/clusters/test_cluster_collect.py | 96 +
.../tempest/api/clusters/test_cluster_create.py | 4 +
.../api/clusters/test_cluster_create_negative.py | 51 +-
.../tempest/api/clusters/test_cluster_del_nodes.py | 265 +++
.../api/clusters/test_cluster_delete_negative.py | 71 +-
.../api/clusters/test_cluster_list_negative.py | 76 +-
.../api/clusters/test_cluster_policy_attach.py | 153 ++
.../api/clusters/test_cluster_policy_detach.py | 161 ++
.../api/clusters/test_cluster_policy_update.py | 185 ++
.../tempest/api/clusters/test_cluster_recover.py | 85 +
.../api/clusters/test_cluster_replace_nodes.py | 337 +++
.../tempest/api/clusters/test_cluster_resize.py | 352 +++
.../tempest/api/clusters/test_cluster_scale_in.py | 118 +
.../tempest/api/clusters/test_cluster_scale_out.py | 117 +
.../api/clusters/test_cluster_show_negative.py | 36 +-
.../api/clusters/test_cluster_update_negative.py | 90 +-
.../tempest/api/events/test_event_list_negative.py | 88 +-
.../tempest/api/events/test_event_show_negative.py | 11 +-
.../tempest/api/nodes/test_node_action_negative.py | 73 +-
.../tempest/api/nodes/test_node_create_negative.py | 121 +-
.../tempest/api/nodes/test_node_delete_negative.py | 22 +-
.../tempest/api/nodes/test_node_list_negative.py | 98 +-
.../tempest/api/nodes/test_node_show_negative.py | 22 +-
.../tempest/api/nodes/test_node_update_negative.py | 56 +-
.../api/policies/test_policy_create_negative.py | 63 +-
.../api/policies/test_policy_delete_negative.py | 33 +-
.../api/policies/test_policy_list_negative.py | 65 +-
.../api/policies/test_policy_show_negative.py | 22 +-
.../api/policies/test_policy_update_negative.py | 60 +-
.../api/policies/test_policy_validate_negative.py | 67 +-
.../api/policy_types/test_policy_type_list.py | 26 +
.../api/policy_types/test_policy_type_show.py | 16 +
.../policy_types/test_policy_type_show_negative.py | 13 +-
.../api/profile_types/test_profile_type_list.py | 21 +
.../api/profile_types/test_profile_type_show.py | 16 +
.../test_profile_type_show_negative.py | 13 +-
.../api/profiles/test_profile_create_negative.py | 77 +-
.../api/profiles/test_profile_delete_negative.py | 33 +-
.../api/profiles/test_profile_list_negative.py | 56 +
.../api/profiles/test_profile_show_negative.py | 22 +-
.../api/profiles/test_profile_update_negative.py | 47 +-
.../api/profiles/test_profile_validate_negative.py | 46 +-
.../tempest/functional/test_cluster_membership.py | 73 +
.../integration/test_nova_server_cluster.py | 25 +-
.../api/middleware/test_version_negotiation.py | 52 +-
.../unit/api/openstack/v1/test_cluster_policies.py | 136 +-
.../unit/api/openstack/v1/test_policy_types.py | 185 +-
.../unit/api/openstack/v1/test_profile_types.py | 279 ++-
.../unit/engine/actions/test_attach_policy.py | 109 +
.../unit/engine/actions/test_cluster_action.py | 2067 +----------------
.../unit/engine/actions/test_replace_nodes.py | 282 +++
.../unit/engine/actions/test_update_policy.py | 79 +
.../unit/engine/service/test_cluster_policies.py | 415 ++--
.../unit/engine/service/test_profile_types.py | 56 +-
.../unit/objects/requests/test_cluster_policies.py | 99 +
.../unit/objects/requests/test_credentials.py | 79 +
.../unit/objects/requests/test_policy_type.py | 45 +
.../unit/objects/requests/test_profile_type.py | 62 +
.../unit/profiles/test_nova_server_validate.py | 679 ++++++
setup.cfg | 16 +-
test-requirements.txt | 15 +-
tools/config-generator.conf | 1 +
tox.ini | 12 +-
493 files changed, 39545 insertions(+), 19799 deletions(-)
Requirements updates
--------------------
diff --git a/requirements.txt b/requirements.txt
index 7e6dba2..e1677f0 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -5 +5 @@
-pbr>=1.6 # Apache-2.0
+pbr>=1.8 # Apache-2.0
@@ -7 +7 @@ Babel>=2.3.4 # BSD
-docker-py<1.8.0,>=1.6.0 # Apache-2.0
+docker-py>=1.8.1 # Apache-2.0
@@ -10 +10,3 @@ jsonpath-rw<2.0,>=1.2.0 # Apache-2.0
-keystonemiddleware!=4.1.0,!=4.5.0,>=4.0.0 # Apache-2.0
+jsonschema!=2.5.0,<3.0.0,>=2.0.0 # MIT
+keystoneauth1>=2.18.0 # Apache-2.0
+keystonemiddleware>=4.12.0 # Apache-2.0
@@ -12,2 +14,2 @@ microversion-parse>=0.1.2 # Apache-2.0
-openstacksdk>=0.9.4 # Apache-2.0
-oslo.config>=3.14.0 # Apache-2.0
+openstacksdk>=0.9.13 # Apache-2.0
+oslo.config!=3.18.0,>=3.14.0 # Apache-2.0
@@ -15 +17 @@ oslo.context>=2.9.0 # Apache-2.0
-oslo.db>=4.10.0 # Apache-2.0
+oslo.db>=4.15.0 # Apache-2.0
@@ -17,2 +19,2 @@ oslo.i18n>=2.1.0 # Apache-2.0
-oslo.log>=1.14.0 # Apache-2.0
-oslo.messaging>=5.2.0 # Apache-2.0
+oslo.log>=3.11.0 # Apache-2.0
+oslo.messaging>=5.14.0 # Apache-2.0
@@ -20 +22 @@ oslo.middleware>=3.0.0 # Apache-2.0
-oslo.policy>=1.9.0 # Apache-2.0
+oslo.policy>=1.17.0 # Apache-2.0
@@ -23,2 +25,3 @@ oslo.service>=1.10.0 # Apache-2.0
-oslo.utils>=3.16.0 # Apache-2.0
-oslo.versionedobjects>=1.13.0 # Apache-2.0
+oslo.utils>=3.18.0 # Apache-2.0
+oslo.versionedobjects>=1.17.0 # Apache-2.0
+osprofiler>=1.4.0 # Apache-2.0
@@ -27 +30 @@ pytz>=2013.6 # MIT
-PyYAML>=3.1.0 # MIT
+PyYAML>=3.10.0 # MIT
@@ -29 +32 @@ qpid-python;python_version=='2.7' # Apache-2.0
-requests>=2.10.0 # Apache-2.0
+requests!=2.12.2,>=2.10.0 # Apache-2.0
@@ -35,2 +38,2 @@ sqlalchemy-migrate>=0.9.6 # Apache-2.0
-stevedore>=1.16.0 # Apache-2.0
-WebOb>=1.2.3 # MIT
+stevedore>=1.17.1 # Apache-2.0
+WebOb>=1.6.0 # MIT
diff --git a/test-requirements.txt b/test-requirements.txt
index 8596c30..d95bde9 100644
--- a/test-requirements.txt
+++ b/test-requirements.txt
@@ -6 +6 @@
-coverage>=3.6 # Apache-2.0
+coverage>=4.0 # Apache-2.0
@@ -12,2 +12,2 @@ oslotest>=1.10.0 # Apache-2.0
-os-testr>=0.7.0 # Apache-2.0
-PyMySQL!=0.7.7,>=0.6.2 # MIT License
+os-testr>=0.8.0 # Apache-2.0
+PyMySQL>=0.7.6 # MIT License
@@ -21,3 +21,6 @@ os-api-ref>=1.0.0 # Apache-2.0
-oslosphinx!=3.4.0,>=2.5.0 # Apache-2.0
-sphinx!=1.3b1,<1.3,>=1.2.1 # BSD
-reno>=1.8.0 # Apache2
+oslosphinx>=4.7.0 # Apache-2.0
+sphinx!=1.3b1,<1.4,>=1.2.1 # BSD
+reno>=1.8.0 # Apache-2.0
+
+# Bandit build requirements
+bandit>=1.1.0 # Apache-2.0
1
0
We are glad to announce the release of:
sahara-dashboard 6.0.0: Sahara Management Dashboard
This release is part of the ocata release series.
Download the package from:
https://tarballs.openstack.org/sahara-dashboard/
For more details, please see below.
Changes in sahara-dashboard 5.0.0.0rc1..6.0.0
---------------------------------------------
dccee66 Updated from global requirements
1a2e853 Imported Translations from Zanata
c4a0a6a Updated from global requirements
9ad23c4 Updated from global requirements
21ca6c2 Updated from global requirements
a06fd15 Remove support for py33
3cc9381 Remove useless iso8601 requirements
03dffdb Updated from global requirements
0d15f0e Switch to oslo_log
cfc7a0d Imported Translations from Zanata
4e7680a Make plugin version orderly in version list
978718a Add Constraints support
694a85c Add licensing info in source file.
9df0d48 Updated from global requirements
3d7ed54 Show team and repo badges on README
35dd26c fix unit tests for sahara-dashboard
632c528 Imported Translations from Zanata
a04f34b Refactor some dict generators in sahara.py file
fab415a Remove unneded script from tools
538dfcd Imported Translations from Zanata
1f2dd3d Remove some debugging artifacts from file
b0983e7 Updated from global requirements
fd61b98 Updated from global requirements
69c954e Imported Translations from Zanata
26da3f6 Imported Translations from Zanata
bde2e5a fix error redirecting of image-register
b8d1f8e Imported Translations from Zanata
23b9d81 Imported Translations from Zanata
a5efe49 Updated from global requirements
24a09e7 Imported Translations from Zanata
186487b Updated from global requirements
8a2a3e0 Remove unnessesary js code for hidden nav in workflows
218702a Imported Translations from Zanata
35035c1 Fix invalid links in detailed pages
38f5ccc Enable release notes translation
a446429 Do not make project depends on Babel by default
01a7a28 Trival: Update home-page
654542d Updated from global requirements
bf01a86 Updated from global requirements
1305903 Imported Translations from Zanata
3ad466f Add Apache 2.0 license to source file
6dcdb44 Fix typo: Storm Pyelus -> Storm Pyleus
aff44ff Imported Translations from Zanata
3a7ef16 Allow translators to control word order in templates (again)
348478e Imported Translations from Zanata
1f507c3 Allow translators to control word order in templates
6deb3c5 Fix gate jobs
0b7cd03 Imported Translations from Zanata
b05932f Update reno for stable/newton
4a44a7a Add "Register Image" step to cluster creation guide
a4f83d0 TrivialFix: Remove logging import unused
Diffstat (except docs and test files)
-------------------------------------
README.rst | 9 +
releasenotes/source/conf.py | 3 +
releasenotes/source/index.rst | 1 +
.../source/locale/de/LC_MESSAGES/releasenotes.po | 54 +
.../locale/en_GB/LC_MESSAGES/releasenotes.po | 30 -
.../source/locale/fr/LC_MESSAGES/releasenotes.po | 55 +
.../source/locale/id/LC_MESSAGES/releasenotes.po | 54 +
.../locale/ko_KR/LC_MESSAGES/releasenotes.po | 15 +-
.../locale/zh_CN/LC_MESSAGES/releasenotes.po | 10 +-
releasenotes/source/newton.rst | 6 +
requirements.txt | 15 +-
sahara_dashboard/api/__init__.py | 13 +
sahara_dashboard/api/manila.py | 2 +-
sahara_dashboard/api/sahara.py | 8 +-
.../clusters/cluster_templates/tabs.py | 2 +-
.../data_processing/clusters/clusters/tabs.py | 2 +-
.../clusters/clusters/workflows/update.py | 4 -
.../clusters/image_registry/forms.py | 3 +-
.../clusters/image_registry/tabs.py | 4 -
.../clusters/image_registry/views.py | 7 +-
.../clusters/nodegroup_templates/tabs.py | 2 +-
.../nodegroup_templates/workflows/create.py | 2 +-
.../_config_domain_names_help.html | 4 +-
.../cluster_templates/_configure_general_help.html | 6 +-
.../templates/cluster_templates/_details.html | 2 +-
.../templates/cluster_wizard/cluster_guide.html | 16 +
.../clusters/templates/clusters/index.html | 21 -
.../templates/image_registry/_register_image.html | 2 +-
.../_configure_general_help.html | 6 +-
.../content/data_processing/clusters/urls.py | 3 +
.../data_processing/clusters/wizard/forms.py | 4 +-
.../data_processing/clusters/wizard/views.py | 13 +
.../content/data_processing/data_plugins/tabs.py | 2 +-
.../data_processing/jobs/data_sources/tabs.py | 2 +-
.../data_processing/jobs/job_binaries/tabs.py | 2 +-
.../data_processing/jobs/job_templates/tabs.py | 2 +-
.../content/data_processing/jobs/jobs/tabs.py | 2 +-
.../jobs/templates/job_templates/_details.html | 4 +-
.../jobs/templates/jobs/_details.html | 2 +-
.../data_processing/jobs/templates/jobs/index.html | 18 -
.../content/data_processing/utils/helpers.py | 2 +-
.../data_processing/utils/workflow_helpers.py | 8 +-
.../enabled/_1810_data_processing_panel_group.py | 11 +
sahara_dashboard/locale/cs/LC_MESSAGES/django.po | 100 +-
sahara_dashboard/locale/de/LC_MESSAGES/django.po | 209 +-
sahara_dashboard/locale/de/LC_MESSAGES/djangojs.po | 13 +-
sahara_dashboard/locale/fr/LC_MESSAGES/django.po | 201 +-
sahara_dashboard/locale/fr/LC_MESSAGES/djangojs.po | 10 +-
sahara_dashboard/locale/id/LC_MESSAGES/django.po | 2077 ++++++++++++++++++++
sahara_dashboard/locale/id/LC_MESSAGES/djangojs.po | 95 +
sahara_dashboard/locale/ja/LC_MESSAGES/django.po | 140 +-
.../locale/ko_KR/LC_MESSAGES/django.po | 57 +-
sahara_dashboard/locale/ru/LC_MESSAGES/django.po | 149 +-
sahara_dashboard/locale/ru/LC_MESSAGES/djangojs.po | 12 +-
.../locale/zh_CN/LC_MESSAGES/django.po | 57 +-
sahara_dashboard/test/test_data/utils.py | 2 -
setup.cfg | 3 +-
test-requirements.txt | 10 +-
tools/clean_enabled_files.py | 45 -
tools/gate/integration/post_test_hook.sh | 1 -
tools/gate/integration/pre_test_hook.sh | 2 +
tools/install_venv.py | 9 +-
tools/pip_install.sh | 66 -
tools/tox_install.sh | 85 +
tools/with_venv.sh | 3 +
tox.ini | 5 +-
71 files changed, 3467 insertions(+), 385 deletions(-)
Requirements updates
--------------------
diff --git a/requirements.txt b/requirements.txt
index 839b843..ea5b1d2 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -5 +5 @@
-pbr>=1.6 # Apache-2.0
+pbr>=1.8 # Apache-2.0
@@ -7 +6,0 @@ pbr>=1.6 # Apache-2.0
-Babel>=2.3.4 # BSD
@@ -10,2 +9,2 @@ django-compressor>=2.0 # MIT
-django-openstack-auth>=2.4.0 # Apache-2.0
-iso8601>=0.1.11 # MIT
+django-openstack-auth>=3.1.0 # Apache-2.0
+oslo.log>=3.11.0 # Apache-2.0
@@ -13,2 +12,2 @@ python-designateclient>=1.5.0 # Apache-2.0
-python-keystoneclient!=2.1.0,>=2.0.0 # Apache-2.0
-python-manilaclient>=1.10.0 # Apache-2.0
+python-keystoneclient>=3.8.0 # Apache-2.0
+python-manilaclient>=1.12.0 # Apache-2.0
@@ -16,2 +15,2 @@ python-neutronclient>=5.1.0 # Apache-2.0
-python-novaclient!=2.33.0,>=2.29.0 # Apache-2.0
-python-saharaclient>=0.18.0 # Apache-2.0
+python-novaclient!=7.0.0,>=6.0.0 # Apache-2.0
+python-saharaclient>=1.1.0 # Apache-2.0
diff --git a/test-requirements.txt b/test-requirements.txt
index 7e5608f..ca69e6c 100644
--- a/test-requirements.txt
+++ b/test-requirements.txt
@@ -6 +6 @@ hacking<0.11,>=0.10.0
-coverage>=3.6 # Apache-2.0
+coverage>=4.0 # Apache-2.0
@@ -9 +9 @@ django-nose>=1.4.4 # BSD
-reno>=1.8.0 # Apache2
+reno>=1.8.0 # Apache-2.0
@@ -11 +11 @@ mock>=2.0 # BSD
-mox3>=0.7.0 # Apache-2.0
+mox3!=0.19.0,>=0.7.0 # Apache-2.0
@@ -16,2 +16,2 @@ selenium>=2.50.1 # Apache-2.0
-sphinx!=1.3b1,<1.3,>=1.2.1 # BSD
-oslosphinx!=3.4.0,>=2.5.0 # Apache-2.0
+sphinx!=1.3b1,<1.4,>=1.2.1 # BSD
+oslosphinx>=4.7.0 # Apache-2.0
1
0
We are psyched to announce the release of:
sahara 6.0.0: Sahara project
This release is part of the ocata release series.
The source is available from:
http://git.openstack.org/cgit/openstack/sahara
Download the package from:
https://tarballs.openstack.org/sahara/
For more details, please see below.
6.0.0
^^^^^
New Features
************
* Add Kafka to MapR plugin
* MapR repositories now can be configured in general section of
cluster template configs
* CDH 5.9.0 is supported in CDH plugin.
* Implemented support of HDP 2.5 in the Ambari plugin.
* The following service versions were added to MapR 5.2.0 plugin -
Pig 0.16 - Spark 2.0.1 - Hue 3.10 - Drill 1.8, 1.9
Upgrade Notes
*************
* Neutron is used by default now (use_neutron=True). Nova-network is
not functionaly for most use cases starting from Ocata.
Deprecation Notes
*****************
* MapR 5.1.0.mrv2 is now deprecated and will be removed in Ocata
release. It is recommended to use MapR 5.2.0.mrv2 instead.
* Removed support for the MapR 5.0.0 plugin.
* The 'enable' option of the 'oslo_messaging_notifications' section
has been removed. To enable notifications now please specify the
'driver' option in the same section.
Changes in sahara 5.0.0.0rc1..6.0.0
-----------------------------------
26d6939 Fix unexpected removing of deprecating flag for MapR 5.1
1571ffe Remove MapR v5.0.0
793c269 Add Kafka to MapR plugin
488633b Fix Maria-DB installation for centos7
3618685 Add new service versions to MapR plugin
1d77977 Extend cluster provision logging of MapR plugin
108a10b Updated from global requirements
229a8db Updated from global requirements
204a184 Updated from global requirements
21730e5 Change link to mysql-connector for Oozie in MapR plugin
906e785 Fix links in tests docs
59aa40c API: Updating error response codes
3d63bdc Add HBASE MASTER processes number validation
7fa5030 Updated from global requirements
26810d5 Fix some doc and comments nits
5490475 Updated from global requirements
ac1a999 Updated from global requirements
6067bb7 Add test_natural_sort_key()
80ef7df Remove unexpected files
a93d4c6 Updated from global requirements
2d02ecc Add test_update_plugin()
d19df28 fix syntax errors in labels.py
6d78370 Set access_policy for messaging's dispatcher
909ca0c Add reno for CDH 5.9
925330f support of CDH 5.9.0
e2a5069 Removing "def" from the methods at edp.spi
5df2f1b2 support of HDP 2.5
2fa5c5e Updated from global requirements
2d533cd Update "Additional Details for MapReduce jobs" docs
c1aaa00 Judgment error
96de1a6 Fix typo error
e481549 Adding tenant_id to regex_search
3d0ecb4 Correct the unit test in V5_5_0
b9fecf9 Adding tenant_id to regex_search
883160c modify useless assertions.
4aa69c1 Updated from global requirements
fd5dd9d Fix typo in cover.sh
521b5e9 Updated from global requirements
c57a1be fix some typos.
55d20b6 Problem about permission
176b480 Switch use_neutron=true by default
e9c2c19 Use assertGreater(len(x), 0) instead of assertTrue(len(x) > 0)
5de5e9b Updated from global requirements
84ec89d Replace logging with oslo_log.
60582e0 replace 'assertFalse' with 'assertNotEqual'
e679ac0 [DOC] Beutify the chapter 'sahara on ironic'
c67c443 Updated from global requirements
9264485 Updated from global requirements
1edb915 Updated from global requirements
ac0413a Updating list of plugins in config sample
e86ff65 Show team and repo badges on README
ac53275 Updated from global requirements
909bb52 spelling fixed.
d9c3300 definition spelling mistake.
7864cc4 fix creation of endpoints
0710f24 Updated from global requirements
76988e9 Fixing endpoint type for glance client
dcc0921 Fixed some typos. Trivial fixes.
a5c84c7 Updated from global requirements
0761362 Provide context for castellan config validation
582c382 totally changed requred to required
04d7336 Fix import of common libraries from Manila client
e297d13 Catch correct exception in check_cinder_exists fct
a4a3b18 Remove enable_notifications option
b2ecbdb Updated from global requirements
65a20c4 Updated from global requirements
158bd89 Replaces uuid.uuid4 with uuidutils.generate_uuid()
023c399 Updated from global requirements
c566fbb Updated from global requirements
15159a9 Fix remove not existed devices
8a48070 Updated from global requirements
f7745ff Fix check cinder quotas
3b2ce28 OpenStack typo
aa4e577 No doctext in some ProvisioningPluginBase methods
2a357c8 Updated from global requirements
591c02f Fix a typo in rootwrap.conf
5e39dfe Fix a typo in devstack.rst
7c1f413 [Trivial Fix]Fix typo in test_images.py
30453da Constraints are ready to be used for tox.ini
c0f43c2 Use http_proxy_to_wsgi middleware
c4e0315 Fix response code for invalid requests
f254ad7 Replace 'sudo pip install' with pip_install
b900c5b Correct the spelling error
90f4529 [api-ref] Fix missprints in response codes
2e9c67a Enable release notes translation
eb64125 Updated from global requirements
4e7a7a0 Fix wrong URL to castellan’s documentation
5666dfe Remove html_static_path from api-ref
8bea245 Fix wrong message formats
bab906f Fix typo in comment
625756e tenant replaced to project in doc
609b462 Updated from global requirements
0bb5a49 Fixed some fonts issue in user doc, EDP section
b63d4fd Remove unused config.CONF
15cbf13 Updated from global requirements
f7a254a Updated from global requirements
3fb3c4b Updated from global requirements
d0c79d6 Fix API compatibility issue
b98f016 Updated from global requirements
1be06cc Fix incorrect event log for ambari
0405770 [DOC] update doc about restapi
053ac6a [DOC] update doc about sahara features
0204314 [doc] added description about plugin management
64bca07 [DOC] Update quickstart guide
a95ce4f [DOC] update userdoc/edp.rst
afd88dd Updated from global requirements
fe58d1e [DOC] update doc about mapr plugin
3212544 Add workaround for Hue on CentOS 7
1fe672d [DOC] update doc about config recommendations
205a5f0 [DOC] update configuration guide doc
4d5091f Fix ZooKeeper check for CentOS 7
cad6b79 Fill tempest.conf with Sahara-specific values
efd5388 [DOC] update index and architecture docs
d499d67 [DOC] Fix misprint in userdoc/statuses.rst
83b8217 [DOC] update installation guide doc
d68e3f0 [DOC] update doc about spark plugin
72d0396 [DOC] update overview doc
3f79636 [DOC] update doc about ambari plugin
a028262 [DOC] update upgrage guide
adb96b8 [DOC] update guest requirements doc
744ea16 [DOC] Update Dashboard user guide
9893322 [DOC] Update dashboard dev environment guide
c6b89ba Update reno for stable/newton
2ee3489 Documentation fixes and updates for devref
ef4f8ef [DOC] update doc about advanced configuration
9dc5b64 Deprecate MapR 5.1.0.mvr2
6e9204c Add repo configs
Diffstat (except docs and test files)
-------------------------------------
README.rst | 9 +
api-ref/source/cluster-templates.inc | 8 +-
api-ref/source/clusters.inc | 13 +-
api-ref/source/conf.py | 2 +-
api-ref/source/data-sources.inc | 8 +-
api-ref/source/image-registry.inc | 10 +-
api-ref/source/job-binaries.inc | 9 +-
api-ref/source/job-binary-internals.inc | 9 +-
api-ref/source/job-executions.inc | 8 +-
api-ref/source/jobs.inc | 10 +-
api-ref/source/node-group-templates.inc | 8 +-
api-ref/source/parameters.yaml | 12 +-
api-ref/source/plugins.inc | 10 +-
devstack/plugin.sh | 30 +-
.../userdoc/advanced.configuration.guide.rst | 35 +-
etc/sahara/api-paste.ini | 5 +-
etc/sahara/rootwrap.conf | 6 +-
etc/sahara/sahara.conf.sample-basic | 4 +-
.../notes/add-mapr-kafka-3a808bbc1aa21055.yaml | 3 +
.../add_mapr_repo_configs-04af1a67350bfd24.yaml | 4 +
.../auto_configs_for_hdp-011d460d37dcdf02.yaml | 2 +-
.../notes/cdh_5_9_support-b603a2648b2e7b32.yaml | 3 +
.../notes/deprecate-mapr-51-090423438e3dda20.yaml | 5 +
releasenotes/notes/hdp25-b35ef99c240fc127.yaml | 3 +
...apr-services-new-versions-dc7652e33f26bbdc.yaml | 7 +
.../notes/neutron-default-a6baf93d857d86b3.yaml | 5 +
.../notes/remove-mapr-500-3df3041be99a864c.yaml | 3 +
..._enable_notifications_opt-4c0d46e8e79eb06f.yaml | 6 +
releasenotes/source/conf.py | 3 +
releasenotes/source/index.rst | 1 +
releasenotes/source/newton.rst | 6 +
requirements.txt | 42 +-
sahara/config.py | 2 +-
sahara/db/sqlalchemy/api.py | 6 +-
sahara/db/sqlalchemy/models.py | 5 +-
sahara/db/templates/api.py | 6 +-
sahara/main.py | 19 +-
sahara/plugins/ambari/deploy.py | 7 +-
sahara/plugins/ambari/plugin.py | 2 +-
sahara/plugins/ambari/resources/configs-2.5.json | 2008 ++++++++++++++++++++
sahara/plugins/cdh/abstractversionhandler.py | 4 +-
sahara/plugins/cdh/client/types.py | 2 +-
sahara/plugins/cdh/config_helper.py | 2 +-
sahara/plugins/cdh/db_helper.py | 5 +-
sahara/plugins/cdh/plugin.py | 1 +
sahara/plugins/cdh/plugin_utils.py | 6 +-
sahara/plugins/cdh/v5_9_0/__init__.py | 0
sahara/plugins/cdh/v5_9_0/cloudera_utils.py | 470 +++++
sahara/plugins/cdh/v5_9_0/config_helper.py | 250 +++
sahara/plugins/cdh/v5_9_0/db_helper.py | 41 +
sahara/plugins/cdh/v5_9_0/deploy.py | 242 +++
sahara/plugins/cdh/v5_9_0/edp_engine.py | 54 +
sahara/plugins/cdh/v5_9_0/plugin_utils.py | 167 ++
sahara/plugins/cdh/v5_9_0/resources/cdh_config.py | 139 ++
sahara/plugins/cdh/v5_9_0/resources/cdh_config.sh | 3 +
.../cdh/v5_9_0/resources/create_hive_db.sql | 4 +
.../cdh/v5_9_0/resources/create_sentry_db.sql | 4 +
.../plugins/cdh/v5_9_0/resources/flume-agent.json | 428 +++++
.../cdh/v5_9_0/resources/flume-service.json | 164 ++
.../cdh/v5_9_0/resources/hbase-gateway.json | 110 ++
.../v5_9_0/resources/hbase-hbaserestserver.json | 440 +++++
.../v5_9_0/resources/hbase-hbasethriftserver.json | 446 +++++
.../plugins/cdh/v5_9_0/resources/hbase-master.json | 506 +++++
.../cdh/v5_9_0/resources/hbase-regionserver.json | 842 ++++++++
.../cdh/v5_9_0/resources/hbase-service.json | 746 ++++++++
.../cdh/v5_9_0/resources/hdfs-balancer.json | 68 +
.../cdh/v5_9_0/resources/hdfs-datanode.json | 644 +++++++
.../v5_9_0/resources/hdfs-failovercontroller.json | 332 ++++
.../plugins/cdh/v5_9_0/resources/hdfs-gateway.json | 116 ++
.../plugins/cdh/v5_9_0/resources/hdfs-httpfs.json | 440 +++++
.../cdh/v5_9_0/resources/hdfs-journalnode.json | 446 +++++
.../cdh/v5_9_0/resources/hdfs-namenode.json | 854 +++++++++
.../cdh/v5_9_0/resources/hdfs-nfsgateway.json | 386 ++++
.../v5_9_0/resources/hdfs-secondarynamenode.json | 446 +++++
.../plugins/cdh/v5_9_0/resources/hdfs-service.json | 1418 ++++++++++++++
.../plugins/cdh/v5_9_0/resources/hive-gateway.json | 98 +
.../cdh/v5_9_0/resources/hive-hivemetastore.json | 416 ++++
.../cdh/v5_9_0/resources/hive-hiveserver2.json | 806 ++++++++
.../resources/hive-metastore-sentry-safety.xml | 15 +
.../resources/hive-server2-sentry-safety.xml | 12 +
.../plugins/cdh/v5_9_0/resources/hive-service.json | 758 ++++++++
sahara/plugins/cdh/v5_9_0/resources/hive-site.xml | 61 +
.../plugins/cdh/v5_9_0/resources/hive-webhcat.json | 332 ++++
.../v5_9_0/resources/hue-hue_load_balancer.json | 236 +++
.../cdh/v5_9_0/resources/hue-hue_server.json | 368 ++++
.../cdh/v5_9_0/resources/hue-kt_renewer.json | 200 ++
.../plugins/cdh/v5_9_0/resources/hue-service.json | 674 +++++++
.../cdh/v5_9_0/resources/impala-catalogserver.json | 530 ++++++
.../cdh/v5_9_0/resources/impala-impalad.json | 734 +++++++
.../plugins/cdh/v5_9_0/resources/impala-llama.json | 506 +++++
.../cdh/v5_9_0/resources/impala-service.json | 644 +++++++
.../cdh/v5_9_0/resources/impala-statestore.json | 392 ++++
.../cdh/v5_9_0/resources/kafka-kafka_broker.json | 476 +++++
.../v5_9_0/resources/kafka-kafka_mirror_maker.json | 482 +++++
.../cdh/v5_9_0/resources/kafka-service.json | 374 ++++
sahara/plugins/cdh/v5_9_0/resources/kms-kms.json | 530 ++++++
.../plugins/cdh/v5_9_0/resources/kms-service.json | 86 +
.../v5_9_0/resources/ks_indexer-hbase_indexer.json | 362 ++++
.../cdh/v5_9_0/resources/ks_indexer-service.json | 188 ++
.../plugins/cdh/v5_9_0/resources/mapred-site.xml | 157 ++
.../cdh/v5_9_0/resources/oozie-oozie_server.json | 662 +++++++
.../cdh/v5_9_0/resources/oozie-service.json | 260 +++
.../cdh/v5_9_0/resources/priority-one-confs.json | 45 +
.../cdh/v5_9_0/resources/sentry-gateway.json | 62 +
.../resources/sentry-impala-client-safety.xml | 16 +
.../cdh/v5_9_0/resources/sentry-sentry_server.json | 308 +++
.../cdh/v5_9_0/resources/sentry-service.json | 290 +++
.../plugins/cdh/v5_9_0/resources/solr-gateway.json | 50 +
.../plugins/cdh/v5_9_0/resources/solr-service.json | 416 ++++
.../cdh/v5_9_0/resources/solr-solr_server.json | 452 +++++
.../cdh/v5_9_0/resources/spark-gateway.json | 176 ++
.../cdh/v5_9_0/resources/spark-service.json | 152 ++
.../resources/spark-spark_yarn_history_server.json | 314 +++
.../cdh/v5_9_0/resources/sqoop-service.json | 110 ++
.../cdh/v5_9_0/resources/sqoop-sqoop_server.json | 398 ++++
.../plugins/cdh/v5_9_0/resources/yarn-gateway.json | 506 +++++
.../cdh/v5_9_0/resources/yarn-jobhistory.json | 476 +++++
.../cdh/v5_9_0/resources/yarn-nodemanager.json | 770 ++++++++
.../cdh/v5_9_0/resources/yarn-resourcemanager.json | 674 +++++++
.../plugins/cdh/v5_9_0/resources/yarn-service.json | 632 ++++++
.../cdh/v5_9_0/resources/zookeeper-server.json | 596 ++++++
.../cdh/v5_9_0/resources/zookeeper-service.json | 224 +++
sahara/plugins/cdh/v5_9_0/validation.py | 232 +++
sahara/plugins/cdh/v5_9_0/versionhandler.py | 100 +
sahara/plugins/cdh/validation.py | 5 +-
sahara/plugins/kerberos.py | 7 +-
sahara/plugins/labels.py | 4 +-
.../plugins/mapr/base/base_cluster_configurer.py | 25 +-
sahara/plugins/mapr/base/base_cluster_context.py | 22 +-
sahara/plugins/mapr/base/base_health_checker.py | 3 +-
sahara/plugins/mapr/base/base_node_manager.py | 18 +-
sahara/plugins/mapr/base/base_version_handler.py | 45 +-
sahara/plugins/mapr/domain/service.py | 4 +-
sahara/plugins/mapr/plugin.py | 5 +-
sahara/plugins/mapr/resources/install_mysql.sh | 9 +-
.../plugins/mapr/resources/install_mysql_client.sh | 4 +-
sahara/plugins/mapr/services/drill/drill.py | 25 +-
sahara/plugins/mapr/services/hive/hive.py | 21 +-
sahara/plugins/mapr/services/hue/hue.py | 76 +-
.../services/hue/resources/hue_3.10.0.template | 1403 ++++++++++++++
.../services/hue/resources/hue_sh_3.10.0.template | 130 ++
.../hue/resources/livy_conf_3.10.0.template | 80 +
.../services/hue/resources/livy_sh_3.10.0.template | 35 +
sahara/plugins/mapr/services/kafka/__init__.py | 0
sahara/plugins/mapr/services/kafka/kafka.py | 73 +
sahara/plugins/mapr/services/maprfs/maprfs.py | 5 +
sahara/plugins/mapr/services/mysql/mysql.py | 5 +-
sahara/plugins/mapr/services/oozie/oozie.py | 6 +-
sahara/plugins/mapr/services/pig/pig.py | 6 +
sahara/plugins/mapr/services/sentry/sentry.py | 14 +-
sahara/plugins/mapr/services/spark/spark.py | 48 +-
sahara/plugins/mapr/util/event_log.py | 12 +-
sahara/plugins/mapr/util/general.py | 7 +-
sahara/plugins/mapr/util/maprfs_helper.py | 4 +-
sahara/plugins/mapr/util/password_utils.py | 5 +-
.../plugins/mapr/versions/v5_0_0_mrv2/__init__.py | 0
.../plugins/mapr/versions/v5_0_0_mrv2/context.py | 60 -
.../mapr/versions/v5_0_0_mrv2/version_handler.py | 78 -
.../plugins/mapr/versions/v5_2_0_mrv2/context.py | 5 +-
.../mapr/versions/v5_2_0_mrv2/version_handler.py | 13 +-
sahara/plugins/provisioning.py | 25 +
sahara/plugins/spark/config_helper.py | 2 +-
.../vanilla/hadoop2/resources/create_oozie_db.sql | 3 +-
sahara/plugins/vanilla/utils.py | 5 +-
sahara/service/api/v11.py | 2 +-
sahara/service/api/v2/job_executions.py | 2 +-
sahara/service/edp/job_utils.py | 3 +-
sahara/service/edp/oozie/engine.py | 4 +-
sahara/service/edp/resources/launch_command.py | 2 +
sahara/service/edp/spark/engine.py | 5 +-
sahara/service/edp/storm/engine.py | 6 +-
sahara/service/ops.py | 5 +-
sahara/service/quotas.py | 3 +-
sahara/service/shares.py | 6 +-
sahara/service/validations/base.py | 9 +-
sahara/service/volumes.py | 3 +-
.../unit/plugins/cdh/v5/test_versionhandler.py | 2 +-
.../unit/plugins/cdh/v5_3_0/test_versionhandler.py | 2 +-
.../unit/plugins/cdh/v5_4_0/test_versionhandler.py | 2 +-
.../plugins/cdh/v5_5_0/test_plugin_utils_550.py | 10 +-
.../unit/plugins/cdh/v5_5_0/test_versionhandler.py | 2 +-
.../unit/plugins/cdh/v5_7_0/test_versionhandler.py | 2 +-
.../plugins/cdh/v5_9_0/test_config_helper_590.py | 168 ++
.../unit/plugins/cdh/v5_9_0/test_edp_engine.py | 200 ++
.../plugins/cdh/v5_9_0/test_plugin_utils_590.py | 25 +
.../unit/plugins/cdh/v5_9_0/test_spark_engine.py | 69 +
.../unit/plugins/cdh/v5_9_0/test_validation.py | 123 ++
.../unit/plugins/cdh/v5_9_0/test_versionhandler.py | 140 ++
.../unit/plugins/mapr/test_cluster_context.py | 10 +-
.../unit/service/edp/test_json_api_examples.py | 4 +-
.../service/validation/edp/test_data_source.py | 17 +-
.../service/validation/edp/test_job_executor.py | 39 +-
.../validation/test_cluster_create_validation.py | 14 +-
.../test_cluster_template_create_validation.py | 6 +-
.../service/validation/test_share_validations.py | 5 +-
sahara/topology/topology_helper.py | 2 +-
sahara/utils/api.py | 8 +-
sahara/utils/edp.py | 5 +-
sahara/utils/notification/sender.py | 11 +-
sahara/utils/openstack/cinder.py | 4 +-
sahara/utils/openstack/glance.py | 3 +-
sahara/utils/openstack/images.py | 37 +-
sahara/utils/openstack/manila.py | 5 +-
sahara/utils/proxy.py | 4 +-
sahara/utils/rpc.py | 27 +-
sahara/utils/ssh_remote.py | 10 +-
sahara/utils/wsgi.py | 3 -
test-requirements.txt | 12 +-
tools/config/config-generator.sahara.conf | 1 +
tools/cover.sh | 6 +-
tox.ini | 2 +-
278 files changed, 33629 insertions(+), 1094 deletions(-)
Requirements updates
--------------------
diff --git a/requirements.txt b/requirements.txt
index 488089d..b957490 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -5 +5 @@
-pbr>=1.6 # Apache-2.0
+pbr>=1.8 # Apache-2.0
@@ -7 +7 @@ pbr>=1.6 # Apache-2.0
-alembic>=0.8.4 # MIT
+alembic>=0.8.10 # MIT
@@ -13 +13 @@ iso8601>=0.1.11 # MIT
-Jinja2>=2.8 # BSD License (3 clause)
+Jinja2!=2.9.0,!=2.9.1,!=2.9.2,!=2.9.3,!=2.9.4,>=2.8 # BSD License (3 clause)
@@ -15,3 +15,3 @@ jsonschema!=2.5.0,<3.0.0,>=2.0.0 # MIT
-keystoneauth1>=2.10.0 # Apache-2.0
-keystonemiddleware!=4.1.0,!=4.5.0,>=4.0.0 # Apache-2.0
-oslo.config>=3.14.0 # Apache-2.0
+keystoneauth1>=2.18.0 # Apache-2.0
+keystonemiddleware>=4.12.0 # Apache-2.0
+oslo.config!=3.18.0,>=3.14.0 # Apache-2.0
@@ -20 +20 @@ oslo.context>=2.9.0 # Apache-2.0
-oslo.db!=4.13.1,!=4.13.2,>=4.10.0 # Apache-2.0
+oslo.db>=4.15.0 # Apache-2.0
@@ -22,2 +22,2 @@ oslo.i18n>=2.1.0 # Apache-2.0
-oslo.log>=1.14.0 # Apache-2.0
-oslo.messaging>=5.2.0 # Apache-2.0
+oslo.log>=3.11.0 # Apache-2.0
+oslo.messaging>=5.14.0 # Apache-2.0
@@ -25 +25 @@ oslo.middleware>=3.0.0 # Apache-2.0
-oslo.policy>=1.9.0 # Apache-2.0
+oslo.policy>=1.17.0 # Apache-2.0
@@ -29 +29 @@ oslo.service>=1.10.0 # Apache-2.0
-oslo.utils>=3.16.0 # Apache-2.0
+oslo.utils>=3.18.0 # Apache-2.0
@@ -31 +31 @@ paramiko>=2.0 # LGPLv2.1+
-requests>=2.10.0 # Apache-2.0
+requests!=2.12.2,>=2.10.0 # Apache-2.0
@@ -33,4 +33,4 @@ python-cinderclient!=1.7.0,!=1.7.1,>=1.6.0 # Apache-2.0
-python-keystoneclient!=2.1.0,>=2.0.0 # Apache-2.0
-python-manilaclient>=1.10.0 # Apache-2.0
-python-novaclient!=2.33.0,>=2.29.0 # Apache-2.0
-python-swiftclient>=2.2.0 # Apache-2.0
+python-keystoneclient>=3.8.0 # Apache-2.0
+python-manilaclient>=1.12.0 # Apache-2.0
+python-novaclient!=7.0.0,>=6.0.0 # Apache-2.0
+python-swiftclient>=3.2.0 # Apache-2.0
@@ -38,2 +38,2 @@ python-neutronclient>=5.1.0 # Apache-2.0
-python-heatclient>=1.4.0 # Apache-2.0
-python-glanceclient!=2.4.0,>=2.3.0 # Apache-2.0
+python-heatclient>=1.6.1 # Apache-2.0
+python-glanceclient>=2.5.0 # Apache-2.0
@@ -41 +41 @@ six>=1.9.0 # MIT
-stevedore>=1.16.0 # Apache-2.0
+stevedore>=1.17.1 # Apache-2.0
@@ -43,2 +43,2 @@ SQLAlchemy<1.1.0,>=1.0.10 # MIT
-tooz>=1.28.0 # Apache-2.0
-WebOb>=1.2.3 # MIT
+tooz>=1.47.0 # Apache-2.0
+WebOb>=1.6.0 # MIT
diff --git a/test-requirements.txt b/test-requirements.txt
index a456df3..5f89f38 100644
--- a/test-requirements.txt
+++ b/test-requirements.txt
@@ -7 +7 @@ hacking<0.11,>=0.10.0
-PyMySQL!=0.7.7,>=0.6.2 # MIT License
+PyMySQL>=0.7.6 # MIT License
@@ -10 +10 @@ bashate>=0.2 # Apache-2.0
-coverage>=3.6 # Apache-2.0
+coverage>=4.0 # Apache-2.0
@@ -14 +14 @@ mock>=2.0 # BSD
-oslosphinx!=3.4.0,>=2.5.0 # Apache-2.0
+oslosphinx>=4.7.0 # Apache-2.0
@@ -17 +17 @@ os-api-ref>=1.0.0 # Apache-2.0
-os-testr>=0.7.0 # Apache-2.0
+os-testr>=0.8.0 # Apache-2.0
@@ -20,2 +20,2 @@ pylint==1.4.5 # GPLv2
-reno>=1.8.0 # Apache2
-sphinx!=1.3b1,<1.3,>=1.2.1 # BSD
+reno>=1.8.0 # Apache-2.0
+sphinx!=1.3b1,<1.4,>=1.2.1 # BSD
1
0
We are psyched to announce the release of:
trove-dashboard 8.0.0: Trove Management Dashboard
This release is part of the ocata release series.
Download the package from:
https://tarballs.openstack.org/trove-dashboard/
For more details, please see below.
8.0.0
^^^^^
Bug Fixes
* Enable cluster grow and shrink panels for pxc.
* The current caching initializes the instance list for the grow
cluster manager each time a new process would instantiate the
manager. Changed to manager to only initialize on creation.
Changes in trove-dashboard 7.0.0.0rc1..8.0.0
--------------------------------------------
27e3dd2 Imported Translations from Zanata
56918bc Imported Translations from Zanata
066d786 Update UPPER_CONSTRAINTS_FILE for stable/ocata
ec23f32 Update .gitreview for stable/ocata
9db7430 Imported Translations from Zanata
b65ab82 Imported Translations from Zanata
ab96a89 Imported Translations from Zanata
0985719 Imported Translations from Zanata
caca9fa Delete the unused LOG code
0ad8436 Remove the redundant "required=True"
22eeee6 Imported Translations from Zanata
6657919 Use 'trimmed' for blocktrans in html page
0a32abc Imported Translations from Zanata
9021ae6 Imported Translations from Zanata
fbc0b57 Imported Translations from Zanata
36a705f Enable pxc grow/shrink
10767f0 Fix grow cluster caching
61eb610 Update home-page in setup.cfg
0c9dab4 Fix Django 1.10 Compatibility
230a112 Add requirement for cross-process cache
aecd970 Imported Translations from Zanata
db411a5 Don't import ceilometer_data
913eb6e Show team and repo badges on README
de0ecc1 Imported Translations from Zanata
4e0cf0a Imported Translations from Zanata
e0011cc make trove-dashboard use upper-constraints
659b26a Imported Translations from Zanata
2c67740 Imported Translations from Zanata
0851511 Imported Translations from Zanata
bd6140d Enable release notes translation
84b3f8a Remove double closing <strong> tag in a template
7df1be0 Imported Translations from Zanata
2842185 Update release notes
ae3479f Update reno for stable/newton
Diffstat (except docs and test files)
-------------------------------------
.gitreview | 1 +
README.rst | 32 +
.../enable-pxc-grow-shrink-17568a1c280f1c42.yaml | 3 +
.../fix-grow-cluster-cache-5625d1a519a4ee01.yaml | 5 +
releasenotes/source/conf.py | 3 +
releasenotes/source/index.rst | 8 +-
.../locale/en_GB/LC_MESSAGES/releasenotes.po | 61 -
.../source/locale/ja/LC_MESSAGES/releasenotes.po | 65 -
.../locale/ko_KR/LC_MESSAGES/releasenotes.po | 76 --
.../locale/zh_CN/LC_MESSAGES/releasenotes.po | 63 -
releasenotes/source/mitaka.rst | 6 -
releasenotes/source/newton.rst | 6 +
setup.cfg | 2 +-
tools/pip_install.sh | 6 +-
tox.ini | 18 +-
trove_dashboard/content/database_backups/tables.py | 9 +-
.../database_backups/_backup_details_help.html | 4 +-
trove_dashboard/content/database_backups/urls.py | 6 +-
.../content/database_clusters/cluster_manager.py | 13 +-
trove_dashboard/content/database_clusters/forms.py | 1 -
.../database_clusters/_reset_password.html | 4 +-
trove_dashboard/content/database_clusters/urls.py | 6 +-
.../content/database_configurations/tables.py | 3 -
.../content/database_configurations/urls.py | 6 +-
trove_dashboard/content/databases/db_capability.py | 3 +-
trove_dashboard/content/databases/logs/urls.py | 15 +-
.../templates/databases/_attach_config.html | 2 +-
.../templates/databases/_launch_advanced_help.html | 2 +-
.../templates/databases/_launch_details_help.html | 4 +-
.../databases/_launch_initialize_help.html | 6 +-
.../templates/databases/_launch_network_help.html | 2 +-
.../templates/databases/logs/_detail_log.html | 1 -
.../templates/databases/logs/_log_contents.html | 1 -
trove_dashboard/content/databases/urls.py | 6 +-
trove_dashboard/locale/cs/LC_MESSAGES/django.po | 35 +-
trove_dashboard/locale/de/LC_MESSAGES/django.po | 584 +++++++-
trove_dashboard/locale/de/LC_MESSAGES/djangojs.po | 39 +
trove_dashboard/locale/fr/LC_MESSAGES/django.po | 398 +++++-
trove_dashboard/locale/fr/LC_MESSAGES/djangojs.po | 39 +
trove_dashboard/locale/id/LC_MESSAGES/django.po | 1434 ++++++++++++++++++++
trove_dashboard/locale/id/LC_MESSAGES/djangojs.po | 39 +
trove_dashboard/locale/ja/LC_MESSAGES/django.po | 241 +++-
trove_dashboard/locale/ko_KR/LC_MESSAGES/django.po | 70 +-
trove_dashboard/locale/pt_BR/LC_MESSAGES/django.po | 35 +-
trove_dashboard/locale/ru/LC_MESSAGES/django.po | 461 ++++++-
trove_dashboard/locale/ru/LC_MESSAGES/djangojs.po | 40 +
trove_dashboard/locale/zh_CN/LC_MESSAGES/django.po | 97 +-
trove_dashboard/test/test_data/utils.py | 2 -
trove_dashboard/test/urls.py | 5 +-
50 files changed, 3364 insertions(+), 632 deletions(-)
1
0
We are pumped to announce the release of:
zaqar-ui 2.0.0: Zaqar User Interface
This release is part of the ocata release series.
The source is available from:
http://git.openstack.org/cgit/openstack/zaqar-ui
Download the package from:
https://tarballs.openstack.org/zaqar-ui/
Please report issues through launchpad:
http://bugs.launchpad.net/zaqar-ui
For more details, please see below.
2.0.0
^^^^^
New Features
************
* Use initAction() instead initScope(). initScope() is deprecated
from Horizon in Ocata and will be removed in Queens.
* Storage pool flavors management panel is added. This panel is
added into Admin dashboard. Also create, update and delete actions
are implemeted. Create action is implemented as globalAction, so it
is callable from other panels.
* Storage pools management panel is added. This panel is added into
Admin dashboard. Also create, update and delete actions are
implemeted. Create action is implemented as globalAction, so it is
callable from other panels.
Other Notes
***********
* Switch to reno for managing release notes.
Changes in zaqar-ui 1.0.0..2.0.0
--------------------------------
440a103 Imported Translations from Zanata
0daee07 Imported Translations from Zanata
aa2486b Add CRUD actions for pool flavor
cfb9805 Imported Translations from Zanata
49fd541 Imported Translations from Zanata
ecb4178 Add CRUD actions for pool
bfd6536 Imported Translations from Zanata
911e6a6 Add release notes for initAction
8c41da4 Updated from global requirements
4f7e348 Add reno for releasenotes management
43c93dc Add pool flavors panel into admin dashboard
13820b1 Add pools panel into admin dashboard
61b638e Add REST APIs for pools and flavors
e524400 Use initAction instead initScope
5a907b8 Updated from global requirements
4c10e97 Show team and repo badges on README
523c05e Remove mox in zaqar_ui/test/helpers.py
23451be Updated from global requirements
b10bb7e Imported Translations from Zanata
6f64ba4 Change "Openstack" to "OpenStack"
aa58970 Imported Translations from Zanata
e49ad36 Updated from global requirements
bcfea7c Imported Translations from Zanata
95c3ad4 Imported Translations from Zanata
0c01ed6 Updated from global requirements
3501299 Updated from global requirements
07b7ef2 Add .mo to .gitignore
f8a7939 Add Apache 2.0 license to source file
b5d31d5 Enable test coverage for python in tox
f6784a2 Fix eslint errors
4264fc3 Setup JavaScript test environment
ee3e366 Update homepage with developer documentation page
62ed853 Remove *openstack/common* in flake8 exclude list
19bca99 Setup python test environment
Diffstat (except docs and test files)
-------------------------------------
.eslintrc | 60 ++++
.gitignore | 15 +-
README.rst | 9 +
package.json | 35 ++
releasenotes/notes/.placeholder | 0
releasenotes/notes/add-reno-73ba99b04ff2e5c8.yaml | 3 +
.../notes/init-action-fe41bfe3e2473364.yaml | 6 +
.../notes/pool-flavor-panel-acf61d32e34246f2.yaml | 8 +
.../notes/pool-panel-020bf94bc34b4cd8.yaml | 8 +
releasenotes/source/_static/.placeholder | 0
releasenotes/source/_templates/.placeholder | 0
releasenotes/source/conf.py | 276 +++++++++++++++
releasenotes/source/index.rst | 10 +
.../source/locale/de/LC_MESSAGES/releasenotes.po | 64 ++++
.../source/locale/id/LC_MESSAGES/releasenotes.po | 40 +++
.../source/locale/ja/LC_MESSAGES/releasenotes.po | 40 +++
releasenotes/source/unreleased.rst | 6 +
requirements.txt | 2 +-
setup.cfg | 8 +-
test-requirements.txt | 11 +-
test-shim.js | 97 ++++++
tox.ini | 49 +--
zaqar_ui/api/rest/zaqar.py | 192 ++++++++++-
zaqar_ui/api/zaqar.py | 52 +++
zaqar_ui/content/pool-flavors/__init__.py | 0
zaqar_ui/content/pool-flavors/panel.py | 22 ++
zaqar_ui/content/pool-flavors/urls.py | 19 ++
zaqar_ui/content/pools/__init__.py | 0
zaqar_ui/content/pools/panel.py | 22 ++
zaqar_ui/content/pools/urls.py | 19 ++
zaqar_ui/enabled/_2510_admin_messaging_group.py | 24 ++
zaqar_ui/enabled/_2520_admin_pools.py | 22 ++
zaqar_ui/enabled/_2530_admin_pool_flavors.py | 23 ++
zaqar_ui/enabled/__init__.py | 0
zaqar_ui/karma.conf.js | 155 +++++++++
zaqar_ui/locale/de/LC_MESSAGES/django.po | 32 ++
zaqar_ui/locale/de/LC_MESSAGES/djangojs.po | 375 +++++++++++++++++++++
zaqar_ui/locale/fr/LC_MESSAGES/django.po | 21 ++
zaqar_ui/locale/fr/LC_MESSAGES/djangojs.po | 180 ++++++++++
zaqar_ui/locale/id/LC_MESSAGES/django.po | 32 ++
zaqar_ui/locale/id/LC_MESSAGES/djangojs.po | 224 ++++++++++++
zaqar_ui/locale/ja/LC_MESSAGES/django.po | 17 +-
zaqar_ui/locale/ja/LC_MESSAGES/djangojs.po | 58 +++-
zaqar_ui/locale/ru/LC_MESSAGES/django.po | 22 ++
zaqar_ui/locale/ru/LC_MESSAGES/djangojs.po | 181 ++++++++++
.../core/openstack-service-api/zaqar.service.js | 66 +++-
.../admin/pool-flavors/actions/actions.module.js | 86 +++++
.../admin/pool-flavors/actions/create.service.js | 84 +++++
.../admin/pool-flavors/actions/delete.service.js | 138 ++++++++
.../admin/pool-flavors/actions/update.service.js | 93 +++++
.../admin/pool-flavors/actions/workflow.service.js | 120 +++++++
.../dashboard/admin/pool-flavors/drawer.html | 5 +
.../static/dashboard/admin/pool-flavors/panel.html | 4 +
.../admin/pool-flavors/pool-flavors.module.js | 101 ++++++
.../dashboard/admin/pool-flavors/pool-flavors.scss | 4 +
.../admin/pool-flavors/pool-flavors.service.js | 61 ++++
.../admin/pools/actions/actions.module.js | 86 +++++
.../admin/pools/actions/create.service.js | 84 +++++
.../admin/pools/actions/delete.service.js | 138 ++++++++
.../admin/pools/actions/update.service.js | 95 ++++++
.../admin/pools/actions/workflow.service.js | 138 ++++++++
zaqar_ui/static/dashboard/admin/pools/drawer.html | 5 +
zaqar_ui/static/dashboard/admin/pools/panel.html | 4 +
.../static/dashboard/admin/pools/pools.module.js | 121 +++++++
.../static/dashboard/admin/pools/pools.service.js | 61 ++++
.../project/queues/actions/create-queue.service.js | 37 +-
.../queues/actions/create-queue.workflow.js | 6 +-
.../queues/actions/create-subscription.service.js | 41 ++-
.../queues/actions/create-subscription.workflow.js | 6 +-
.../project/queues/actions/delete-queue.service.js | 40 ++-
.../project/queues/actions/update-queue.service.js | 43 ++-
.../queues/actions/update-queue.workflow.js | 6 +-
.../dashboard/project/queues/queues.module.js | 4 +
.../queue-details/queue-details.controller.js | 16 +-
.../queue-metadata/queue-metadata.controller.js | 11 +-
.../steps/subscription/subscription.controller.js | 10 +-
.../project/queues/table/queue.controller.js | 4 +-
.../queues/table/subscription.controller.js | 10 +-
.../util/validators/validateSubscriber.js | 3 +-
zaqar_ui/test/__init__.py | 0
zaqar_ui/test/helpers.py | 42 +++
zaqar_ui/test/settings.py | 37 ++
zaqar_ui/test/test_data.py | 24 ++
zaqar_ui/version.py | 12 +
88 files changed, 4202 insertions(+), 133 deletions(-)
Requirements updates
--------------------
diff --git a/requirements.txt b/requirements.txt
index 4068b2b..e440d04 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -10 +10 @@
-pbr>=1.6 # Apache-2.0
+pbr>=1.8 # Apache-2.0
diff --git a/test-requirements.txt b/test-requirements.txt
index 207b058..d51a106 100644
--- a/test-requirements.txt
+++ b/test-requirements.txt
@@ -12 +12 @@ hacking<0.11,>=0.10.2
-coverage>=3.6 # Apache-2.0
+coverage>=4.0 # Apache-2.0
@@ -15,2 +15,2 @@ mock>=2.0 # BSD
-mox3>=0.7.0 # Apache-2.0
-nodeenv>=0.9.4 # BSD License # BSD
+mox3!=0.19.0,>=0.7.0 # Apache-2.0
+nodeenv>=0.9.4 # BSD
@@ -22 +22,2 @@ openstack.nose-plugin>=0.7 # Apache-2.0
-oslosphinx!=3.4.0,>=2.5.0 # Apache-2.0
+oslosphinx>=4.7.0 # Apache-2.0
+reno>=1.8.0 # Apache-2.0
@@ -24 +25 @@ selenium>=2.50.1 # Apache-2.0
-sphinx!=1.3b1,<1.3,>=1.2.1 # BSD
+sphinx!=1.3b1,<1.4,>=1.2.1 # BSD
1
0
We are pleased to announce the release of:
trove 7.0.0: OpenStack DBaaS
This release is part of the ocata release series.
Download the package from:
https://tarballs.openstack.org/trove/
For more details, please see below.
7.0.0
^^^^^
New Features
************
* Add 'max-prepared-stmt-cnt' to the list of valid values which can
be used in configuration groups for Mysql, Percona, MariaDB and PXC
* Support attaching and detaching of configuration groups on
clusters.
* Add support for cluster restart.
* Modules can now be applied in a consistent order, based on the new
'priority_apply' and 'apply_order' attributes when creating them.
Blueprint module-management-ordering
* Adds a region property to the instance model and table. This is
the first step in multi-region support.
* Add RBAC (role-based access control) enforcement on all trove
APIs. Allows to define a role-based access rule for every trove API
call (rule definitions are available in /etc/trove/policy.json).
Upgrade Notes
*************
* For module ordering to work, db_upgrade must be run on the Trove
database.
Bug Fixes
*********
* The payload for cluster GET now returns ips for all networks, not
just the first one found for each instance. Bug 1642695
* Module list/show now returns boolean values as True/False instead
of 1/0. Bug 1656398
* Fix race condition in cluster-show that returned erroneous not
found error. Bug 1643002
* Since SafeConfigParser is deprecated in Python version 3.2, Trove
uses ConfigParser for versions of Python >= 3.2 and SafeConfigParser
for earlier versions. (Bug 1618666)
* Fix Postgresql promote (bug 1633515).
* Case where a new instance_modules record is written for each apply
has been fixed. This issue would have potentially made it impossible
to delete a module. Bug 1640010
* Pass instance nic and az to cluster grow. Add specific Fix for
mongodb to use the instance nic and az.
* Improved mountpoint detection by running it as root. This prevents
guests that have undiscoverable mount points from failing to
unmount.
* After upgrading the guestagent was in an inconsistent state. This
became apparent after restarting or resizing the instance after
upgrading.
Other Notes
***********
* Add ephemeral column in flavor-list (Bug 1617980)
* Add Compute ID (server_id) and Volume ID (volume_id) to trove show
output for admin users. Bug
Changes in trove 6.0.0.0rc1..7.0.0
----------------------------------
0faa924 fix requirements file branching for trove guests
8dbfcb5 Update UPPER_CONSTRAINTS_FILE for stable/ocata
5afbaa2 Update .gitreview for stable/ocata
577d43b insulate TroveContext from possible changes in oslo.context
515afe5 Prepare for using standard python tests
49a6f56 unwedge the gate
be5548c Add translation_checks for i18n
e67f63c Add i18n tranlastion to guestagent datastore 2/5
7df52d1 Add i18n translation to guestagent datastore 1/5
c50c065 Add i18n translation to others 3/3
c93ef6d Add i18n translation to extensions 3/3
cdb22e1 Updated from global requirements
9bca402 Add configuration support for clusters
4daa7a9 [gate fix] Handle case where hostname ends in .1
d936d67 [gate fix] Run resize-* for MySQL only
1a06f51 flake8 to ignore releasenotes directory
6f5f107 backoff in poll_until
e6ee606 [fix gate] Change size of MySQL flavors
ca4843c Test to figure out why CONTROLLER_IP is blank
57e4602 Disable wait for force-delete
49d5558 Display boolean module values
6e7fa19 Add support for cluster restart
a7115e2 secure oslo_messaging.rpc
da7b011 Add i18n translation to guestagent datastore 3/5
9c15f86 Add i18n translation to guestagent 3/5
6f604a7 Add i18n translation to guestagent 4/5
a714ead Add i18n translation to extensions 2/3
05b2b5b Enable Redis configuration tests
46f07e5 Fix trovestack clean to remove nova instances
6f0db72 Remove negative backup tests
606c597 Have scenario tests retrive guest log on error
f108c4a Updated from global requirements
42c7a40 Move try-again loop around all data methods
8cc08c7 Remove netifaces useless requirement
8d268fe Skip redis clustering tests
b0d87bd Update method cfg.set_defaults
85339a2 Add support for module ordering on apply
97266f9 Updated from global requirements
773069c Fix Redis cluster grow scenario tests
8d5576a Replace pexpect with processutils in volume.py
07f547a Restrict negative backup tests to Redis only
fb237d1 Updated from global requirements
83c82be get rid of a couple of old oslo-incubator object references
b2b0c2e Add missing LOG mocks to unittests
98093d4 Remove negative backup tests from api run
015b2b0 Trivial: Remove vim header from source files
82cf259 Print error on resize failure
966b777 formalizing configure_nova_kvm
97f2916 Add i18n translation to others 2/3
1f86712 Add i18n translation to guestagent 2/5
324818e Add i18n translation common 5/5
2dea3d6 Fix i18n translation in common 1/5
6c802f4 Add i18n tranlastion to common 3/5
b4ba99e Add i18n translation to common 2/5
7e2d305 Add i18n translation to guestagent 1/5
9f17051 Add i18n translation to others 1/3
28b5d17 Add i18n translation to guestagent 5/5
e730ec3 Add i18n tranlation to common 4/5
706f1d7 Add i18n translation to guestagent datastore 4/5
8458512 Add i18n translation to extenstions 1/3
1923b5f Add i18n translation to guestagent datastore 5/5
ed0c41b Fix Trove tempest plugin
ae74cd0 allow unauthenticated packages to be installed
d9580fc Avoid double-check when waiting for test states
6d1349e trove pylint cleanup(s)
4797115 Tweak trove devstack plugin
cc167fa Have inst-error delete before inst-create-wait
a5ddca5 (fix gate) Remove liberty from the releasenotes
262a9eb Debug code to dump env
48f4fa5 Fix Gate: Force pip2 instead of pip
f5d1cae Fix backup of mysql variants on Centos
eda431d Add support for nic and az in cluster grow
5fde4a5 Clean up trovestack utility (fix kick-start)
d558e5c Stop caching client to fix long-running test fails
c0c0249 Add Xenial support for MariaDB
60d3617 Add DeprecationWarning in test environments
40ab14e Removing reference to trove-integration in doc index
21250cf Add support for Oslo Policies to Trove
5f355a8 Tests skip adding data if instance not exists
77fd701 Fix a typo
d54cd03 (fix troveclient gate) Use alt-demo network
91430cd Show team and repo badges on README
d0adcc8 Updated from global requirements
1911c5f Fix slow nodes causing guest_log to fail
6606baf (fix gate) Don't source openrc in gate run
8bd7aa8 Initial work to support Xenial
c63ca98 Various post-upgrade fixes
91074c6 Fix mountpoint detection
c666032 Create net/subnet for alt_demo tenant
17ba7bc Add compute instance ID and volume ID to trove show output
434a72b Scenario tests wait on helper user creation
3421e71 Have api tests use IPv4
34c9447 Updated from global requirements
93f1ae8 Allow splitting test groups into sub groups
f522209 Removed check for KEYSTONE_CATALOG_BACKEND from trove plugin
fa778af Fix Galera_common.grow/shrink to propogate exceptions
63ff364 trovestack: Better error message for missing arg
873642e Updated from global requirements
937620e Fix log-generator-user-by-row test
1b114c8 Fix race condition in cluster-show
126e121 clean up references to trove-integration and redstack
ac2d1bd Have cluster-show list all ips
2f3703b Fix module apply
7b36391 Have scenario tests use ipv4
0a9b1e4 Enable hacking extensions framework
4895f6b Fix error case where server.fault is missing
f89ecc9 Delete description of the disk
16c6ec8 Fail on deleting non-existing database
c4968ec Install Couchbase SDK for scenario test client
da2dc0a when pylint has an error loading the config, it should fail
467ea80 Files with no code must be left completely empty
0ad544b Updated from global requirements
fb96b61 Add pycrypto to the requirements file
3f93ff1 Multi-Region Support
af0d2bd trovestack clean doesn't delete secgroups
41ef64a Updated from global requirements
bb941f7 Change the way trovestack figures the default network
6932c03 Add reference to OpenStack documentation
36ba1c8 add section on code review priority
d564185 Updated from global requirements
ba91e98 Remove blacklist test volume
357930d Update the Signing Key for Percona Debian and Ubuntu Packages
9e502e8 Update some information
0afac6b Fix a typo in previous commit; missed $
741b86b Remove nic handling in galera cluster grow
28b6f76 Fix incorrect version and release details
156318d Make trovestack able to run in the gate context
e23928b Fix scenario tests
8b7e6e6 Updated from global requirements
b0598f0 allow PATH_TROVE to be specified by gate or defaulted by trovestack
eb51bbe Issue deprecation warning for the use of heat templates in Trove
e01f100 PostgreSQL guest_log test fails intermittently
16bae26 Fix Postgresql pg_rewind call
8b89d26 Updated from global requirements
12f53b7 Drop MANIFEST.in - it's not needed by pbr
1c819c3 Improve guestagent datastore models
0f0843d Updated from global requirements
490492b beginning to change trove-integration
b120be1 Merge trove-integration into trove
18f23a7 Fix RPC Versioning
6593986 Remove downgrade
e587611 Enable release notes translation
268ba88 Extract RPMPackagerMixin
c65d5c0 Removed H237 from tox.ini
0b88795 Delete unnessary i18n
dceb26e Fix some typos in doc and comments
bea853a Cluster Upgrade
d76d855 Fix typos in description
00b3f8a Fix SafeConfigParser DeprecationWarning in Python 3.2
ebbaab9 Updated from global requirements
39bf8d3 Fix Old style classes are deprecated and no longer available in Python 3
ffdb9c5 Fix a typo in service.py and trove_testtools.py
ef2d59b Use more specific asserts in tests
b9d8406 Add Apache 2.0 license to source file
448138c Modify parameters of spelling mistakes
62951f1 Updated from global requirements
7fd8801 Merge Postgresql service modules
c1d2f3d [api-ref] configure LogABug feature
f21032a Delete openstack in flake8
02ec3c6 Taskmgr & guestagent use inconsistent topics
ee4edd4 Make parameter consistent in devstack plugin
931b993 Fixing trove config group request
62a5c3c Remove cfg and logging import unused
489f38e Concentrated test_validate_xx_configuration to a new method
75a6fcc Add max_prepared_stmt_count to validation rules
ca95916 update contributing.rst to reflect release notes and bugs
4573969 Use common methods for cluster validation
550c504 Remove unused variables
616154f Fixup indentation errors
2e34449 Updated from global requirements
e89dfbd Skip 'eject valid master' replication test
8c6d49d Fix the Manager module path in documentation
d5e8e64 Fix Postgresql configuration test and guest-log
2223c83 Perfect the mysql test
36b8605 Repeat definition blacklist
375a18d Fix typos in validation-rules.json & service.py
bf73393 Delete unused method verify_errors
a2d336d improve pylint; generate errors and config in sorted order
a01beb4 Fix pylint Error:PGSQL_RECOVERY_CONFIG
3bf1944 Fix call to to_mb
095c7a1 Missing logging import
469bf6a Display flavor-ephemeral in trove flavor-list command
129fac7 Updated from global requirements
092966a Fix error: option --no-parallel not recognized
dee522d Update reno for stable/newton
9101308 Use assertIn instead of assertTrue(A in B)
d1fd1ac document configure and verify steps
fab4221 Remove unused parameters
07e0330 Config logABug feature for Trove api-ref
583d5cd Use http_proxy_to_wsgi middleware
Diffstat (except docs and test files)
-------------------------------------
.coveragerc | 2 +-
.gitreview | 1 +
CONTRIBUTING.rst | 128 +-
HACKING.rst | 7 +
MANIFEST.in | 12 -
README.rst | 5 +-
api-ref/source/conf.py | 17 +
api-ref/source/flavors.inc | 2 +-
api-ref/source/parameters.yaml | 68 +-
.../db-backup-restore-response-json-http.txt | 2 +-
.../source/samples/db-backup-restore-response.json | 1 +
.../samples/db-create-config-group-request.json | 12 +-
.../db-create-instance-response-json-http.txt | 2 +-
.../samples/db-create-instance-response.json | 1 +
.../db-flavors-by-id-response-json-http.txt | 2 +-
.../source/samples/db-flavors-by-id-response.json | 1 +
.../samples/db-flavors-response-json-http.txt | 2 +-
api-ref/source/samples/db-flavors-response.json | 13 +
...b-instance-status-detail-response-json-http.txt | 2 +-
.../db-instance-status-detail-response.json | 1 +
...stances-index-pagination-response-json-http.txt | 2 +-
.../db-instances-index-pagination-response.json | 2 +
.../db-instances-index-response-json-http.txt | 2 +-
.../samples/db-instances-index-response.json | 1 +
.../samples/db-list-cfg-defaults-response.json | 3 +-
...gmt-get-instance-details-response-json-http.txt | 2 +-
.../db-mgmt-get-instance-details-response.json | 7 +-
.../db-mgmt-instance-index-response-json-http.txt | 2 +-
.../samples/db-mgmt-instance-index-response.json | 7 +-
api-ref/source/user-management.inc | 1 +
...efault-instance-configuration-response-json.txt | 5 +
blacklist-py3.txt | 1 -
devstack/plugin.sh | 233 +-
devstack/settings | 4 +
etc/trove/api-paste.ini | 5 +-
etc/trove/api-paste.ini.test | 5 +-
etc/trove/policy.json | 96 +
etc/trove/trove.conf.sample | 12 +-
install-guide/source/common_configure.txt | 13 +-
install-guide/source/conf.py | 8 +-
install-guide/source/dashboard.rst | 28 +
install-guide/source/index.rst | 1 +
install-guide/source/verify.rst | 6 +
integration/.gitignore | 25 +
integration/README.md | 220 +
integration/apidocs/pom.xml | 193 +
integration/apidocs/src/resources/cdb-devguide.xml | 1675 ++++++++
.../apidocs/src/resources/cdb-getting-started.xml | 1131 +++++
.../apidocs/src/resources/cdb-mgmt-devguide.xml | 1267 ++++++
.../apidocs/src/resources/cdb-releasenotes.xml | 711 +++
.../src/resources/images/Choose_CS_Image.png | Bin 0 -> 85201 bytes
.../src/resources/images/Choose_CS_Image_CCP.png | Bin 0 -> 24996 bytes
.../src/resources/images/Choose_Image_CCP.png | Bin 0 -> 21253 bytes
.../src/resources/images/Choose_Image_CCP.tiff | Bin 0 -> 26244 bytes
.../resources/images/Cloud_DB_Infographic-1.png | Bin 0 -> 66336 bytes
.../resources/images/Cloud_DB_Infographic-1.svg | 4533 ++++++++++++++++++++
.../apidocs/src/resources/images/Create_CS.png | Bin 0 -> 31902 bytes
.../apidocs/src/resources/images/phpMyAdmin.png | Bin 0 -> 257577 bytes
.../apidocs/src/resources/samples/db-auth-20.json | 128 +
.../apidocs/src/resources/samples/db-auth-20.xml | 63 +
.../apidocs/src/resources/samples/db-auth.json | 72 +
.../apidocs/src/resources/samples/db-auth.xml | 50 +
.../samples/db-check-root-user-request.json | 8 +
.../samples/db-check-root-user-request.xml | 8 +
.../samples/db-check-root-user-response.json | 8 +
.../samples/db-check-root-user-response.xml | 6 +
.../db-create-database-instance-response.json | 41 +
.../db-create-database-instance-response.xml | 24 +
.../samples/db-create-databases-request.json | 19 +
.../samples/db-create-databases-request.xml | 13 +
.../samples/db-create-databases-response.json | 4 +
.../samples/db-create-databases-response.xml | 4 +
.../samples/db-create-instance-request.json | 37 +
.../samples/db-create-instance-request.xml | 23 +
.../samples/db-create-instance-response.json | 41 +
.../samples/db-create-instance-response.xml | 19 +
.../resources/samples/db-create-users-request.json | 32 +
.../resources/samples/db-create-users-request.xml | 21 +
.../samples/db-create-users-response.json | 4 +
.../resources/samples/db-create-users-response.xml | 4 +
.../src/resources/samples/db-credentials-20.json | 18 +
.../src/resources/samples/db-credentials-20.xml | 14 +
.../src/resources/samples/db-credentials.json | 13 +
.../src/resources/samples/db-credentials.xml | 11 +
.../samples/db-delete-databases-request.json | 8 +
.../samples/db-delete-databases-request.xml | 8 +
.../samples/db-delete-databases-response.json | 4 +
.../samples/db-delete-databases-response.xml | 4 +
.../samples/db-delete-instance-request.json | 8 +
.../samples/db-delete-instance-request.xml | 8 +
.../samples/db-delete-instance-response.json | 4 +
.../samples/db-delete-instance-response.xml | 4 +
.../resources/samples/db-delete-users-request.json | 8 +
.../resources/samples/db-delete-users-request.xml | 8 +
.../samples/db-delete-users-response.json | 4 +
.../resources/samples/db-delete-users-response.xml | 4 +
.../samples/db-enable-root-user-request.json | 8 +
.../samples/db-enable-root-user-request.xml | 8 +
.../samples/db-enable-root-user-response.json | 11 +
.../samples/db-enable-root-user-response.xml | 7 +
.../resources/samples/db-faults-badRequest.json | 11 +
.../src/resources/samples/db-faults-badRequest.xml | 10 +
.../resources/samples/db-faults-instanceFault.json | 11 +
.../resources/samples/db-faults-instanceFault.xml | 10 +
.../resources/samples/db-faults-itemNotFound.json | 11 +
.../resources/samples/db-faults-itemNotFound.xml | 10 +
.../samples/db-flavors-by-id-request.json | 8 +
.../resources/samples/db-flavors-by-id-request.xml | 8 +
.../samples/db-flavors-by-id-response.json | 22 +
.../samples/db-flavors-by-id-response.xml | 11 +
.../src/resources/samples/db-flavors-request.json | 8 +
.../src/resources/samples/db-flavors-request.xml | 8 +
.../src/resources/samples/db-flavors-response.json | 69 +
.../src/resources/samples/db-flavors-response.xml | 32 +
.../db-gs-create-database-instance-response.json | 41 +
.../db-gs-create-database-instance-response.xml | 22 +
.../resources/samples/db-guest-update-request.json | 10 +
.../resources/samples/db-guest-update-request.xml | 10 +
.../samples/db-guest-update-response.json | 6 +
.../resources/samples/db-guest-update-response.xml | 6 +
.../samples/db-instance-reboot-request.json | 10 +
.../samples/db-instance-reboot-request.xml | 10 +
.../samples/db-instance-reboot-response.json | 6 +
.../samples/db-instance-reboot-response.xml | 6 +
.../samples/db-instance-resize-flavor-request.json | 12 +
.../samples/db-instance-resize-flavor-request.xml | 10 +
.../db-instance-resize-flavor-response.json | 4 +
.../samples/db-instance-resize-flavor-response.xml | 4 +
.../db-instance-resize-instance-request.json | 12 +
.../db-instance-resize-instance-request.xml | 12 +
.../db-instance-resize-instance-response.json | 6 +
.../db-instance-resize-instance-response.xml | 6 +
.../samples/db-instance-resize-volume-request.json | 14 +
.../samples/db-instance-resize-volume-request.xml | 12 +
.../db-instance-resize-volume-response.json | 4 +
.../samples/db-instance-resize-volume-response.xml | 4 +
.../samples/db-instance-restart-request.json | 10 +
.../samples/db-instance-restart-request.xml | 9 +
.../samples/db-instance-restart-response.json | 4 +
.../samples/db-instance-restart-response.xml | 4 +
.../samples/db-instance-status-detail-request.json | 8 +
.../samples/db-instance-status-detail-request.xml | 8 +
.../db-instance-status-detail-response.json | 42 +
.../samples/db-instance-status-detail-response.xml | 20 +
.../samples/db-instance-update-guest-request.json | 11 +
.../samples/db-instance-update-guest-request.xml | 10 +
.../samples/db-instance-update-guest-response.json | 8 +
.../samples/db-instance-update-guest-response.xml | 8 +
.../db-instances-index-pagination-request.json | 8 +
.../db-instances-index-pagination-request.xml | 8 +
.../db-instances-index-pagination-response.json | 45 +
.../db-instances-index-pagination-response.xml | 23 +
.../samples/db-instances-index-request.json | 8 +
.../samples/db-instances-index-request.xml | 8 +
.../samples/db-instances-index-response.json | 71 +
.../samples/db-instances-index-response.xml | 34 +
.../samples/db-instances-paged-index-request.json | 8 +
.../samples/db-instances-paged-index-request.xml | 8 +
.../samples/db-instances-paged-index-response.json | 90 +
.../samples/db-instances-paged-index-response.xml | 41 +
.../samples/db-list-databases-request.json | 8 +
.../samples/db-list-databases-request.xml | 8 +
.../samples/db-list-databases-response.json | 24 +
.../samples/db-list-databases-response.xml | 12 +
.../resources/samples/db-list-users-request.json | 8 +
.../resources/samples/db-list-users-request.xml | 8 +
.../resources/samples/db-list-users-response.json | 28 +
.../resources/samples/db-list-users-response.xml | 24 +
.../db-mgmt-get-account-details-request.json | 8 +
.../db-mgmt-get-account-details-request.xml | 8 +
.../db-mgmt-get-account-details-response.json | 24 +
.../db-mgmt-get-account-details-response.xml | 12 +
.../samples/db-mgmt-get-host-detail-request.json | 8 +
.../samples/db-mgmt-get-host-detail-request.xml | 8 +
.../samples/db-mgmt-get-host-detail-response.json | 29 +
.../samples/db-mgmt-get-host-detail-response.xml | 12 +
.../db-mgmt-get-instance-details-request.json | 8 +
.../db-mgmt-get-instance-details-request.xml | 8 +
.../db-mgmt-get-instance-details-response.json | 51 +
.../db-mgmt-get-instance-details-response.xml | 20 +
.../samples/db-mgmt-get-root-details-request.json | 8 +
.../samples/db-mgmt-get-root-details-request.xml | 8 +
.../samples/db-mgmt-get-root-details-response.json | 12 +
.../samples/db-mgmt-get-root-details-response.xml | 7 +
.../samples/db-mgmt-get-storage-request.json | 8 +
.../samples/db-mgmt-get-storage-request.xml | 8 +
.../samples/db-mgmt-get-storage-response.json | 23 +
.../samples/db-mgmt-get-storage-response.xml | 12 +
.../samples/db-mgmt-host-update-request.json | 12 +
.../samples/db-mgmt-host-update-request.xml | 10 +
.../samples/db-mgmt-host-update-response.json | 6 +
.../samples/db-mgmt-host-update-response.xml | 6 +
.../db-mgmt-instance-diagnostics-request.json | 8 +
.../db-mgmt-instance-diagnostics-request.xml | 8 +
.../db-mgmt-instance-diagnostics-response.json | 16 +
.../db-mgmt-instance-diagnostics-response.xml | 7 +
.../samples/db-mgmt-instance-hwinfo-request.json | 8 +
.../samples/db-mgmt-instance-hwinfo-request.xml | 8 +
.../samples/db-mgmt-instance-hwinfo-response.json | 13 +
.../samples/db-mgmt-instance-hwinfo-response.xml | 15 +
.../samples/db-mgmt-instance-index-request.json | 8 +
.../samples/db-mgmt-instance-index-request.xml | 8 +
.../samples/db-mgmt-instance-index-response.json | 89 +
.../samples/db-mgmt-instance-index-response.xml | 34 +
.../samples/db-mgmt-list-accounts-request.json | 8 +
.../samples/db-mgmt-list-accounts-request.xml | 8 +
.../samples/db-mgmt-list-accounts-response.json | 13 +
.../samples/db-mgmt-list-accounts-response.xml | 9 +
.../samples/db-mgmt-list-hosts-request.json | 8 +
.../samples/db-mgmt-list-hosts-request.xml | 8 +
.../samples/db-mgmt-list-hosts-response.json | 13 +
.../samples/db-mgmt-list-hosts-response.xml | 9 +
.../src/resources/samples/db-request-types.json | 15 +
.../src/resources/samples/db-response-types.xml | 24 +
.../src/resources/samples/db-version-request.json | 8 +
.../src/resources/samples/db-version-request.xml | 8 +
.../src/resources/samples/db-version-response.json | 18 +
.../src/resources/samples/db-version-response.xml | 10 +
.../src/resources/samples/db-versions-request.json | 8 +
.../src/resources/samples/db-versions-request.xml | 8 +
.../resources/samples/db-versions-response.json | 20 +
.../src/resources/samples/db-versions-response.xml | 12 +
integration/scripts/conf.json.example | 12 +
integration/scripts/conf/cassandra.conf | 6 +
integration/scripts/conf/couchbase.conf | 6 +
integration/scripts/conf/couchdb.conf | 6 +
integration/scripts/conf/db2.conf | 6 +
integration/scripts/conf/mariadb.conf | 6 +
integration/scripts/conf/mongodb.conf | 6 +
integration/scripts/conf/mysql.conf | 6 +
integration/scripts/conf/percona.conf | 6 +
integration/scripts/conf/postgresql.conf | 6 +
integration/scripts/conf/pxc.conf | 6 +
integration/scripts/conf/redis.conf | 6 +
integration/scripts/conf/test_begin.conf | 101 +
integration/scripts/conf/test_end.conf | 2 +
integration/scripts/conf/vertica.conf | 6 +
integration/scripts/create_vm | 84 +
.../scripts/files/elements/apt-conf-dir/README.rst | 16 +
.../extra-data.d/99-use-host-apt-confd | 21 +
.../fedora-guest/extra-data.d/15-trove-dep | 48 +
.../fedora-guest/extra-data.d/20-guest-systemd | 21 +
.../elements/fedora-guest/extra-data.d/62-ssh-key | 31 +
.../elements/fedora-guest/install.d/15-trove-dep | 30 +
.../files/elements/fedora-guest/install.d/20-etc | 8 +
.../files/elements/fedora-guest/install.d/50-user | 17 +
.../elements/fedora-guest/install.d/62-ssh-key | 29 +
.../fedora-guest/post-install.d/05-ipforwarding | 5 +
.../post-install.d/62-trove-guest-sudoers | 15 +
.../fedora-guest/post-install.d/90-yum-update | 9 +
.../files/elements/fedora-mariadb/README.md | 3 +
.../elements/fedora-mariadb/install.d/10-mariadb | 9 +
.../fedora-mariadb/pre-install.d/10-percona-copr | 10 +
.../files/elements/fedora-mongodb/README.md | 1 +
.../elements/fedora-mongodb/install.d/10-mongodb | 24 +
.../fedora-mongodb/install.d/25-trove-mongo-dep | 9 +
.../scripts/files/elements/fedora-mysql/README.md | 3 +
.../files/elements/fedora-mysql/install.d/10-mysql | 16 +
.../elements/fedora-mysql/install.d/40-xtrabackup | 10 +
.../post-install.d/30-register-mysql-service | 6 +
.../fedora-percona/install.d/05-percona-server | 17 +
.../elements/fedora-percona/install.d/10-mysql | 16 +
.../fedora-postgresql/install.d/10-postgresql | 83 +
.../scripts/files/elements/fedora-redis/README.md | 1 +
.../files/elements/fedora-redis/install.d/10-redis | 9 +
.../ubuntu-cassandra/install.d/10-cassandra | 25 +
.../ubuntu-couchbase/install.d/10-couchbase | 8 +
.../elements/ubuntu-couchdb/install.d/10-couchdb | 19 +
.../scripts/files/elements/ubuntu-db2/README.md | 36 +
.../ubuntu-db2/extra-data.d/20-copy-db2-pkgs | 25 +
.../files/elements/ubuntu-db2/install.d/10-db2 | 52 +
.../ubuntu-guest/extra-data.d/15-trove-dep | 48 +
.../elements/ubuntu-guest/extra-data.d/62-ssh-key | 31 +
.../elements/ubuntu-guest/install.d/05-base-apps | 10 +
.../elements/ubuntu-guest/install.d/15-trove-dep | 31 +
.../files/elements/ubuntu-guest/install.d/50-user | 18 +
.../elements/ubuntu-guest/install.d/62-ssh-key | 28 +
.../files/elements/ubuntu-guest/install.d/98-ssh | 8 +
.../elements/ubuntu-guest/install.d/99-clean-apt | 11 +
.../ubuntu-guest/post-install.d/05-ipforwarding | 4 +
.../elements/ubuntu-guest/post-install.d/10-ntp | 10 +
.../post-install.d/62-trove-guest-sudoers | 15 +
.../ubuntu-guest/post-install.d/90-apt-get-update | 9 +
.../ubuntu-guest/pre-install.d/04-baseline-tools | 7 +
.../files/elements/ubuntu-mariadb/README.md | 3 +
.../pre-install.d/10-percona-apt-key | 47 +
.../pre-install.d/20-apparmor-mysql-local | 11 +
.../files/elements/ubuntu-mongodb/README.md | 1 +
.../ubuntu-mongodb/install.d/10-mongodb-thp | 42 +
.../elements/ubuntu-mongodb/install.d/20-mongodb | 8 +
.../ubuntu-mongodb/install.d/25-trove-mongo-dep | 9 +
.../ubuntu-mongodb/install.d/30-mongodb-conf | 26 +
.../ubuntu-mongodb/install.d/41-mongod-init | 46 +
.../ubuntu-mongodb/install.d/42-mongos-init | 30 +
.../pre-install.d/10-mongodb-apt-key | 14 +
.../scripts/files/elements/ubuntu-mysql/README.md | 3 +
.../ubuntu-mysql/pre-install.d/10-percona-apt-key | 47 +
.../pre-install.d/20-apparmor-mysql-local | 11 +
.../elements/ubuntu-percona/install.d/30-mysql | 17 +
.../pre-install.d/10-percona-apt-key | 49 +
.../pre-install.d/20-apparmor-mysql-local | 11 +
.../ubuntu-postgresql/install.d/30-postgresql | 79 +
.../pre-install.d/10-postgresql-repo | 14 +
.../files/elements/ubuntu-pxc/install.d/30-mysql | 14 +
.../ubuntu-pxc/pre-install.d/10-percona-apt-key | 49 +
.../pre-install.d/20-apparmor-mysql-local | 11 +
.../scripts/files/elements/ubuntu-redis/README.md | 1 +
.../files/elements/ubuntu-redis/install.d/30-redis | 53 +
.../elements/ubuntu-trusty-cassandra/element-deps | 1 +
.../elements/ubuntu-trusty-couchbase/element-deps | 1 +
.../elements/ubuntu-trusty-couchdb/element-deps | 1 +
.../files/elements/ubuntu-trusty-db2/element-deps | 1 +
.../elements/ubuntu-trusty-guest/element-deps | 1 +
.../extra-data.d/20-guest-upstart | 21 +
.../elements/ubuntu-trusty-guest/install.d/20-etc | 8 +
.../ubuntu-trusty-guest/pre-install.d/01-trim-pkgs | 117 +
.../elements/ubuntu-trusty-mariadb/element-deps | 1 +
.../ubuntu-trusty-mariadb/install.d/30-mariadb | 34 +
.../elements/ubuntu-trusty-mongodb/element-deps | 1 +
.../elements/ubuntu-trusty-mysql/element-deps | 1 +
.../ubuntu-trusty-mysql/install.d/30-mysql | 23 +
.../elements/ubuntu-trusty-percona/element-deps | 1 +
.../elements/ubuntu-trusty-postgresql/element-deps | 1 +
.../files/elements/ubuntu-trusty-pxc/element-deps | 1 +
.../elements/ubuntu-trusty-redis/element-deps | 1 +
.../elements/ubuntu-trusty-vertica/element-deps | 1 +
.../files/elements/ubuntu-vertica/README.md | 1 +
.../extra-data.d/93-copy-vertica-deb | 14 +
.../elements/ubuntu-vertica/install.d/97-vertica | 54 +
.../elements/ubuntu-xenial-guest/element-deps | 1 +
.../extra-data.d/20-guest-systemd | 22 +
.../elements/ubuntu-xenial-guest/install.d/20-etc | 10 +
.../ubuntu-xenial-guest/pre-install.d/01-trim-pkgs | 90 +
.../elements/ubuntu-xenial-mariadb/element-deps | 1 +
.../ubuntu-xenial-mariadb/install.d/30-mariadb | 39 +
.../elements/ubuntu-xenial-mysql/element-deps | 1 +
.../ubuntu-xenial-mysql/install.d/30-mysql | 32 +
.../elements/ubuntu-xenial-postgresql/element-deps | 1 +
.../install.d/31-fix-init-script | 7 +
.../files/elements/ubuntu-xenial-pxc/element-deps | 1 +
.../ubuntu-xenial-pxc/install.d/31-fix-my-cnf | 15 +
.../elements/ubuntu-xenial-redis/element-deps | 1 +
.../ubuntu-xenial-redis/install.d/31-fix-init-file | 28 +
integration/scripts/files/keys/authorized_keys | 1 +
integration/scripts/files/keys/id_rsa | 27 +
integration/scripts/files/keys/id_rsa.pub | 1 +
.../files/requirements/fedora-requirements.txt | 31 +
.../files/requirements/ubuntu-requirements.txt | 30 +
integration/scripts/files/trove-guest.systemd.conf | 32 +
integration/scripts/files/trove-guest.upstart.conf | 40 +
integration/scripts/functions | 330 ++
integration/scripts/functions_qemu | 168 +
integration/scripts/image-projects-list | 2 +
.../scripts/local.conf.d/ceilometer_cinder.conf.rc | 3 +
.../scripts/local.conf.d/ceilometer_nova.conf.rc | 3 +
.../local.conf.d/ceilometer_services.conf.rc | 3 +
integration/scripts/local.conf.d/sample.rc | 42 +
.../scripts/local.conf.d/trove_services.conf.rc | 24 +
integration/scripts/local.conf.d/use_kvm.rc | 4 +
integration/scripts/local.conf.d/use_uuid_token.rc | 3 +
integration/scripts/local.conf.d/using_vagrant.rc | 9 +
integration/scripts/local.conf.rc | 37 +
integration/scripts/localrc.rc | 99 +
integration/scripts/projects-list | 12 +
integration/scripts/reviews.rc | 5 +
integration/scripts/trovestack | 1517 +++++++
integration/scripts/trovestack.rc | 111 +
integration/xsd/common.ent | 72 +
integration/xsd/dbaas.wadl | 1177 +++++
integration/xsd/dbaas.xsd | 613 +++
integration/xsd/management.wadl | 625 +++
integration/xsd/management.xsd | 398 ++
.../notes/add-max-prep-stmts-ac1056e127de7609.yaml | 5 +
...ster-configuration-groups-37f7de9e5a343165.yaml | 3 +
.../cluster_list_show_all_ips-3547635440.yaml | 6 +
.../notes/cluster_restart-bb5abb7372131ee0.yaml | 4 +
...ply_module_bools_properly-571cca9a87f28339.yaml | 5 +
.../notes/fix-cluster-show-346798b3e3.yaml | 5 +
...eprecated-SafeConfigParse-ca3fd3e9f52a8cc8.yaml | 6 +
.../fix-postgres-pg-rewind-6eef0afb568439ce.yaml | 2 +
.../notes/fix_module_apply-042fc6e61f721540.yaml | 6 +
.../flavor-list-ephemeral-edf2dc35d5c247b3.yaml | 4 +
.../grow-cluster-nic-az-0e0fe4083666c300.yaml | 4 +
...instance-show-comp-vol-id-964db9f52a5ac9c1.yaml | 4 +
.../notes/module-ordering-92b6445a8ac3a3bf.yaml | 9 +
.../mountpoint-detection-096734f0097eb75a.yaml | 4 +
.../notes/multi-region-cd8da560bfe00de5.yaml | 3 +
.../notes/post-upgrade-fixes-828811607826d433.yaml | 4 +
.../notes/use-oslo-policy-bbd1b911e6487c36.yaml | 8 +
releasenotes/source/conf.py | 3 +
releasenotes/source/index.rst | 2 +-
releasenotes/source/liberty.rst | 6 -
releasenotes/source/newton.rst | 6 +
requirements.txt | 40 +-
test-requirements.txt | 21 +-
tools/test-setup.sh | 57 +
tools/trove-pylint.README | 22 +-
tools/trove-pylint.config | 2658 ++++--------
tools/trove-pylint.py | 67 +-
tox.ini | 17 +-
trove/backup/service.py | 10 +-
trove/cluster/models.py | 306 +-
trove/cluster/service.py | 36 +-
trove/cluster/tasks.py | 6 +
trove/cluster/views.py | 4 +-
trove/cmd/conductor.py | 8 +-
trove/cmd/fakemode.py | 2 +-
trove/cmd/guest.py | 15 +-
trove/cmd/manage.py | 10 +-
trove/cmd/taskmanager.py | 12 +-
trove/common/apischema.py | 37 +-
trove/common/cfg.py | 119 +-
trove/common/context.py | 42 +-
trove/common/crypto_utils.py | 8 +
trove/common/db/__init__.py | 0
trove/common/db/cassandra/__init__.py | 0
trove/common/db/cassandra/models.py | 45 +
trove/common/db/couchdb/__init__.py | 0
trove/common/db/couchdb/models.py | 32 +
trove/common/db/models.py | 438 ++
trove/common/db/mongodb/__init__.py | 0
trove/common/db/mongodb/models.py | 158 +
trove/common/db/mysql/__init__.py | 0
trove/common/db/mysql/data.py | 244 ++
trove/common/db/mysql/models.py | 170 +
trove/common/db/postgresql/__init__.py | 0
trove/common/db/postgresql/models.py | 70 +
trove/common/exception.py | 18 +-
trove/common/extensions.py | 2 -
trove/common/glance_remote.py | 53 +
trove/common/limits.py | 12 +-
trove/common/models.py | 20 +-
trove/common/notification.py | 59 +-
trove/common/policy.py | 260 ++
trove/common/remote.py | 31 +-
trove/common/rpc/conductor_guest_serializer.py | 60 +
trove/common/rpc/conductor_host_serializer.py | 83 +
trove/common/rpc/secure_serializer.py | 59 +
trove/common/rpc/serializer.py | 86 +
trove/common/rpc/service.py | 11 +-
trove/common/server_group.py | 2 -
trove/common/single_tenant_remote.py | 11 +-
.../cluster/experimental/cassandra/api.py | 34 +-
.../cluster/experimental/cassandra/guestagent.py | 61 +-
.../cluster/experimental/cassandra/taskmanager.py | 7 +
.../cluster/experimental/galera_common/api.py | 85 +-
.../experimental/galera_common/guestagent.py | 30 +-
.../experimental/galera_common/taskmanager.py | 16 +-
.../strategies/cluster/experimental/mongodb/api.py | 65 +-
.../cluster/experimental/mongodb/guestagent.py | 55 +-
.../cluster/experimental/mongodb/taskmanager.py | 3 +-
.../strategies/cluster/experimental/redis/api.py | 48 +-
.../cluster/experimental/redis/guestagent.py | 39 +-
.../cluster/experimental/redis/taskmanager.py | 4 +-
.../strategies/cluster/experimental/vertica/api.py | 55 +-
.../cluster/experimental/vertica/guestagent.py | 39 +-
trove/common/strategies/strategy.py | 3 +-
trove/common/stream_codecs.py | 11 +-
trove/common/trove_remote.py | 56 +
trove/common/utils.py | 6 +-
trove/common/wsgi.py | 5 +-
trove/common/xmlutils.py | 12 +-
trove/conductor/api.py | 57 +-
trove/configuration/models.py | 20 +-
trove/configuration/service.py | 79 +-
trove/datastore/service.py | 15 +
trove/db/models.py | 7 +-
trove/db/sqlalchemy/api.py | 4 -
.../migrate_repo/versions/001_base_schema.py | 6 -
.../migrate_repo/versions/002_service_images.py | 6 -
.../migrate_repo/versions/003_service_statuses.py | 6 -
.../migrate_repo/versions/004_root_enabled.py | 6 -
.../migrate_repo/versions/005_heartbeat.py | 6 -
.../migrate_repo/versions/006_dns_records.py | 6 -
.../migrate_repo/versions/007_add_volume_flavor.py | 11 -
.../versions/008_add_instance_fields.py | 11 -
.../versions/009_add_deleted_flag_to_instances.py | 10 -
.../migrate_repo/versions/010_add_usage.py | 6 -
.../sqlalchemy/migrate_repo/versions/011_quota.py | 6 -
.../sqlalchemy/migrate_repo/versions/012_backup.py | 6 -
.../versions/013_add_security_group_artifacts.py | 7 -
.../versions/014_update_instance_flavor_id.py | 11 -
.../migrate_repo/versions/015_add_service_type.py | 8 -
.../versions/016_add_datastore_type.py | 22 -
.../migrate_repo/versions/017_update_datastores.py | 15 -
.../versions/018_datastore_versions_fix.py | 8 -
.../migrate_repo/versions/019_datastore_fix.py | 31 -
.../migrate_repo/versions/020_configurations.py | 19 -
.../versions/021_conductor_last_seen.py | 6 -
.../versions/022_add_backup_parent_id.py | 9 -
.../versions/023_add_instance_indexes.py | 13 -
.../versions/024_add_backup_indexes.py | 14 -
.../versions/025_add_service_statuses_indexes.py | 9 -
.../versions/026_datastore_versions_unique_fix.py | 7 -
.../versions/027_add_datastore_capabilities.py | 6 -
.../versions/028_recreate_agent_heartbeat.py | 27 -
.../versions/029_add_backup_datastore.py | 19 -
.../migrate_repo/versions/030_add_master_slave.py | 18 -
.../031_add_timestamps_to_configurations.py | 7 -
.../migrate_repo/versions/032_clusters.py | 36 -
.../versions/033_datastore_parameters.py | 6 -
.../versions/034_change_task_description.py | 4 -
.../versions/035_flavor_id_int_to_string.py | 7 -
.../versions/036_add_datastore_version_metadata.py | 6 -
.../migrate_repo/versions/037_modules.py | 6 -
.../migrate_repo/versions/038_instance_faults.py | 6 -
.../sqlalchemy/migrate_repo/versions/039_region.py | 35 +
.../migrate_repo/versions/040_module_priority.py | 48 +
.../migrate_repo/versions/041_instance_keys.py | 30 +
.../versions/042_add_cluster_configuration_id.py | 38 +
trove/db/sqlalchemy/migration.py | 16 -
trove/dns/designate/driver.py | 10 +-
trove/extensions/cassandra/service.py | 4 +-
trove/extensions/common/models.py | 9 +-
trove/extensions/common/service.py | 44 +-
trove/extensions/mgmt/instances/models.py | 8 +-
trove/extensions/mgmt/instances/service.py | 22 +-
trove/extensions/mgmt/volume/models.py | 4 +-
trove/extensions/mgmt/volume/service.py | 4 +-
trove/extensions/mysql/common.py | 12 +-
trove/extensions/mysql/models.py | 38 +-
trove/extensions/mysql/service.py | 93 +-
trove/extensions/postgresql/service.py | 4 +-
trove/extensions/security_group/models.py | 53 +-
trove/extensions/security_group/service.py | 5 +-
trove/flavor/service.py | 5 +
trove/flavor/views.py | 1 +
trove/guestagent/api.py | 284 +-
trove/guestagent/backup/backupagent.py | 6 +-
trove/guestagent/common/configuration.py | 27 +-
trove/guestagent/common/operating_system.py | 20 +
trove/guestagent/common/timeutils.py | 12 +
.../datastore/experimental/cassandra/service.py | 45 +-
.../datastore/experimental/couchbase/service.py | 11 +-
.../datastore/experimental/couchdb/service.py | 14 +-
.../datastore/experimental/db2/service.py | 47 +-
.../datastore/experimental/mariadb/service.py | 2 +-
.../datastore/experimental/mongodb/service.py | 137 +-
.../datastore/experimental/postgresql/manager.py | 254 +-
.../experimental/postgresql/pgsql_query.py | 177 +
.../datastore/experimental/postgresql/pgutil.py | 245 --
.../datastore/experimental/postgresql/service.py | 1044 +++++
.../experimental/postgresql/service/__init__.py | 0
.../experimental/postgresql/service/access.py | 84 -
.../experimental/postgresql/service/config.py | 243 --
.../experimental/postgresql/service/database.py | 112 -
.../experimental/postgresql/service/install.py | 90 -
.../experimental/postgresql/service/process.py | 125 -
.../experimental/postgresql/service/root.py | 93 -
.../experimental/postgresql/service/status.py | 49 -
.../experimental/postgresql/service/users.py | 316 --
.../datastore/experimental/pxc/service.py | 7 -
.../datastore/experimental/redis/manager.py | 2 +-
.../datastore/experimental/vertica/service.py | 23 +-
.../datastore/experimental/vertica/system.py | 3 +-
trove/guestagent/datastore/manager.py | 48 +-
trove/guestagent/datastore/mysql_common/manager.py | 3 +-
trove/guestagent/datastore/mysql_common/service.py | 82 +-
trove/guestagent/datastore/service.py | 13 +-
trove/guestagent/db/__init__.py | 0
trove/guestagent/db/models.py | 1069 -----
trove/guestagent/dbaas.py | 2 +-
trove/guestagent/guest_log.py | 13 +-
trove/guestagent/module/drivers/module_driver.py | 2 -
.../module/drivers/new_relic_license_driver.py | 2 -
trove/guestagent/module/drivers/ping_driver.py | 7 -
trove/guestagent/module/module_manager.py | 23 +-
trove/guestagent/pkg.py | 138 +-
.../strategies/backup/experimental/db2_impl.py | 8 +-
.../backup/experimental/postgresql_impl.py | 48 +-
trove/guestagent/strategies/backup/mysql_impl.py | 10 +-
.../replication/experimental/postgresql_impl.py | 178 +-
.../replication/experimental/redis_sync.py | 3 -
.../strategies/replication/mysql_base.py | 14 +-
.../strategies/replication/mysql_binlog.py | 2 -
.../strategies/replication/mysql_gtid.py | 2 -
.../restore/experimental/couchbase_impl.py | 3 +-
.../restore/experimental/postgresql_impl.py | 46 +-
trove/guestagent/strategies/restore/mysql_impl.py | 2 +-
trove/guestagent/volume.py | 199 +-
trove/hacking/__init__.py | 0
trove/hacking/translation_checks.py | 110 +
trove/instance/models.py | 441 +-
trove/instance/service.py | 82 +-
trove/instance/tasks.py | 3 +
trove/instance/views.py | 11 +-
trove/limits/service.py | 3 +
trove/module/models.py | 162 +-
trove/module/service.py | 40 +-
trove/module/views.py | 32 +-
trove/network/neutron.py | 18 +-
trove/network/nova.py | 15 +-
trove/rpc.py | 85 +-
trove/taskmanager/api.py | 112 +-
trove/taskmanager/manager.py | 57 +-
trove/taskmanager/models.py | 158 +-
trove/templates/mariadb/config.template | 2 +
trove/templates/mariadb/validation-rules.json | 7 +
trove/templates/mysql/validation-rules.json | 7 +
trove/templates/percona/validation-rules.json | 7 +
trove/templates/postgresql/validation-rules.json | 9 +-
trove/templates/pxc/validation-rules.json | 7 +
trove/templates/vertica/validation-rules.json | 6 +-
.../scenario/groups/database_actions_group.py | 12 +-
.../scenario/groups/instance_actions_group.py | 49 +-
.../scenario/groups/instance_upgrade_group.py | 21 +
.../scenario/runners/cluster_actions_runners.py | 451 --
.../scenario/runners/configuration_runners.py | 60 +-
.../scenario/runners/database_actions_runners.py | 50 +-
.../scenario/runners/instance_actions_runners.py | 33 +-
.../scenario/runners/instance_create_runners.py | 135 +-
.../scenario/runners/instance_delete_runners.py | 5 +-
.../runners/instance_error_create_runners.py | 21 +-
.../runners/instance_force_delete_runners.py | 19 +-
.../scenario/runners/instance_upgrade_runners.py | 20 +-
.../runners/negative_cluster_actions_runners.py | 3 +-
.../cluster/test_cluster_pxc_controller.py | 5 +-
.../cluster/test_cluster_redis_controller.py | 7 +-
.../cluster/test_cluster_vertica_controller.py | 5 +-
.../configuration/test_configuration_controller.py | 97 +-
.../guestagent/test_galera_cluster_api.py | 5 +-
761 files changed, 38795 insertions(+), 8665 deletions(-)
Requirements updates
--------------------
diff --git a/requirements.txt b/requirements.txt
index cf9b85c..f68e93a 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -4 +4 @@
-pbr>=1.6 # Apache-2.0
+pbr>=1.8 # Apache-2.0
@@ -7 +7 @@ eventlet!=0.18.3,>=0.18.2 # MIT
-keystonemiddleware!=4.1.0,!=4.5.0,>=4.0.0 # Apache-2.0
+keystonemiddleware>=4.12.0 # Apache-2.0
@@ -10 +10 @@ Routes!=2.0,!=2.3.0,>=1.12.3;python_version!='2.7' # MIT
-WebOb>=1.2.3 # MIT
+WebOb>=1.6.0 # MIT
@@ -14,2 +14 @@ sqlalchemy-migrate>=0.9.6 # Apache-2.0
-netaddr!=0.7.16,>=0.7.12 # BSD
-netifaces>=0.10.4 # MIT
+netaddr!=0.7.16,>=0.7.13 # BSD
@@ -17,4 +16,4 @@ httplib2>=0.7.5 # MIT
-lxml>=2.3 # BSD
-passlib>=1.6 # BSD
-python-heatclient>=1.4.0 # Apache-2.0
-python-novaclient!=2.33.0,>=2.29.0 # Apache-2.0
+lxml!=3.7.0,>=2.3 # BSD
+passlib>=1.7.0 # BSD
+python-heatclient>=1.6.1 # Apache-2.0
+python-novaclient!=7.0.0,>=6.0.0 # Apache-2.0
@@ -22,2 +21,2 @@ python-cinderclient!=1.7.0,!=1.7.1,>=1.6.0 # Apache-2.0
-python-keystoneclient!=2.1.0,>=2.0.0 # Apache-2.0
-python-swiftclient>=2.2.0 # Apache-2.0
+python-keystoneclient>=3.8.0 # Apache-2.0
+python-swiftclient>=3.2.0 # Apache-2.0
@@ -25,0 +25 @@ python-neutronclient>=5.1.0 # Apache-2.0
+python-glanceclient>=2.5.0 # Apache-2.0
@@ -28 +28 @@ jsonschema!=2.5.0,<3.0.0,>=2.0.0 # MIT
-Jinja2>=2.8 # BSD License (3 clause)
+Jinja2!=2.9.0,!=2.9.1,!=2.9.2,!=2.9.3,!=2.9.4,>=2.8 # BSD License (3 clause)
@@ -30 +30 @@ pexpect!=3.3,>=3.1 # ISC License
-oslo.config>=3.14.0 # Apache-2.0
+oslo.config!=3.18.0,>=3.14.0 # Apache-2.0
@@ -36 +36 @@ oslo.service>=1.10.0 # Apache-2.0
-oslo.utils>=3.16.0 # Apache-2.0
+oslo.utils>=3.18.0 # Apache-2.0
@@ -38 +38 @@ oslo.concurrency>=3.8.0 # Apache-2.0
-PyMySQL!=0.7.7,>=0.6.2 # MIT License
+PyMySQL>=0.7.6 # MIT License
@@ -41,2 +41,2 @@ six>=1.9.0 # MIT
-stevedore>=1.16.0 # Apache-2.0
-oslo.messaging>=5.2.0 # Apache-2.0
+stevedore>=1.17.1 # Apache-2.0
+oslo.messaging>=5.14.0 # Apache-2.0
@@ -44,2 +44,2 @@ osprofiler>=1.4.0 # Apache-2.0
-oslo.log>=1.14.0 # Apache-2.0
-oslo.db!=4.13.1,!=4.13.2,>=4.10.0 # Apache-2.0
+oslo.log>=3.11.0 # Apache-2.0
+oslo.db>=4.15.0 # Apache-2.0
@@ -47,0 +48,2 @@ xmltodict>=0.10.1 # MIT
+pycrypto>=2.6 # Public Domain
+oslo.policy>=1.17.0 # Apache-2.0
diff --git a/test-requirements.txt b/test-requirements.txt
index f73ff01..36e260d 100644
--- a/test-requirements.txt
+++ b/test-requirements.txt
@@ -5 +5 @@
-hacking<0.11,>=0.10.0
+hacking<0.13,>=0.12.0 # Apache-2.0
@@ -7 +7 @@ bandit>=1.1.0 # Apache-2.0
-sphinx!=1.3b1,<1.3,>=1.2.1 # BSD
+sphinx!=1.3b1,<1.4,>=1.2.1 # BSD
@@ -9,3 +9,3 @@ os-api-ref>=1.0.0 # Apache-2.0
-oslosphinx!=3.4.0,>=2.5.0 # Apache-2.0
-reno>=1.8.0 # Apache2
-coverage>=3.6 # Apache-2.0
+oslosphinx>=4.7.0 # Apache-2.0
+reno>=1.8.0 # Apache-2.0
+coverage>=4.0 # Apache-2.0
@@ -17 +17 @@ WebTest>=2.0 # MIT
-wsgi-intercept>=0.6.1 # MIT License
+wsgi-intercept>=1.4.1 # MIT License
@@ -21 +21 @@ mock>=2.0 # BSD
-mox3>=0.7.0 # Apache-2.0
+mox3!=0.19.0,>=0.7.0 # Apache-2.0
@@ -28 +27,0 @@ cassandra-driver!=3.6.0,>=2.1.4 # Apache-2.0
-pycrypto>=2.6 # Public Domain
@@ -30,3 +29,3 @@ couchdb>=0.8 # Apache-2.0
-os-testr>=0.7.0 # Apache-2.0
-astroid<1.4.0 # LGPLv2.1 # breaks pylint 1.4.4
-pylint==1.4.5 # GPLv2
+os-testr>=0.8.0 # Apache-2.0
+astroid<1.4.0 # LGPLv2.1 # breaks pylint 1.4.4
+pylint==1.4.5 # GPLv2
1
0
We high-spiritedly announce the release of:
nova 15.0.0: Cloud computing fabric controller
This release is part of the ocata release series.
Download the package from:
https://tarballs.openstack.org/nova/
For more details, please see below.
15.0.0
^^^^^^
Neutron is now the default configuration for new deployments.
The 15.0.0 release includes many new features and bug fixes. It is
difficult to cover all the changes that have been introduced. Please
at least read the upgrade section which describes the required actions
to upgrade your cloud from 14.0.0 (Newton) to 15.0.0 (Ocata).
That said, a few major changes are worth mentioning. This is not an
exhaustive list:
* The latest API microversion supported for Ocata is v2.42. Details
on REST API microversions added since the 14.0.0 Newton release can
be found in the REST API Version History page.
* The Nova FilterScheduler driver is now able to make scheduling
decisions based on the new Placement RESTful API endpoint that
becomes mandatory in Ocata. Accordingly, the compute nodes will
refuse to start if you do not amend the configuration to add the
"[placement]" section so they can provide their resource usage. For
the moment, only CPU, RAM and disk resource usage are verified by
the Placement API, but we plan to add more resource classes in the
next release. You will find further details in the features and
upgrade sections below, and the Placement API page.
* Ocata contains a lot of new CellsV2 functions, but not all of it
is fully ready for production. All deployments must set up their
existing nodes as a cell, with database connection and MQ
transport_url config items matching that cell. In a subsequent
release, additional cells will be fully supported, as will a
migration path for CellsV1 users. By default, an Ocata deployment
now needs to configure at least one new "Cell V2" (not to be
confused with the first version of cells). In Newton, it was
possible to deploy a single cell V2 and schedule on it but this was
optional. Now in Ocata, single CellsV2 deployments are mandatory.
More details to be found when reading the release notes below.
* There is a new nova-status command that gives operators a better
view of their cloud. In particular, a new subcommand called
"upgrade" allows operators to run a pre-flight check on their
deployment before upgrading. This helps them to proactively identify
potential upgrade issues that could occur.
(http://docs.openstack.org/developer/nova/api_microversion_history.h
tml) (http://docs.openstack.org/developer/nova/placement.html)
New Features
************
* Updates the network metadata that is passed to configdrive by the
Ironic virt driver. The metadata now includes network information
about port groups and their associated ports. It will be used to
configure port groups on the baremetal instance side.
* Adding aarch64 to the list of supported architectures for NUMA and
hugepage features. This requires libvirt>=1.2.7 for NUMA,
libvirt>=1.2.8 for hugepage and qemu v2.1.0 for both.
* OSProfiler support was added. This cross-project profiling library
allows to trace various OpenStack requests through all OpenStack
services that support it. To initiate OpenStack request tracing
*--profile <HMAC_KEY>* option needs to be added to the CLI command.
This key needs to present one of the secret keys defined in
nova.conf configuration file with *hmac_keys* option under the
*[profiler]* configuration section. To enable or disable Nova
profiling the appropriate *enabled* option under the same section
needs to be set either to *True* or *False*. By default Nova will
trace all API and RPC requests, but there is an opportunity to trace
DB requests as well. For this purpose *trace_sqlalchemy* option
needs to be set to *True*. As a prerequisite OSProfiler library and
its storage backend needs to be installed to the environment. If so
(and if profiling is enabled in nova.conf) the trace can be
generated via following command, for instance - *$ nova --profile
SECRET_KEY boot --image <image> --flavor <flavor> <name>*. At the
end of output there will be message with <trace_id>, and to plot
nice HTML graphs the following command should be used - *$
osprofiler trace show <trace_id> --html --out result.html*
* The following versioned swap volume notifications have been added
in the compute manager:
* instance.volume_swap.start
* instance.volume_swap.end
* instance.volume_swap.error
* Support for archiving all deleted rows from the database has been
added to the "nova-manage db archive_deleted_rows" command. The "--
until-complete" option will continuously run the process until no
more rows are available for archiving.
* Virtuozzo hypervisor now supports ephemeral disks for containers.
* Support versioned notifications for flavor operations like create,
delete, update access and update extra_specs.
* The Hyper-V driver now supports the following quota flavor extra
specs, allowing to specify IO limits applied for each of the
instance local disks, individually.
* quota:disk_total_bytes_sec
* quota:disk_total_iops_sec - those are normalized IOPS, thus each
IO request is accounted for as 1 normalized IO if the size of the
request is less than or equal to a predefined base size (8KB).
Also, the following Cinder front-end QoS specs are now supported for
SMB Cinder backends:
* total_bytes_sec
* total_iops_sec - normalized IOPS
* The Hyper-V driver now uses os-brick for volume related
operations, introducing the following new features:
* Attaching volumes over fibre channel on a passthrough basis.
* Improved iSCSI MPIO support, by connecting to multiple iSCSI
targets/portals when available and allowing using a predefined
list of initiator HBAs.
* Adds trigger crash dump support to ironic virt driver. This
feature requires the Ironic service to support API version 1.29 or
later. It also requires python-ironicclient >= 1.11.0.
* Adds soft reboot support to Ironic virt driver. If hardware driver
in Ironic doesn't support soft reboot, hard reboot is tried. This
feature requires the Ironic service to support API version 1.27 or
later. It also requires python-ironicclient >= 1.10.0.
* Adds soft power off support to Ironic virt driver. This feature
requires the Ironic service to support API version 1.27 or later. It
also requires python-ironicclient >= 1.10.0.
* Virtuozzo hypervisor now supports libvirt callback to set admin
password. Requires libvirt>=2.0.0.
* The XenServer compute driver now supports hot-plugging virtual
network interfaces.
* The same policy rule (os_compute_api:os-server-groups) was being
used for all actions (show, index, delete, create) for server_groups
REST APIs. It was thus impossible to provide different RBAC for
specific actions based on roles. To address this changes were made
to have separate policy rules for each action. The original rule
(os_compute_api:os-server-groups) is left unchanged for backward
compatibility.
* The libvirt driver now has a "live_migration_scheme" configuration
option which should be used where the "live_migration_uri" would
previously have been configured with non-default scheme.
* The nova Hyper-V driver can now plug OVS VIFs. This means that
neutron-ovs-agent can be used as an L2 agent instead of neutron-
hyperv-agent. In order to plug OVS VIFs, the configuration option
"vswitch_name" from the "hyperv" section must be set to the vSwitch
which has the OVS extension enabled. Hot-plugging is only supported
on Windows / Hyper-V Server 2016 + Generation 2 VMs. Older Hyper-V
versions only support attaching vNICs while the VM is turned off.
* The nova Hyper-V driver now supports adding PCI passthrough
devices to Hyper-V instances (discrete device assignment). This
feature has been introduced in Windows / Hyper-V Server 2016 and
offers the possibility to attach some of the host's PCI devices
(e.g.: GPU devices) directly to Hyper-V instances. In order to
benefit from this feature, Hyper-V compute nodes must support SR-IOV
and must have assignable PCI devices. This can easily be checked by
running the following powershell commands:
Start-BitsTransfer https://raw.githubusercontent.com/Microsoft/Virtualization-Documentation/ma…
.\survey-dda.ps1
The script above will print a list of assignable PCI devices
available on the host, and if the host supports SR-IOV.
If the host supports this feature and it has at least an assignable
PCI device, the host must be configured to allow those PCI devices
to be assigned to VMs. For information on how to do this, follow
this guide [1].
After the compute nodes have been configured, the nova-api, nova-
scheduler, and the nova-compute services will have to be configured
next [2].
[1] https://blogs.technet.microsoft.com/heyscriptingguy/2016/07/14
/passing-through-devices-to-hyper-v-vms-by-using-discrete-device-
assignment/ [2] http://docs.openstack.org/admin-guide/compute-pci-
passthrough.html
* Added boot order support in the Hyper-V driver. The HyperVDriver
can now set the requested boot order for instances that are
Generation 2 VMs (the given image has the property
"hw_machine_type=hyperv- gen2"). For Generation 1 VMs, the spawned
VM's boot order is changed only if the given image is an ISO,
booting from ISO first.
* The nova Hyper-V driver now supports symmetric NUMA topologies.
This means that all the NUMA nodes in the NUMA topology must have
the same amount of vCPUs and memory. It can easily be requested by
having the flavor extra_spec "hw:numa_nodes", or the image property
"hw_numa_nodes". An instance with NUMA topology cannot have dynamic
memory enabled. Thus, if an instance requires a NUMA topology, it
will be spawned without dynamic memory, regardless of the value set
in the "dynamic_memory_ratio" config option in the compute node's
"nova.conf" file. In order to benefit from this feature, the host's
NUMA spanning must be disabled. Hyper-V does not guarantee CPU
pinning, thus, the nova Hyper-V driver will not spawn instances with
the flavor extra_spec "hw:cpu_policy" or image property
"hw_cpu_policy" set to "dedicated".
* Added support for Hyper-V VMs with UEFI Secure Boot enabled. In
order to create such VMs, there are a couple of things to consider:
* Images should be prepared for Generation 2 VMs. The image
property "hw_machine_type=hyperv-gen2" is mandatory.
* The guest OS type must be specified in order to properly spawn
the VMs. It can be specifed through the image property "os_type",
and the acceptable values are "windows" or "linux".
* The UEFI Secure Boot feature can be requested through the image
property "os_secure_boot" (acceptable values: "disabled",
"optional", "required") or flavor extra spec "os:secure_boot"
(acceptable values: "disabled", "required"). The flavor extra spec
will take precedence. If the image property and the flavor extra
spec values are conflicting, then an exception is raised.
* This feature is supported on Windows / Hyper-V Server 2012 R2
for Windows guests, and Windows / Hyper-V Server 2016 for both
Windows and Linux guests.
* Encryption provider constants have been introduced detailing the
supported encryption formats such as LUKs along with their
associated in-tree provider implementations. These constants should
now be used to identify an encryption provider implementation for a
given encryption format.
* Adds serial console support to Ironic driver. Nova now supports
serial console to Ironic bare metals for Ironic "socat" console
driver. In order to use this feature, serial console must be
configured in Nova and the Ironic "socat" console driver must be
used and configured in Ironic. Ironic serial console configuration
is documented in
http://docs.openstack.org/developer/ironic/deploy/console.html.
* Live migration is supported for both Virtuozzo containers and
virtual machines when using virt_type=parallels.
* The following legacy notifications have been transformed to a new
versioned payload:
* aggregate.create
* aggregate.delete
* instance.create
* instance.finish_resize
* instance.power_off
* instance.resume
* instance.shelve_offload
* instance.shutdown
* instance.snapshot
* instance.unpause
* instance.unshelve
Every versioned notification has a sample file stored under
doc/notification_samples directory. Consult
http://docs.openstack.org/developer/nova/notifications.html for more
information.
* A new "nova-status upgrade check" CLI is provided for checking the
readiness of a deployment when preparing to upgrade to the latest
release. The tool is written to handle both fresh installs and
upgrades from an earlier release, for example upgrading from the
14.0.3 Newton release. There can be multiple checks performed with
varying degrees of success. More details on the command and how to
interpret results are in the nova-status man page.
(http://docs.openstack.org/developer/nova/man/nova-status.html)
* All deployments will function as a single-cell environment.
Multiple v2 cells are technically possible, but should only be used
for testing as many other things will not work across cell
boundaries yet. For details on cells v2 and the setup required for
Nova with cells v2, see the cells documentation. [1]
[1] http://docs.openstack.org/developer/nova/cells.html
* Added microversion v2.40 which introduces pagination support for
usage with the help of new optional parameters 'limit' and 'marker'.
If 'limit' isn't provided, it will default to the configurable max
limit which is currently 1000.
/os-simple-tenant-usage?limit={limit}&marker={instance_uuid}
/os-simple-tenant-usage/{tenant}?limit={limit}&marker={instance_uuid}
Older microversions will not accept these new paging query
parameters, but they will start to silently limit by the max limit
to encourage the adoption of this new microversion, and circumvent
the existing possibility DoS-like usage requests on systems with
thousands of instances.
* Enhance pci.passthrough_whitelist to support regular expression
syntax. The 'address' field can be regular expression syntax. The
old pci.passthrough_whitelist, glob sytnax, is still valid config.
* A new Placement API microversion 1.3 is added with support for
filtering the list of resource providers to include only those
resource providers which are members of any of the aggregates listed
by uuid in the *member_of* query parameter. The parameter is used
when making a *GET /resource_providers* request. The value of the
parameter uses the *in:* syntax to provide a list of aggregate uuids
as follows:
/resource_providers?member_of=in:09c931b0-c0d7-4e80-8e01-9e6511db8259,f8ab4fa2-804f-402e-b675-7918bd04b173
If other filtering query parameters are present, the results are a
boolean AND of all the filters.
* A new Placement API microversion 1.4 is added. Users may now query
the Placement REST API for resource providers that have the ability
to meet a set of requested resource amounts. The *GET
/resource_providers* API call can have a "resources" query string
parameter supplied that indicates the requested amounts of various
resources that a provider must have the capacity to serve. The
"resources" query string parameter takes the form:
"?resources=$RESOURCE_CLASS_NAME:$AMOUNT,$RESOURCE_CLASS_NAME:$AMOU
NT"
For instance, if the user wishes to see resource providers that can
service a request for 2 vCPUs, 1024 MB of RAM and 50 GB of disk
space, the user can issue a request of:
``GET /resource_providers?resources=VCPU:2,MEMORY_MB:1024,DISK_GB:50``
The placement API is only available to admin users.
* A new administrator-only resource endpoint was added to the
OpenStack Placement REST API for managing custom resource classes.
Custom resource classes are specific to a deployment and represent
types of quantitative resources that are not interoperable between
OpenStack clouds. See the Placement REST API Version History
documentation for usage details.
(http://docs.openstack.org/developer/nova/placement.html#id2)
* nova-scheduler process is now calling the placement API in order
to get a list of valid destinations before calling the filters. That
works only if all your compute nodes are fully upgraded to Ocata. If
some nodes are not upgraded, the scheduler will still lookup from
the DB instead which is less performant.
* A new 2.41 microversion was added to the Compute API. Users
specifying this microversion will now see the 'uuid' attribute of
aggregates when calling the *os-aggregates* REST API endpoint.
* As new hosts are added to Nova, the *nova-manage cell_v2
discover_hosts* command must be run in order to map them into their
cell. For deployments with proper automation, this is a trivial
extra step in that process. However, for smaller or non-automated
deployments, there is a new configuration variable for the scheduler
process which will perform this discovery periodically. By setting
*scheduler.discover_hosts_in_cells_interval* to a positive value,
the scheduler will handle this for you. Note that this process
involves listing all hosts in all cells, and is likely to be too
heavyweight for large deployments to run all the time.
* VLAN tags associated with instance network interfaces are now
exposed via the metadata API and instance config drives and can be
consumed by the instance. This is an extension of the device tagging
mechanism added in past releases. This is useful for instances
utilizing SR-IOV physical functions (PFs). The VLAN configuration
for the guest's virtual interfaces associated with these devices
cannot be configured inside the guest OS from the host, but
nonetheless must be configured with the VLAN tags of the device to
ensure packet delivery. This feature makes this possible.
Note: VLAN tags are currently only supported via the Libvirt
driver.
* Added support for Keystone middleware feature where if service
token is sent along with the user token, then it will ignore the
expiration of user token. This helps deal with issues of user tokens
expiring during long running operations, such as live-migration
where nova tries to access Cinder and Neutron at the end of the
operation using the user token that has expired. In order to use
this functionality a service user needs to be created. Add service
user configurations in "nova.conf" under "service_user" group and
set "send_service_user_token" flag to "True". The minimum Keytone
API version 3.8 and Keystone middleware version 4.12.0 is required
to use this functionality. This only currently works with Nova -
Cinder and Nova - Neutron API interactions.
* The vendordata metadata system now caches boot time roles. Some
external vendordata services want to provide metadata based on the
role of the user who started the instance. It would be confusing if
the metadata returned changed later if the role of the user changed,
so we cache the boot time roles and then pass those to the external
vendordata service.
* The vendordata metadata system now supports a hard failure mode.
This can be enabled using the "api.vendordata_dynamic_failure_fatal"
configuration option. When enabled, an instance will fail to start
if the instance cannot fetch dynamic vendordata.
* The nova-manage online_data_migrations command now prints a
tabular summary of completed and remaining records. The goal here is
to get all your numbers to zero. The previous execution return code
behavior is retained for scripting.
* When using libvirt driver, vrouter VIFs (OpenContrail) now
supports multiqueue mode, which allows to scale network performance
across number of vCPUs. To use this feature one needs to create
instance with more than 1 vCPU from an image with
"hw_vif_multiqueue_enabled" property set to "true".
* A list of valid vif models is extended for Virtuozzo hypervisor
(virt_type=parallels) with VIRTIO, RTL8139 and E1000 models.
Known Issues
************
* Flavor.projects (access) will not be present in the instance
versioned notifications since notifications currently do not lazy-
load fields. This limitation is being tracked with bug 1653221.
(https://bugs.launchpad.net/nova/+bug/1653221)
* Ironic nodes that were deleted from ironic's database during
Newton may result in orphaned resource providers causing incorrect
scheduling decisions, leading to a reschedule. If this happens, the
orphaned resource providers will need to be identified and removed.
See also https://bugs.launchpad.net/nova/+bug/1661258
* The live-migration progress timeout controlled by the
configuration option "[libvirt]/live_migration_progress_timeout" has
been discovered to frequently cause live-migrations to fail with a
progress timeout error, even though the live-migration is still
making good progress. To minimize problems caused by these checks we
have changed the default to 0, which means do not trigger a timeout.
To modify when a live-migration will fail with a timeout error,
please now look at "[libvirt]/live_migration_completion_timeout" and
"[libvirt]/live_migration_downtime".
* When generating Libvirt XML to attach network interfaces for the
*tap*, *ivs*, *iovisor*, *midonet*, and *vrouter* virtual interface
types Nova previously generated an empty path attribute to the
script element (*<script path=''/>*) of the interface.
As of Libvirt 1.3.3 (commit) and later Libvirt no longer accepts an
empty path attribute to the script element of the interface. Notably
this includes Libvirt 2.0.0 as provided with RHEL 7.3 and CentOS
7.3-1611. The creation of virtual machines with offending interface
definitions on a host with Libvirt 1.3.3 or later will result in an
error "libvirtError: Cannot find '' in path: No such file or
directory".
Additionally, where virtual machines already exist that were created
using earlier versions of Libvirt interactions with these virtual
machines via Nova or other utilities (e.g. *virsh*) may result in
similar errors.
To mitigate this issue Nova no longer generates an empty path
attribute to the script element when defining an interface. This
resolves the issue with regards to virtual machine creation. To
resolve the issue with regards to existing virtual machines a change
to Libvirt is required, this is being tracked in Bugzilla 1412834
(https://libvirt.org/git/?p=libvirt.git;a=commit;h=9c17d665fdc5f0a
b74500a14c30627014c11b2c0)
(https://bugzilla.redhat.com/show_bug.cgi?id=1412834)
* Once fully upgraded, if you create multiple real cells with hosts,
the scheduler will utilize them, but those instances will likely be
unusable because not all API functions are cells-aware yet.
* Listing instances across multiple cells with a sort order will
result in barber-pole sorting, striped across the cell boundaries.
Upgrade Notes
*************
* API configuration options have been moved to the 'api' group. They
should no longer be included in the 'DEFAULT' group. Options
affected by this change:
* "auth_strategy"
* "use_forwarded_for"
* "config_drive_skip_versions"
* "vendordata_providers"
* "vendordata_dynamic_targets"
* "vendordata_dynamic_ssl_certfile"
* "vendordata_dynamic_connect_timeout"
* "vendordata_dynamic_read_timeout"
* "metadata_cache_expiration"
* "vendordata_jsonfile_path"
* "max_limit" (was "osapi_max_limit")
* "compute_link_prefix" (was "osapi_compute_link_prefix")
* "glance_link_prefix" (was "osapi_glance_link_prefix")
* "allow_instance_snapshots"
* "hide_server_address_states" (was
"osapi_hide_server_address_states")
* "fping_path"
* "use_neutron_default_nets"
* "neutron_default_tenant_id"
* "enable_instance_password"
* The "console_token_ttl" configuration option has been moved to the
"consoleauth" group and renamed "token_ttl". It should no longer be
included in the "DEFAULT" group.
* To allow access to the versions REST API from diverse origins,
CORS support has been added to the 'oscomputeversions' pipeline in
'/etc/nova/api-paste.ini'. Existing deployments that wish to enable
support should add the 'cors' filter at the start of the
'oscomputeversions' pipeline.
* The ivs-ctl command has been added to the rootwrap filters in
compute.filters. Deployments needing support for BigSwitch no longer
need to add the filters manually nor include network.filters at
installation.
* All pci configuration options have been added to the 'pci' group.
They should no longer be included in the 'DEFAULT' group. These
options are as below:
* pci_alias (now pci.alias)
* pci_passthrough_whitelist (now pci.passthrough_whitelist)
* All general scheduler configuration options have been added to the
"scheduler" group.
* "scheduler_driver" (now "driver")
* "scheduler_host_manager" (now "host_manager")
* "scheduler_driver_task_period" (now "periodic_task_interval")
* "scheduler_max_attempts" (now "max_attempts")
In addition, all filter scheduler configuration options have been
added to the "filter_scheduler" group.
* "scheduler_host_subset_size" (now "host_subset_size")
* "scheduler_max_instances_per_host" (now
"max_instances_per_host")
* "scheduler_tracks_instance_changes" (now
"track_instance_changes")
* "scheduler_available_filters" (now "available_filters")
* "scheduler_default_filters" (now "enabled_filters")
* "baremetal_scheduler_default_filters" (now
"baremetal_enabled_filters")
* "scheduler_use_baremetal_filters" (now "use_baremetal_filters")
* "scheduler_weight_classes" (now "weight_classes")
* "ram_weight_multiplier"
* "disk_weight_multipler"
* "io_ops_weight_multipler"
* "soft_affinity_weight_multiplier"
* "soft_anti_affinity_weight_multiplier"
* "isolated_images"
* "isolated_hosts"
* "restrict_isolated_hosts_to_isolated_images"
* "aggregate_image_properties_isolation_namespace"
* "aggregate_image_properties_isolation_separator"
These options should no longer be included in the "DEFAULT" group.
* The filter and sort query parameters for server list API are now
limited according to whitelists. The whitelists are different for
admin and non-admin users.
**Filtering**
The whitelist for REST API filters for admin users:
* access_ip_v4
* access_ip_v6
* all_tenants
* auto_disk_config
* availability_zone
* config_drive
* changes-since
* created_at
* deleted
* description
* display_description
* display_name
* flavor
* host
* hostname
* image
* image_ref
* ip
* ip6
* kernel_id
* key_name
* launch_index
* launched_at
* limit
* locked_by
* marker
* name
* node
* not-tags (available in 2.26+)
* not-tags-any (available in 2.26+)
* power_state
* progress
* project_id
* ramdisk_id
* reservation_id
* root_device_name
* sort_dir
* sort_key
* status
* tags (available in 2.26+)
* tags-any (available in 2.26+)
* task_state
* tenant_id
* terminated_at
* user_id
* uuid
* vm_state
For non-admin users, there is a whitelist for filters already. That
whitelist is unchanged.
**Sorting**
The whitelist for sort keys for admin users:
* access_ip_v4
* access_ip_v6
* auto_disk_config
* availability_zone
* config_drive
* created_at
* display_description
* display_name
* host
* hostname
* image_ref
* instance_type_id
* kernel_id
* key_name
* launch_index
* launched_at
* locked_by
* node
* power_state
* progress
* project_id
* ramdisk_id
* root_device_name
* task_state
* terminated_at
* updated_at
* user_id
* uuid
* vm_state
For non-admin users, the sort key "host" and "node" will be
excluded.
**Other**
*HTTP Bad Request 400* will be returned for the filters/sort keys
which are on joined tables or internal data model attributes. They
would previously cause a *HTTP Server Internal Error 500*, namely:
* block_device_mapping
* info_cache
* metadata
* pci_devices
* security_groups
* services
* system_metadata
In order to maintain backward compatibility, filter and sort
parameters which are not mapped to the REST API *servers* resource
representation are ignored.
* The three configuration options "cpu_allocation_ratio",
"ram_allocation_ratio" and "disk_allocation_ratio" for the nova
compute are now checked against negative values. If any of these
three options is set to negative value then nova compute service
will fail to start.
* The default value for the "[xenserver]/vif_driver" configuration
option has been changed to
"nova.virt.xenapi.vif.XenAPIOpenVswitchDriver" to match the default
configuration of "[DEFAULT]/use_neutron=True".
* Support for **hw_watchdog_action** as a flavor extra spec has been
removed. The valid flavor extra spec is **hw:watchdog_action** and
the image property, which takes precedence, is
**hw_watchdog_action**.
* The Ironic driver now requires python-ironicclient>=1.9.0, and
requires Ironic service to support API version 1.28 or higher. As
usual, Ironic should be upgraded before Nova for a smooth upgrade
process.
* As of Ocata, the minimum version of VMware vCenter that nova
compute will interoperate with will be 5.1.0. Deployments using
older versions of vCenter should upgrade. Running with vCenter
version less than 5.5.0 is also now deprecated and 5.5.0 will become
the minimum version in the 16.0.0 Pike release of Nova.
* "console_public_hostname" console options under the "DEFAULT"
group have been moved to the "xenserver" group.
* Following Notifications related configuration options have been
moved from the "DEFAULT" group to the "notifications" group:
* "notify_on_state_change"
* "notify_on_api_faults" (was "notify_api_faults")
* "default_level" (was "default_notification_level")
* "default_publisher_id"
* "notification_format"
* When making connections to Ceph-backed volumes via the Libvirt
driver, the auth values (rbd_user, rbd_secret_uuid) are now pulled
from the backing cinder.conf rather than nova.conf. The nova.conf
values are only used if set and the cinder.conf values are not set,
but this fallback support is considered accidental and will be
removed in the Nova 16.0.0 Pike release. See the Ceph documentation
for configuring Cinder for RBD auth.
(http://docs.ceph.com/docs/master/rbd/rbd-openstack/#configuring-
cinder)
* Nova no longer supports the deprecated Cinder v1 API.
* Ocata requires that your deployment have created the cell and host
mappings in Newton. If you have not done this, Ocata's *db sync*
command will fail. Small deployments will want to run *nova-manage
cell_v2 simple_cell_setup* on Newton before upgrading. Operators
must create a new database for cell0 before running *cell_v2
simple_cell_setup*. The simple cell setup command expects the name
of the cell0 database to be *<main database name>_cell0* as it will
create a cell mapping for cell0 based on the main database
connection, sync the cell0 database, and associate existing hosts
and instances with the single cell.
* The nova-network service was deprecated in the 14.0.0 Newton
release. In the 15.0.0 Ocata release, nova-network will only work in
a Cells v1 deployment. The Neutron networking service is now the
default configuration for new deployments based on the "use_neutron"
configuration option.
* Most quota options have been moved into their own configuration
group. The exception is quota_networks as it is an API flag not a
quota flag. These options are as below:
* "quota_instances" (now "instances")
* "quota_cores" (now "cores")
* "quota_ram" (now "ram")
* "quota_floating_ips" (now "floating_ips")
* "quota_fixed_ips" (now "fixed_ips")
* "quota_metadata_items" (now "metadata_items")
* "quota_injected_files" (now "injected_files")
* "quota_injected_file_content_bytes" (now
"injected_file_content_bytes")
* "quota_injected_file_path_length" (now
"injected_file_path_length")
* "quota_security_groups" (now "security_groups")
* "quota_security_group_rules" (now "security_group_rules")
* "quota_key_pairs" (now "key_pairs")
* "quota_server_groups" (now "server_groups")
* "quota_server_group_members" (now "server_group_members")
* "reservation_expire"
* "until_refresh"
* "max_age"
* "quota_driver" (now "driver")
* The nova-all binary to launch all services has been removed after
a deprecation period. It was only intended for testing purposes and
not production use. Please use the individual Nova binaries to
launch services.
* The "compute_stats_class" configuration option was deprecated
since the 13.0.0 Mitaka release and has been removed. Compute
statistics are now always generated from the
"nova.compute.stats.Stats" class within Nova.
* "use_glance_v1" option was removed due to plans to remove Glance
V1 support during Ocata development.
* The deprecated S3 image backend has been removed.
* XenServer users must now set the value of
xenserver.ovs_integration_bridge before they can use the system.
Previously this had a default of "xapi1", which has now been
removed, because it is dependent on the environment. The xapi<n> are
internal bridges that are incrementally defined from zero and
"xapi1" may not be the correct bridge. Operators should set this
config value to the integration bridge used between all guests and
the compute host in their environment.
* The "scheduler_json_config_location" configuration option has not
been used since the 13.0.0 Mitaka release and has been removed.
* Configuration options related to the Barbican were deprecated and
now completly removed from "barbican" group. These options are
available in the Castellan library. Following are the affected
options:
* "barbican.catalog_info"
* "barbican.endpoint_template"
* "barbican.os_region_name"
* "driver" configuration option has been removed from "cells" group.
There is only one possible driver for cells (CellsRPCDriver), which
makes this option redundant.
* The deprecated "cert_topic" configuration option has been removed.
* "fatal_exception_format_errors" configuration option has been
removed, as it was only used for internal testing.
* Ironic configuration options that were used for a deprecated
Identity v2 API have been removed from "ironic" group. Below is the
detailed list of removed options:
* admin_usernale
* admin_password
* admin_url
* admin_tenant_name
* The concept that "service manager" were replaceable components was
deprecated in Mitaka, so following config options are removed.
* "metadata_manager"
* "compute_manager"
* "console_manager"
* "consoleauth_manager"
* "cert_manager"
* "scheduler_manager"
* "conductor.manager"
* In mitaka, an online migration was added to migrate older SRIOV
parent device information from extra_info to a new column. Since two
releases have gone out with that migration, it is removed in Ocata
and operators are expetected to have run it as part of either of the
previous two releases, if applicable.
* Since the Placement service is now mandatory in Ocata, you need to
deploy it and amend your compute node configuration with correct
placement instructions before restarting nova-compute or the compute
node will refuse to start.
* If by Newton (14.0.0), you don't use any of the CoreFilter,
RamFilter or DiskFilter, then please modify all your compute node's
configuration by amending either "cpu_allocation_ratio" (if you
don't use CoreFilter) or "ram_allocation_ratio" (if you don't use
RamFilter) or "disk_allocation_ratio" (if you don't use DiskFilter)
by putting a 9999.0 value for the ratio before upgrading the nova-
scheduler to Ocata.
* The ''use_local'' option, which made it possible to perform nova-
conductor operations locally, has been removed. This legacy mode was
introduced to bridge a gap during the transition to the conductor
service. It no longer represents a reasonable alternative for
deployers.
* The deprecated compute config option "snapshot_name_template" has
been removed. It is not used anywhere and has no effect on any code,
so there is no impact.
* The deprecated config option "compute_available_monitors" has been
removed from the "DEFAULT" config section. Use setuptools entry
points to list available monitor plugins.
* The following deprecated nova-manage commands have been removed:
* "nova-manage account scrub"
* "nova-manage fixed *"
* "nova-manage project scrub"
* "nova-manage vpn *"
* The following deprecated nova-manage commands have been removed:
* nova-manage vm list
* As of Ocata, the minimum version of Virtuozzo that nova compute
will interoperate with will be 7.0.0. Deployments using older
versions of Virtuozzo should upgrade.
* XenServer plugins have been renamed to include a '.py' extension.
Code has been included to handle plugins with and without the
extension, but this will be removed in the next release. The plugins
with the extension should be deployed on all compute nodes to
mitigate any upgrade issues.
Deprecation Notes
*****************
* Implemented microversion v2.39 that deprecates *image-metadata*
proxy API, removes image metadata quota checks for 'createImage' and
'createBackup' actions. After this version Glance configuration
option *image_property_quota* should be used to control the quota of
image metadatas. Also, removes the *maxImageMeta* field from *os-
limits* API response.
* The config options "multi_instance_display_name_template" and
"null_kernel" in the "DEFAULT" group are now deprecated and may be
removed as early as the 16.0.0 release. These options are deprecated
to keep API behaviour consistent across deployments.
* The "console_driver" config opt in the "DEFAULT" group has been
deprecated and will be removed in a future release. This option no
longer does anything. Previously this option had only two valid, in-
tree values: "nova.console.xvp.XVPConsoleProxy" and
"nova.console.fake.FakeConsoleProxy". The latter of these was only
used in tests and has since been replaced.
* "[libvirt]/live_migration_progress_timeout" has been deprecated as
this feature has been found not to work. See bug 1644248 for more
details.
* The following options, found in "DEFAULT", were only used for
configuring nova-network and are, like nova-network itself, now
deprecated.
* "flat_network_bridge"
* "flat_network_dns"
* "flat_interface"
* "vlan_interface"
* "vlan_start"
* "num_networks"
* "vpn_ip"
* "vpn_start"
* "network_size"
* "fixed_range_v6"
* "gateway"
* "gateway_v6"
* "cnt_vpn_clients"
* "fixed_ip_disassociate_timeout"
* "create_unique_mac_address_attempts"
* "teardown_unused_network_gateway"
* "l3_lib"
* "network_driver"
* "multi_host"
* "force_dhcp_release"
* "update_dns_entries"
* "dns_update_periodic_interval"
* "dhcp_domain"
* "use_neutron"
* "auto_assign_floating_ip"
* "floating_ip_dns_manager"
* "instance_dns_manager"
* "instance_dns_domain"
The following options, found in "quota", are also deprecated.
* "floating_ips"
* "fixed_ips"
* "security_groups"
* "security_group_rules"
* The "remap_vbd_dev" option is deprecated and will be removed in a
future release.
* The "topic" config options are now deprecated and will be removed
in the next release. The deprecated options are as below:
* cells.topic
* compute_topic
* conductor.topic
* console_topic
* consoleauth_topic
* network_topic
* scheduler_topic
* Deprecate the VMware driver's "wsdl_location" config option. This
option pointed to the location of the WSDL files required when using
vCenter versions earlier than 5.1. Since the minimum supported
version of vCenter is 5.1, there is no longer a need for this option
and its value is ignored.
* The "[xenserver]/vif_driver" configuration option is deprecated
for removal. The "XenAPIOpenVswitchDriver" vif driver is used for
Neutron and the "XenAPIBridgeDriver" vif driver is used for nova-
network, which itself is deprecated. In the future, the
"use_neutron" configuration option will be used to determine which
vif driver to load.
* The "live_migration_uri" option in the [libvirt] configuration
section is deprecated, and will be removed in a future release. The
"live_migration_scheme" should be used to change scheme used for
live migration, and "live_migration_inbound_addr" should be used to
change target URI.
* The XenServer driver provides support for downloading images via
torrents. This feature has not been tested, and it's not clear
whether there's a clear use case for such a feature. As a result,
this feature is now deprecated as are the following config options.
* "torrent_base_url"
* "torrent_seed_chance"
* "torrent_seed_duration"
* "torrent_max_last_accessed"
* "torrent_listen_port_start"
* "torrent_listen_port_end"
* "torrent_download_stall_cutoff"
* "torrent_max_seeder_processes_per_host"
* The direct use of the encryption provider classes such as
nova.volume.encryptors.luks.LuksEncryptor is now deprecated and will
be blocked in the Pike release of Nova. The use of out of tree
encryption provider classes is also deprecated and will be blocked
in the Pike release of Nova.
* Nova network was deprecated in Newton and is no longer supported
for regular deployments in Ocata. The network service binary will
now refuse to start, except in the special case of CellsV1 where it
is still required to function.
Security Issues
***************
* OSProfiler support requires passing of trace information between
various OpenStack services. This information is securely signed by
one of HMAC keys, defined in nova.conf configuration file. To allow
cross-project tracing user should use the key, that is common among
all OpenStack services he or she wants to trace.
Bug Fixes
*********
* Prior to Newton, volumes encrypted by the CryptsetupEncryptor and
LuksEncryptor encryption providers used a mangled passphrase
stripped of leading zeros per hexadecimal. When opening encrypted
volumes, LuksEncryptor now attempts to replace these mangled
passphrases if detected while CryptsetupEncryptor simply uses the
mangled passphrase.
* Fixes bug 1662699 which was a regression in the v2.1 API from the
"block_device_mapping_v2.boot_index" validation that was performed
in the legacy v2 API. With this fix, requests to create a server
with "boot_index=None" will be treated as if "boot_index" was not
specified, which defaults to meaning a non-bootable block device.
(https://bugs.launchpad.net/nova/+bug/1662699)
* The Hyper-V driver no longer accepts cold migrating instances to
the same host. Note that this does not apply to resizes, in which
case this is still allowed.
* The "nova-manage cell_v2 simple_cell_setup" command now creates
the default cell0 database connection using the "[database]"
connection configuration option rather than the "[api_database]"
connection. The cell0 database schema is the *main* database, i.e.
the *instances* table, rather than the *api* database schema. In
other words, the cell0 database would be called something like
"nova_cell0" rather than "nova_api_cell0".
* In the context of virtual device role tagging at server create
time, the 2.42 microversion restores the tag attribute to networks
and block_device_mapping_v2. A bug has caused the tag attribute to
no longer be accepted starting with version 2.33 for
block_device_mapping_v2 and starting with version 2.37 for networks.
In other words, block devices could only be tagged in version 2.32
and network interfaces between versions 2.32 and 2.36 inclusively.
Starting with 2.42, both network interfaces and block devices can be
tagged again.
* To make live-migration consistent with resize, confirm-resize and
revert-resize operations, the migration status is changed to 'error'
instead of 'failed' in case of live-migration failure. With this
change the periodic task '_cleanup_incomplete_migrations' is now
able to remove orphaned instance files from compute nodes in case of
live-migration failures. There is no impact since migration status
'error' and 'failed' refer to the same failed state.
* The nova metadata service will now pass a nove service token to
the external vendordata server. These options can be configured
using various Keystone-related options available in the
"vendordata_dynamic_auth" group. A new service token has been
created for this purpose. Previously, the requesting user's keystone
token was passed through to the external vendordata server if
available, otherwise no token is passed. This resolves issues with
scenarios such as cloud-init's use of the metadata server on first
boot to determine configuration information. Refer to the
blueprints at http://specs.openstack.org/openstack/nova-
specs/specs/ocata/approved/vendordata-reboot-ocata.html for more
information.
Other Notes
***********
* The Placement API can be set to connect to a specific keystone
endpoint interface using the "os_interface" option in the
"[placement]" section inside "nova.conf". This value is not required
but can be used if a non-default endpoint interface is desired for
connecting to the Placement service. By default, keystoneauth will
connect to the "public" endpoint.
Changes in nova 14.0.0.0rc1..15.0.0
-----------------------------------
babdb32 Deprecate xenserver.vif_driver config option and change default
ef0c679 Fix live migrate with XenServer
7d0c5998 Enable defaults for cell_v2 update_cell command
a3089b4 Cleanup some issues with CONF.placement.os_interface
b0530b7 Allow placement endpoint interface to be set
b257e5a allocations.consumer_id is not used in query.
18fb0a1 Skip test_stamp_pattern in cells v1 job
681e377 Remove straggling use of main db flavors in cellsv1 code
e818403 Add Cells V1 -> Cells V2 step-by-step example
8384c15 Edits for Cells V2 step-by-step examples
883d8e8 Prepare for using standard python tests
679d78a Default live_migration_progress_timeout to off
ff1925a Allow None for block_device_mapping_v2.boot_index
bf346ae Add an update_cell command to nova-manage
75fc059 Add step-by-step examples for Cells V2 setup
55f2230 Clarify the deployment of placement for cellsv1 users
ee09893 Update the upgrades part of devref
98733a6 Update UPPER_CONSTRAINTS_FILE for stable/ocata
3e9aacd Update .gitreview for stable/ocata
965fffc Delete a compute node's resource provider when node is deleted
887bcea Mark compute/placement REST API max microversions for Ocata
d6691d1 Add release note for filter/sort whitelist
e846c32 Clarify the language in the apache wsgi sample
c2e1133 Stop swap allocations being wrong due to MB vs GB
014b119 Clarify the [cells] config option help
d4502e1 Report reserved_host_disk_mb in GB not KB
cd29a4e Fix access_ip_v4/6 filters params for servers filter
f6a419a Fix typo in cells v2 ocata reno
21a04c8 doc: add upgrade notes to the placement devref
9fb375b Fix typo in help for discover_hosts_in_cells_interval
1bbecbd Fix the terminated_at field in the server query params schema
790313c Add release note for nova-status upgrade check CLI
9f1ffd6 Add prelude section for Ocata
e282187 Collected release notes for Ocata CellsV2
4f05f06 reno for notification-transformation-ocata
9eb7bce Allow scheduler to run cell host discovery periodically
a8aa093 doc: update the man page entry for nova-manage db sync
a3563ed doc: refer to the cell_v2 man pages from the cells v2 doc
9ca2a51 doc: add some detail to the map_cell0 man page
466769e Remove pre-cellsv2 short circuit in instance get
f09d112 Continue processing build requests even if one is gone already
8ba9277 Ensure build request exists before creating instance
03eced1 placement-api: fix ResourceProviderList query
a954bab nova-status: relax the resource providers check
826df45 Read instances from API cell for cells v1
193b584 Fix map_cell_and_hosts help
29f3d8b Fresh resource provider in RT must have generation 0
67aa277 libvirt: Limit destroying disks during cleanup to spawn
1848860 Ignore IOError when creating 'console.log'
dec7505 nova-manage docs: cell_v2 delete_cell
218d26c nova-manage docs: cell_v2 list_cells
fb7599d nova-manage docs: cell_v2 discover_hosts
94687a9 nova-manage docs: cell_v2 create_cell
4d5998f nova-manage docs: cell_v2 verify_instance
42b7df0 nova-manage docs: cell_v2 map_cell_and_hosts
e80e251 Fix tag attribute disappearing in 2.33 and 2.37
4660333 Scheduler calling the Placement API
d486315 Block starting compute unless placement conf is provided
cce20d1 Added instance.reboot.error to the legacy notifications
b2a4fcf Avoid redundant call to update_resource_stats from RT
070656a api-ref: Fix path parameters in os-hypervisors.inc
2fdab3b libvirt: fix vCPU usage reporing for LXC/QEMU guests
1a0778d Adding vlans field to Device tagging metadata
18a23b7 libvirt: expose virtual interfaces with vlans to metadata
2ace671 objects: vlan field to NetworkInterfaceMetadata object
3c2ce94 Move instance creation to conductor
a43a463 Updated from global requirements
6a914e8 Fix server group functional test by using all filters
9d6f9e9 Hyper-V PCI Passthrough
bcd584f Change exponential function to linear
6d8b58d Cache boot time roles for vendordata.
5ca61e4 Optionally make dynamic vendordata failures fatal.
1f53bfc Use a service account to make vendordata requests.
b1d575f libvirt: ephemeral disk support for virtuozzo containers
b1556c2 ironic: Add trigger crash dump support to ironic driver
f781409 Only warn about hostmappings during ocata upgrade
e5c41e5 nova-manage docs: cell_v2 map_instances
30ea0f8 nova-manage docs: cell_v2 map_cell0
919bee6 nova-manage docs: cell_v2 simple_cell_setup
df334b4 Add new configuration option live_migration_scheme
189a4a7 Fix race condition in instance.update sample test
9ed7826 libvirt: Use the mirror element to detect job completion
0195759 libvirt: Mock is_job_complete in test_driver
8d11cba PCI: Check pci_requests object is empty before passing to support_requests
cf02e51 Ironic: Add soft power off support to Ironic driver.
3421dde Add sort_key white list for server list/detail
747bc61 Trivial-fix: replace "json" with "yaml" in policy README
af08620 objects: add new field cpuset_reserved in NUMACell
4e3b2ab Make api_samples tests use simple cell environment
582321c conf: Deprecate 'console_driver'
8479529 libvirt: avoid generating script with empty path
81defe6 placement: minor refactor _allocate_for_instance()
78d439d placement: report client handle InventoryInUse
5555ecc Multicell support for instance listing
bff2030 scheduler: Don't modify RequestSpec.numa_topology
5ba6900 Fix and add some notes to the cells v2 first time setup doc
608ba01 Updated from global requirements
bc55e8e Amend the PlacementFixture
4dbc0dd Prevent compute crash on discovery failure
f3c774a Ironic: Add soft reboot support to ironic driver
67868cf os-vif: convert libvirt driver to use os-vif for fast path vhostuser
9385eaf Updated from global requirements
98936fb Add a PlacementFixture
cc5fde4 libvirt: make coherent logs when reboot success
58719f5 Add ComputeNodeList.get_all_by_uuids method
7d04c78 placement: create aggregate map in report client
c7b46c4 Support Ironic interface attach/detach in nova virt
8856ad3 Generate necessary network metadata for ironic port groups
b34809d Ensure we mark baremetal links as phy links
cf3ff76 os-vif-util: set vif_name for vhostuser ovs os-vif port
fe9bd52 Move migration_downtime_steps to libvirt/migration
539d381 libvirt: fix nova can't delete the instance with nvram
68456f4 Remove mox in libvirt destory tests
841916d Strict pattern match query parameters
0a7f3ce Raise InvalidInput exception
377f400 Fix Nova to allow using cinder v3 endpoint
8727770 [py35] Fixes to get more tempest tests working
7c66d41 api-ref: Fix a parameter in os-availability-zone.inc
ecc8de8 Integrate OSProfiler and Nova
7af405c Remove mox from unit/virt/libvirt/test_imagebackend.py (5)
6eda844 Enable virt.vmwareapi test cases on Python
7d67cdf Enable virt.test_virt_drivers.AbstractDriverTestCase on Python 3
d28ca27 Port compute.test_user_data.ServersControllerCreateTest to Python 3
2207dcf XenAPI: Fix vif plug problem during VM rescue/unrescue
161799e Handle oslo.serialization type error and binascii error
26db003 Remove invalid URL in gabbi tests
aa7b6eb nova-manage cell_v2 map_cell0 exit 0
134c19f Add query parameters white list for server list/detail
ce56fe4 nova-manage docs: add cells commands prep
2f721c9 Add --verbose option to discover_hosts command
5713e5c Add more details when test_create_delete_server_with_instance_update fails
209a42d Updated from global requirements
db79c53 Add some cellsv2 setup docs
5b44737 Fix the generated cell0 default database name
1c96759 rt: use a single ResourceTracker object instance
3e04a32 Add nova-manage cell_v2 delete_cell command
90cd8ac Add InstanceMappingList.get_by_cell_id
8677aca Create HostMappingList object
4bfc550 Add nova-manage cell_v2 list_cells command
f7e9f31 Add nova-manage cell_v2 create_cell command
86b361d libvirt: workaround findmnt behaviour change
8892be0 api-ref: Fix parameters whose values are 'null'
b5790dd Fix broken link of Doc
69f27a7 api-ref: Fix parameters and response in os-quota-sets.inc
e88c0bb Remove nova-manage image from man pages
3f0b023 Updated from global requirements
c78a86c Fixes to get all functional tests working on py35
9dd48cf [placement] Add a bit about extraction plans to placement_dev
88a456b [placement] Add an "Adding a Handler" section to placement_dev
4aae9d5 [placement] placement_dev info for testing and gabbi
2d0dfc6 [placement] placement_dev info for microversion handling
eb7c736 Updated from global requirements
c17772e placement: validate member_of values are uuids
4590308 Make metadata server know about cell mappings
a649311 Remove redundant arg check in nova-manage cell_v2 verify_instance
a5dc7f1 Expose a REST API for a specific list of RPs
a04ffdc copy pasta error
e0a8582 Set sysinfo_serial="none" in LibvirtDriverTestCase
584969a [py35] Fixes to get rally scenarios working
ac01ba5 Fix missing RP generation update
596e8de Add service_token for nova-neutron interaction
7b95b4d rt: explicitly pass compute node to _update()
d33a2b1 Make unit tests work with os-vif 1.4.0
9d8ed85 Updated from global requirements
d8d8138 libvirt: make live migration possible with Virtuozzo
112b462 Small improvements to placement.rst
a42de05 Better black list for py35 tests
f918281 Fix class type error in attach_interface() function
2195e4d Hyper-V: Adds vNUMA implementation
b8e1276 Don't bypass cellsv1 replication if cellsv2 maps are in place
07b6580 Adds Hyper-V OVS ViF driver
3e0daeb docs - Connect to placement service & retries
af17b95 Improve flavor sample in notification sample tests
5dedd0b xenapi: support the hotplug of a neutron port
e05f678 Update notification for flavor
9e54b29 Add service_token for nova-cinder interaction
938cbf1 Make allocate_for_instance take consistent args
2114958 XenAPI Remove useless files when use os-xenapi lib
062065c XenAPI Use os-xenapi lib for nova
bbf9b43 Make placement client keep trying to connect
5593d74 releasenotes: Add missing releasenote for encryption provider constants
cd82f8e Stop using mox stubs in test_attach_interfaces.py
8d8adac Remove mox from api/openstack/compute/test_floating_ip_dns.py
105c28f Remove mox in nova/tests/unit/compute/test_shelve.py (end)
b1eb954 Remove mox in unit/api/openstack/test_wsgi.py
816b1c9 Document testing process for zero downtime upgrade
9a85f15 Remove mox in nova/tests/unit/compute/test_shelve.py (2)
8d9b3d6 Notifications for flavor operations
0e1734b conf: Deprecate yet more nova-net options
115d322 conf: Resolve formatting issues with 'quota'
70730c0 [2/3]Replace six.iteritems() with .items()
d631ac0 Port xenapi test_vm_utils to Python 3
0e2b3ba Make the SingleCellSimple fixture a little more comprehensive
cf1d3f8 Fix non-parameterized service id in hypervisors sample tests
2f1245a Fix TypeError in _update_from_compute_node race
be2893e Trivial indentation fix
dda01c5 Add missing CLI commands in support-matrix.ini
dbbad4f tests: Replace use of CONF with monkey patching
e4ae7e9 correct misleading wording
5d3f0a6 Fix a typo in documents
28fe229 Don't translate exceptions w/ no message
5593049 Fix ksa mocking in test_cinderclient_unsupported_v1
aeecfe0 [placement] fix typo in call to create auth middleware
ea5d057 HTTP interface for resource providers by aggregates
03c2776 Return uuid attribute for aggregates
2c6fb02 Update docstring of _schema_validation_helper
29c6e08 api-ref: use the examples with paging links
6a6457b Port libvirt.test_vif to Python 3
83923ad Port libvirt.test_firewall to Python 3
de0eff4 Move quota options to a config group.
180e634 Handle Unauthorized exception in report client's safe_connect()
b6574ad Remove mox from unit/virt/libvirt/test_imagebackend.py (4)
cf6ac7a Remove mox from unit/virt/libvirt/test_imagebackend.py (3)
daf9e98 Remove mox from unit/virt/libvirt/test_imagebackend.py (2)
200666a Do not post allocations that are zero
58d068d Add aggregate notification related enum values
ce17c3d Transform aggregate.delete notification
8ee3e30 Transform aggregate.create notification
6198fc7 Added missing decorator for instance.create.error
6627de4 Enable Neutron by default
91f8a02 Port virt.libvirt.test_imagebackend to Python 3
95441ef move gate hooks to gate/
6977d4c Use JSON-Schema to validate query parameters for keypairs API
77ad8b8 Adds support for versioned schema validation for query parameters
ac22bda Remove mox from api/openstack/compute/test_extended_hypervisors.py
612134c Stop using mox in compute/test_server_actions.py
3da16fa Remove mox from unit/api/openstack/compute/test_cloudpipe.py
88609d2 Add support matrix for attach and detach interfaces
41b4e45 Make last remaining unit tests work with Neutron by default
a5a9713 Make test_metadata pass with CONF.use_neutron=True by default
b1b46c0 Make test_nova_manage pass with CONF.use_neutron=True by default
b3b9217 Stub out os_vif.unplug in libvirt instance destroy tests
9a949a7 Make test_attach_interfaces work with use_neutron=True by default
da9ea09 Make test_floating_ip* pass with CONF.use_neutron=True by default
55df51b Make several API unit tests pass with CONF.use_neutron=True by default
d1982bd Make test_server_usage work with CONF.use_neutron=True by default
cc75ca3 Make test_security_group_default_rules work with use_neutron=True by default
432556d Make test_tenant_networks pass with CONF.use_neutron=True by default
a507856 Make test_security_groups work with CONF.use_neutron=True by default
531d54e Make test_virtual_interfaces work with CONF.use_neutron=True by default
ee46f09 Make test_user_data and test_multiple_create work with use_neutron=True
6361be1 Make test_quota work with CONF.use_neutron=True by default
5b4758c Make test_compute pass with CONF.use_neutron=True by default
1278b1f api-ref: Fix parameters in os-server-groups.inc
d155365 Remove mox in test_block_device_mapping_v1.py
3c217ac placement: Do not save 0-valued inventory
98d9319 Add 'disabled' to WatchdogAction field
15e962b Remove more deprecated nova-manage commands
a9a2bca Make servers api view load instance fault from proper cell
d68c042 Add support for setting boot order in Hyper-V
f82b3fa Create schema generation for NetworkModel
c5cb7e4 conf: added notifications group
38a1edf Missing usage next links in api-ref
692e596 [placement] start a placement_dev doc
4173e41 Enable TestOSAPIFixture.test_responds_to_version on Python 3
b691125 pci: Clarify SR-IOV ports vs direct passthrough ports
c0a90ea nova-status: check for compute resource providers
65ad654 doc: add recomendation for delete notifications
6817d22 Move FlavorPayload to a seperate file
c316aaa Remove Rules.load_json warning
539d351 Handle unicode when dealing with duplicate aggregate errors during migration
eda54b1 Handle unicode when dealing with duplicate flavors during online migrations
641f5f4 Actually test online flavor migrations
46923c7 Remove unused init_only kwarg from wsgi app init
f9bfb72 api-ref: add notes about POST/DELETE errors for os-tenant-networks
20743d0 Remove unnecessary attrs from TenantNetworksDeprecationTest
2335b02 api-ref: microversion 2.40 overview
dc911b8 Fix assertion in test_instance_fault_get_by_instance
5c796cb Add more field's in InstancePayload
39cac35 objects: add new field cpu_emulator_threads_policy
a29b1ee Support filtering resource providers by aggregate membership
25bc5a6 Resource tracker doesn't free resources on confirm resize
c9de74a Stop using mox stubs in nova/tests/unit/cells
521cd72 Add release note to PCI passthrough whitelist regex support
e7f5f02 api-ref: Fix parameter type in servers-admin-action.inc
99757f8 Port security group related tests to Python 3
45cb6df Add create image functional negative tests
fb3b2d9 Don't apply multi-queue to SRIOV ports
1870c75 placement: correct improper test case inheritance
e4f6689 Remove mox in tests/unit/objects/test_instance_info_cache
e31af46 Port compute unit tests to Python 3
f516e5a Fix urllib.urlencode issue in functional tests on Python 3
cf4b2e7 Trival fix typo
f110339 Enble network.test_neutronv2.TestNeutronv2 on Python 3
9a8a670 Enble compute.test_compute_mgr.ComputeManagerUnitTestCase on Python 3
282dd9a Port api.openstack.compute.test_disk_config to Python 3
71c4360 Updated from global requirements
8ea3c83 Ignore 404s when deleting allocation records
7a69da4 nova-status: return 255 for unexpected errors
05cc20b VMware: Update supported OS types for ESX 6.5
d0f3817 Replace "Openstack" with "OpenStack"
9cc564e Use bdm destination type allowed values hard coded
a65551e Fix BDM JSON-Schema validation
df2fd4a [TrivialFix] Fix comment and function name typo error
10fdc07 [TrivialFix] Fix comment typo error
1a2db4c Fix python3 issues with devstack
ff8a2b2 [1/3]Replace six.iteritems() with .items()
b2be1c7 Fix typo
1980942 Fix misleading port delete description
a63aef8 conf: remove deprecated barbican options
c2511e4 conf: Remove 'virt' file
2507995 Trival fix typos in api-ref
271d9f6 make 2.31 microversion wording better
5eb8297 Add soft delete wrinkle to api-ref
db7360b Add document update for get console usage
972d01b Trivial: add ability to define action description
bc2073c Added missed "raises:" docstrings into numa_get_constraints() method
d99fd59 Removes unnecessary utf-8 encoding
8f4dfdb Port test_matchers.TestDictMatches.test__str__ to Python 3
4c05cb0 Skip network.test_manager.LdapDNSTestCase on Python 3
fc0e8bb Remove mox in tests/unit/objects/test_security_group
7049afd Remove v2.40 from URL string in usage API docs
5978013 nova-status: add basic placement status checking
4103f5e nova-status: check for cells v2 upgrade readiness
a1f3a59 Add nova-status upgrade check command framework
1872eef rt: remove fluff from test_resource_tracker
3397987 rt: pass the nodename to public methods
bd8a9ed conf: make 'default' upper case
ffcdb42 conf: move few console opts to xenserver group
05c0d47 conf: remove deprecated ironic options
0e90396 conf: refactor conf_fixture.py
7cc0576 Add unit test for extract_snapshot with compression enabled
a0d47fd Refactor the code to add generic schema validation helper
d657690 Updated from global requirements
58bf5d0 Fix error if free_disk_gb is None in CellStateManager
f6b947a nova-manage: squash oslo_policy debug logging
4fce45f Pre-load info_cache when handling external events and handle NotFound
446d9fe Make nova-manage cell_v2 discover_hosts tests use DBs
93a9aaa Fix nova-manage cell_v2 discover_hosts RequestContext
928f046 Make nova-manage emit a traceback when things blow up
c4a88d5 XenAPI: Remove ovs_integration_bridge default value
27bec15 rt: pass nodename to internal methods
543bf18 Failing test (mac osx) - test_cache_ephemeral
d679f9a Catch VolumeEncryptionNotSupported during spawn
f981bc4 Updated from global requirements
7fe8333 Fix exception message formatting error in test
c8b631b osapi_max_limit -> max_limit
06de083 Add more detail to help text for reclaim_instance_interval option
48c18ff Added PRSM to HVType class for support PR/SM hypervisor
463a2b6 conf: Deprecate more nova-net options
9abcf5a [test]Change fake image info to fit instance xml
453e9cb Cleanup Newton Release Notes
ba81d24 Port libvirt.storage.test_rbd to Python 3
ad1c7ac libvirt: Stop misusing NovaException
8341e19 Fix the file permissions of test_compute_mgr.py
7c76863 Add detail to cellsv2-related release notes
12d782a Revert "Use liberty-eol tag for liberty release notes"
9281164 Fix some release notes in preparation for the o-2 beta release
bcbfee1 Add schedule_and_build_instances conductor method
d55c513 libvirt: Detach volumes from a domain before detaching any encryptors
0f26569 libvirt: Flatten 'get_domain' function
3167f74 fakelibvirt: Remove unused functions
49753c0 libvirt: Remove slowpath listing of instances
176c5c8 Only return latest instance fault for instances
223475f Remove dead begin/end code from InstanceUsageAuditLogController
4a237c0 Use liberty-eol tag for liberty release notes
be379e3 api-ref: Fix description of os-instance-usage-audit-log
822057d conf: fix formatting in base
5fd0128 Merge v20 view builder for limit API
7cad745 Stop allowing tags as empty string
9c0cb54 libvirt: remove hack for dom.vcpus() returning None
2738e25 Add Python 3.5 functional tests in tox.ini
8340401 Simple tenant usage pagination
e091b38 Modify mistake of scsi adapter type class
3fe0faa Port virt vmwareapi tests to Python 3
9f12b59 Mark sibling CPUs as 'used' for cpu_thread_policy = 'isolated'
d2f12e2 Added missed "raises:" docstrings into numa_get_constraints() method
9d2ce8f Changed NUMACell to InstanceNUMACell in test_stats.py
6c8b49c TrivialFix: changed log message
6ab20bc api-ref: Fix 'id' (attachment_id) parameters
8f61868 Move tags validation code to json schema
4560d11 Let nova-manage cell_v2 commands use transport_url from CONF
5d3ae79 Make test_create_delete_server_with_instance_update deterministic
9fd8014 restore locking in notification tests
807e055 Remove mox from unit/compute/test_compute_api.py(2)
6a8924a Deprecate compute options
84f5c61 Remove support for the Cinder v1 API
34761e6 Make simple_cell_setup fully idempotent
a2d7ebd Corrects the type of a base64 encoded string
6764ff0 Fix instructions for running simple_cell_setup
2346e64 Quiet unicode warnings in functional test_resource_provider
a753bab conf: Detail the 'injected_network_template' opt
5c55442 Add more description for rx and tx param
521d049 move rest_api_version_history.rst to compute layer
ce102be Enhance PCI passthrough whitelist to support regex
deac17c Better wording for micorversion 2.36
29030c3 Port test_servers to py3
83e6dbf Catch InstanceNotFound exception
e5c1762 Remove mox in tests/unit/objects/test_compute_node
117fad8 Refactor REGEX filters to eliminate 500 errors
15564eb Fix crashing during guest config with pci_devices=None
ab05b90 Provide an online data migration to cleanup orphaned build requests
5ce65fa Add SecurityGroup.identifier to prefer uuid over name
979639b Setup CellsV2 environment in base test
50a7d5e conf: add warning for vm's max delete attempts
5e7f765 Cleanup after any failed libvirt spawn
ce57744 Guestfs handle no passwd or group in image
874e666 Return 400 when name is more than 255 characters
9630b51 Check that all JSON files don't have \r\n in line
d7d19a2 Enable test_bdm.BlockDeviceMappingEc2CloudTestCase on Python 3
c262584 network id is uuid instead of id
4a5ecf1 fix for auth during live-migration
2bb70e7 Don't trace on ImageNotFound in delete_image_on_error
693a535 Cascade deletes of RP aggregate associations
bea29e6 Make resource provider objects not remotable
b78b1f8 Bump prlimit cpu time for qemu from 2 to 8
06a990c test: drop unused config option fake_manager
d9a7c16 conf: Remove config option compute_ manager
38c6a84 Extend get_all_by_filters to support resource criteria
6882b97 Port test_virt_drivers to Python 3
594b1b1 Don't use 'updated_at' to check service's status
de5bb0c libvirt: Fix initialising of LVM ephemeral disks
5ae26f3 Remove extra ^M for json file
1b4d279 Port virt.disk.mount.test_nbd to Python 3
eff63c4 Remove unnecessary comment of BDM validation
1506c36 Update ironic driver get_available_nodes docstring
a35de0c api-ref: note that os-virtual-interfaces is nova-network only
fa4cde9 Fix up non-cells-aware context managers in test_db_api
419bbc8 Add SingleCellSimple fixture
df6e2d3 [proxy-api] microversion 2.39 deprecates image-metadata proxy API
9dcab12 Make RPCFixture support multiple connections
c719e22 tests: avoid starting compute service twice in sriov functional test
624e10f tests: generate correct pci addresses for fake pci devices
c49e050 Fix nova-serialproxy when registering cli options
4b0f2b3 Updated from global requirements
b8c88c6 Revert "reduce pep8 requirements to just hacking"
416d798 conf: Improve help text for network options
b19511a conf: Deprecate all nova-net related opts
6edf11a libvirt: Mock imagebackend template funcs in ImageBackendFixture
fbfaa81 libvirt: Combine injection info in InjectionInfo
71dcb52 Fix misuse of assertTrue
9bbce28 Return 400 when name is more than 200 characters
d2925b9 Replace the assertEqual(None,A) with assertIsNone(A)
d72aa30 Rename few tests as per new config options
72d28cc Handle MarkerNotFound from cell0 database
7f6f968 Removed unused ComputeNode create/update_inventory methods
b7e9b18 Fix a typo in a comment in microversion history
cc5d343 Handle ImageNotFound exception during instance backup
f920589 Add a CellDatabases test fixture
b26db17 Pass context as kwarg instead of positional arg to get_engine
2d92ab7 Transform instance.snapshot notifications
1f65925 libvirt: virtlogd: use virtlogd for char devices
e718aad libvirt: create consoles in an understandable/extensible way
bc44d66 Add more log when delete orphan node
2973597 libvirt: Add comments in _hard_reboot
87b9c2b Update cors-to-versions-pipeline release note
ca4715c Unity the comparison of hw_qemu_guest_agent
a152434 Add metadata functional negative tests
ff6b999 Require cellsv2 setup before migrating to Ocata
fbbcd31 Improving help text for xenapi_vmops_opts
77dee95 convert libvirt driver to use os-vif for vhost-user with ovs.
f0d44c5 Handle ComputeHostNotFound when listing hypervisors
ce417b6 Improve the error message for failed RC deletion
5aee293 refactor: move down ``dev_number`` in xenapi
d9ec369 Fix placement API version history 1.1 title
332abf2 placement: Perform build list of standard classes once
1067c44 placement: REST API for resource classes
0ec1114 Add a retry loop to ResourceClass creation
694fee9 conf: Remove deprecated service manager opts
705b3d0 support polling free notification testing
4c59559 conf: Standardize formatting of virt
b212b9f Updated from global requirements
1fda12a Merge v21 view builder for ips API
59a07a1 Merge v21 view builder for flavor API
c7df051 Remove invalid tests for config option osapi_compute_workers
83a586e placement: adds ResourceClass.save()
706f104 Add CORS filter to versions pipeline
7f9e86b Create hyperv fake images under proper directory
5b158df Some improvement to the process doc
ed994bb libvirt: Improve _is_booted_from_volume implementation
033d4d2 libvirt: Delete duplicate check when live-migrating
9a5c20a Add block_device_mapping_v2.uuid to api-ref
ba27ae7 Correct the sorting of datetimes for migrations
9b88e75 Fix pci_alias that include white spaces
63b2c89 Raise DeviceNotFound detaching volume from persistent domain
b05e996 Always use python2.7 for docs target
75b6d53 objects: Removes base code that already exists in o.vo
f780b1d libvirt: Don't re-resize disks in finish_migration()
842a641 libvirt: Never copy a swap disk during cold migration
c802bf3 libvirt: Rename Backend snapshot and image
2d886ec libvirt: Cleanup test_create_configdrive
a475b12 libvirt: Test disk creation in test_hard_reboot
dc9b19a libvirt: Rewrite _test_finish_migration
e604946 guestfs: Don't report exception if there's read access to kernel
e83a357 Fix for live-migration job
6af4b9b Handle maximum limit in schema for int and float type parameters
88746b8 Port compute.test_extended_ip* to Python 3
6969a18 Remove more tests from tests-py3.txt
a5c38cc Support detach interface with same MAC from instance
d1c75df placement: adds ResourceClass.destroy()
e01eec4 Make test_shelve work with CONF.use_neutron=True by default
002f893 Restrict test_compute_cells to nova-network
bacce31 Make test_compute_mgr work with CONF.use_neutron=True by default
eda26f9 Make test_compute_api work with CONF.use_neutron=True by default
4caae1c Make nova.tests.unit.virt pass with CONF.use_neutron=True by default
6a5d936 Make xenapi tests work with CONF.use_neutron=True by default
405d9fa Make libvirt unit tests work with CONF.use_neutron=True by default
5969b63 Make vmware unit tests work with CONF.use_neutron=True
6d594bf Explicitly use nova-network in nova-network network tests
1986f94 Make test_serversV21 tests work with neutron by default
2e6aa7c neutron: handle no_allocate in create_pci_requests_for_sriov_ports
7d77fe0 Add a releasenote for bug#1633518
b89efa3 libvirt: prefer cinder rbd auth values over nova.conf
5595b46 libvirt: cleanup network volume driver auth config
d079f37 Fix wait for detach code to handle 'disk not found error'
dc1433b [api-ref] Minor text clean-up, formatting
90f5a72 Convert live migration uri back to string
496c403 conf: improve libvirt lvm
7418f79 conf: Trivial fix of indentation in 'api'
ada7155 config options: improve libvirt utils
69ff7e5 Never pass boolean deleted to instance_create()
a54c1bc Port xenapi test_xenapi to Python 3
0ae8cbf Port libvirt test_driver to Python 3
bee269c conf: Deprecate 'torrent_' options
a862aa0 hacking: Use uuidutils or uuidsentinel to generate UUID
fd99bd7 Replace uuid4() with uuidsentinel
bcb9a5e Replace uuid4() with uuidsentinel
7bb82e2 Replace uuid4() with uuidsentinel
8b8a29c Add os-start/stop functional negative tests
9bfeecd Port ironic unit tests to Python 3
a4466d5 Port test_keypairs to Python 3
67af1ee Port test_metadata to Python 3
cbcff11 Fix expected_attrs kwarg in server_external_events
f3a2809 Check deleted flag in Instance.create()
cf72bb8 Revert "Revert "Make n-net refuse to start unless using CellsV1""
ade1cfc Revert "Log a warning when starting nova-net in non-cellsv1 deployments"
37ec9b9 Default deleted if the instance from BuildRequest is not having it
2f80a62 docs: cleanup wording for 'SOFT_DELETED' in api-guide
898bb13 libvirt: Acquire TCP ports for console during live migration
310562f conf: Deprecate 'remap_vbd_dev' option
c5a76f9 conf: Covert StrOpt -> PortOpt
8d0c195 Check Config Options Consistency for xenserver.py
f853a5c Add description for 2.9 microversion
015378b Remove AdminRequired usage in flavor
0c1e2fa Optional name in Update Server description in api-ref
f2992f9 List support for force-completing a live migration in Feature support matrix
c07caac Remove mox from nova/tests/unit/compute/test_virtapi.py
d5fece1 Remove mox from nova/tests/unit/virt/test_virt.py
806c480 Catch ImageNotAuthorized during boot instance
8d4eac2 Remove require_admin_context
243c08c remove NetworkDuplicated exception
d9ad364 InstanceGroupPolicyNotFound not used anymore
3333990 UnsupportedBDMVolumeAuthMethod is not used
5bed61d Port virt.xenapi.client.test_session to Python 3
146accf vif: allow for creation of multiqueue taps in vrouter
b7b282e conf: Move api options to a group
efcc911 [scheduler][tests]: Fix incorrect aggr mock values
4a7502a objects: Move 'vm_mode' to 'fields.VMMode'
747c0d0 objects: Move 'hv_type' to 'fields.HVType'
33a52cd objects: Move 'cpumodel' to 'fields.CPU*'
4440d10 objects: Move 'arch' to 'fields.Architecture'
3e0cad9 Show team and repo badges on README
a05c4a9 Remove config option snapshot_name_template
d304690 Remove deprecated compute_available_monitors option
def4af2 Improve help text for interval_opts
ce16fa8 config options: improve libvirt remotefs
0502c30 Improve consistency in libvirt
12485c7 Fix root_device_name for Xen
af673db Move tag schema to parameter_types.py
a338274 Remove tests from tests-py3.txt
3f0711c hardware: Flatten functions
4b5b3c2 add host to vif.py set_config_* functions
41d6018 linux_net: allow for creation of multiqueue taps
b8897ab Fix notification doc generator
5920402 Config options: improve libvirt help text (2)
6a422d2 Placement api: Add informative message to 404 response.
646151f Remove sata bus for virtuozzo hypervisor
ce0be98 Fix a typo in nova/api/openstack/compute/volumes.py
2e32ed1 Fix race in test_volume_swap_server_with_error
14199b7 libvirt: Call host connection callbacks asynchronously
52f108c conf: remove deprecated cert_topic option
3e46a44 Return build_requests instead of instances
4bac18b conf: remove deprecated exception option
3d39613 doc: Add guidline about notification payload
bacd717 Port libvirt test_imagecache to Python 3
d830fd8 Port test_serversV21 to Python 3
cbbc218 encryptors: Introduce encryption provider constants
1552aeb Add TODO for returning a 202 from the volume attach API
8ff16ca Fix typo in image_meta.py & checks.py & flavor.py
65c43cf Refactor two nearly useless secgroup tests
4f75a50 Transform instance.finish_resize notifications
fdd4d1c Remove redundant VersionedObject Fields
94563ad Transform instance.create.error notification
80bf21d Transform instance.create notification
dba04d5 api-ref: add missing os-server-groups parameters
6a85a98 libvirt: prepare domain XML update for serial ports
a941891 [placement] increase gabbi coverage of handlers.resource_provider
d8d00d1 [placement] increase gabbi coverage of handlers.inventory
efb0df6 [placement] increase gabbi coverage of handlers.allocation
e4ed3a3 libvirt: do not return serial address if disabled on destination
2aee4e9 Remove mox from api/openstack/compute/test_fping.py
887cc52 Add index on instances table across project_id and updated_at
2ecbbd8 Complete verification for os-floating-ips
57f46c1 libvirt: handle os-brick InvalidConnectorProtocol on init
91f350f placement: adds ResourceClass.get_by_name()
624f184 placement: adds ResourceClass.create()
ef19089 Improve help text for libvirt options
11d8dde Use byte string or utf8 depending on python version for wsgi
4a09c22 Separate CRUD policy for server_groups
86e1478 Stop using mox stubs in nova/tests/unit/virt/disk
97d13c6 Remove the description of compute_api_class option
cef86ec Remove mox in virt/xenapi/image/test_bittorrent.py
41bf42a Add context param to confirm_migration virt call
9ffa622 Use pick_context_manager throughout DB APIs
128318d Database poison note
dde40c8 tests: verify cpu pinning with prefer policy
2fff8a0 api-ref: Body verification for os-simple-tenant-usage.inc
9434abb remove additional param
f46cae8 Fix typo for 'infomation'.
b95b6d8 Remove unused code in nova/api/openstack/wsgi.py
f8c69ef conf: remove deprecated cells driver option
383e795 Fix detach_interface() call from external event handler
44ca84a Implement get and set aggregates in the placement API
b3745f9 Add {get_,set_}aggregates to objects.ResourceProvider
215dc29 Log a warning when starting nova-net in non-cellsv1 deployments
dbf0b2c Revert "Make n-net refuse to start unless using CellsV1"
758a32f HyperV: use os-brick for volume related operations
a586b6d INFO level logging should be useful in resource tracker
00fdf28 hyper-v: wait for neutron vif plug events
4b43e27 Remove mox in nova/tests/unit/api/openstack/compute (1)
a67af1f Use available port binding constants
b957534 Rename PCS to Virtuozzo in error message
0f152eb [PY3] byte/string conversions and enable PY3 test
f80163d Fix mock arg list order in test_driver.py
01e2c5c Add handle for 2 exceptions in force_delete
490078d Typo error about help libvirt.py
5f137df Updated from global requirements
198d166 Introduce PowerVMLiveMigrateData
c07046e Make n-net refuse to start unless using CellsV1
b26ef56 Store security groups in RequestSpec
e975603 api-ref: body verification for abort live migration
512ebfb Fix data error in api samples doc
90f3959 Typo error servers.py
0b053ca Typo error allocations.yaml
f84ae10 Refactor console checks in live migration process
fb50ff3 Remove mox in tests/unit/objects/test_pci_device
a4a7853 Add microversion cap information
42110d9 No return for flavor destroy
f8e35e5 neutron: actually populate list in populate_security_groups
5665831 Clarify the approval process of specless blueprints
ce600f7 Add uuid field to SecurityGroup object
3e210b4 api-ref: body verification for force_complete server migration
c0774e6 api-ref: body verification for show server migration
ca09cbd api-ref: body verification for list server migrations
6c6df6a api-ref: example verification for server-migrations
7d33dc8 api-ref: parameter verification for server-migrations
925dc7a api-ref: method verification for server-migrations
b000989 [placement] Enforce min_unit, max_unit and step_size
19a52c9 Remove ceph install/config functions from l-m hook
b71ceda Ceph bits for live-migration job
7c51cf9 Avoid unnecessary db_calls in objects.Instance._from_db_object()
f1cd928 placement: genericize on resource providers
633c817 api-ref: fix server_id in metadata docs
310d66c Add the initial documentation for the placement API
168a500 API Ref: update server_id params
9535634 conf: fix formatting in wsgi
4058471 Transform requested secgroup names to uuids
971047b conf: fix formatting in availability_zone
f25579c libvirt: Cleanup spawn tests
c53d948 Rename security_group parameter in compute.API:create
3a01178 Change database poison warning to an exception
1078ebd Fix database poison warnings, part 25
ad2ea36 Updated from global requirements
00bc0cb Correct wrong max_unit in placement inventory
da1148a Add flavor extra_spec info link to api_ref
fcc8263 Fix database poison warnings in resource providers
f87af91 Placement api: 404 response do not indicate what was not found
9345ed4 Instance obj_clone leaves metadata as changed
1b351ef Add a no-op wait method to NetworkInfo
03d8e51 Move driver_dict_from_config to libvirt driver
3921224 Create schema generation for AddressBase
e759a07 conf: Improve help text for ldap_dns_opts
059872e conf: Fix indentation of network
c3ac2a3 Fix config option types
50ad9d4 libvirt: Fix incorrect libvirt library patching in tests
f11188f libvirt: refactor console device creation methods
e781123 libvirt: read rotated "console.log" files
54a400e libvirt: change get_console_output as prep work for bp/libvirt-virtlogd
cd15b70 Updated from global requirements
cc84595 api-ref: Fix a 'port' parameter in os-consoles.inc
a672176 Update nova api.auth tests to work with newer oslo.context
62b21ef Remove ironic instance resize from support matrix doc
b761ea4 [placement] add a placement_aggregates table to api_db
b05a32e libvirt: remove py26 compat code in "get_console_output"
6140821 Change RPC post_live_migration_at_destination from cast to call.
a6053dd libvirt: add migration flag VIR_MIGRATE_PERSIST_DEST
f67d110 Revert MTU hacks for bug 1623876
43565ff Pass MTU into os-vif Network object
0dc1bc3 Updated from global requirements
0f26e68 api-ref: fix addFloatingIp action docs
569e463 Fix a TypeError in notification_sample_base.py
1e4178b Add functional api_samples test for addFloatingIp action
ce25736 Fix qemu-img convert image incompatability in alpine linux
b816e3c migration.source_compute should be unchanged after finish_revert_resize.
dfa2b62 Add explicit dependency on testscenarios
0132cc8 Updated from global requirements
086b7a7 cors: update default configuration in config
be11fab api-ref: remove user_id from keypair list response and fix 2.10
53ab606 Don't parse PCI whitelist every time neutron ports are created
02fa59d conf: Remove deprecated 'compute_stats_class' opt
c3353b8 conf: Remove extraneous whitespace
58db7d9 hardware: Split '_add_cpu_pinning_constraint'
d442c1a libvirt: Delete the lase_device of find_disk_dev_for_disk_bus
03e2f04 EventReporterStub
077a909 Catch all local/catch-all addresses for IPv6
328c45b placement: add ResourceClass and ResourceClassList
69bac2f placement: raise exc when resource class not found
419cd6a fix connection context manager in rc cache
6689c96 pci: remove pci device from claims and allocations when freeing it
d38d576 PCI: Fix PCI with fully qualified address
079396d Log warning when user set improper config option value
6683bf9 libvirt: fix incorrect host cpus giving to emulator threads when RT
42b6716 Transform instance.shutdown notifications
2010c13 encryptors: Workaround mangled passphrases
d7b831e Fix cold migration with qcow2 ephemeral disks
74fadb4 Updated from global requirements
a873375 config options: Improve help for SPICE
6d026c1 Remove manual handling of old context variables
1d54428 api-ref: cleanup bdm.delete_on_termination field
c175c8d api-ref: document the power_state enum values
36322fd libvirt: Pass Host instead of Driver to volume drivers
cf8b1e5 conf: Attempt to resolve TODOs in scheduler.py
41ad9ea conf: Remove 'scheduler_json_config_location'
6789335 Remove unreachable code
414afad [api-ref] Fix path parameter console_id
3e89c0f doc: add a note about conditional support for xenserver change password
cb9300f Replace admin check with policy check in placement API
6fba36a Fix import statement order
f7ed4b1 Fix database poison warnings, part 24
cd1af7a libvirt: sync time on resumed from suspend instances
b85f235 Fix database poison warnings, part 23
54686bb Add RPC version aliases for Newton
2c68148 Transform instance.unpause notifications
d32d8c0 Catch NUMA related exceptions in create server API method
0ac7c98 Notification object version test depends on SCHEMA
f23646d Updated from global requirements
41591c9 Virt: add context to attach and detach interface
621470f Imported Translations from Zanata
64e3e2f Stop using mox stubs in test_shelve.py
2e9548c Fix SAWarning in TestResourceProvider
39bf87a Transform instance.unshelve notifications
e9cd4ba TrivialFix: Fixed typo in 'MemoryPageSizeInvalid' exception name in docstrings
fd7b3d6 Make build_requests.instance MediumText
94587dc Use six.wraps
eca23d4 Transform instance.resume notifications
b1b86c8 Transform instance.shelve_offload notifications
07e6507 api-ref: fix image GET response example
f98e4aa Fix exception raised in exception wrapper
7e36553 Add missing compat routine for Usage object
e875f24 Updated from global requirements
865f0d2 Transform instance.power_off notifications
a59de48 conf: Removed TODO note and updated desc
95d56a8 Set 'last_checked' flag if start to check scheduler file
e351cb6 Remove bandit.yaml in favor of defaults
960996d Pre-add instance actions to avoid merge conflicts
70b01c9 Add swap volume notifications (error)
e5e4dfc libvirt: add supported vif types for virtuozzo virt_type
758307c fix testcase test_check_can_live_migrate_dest_fills_listen_addrs
864f65e doc: Integrate oslo_policy.sphinxpolicygen
d3c7396 Using get() method to prevent KeyError
61bcb83 tests: verify pci passthrough with numa
b0a451d tests: Adding functional tests to cover VM creation with sriov
77a8e5d [placement] Add support for a version_handler decorator
da58ad9 pci: in free_device(), compare by device id and not reference
200d50b Mention API V2 should no longer be used
f8a8180 doc: Update libvirt-numa guide
94a28d3 Remove deprecated nova-manage vm list command
44e7f6e Remove block_migration from LM rollback
ab2653d PCI: Avoid looping over PCI devices twice
a5bd35f Update docs for serial console support
c36dbe1 Remove conductor local api:s and 'use_local' config option
0360e4c Cleanup before removal of conductor local apis
e6593d3 compute: fixes python 3 related unit tests
22b8ae0 XenAPI: Fix VM live-migrate with iSCSI SR volume
db23224 Fix the scope of cm in ServersTestV219
b09d99d Explicitly name commands target environments
67ceb74 _run_pending_deletes does not need info_cache/security_groups
f77d07c Updated from global requirements
48e0c00 hardware: Standarized flavor/image meta extraction
5e9add3 api-ref: Fix wrong parameters in os-volumes.inc
dfe4259 Remove mox from unit/virt/libvirt/test_imagebackend.py (1)
a5b920a Send events to all relevant hosts if migrating
53da313 Catch error and log warning when not able to update mtimes
03f8f5a Clarify what changed with scheduler_host_manager.
046922c Add related options to floating ip config options
98d629a Correct bug in microversion headers in placement
c9a6499 Ironic Driver: override get_serial_console()
dd99692 Updated from global requirements
fa4ad0a Drop deprecated support for hw_watchdog_action flavor extra spec
50f7b06 Remove watchdog_actions module
b07efcc Removal of tests with different result depending on testing env
df4cf3e Add debug to tox environment
26826bc Document experimental pipeline in Nova CI
c0e8aa8 Update rolling upgrade steps from upgrades documentation
94f89e9 Add migrate_uri for invoking the migration
f022d57 Fix bug in "nova/tests/unit/virt/test_virt_drivers.py" for os-vif
3fa6583 Remove redundant req setting
16f4bad Changed the name of the standard resource classes
5661f87 placement: change resource class to a StringField
a2fbe44 Remove nova/openstack/* from .coveragerc
c07c0d4 Remove deprecated nova-all binary
c12d388 Fix issue with not removing rbd rescue disk
41adb9f Require WebOb>=1.6.0
97e7b97 conf: Remove deprecated ``use_glance_v1``
50e0106 Adding hugepage and NUMA support check for aarch64
09e2bcf hacking: Use assertIs(Not), assert(True|False)
03b9937 Use more specific asserts in tests
c632c93 Add quota related tables to the api database.
0a99fc1 doc: add dev policy about no new metrics monitors
32e533d Always use python2.7 for functional tests
610293f doc: note the future of out of tree support
77b23da docs: update the Public Contractual API link
bf9fae9 Remove _set_up_controller() from attach tests
21961e7 Add InvalidInput handling for attach-volume
c46b469 placement: add cache for resource classes
d79d6f6 placement: add new resource_classes table
e4141c1 hardware: Rework docstrings
608a01e doc: Comment on latin1 vs utf8 charsets
b78f549 Improve help text for libvirt options
b83cae0 block_device: Make refresh_conn_infos py3 compatible
47fb8b7 Add swap volume notifications (start, end)
4eb89c2 Add a hacking rule for string interpolation at logging
3be6e8d Stop using mox stubs in test_snapshots.py
a11e750 Stop using mox from compute/test_multiple_create.py
87530b6 Don't attempt to escalate nova-manage privileges
7ab3063 Improve help text for upgrade_levels options
39af8d5 Remove dead link from notification devref
493a313 Stop using mox stubs in test_evacuate.py
e263558 Tests: fix a typo
5c608ab ENOENT error on '/dev/log'
b90df7c Patch mkisofs calls
7d0381c conf: Group scheduler options
2640f1f conf: Move consoleauth options to a group
66246c4 Fix exception due to BDM race in get_available_resource()
d8e695c Delete traces of in-progress snapshot on VM being deleted
2afc4e4 Add error handling for delete-volume API
6051499 Catch DevicePathInUse in attach_volume
f9a0f6f Enable release notes translation
2f073fd Fix drop_move_claim() on revert resize
9c39f37 Updated from global requirements
d04e41e Fix API doc for os-console-auth-tokens
1f66c2e tests: avoid creation of instances dir in the working directory
5271aa5 config options: improve libvirt imagebackend
407e659 libvirt: fix DiskSmallerThanImage when block migrate ephemerals
b713a62 Remove unnecessary credential sanitation for logging
5041bdd Replace uuid4() with uuidsentinel
f085fbd Change log level to debug for migrations pairing
ff14503 Remove the duplicated test function
bf38f0d Move get_instance() calls from try-except block
6f00d3b Allow running db archiving continuously
453e71d Add some extra logging around external event handling
285e1cc Fix a typo in driver.py
b2c9666 Avoid Forcing the Translation of Translatable Variables
5767220 Fix database poison warnings, part 21
0f4bd24 libvirt: Fix BlockDevice.wait_for_job when qemu reports no job
d4cbc2b Updated from global requirements
be49897 Remove mox from tests/unit/conductor/tasks/test_live_migrate.py(3)
ff486f3 Remove mox from tests/unit/conductor/tasks/test_live_migrate.py(2)
39cefb9 Remove mox from tests/unit/conductor/tasks/test_live_migrate.py(1)
7e4082d Fix calling super function in setUp method
1af73d1 refresh instances_path when shared storage used
c8e3cbc Prevent us from sleeping during DB retry tests
edd86d9 Fix error status code on update-volume API
d3194c6 conf: Trivial cleanup of console.py
bd995da conf: Trivial cleanup of compute.py
c7d0db4 conf: Trivial cleanup of 'cells'
6460303 conf: Deprecate all topic options
1f0d3e0 Updated from global requirements
e60e95f Disable 'supports_migrate_to_same_host' HyperV driver capability
951dee3 Fix periodic-nova-py{27,35}-with-oslo-master
1a80c88 Report actual request_spec when MaxRetriesExceeded raised
85bf71b Make db archival return a meaningful result code
d17a20d Remove the sample policy file
0a6d05a libvirt/guest.py: Update docstrings of block device methods
e5f379f Fix small RST markup errors
4b95b03 [Trivial] changes tiny RST markup error
5fe5185 Add get_context helper method
f6b7225 Use gabbi inner_fixtures for better error capture
aaf2532 Hyper-V: Fixes os_type image property requirement
62555e2 conf: Cleanup of glance.py
4e5ed1c conf: Move PCI options to a PCI group
9a5748d Add Apache 2.0 license to source file
cd99758 Updated from global requirements
7c3fd3c Make releasenotes reminder detect added and untracked notes
0b9b898 [placement] reorder middleware to correct logging context
a0b85d6 Fixes RST markup error to create a code-box.
4445d48 libvirt: support user password settings in virtuozzo
dc7c21f Removing duplicates from columns_to_join list
9b090ae Ignore BuildRequest during an instance reschedule
4f6f239 Remove stale pyc files when running the cover job
6f98810 Add a post-test-hook to run the archive command
5fdb922 [placement] ensure that allow headers are native strings
935bea2 Fix a few typos in API reference
4a6bf43 Fix typo on api-ref parameters
cca7c7da Fix typo in comment
3d57c41 Remove mox in nova/tests/unit/compute/test_shelve.py (1)
c5915eb Let schema validate image metadata type and key lengths
77d3619 Remove scheduled_at attribute from instances table
993a815 Fix database poison warnings, part 22
ceaf853 Archive instance-related rows when the parent instance is deleted
6686a3e Unwind circular import issue with api / utils
e71f706 Fix database poison warnings, part 18
b3d58ed Remove context object in oslo.log method
9dc07a2 libvirt: pick future min libvirt/qemu versions
bd0dc61 Improve consistency in serial_console
6832a41 conf: Improve consistency in scheduler opts
c04c1a9 Move notification_format and delete rpc.py
d896b62 config options: improve libvirt smbfs
8c753e9 Fix database poison warnings, part 17
c5c24f1 Updated from global requirements
2f670bf Fix database poison warnings, part 16
29dab99 Hyper-V: Adds Hyper-V UEFI Secure Boot
d218f0d Stop overwriting thread local context in ClientRouter
8f74906 Cleanup some redundant USES_DB_SELF usage
9544906 Fix database poison warnings, part 20
62e818a Fix database poison warnings, part 19
7637d4a use proper context in libvirt driver unit test
456c8f7 Renamed parameters name in config.py
f21e7e3 [placement] Allow both /placement and /placement/ to work
fd6085f numa: Fixes NUMA topology related unit tests
5901455 libvirt: fixes python 3 related unit tests
6181398 Clean up stdout/stderr leakage in cmd testing
ffaf1b6 Capture stdout in for test_wsgi:test_debug
5aa6c87 Add destroy method to the RequestSpec object
146499f Remove last sentence
2851cea VMware: Enforce minimum vCenter version of 5.5
d353645 test:Remove unused method _test_get_test_network_info
2fe5dae Determine disk_format for volume-backed snapshot from schema
0ada84c Fix database poison warnings, part 15
760629b Fix CONTAINER_FORMATS_ALL to have ova insteadk of vmdk
87426ef Config options consistency of ephemeral_storage.py
81dff50 docs: Clarify sections & note on filter scheduler
8e989bd Fixes python 3 unit tests
802a0af Add Hyper-V storage QoS support
be8242c Add blocker migration to ensure for newton online migrations
ebc0219 hacking: Always use 'assertIs(Not)None'
8c40c42 Hyper-V: fix image handling when shared storage is being used
3ddedc5 Annotate online db migrations with cycle added
f75c06a properly capture logging during db functional tests
1c85944 [placement] 404 responses do not cause exception logs
bbe3939 Fix pep8 E501 line too long
e53f3ed Remove unused code
ebb51d5 Replace uuid4() with generate_uuid() from oslo_utils
a6e9463 Return instance of Guest from method write_instance_config
d1662d5 Mock.side_effects does not exist, use Mock.side_effect instead
2a5b777 Remove redundant str typecasting
fe98f68 VMware: deprecate wsdl_location conf option
8a21584 Remove nova.image.s3 and configs
94d5c88 Remove internal_id attribute from instances table
0f5edd6 Fix stdout leakage during opportunistic db tests
2ddcb58 Updated from global requirements
9eb9f99 Improve help text for glance options
2ce193e libvirt: ignore conflict when defining network filters
05304b5 Add placeholder DB migrations for Ocata
15cda71 Remove PCI parent_addr online migration
7e71a4e Make nova-manage online migrations more verbose
8ddf174 Fix check_config_option_in_central_place
6b3b729 Skip malformed cookies
d98096b Fix database poison warnings, part 14
c0addfa Standardize output capture for nova-manage tests
759dfc0 Work around tests that don't use nova.test as a base
15b392a Don't print to stdout when executing hacking checks
dc2f4f8 Make test logging setup fixture disable future setup
56703c6 Fix typo in docsting in test_migrations.py
fe3d6db Remove support for deprecated driver import
c1dd240 conf: Add 'deprecated_reason' to osapi opts
059d257 Add hacking checks for xrange()
7a20438 Using assertIsNone() instead of assertEqual(None)
735f710 move os_vif.initialize() to nova-compute start
e9515ba Add deprecated_since parameter
687984b [placement] Manage log and other output in gabbi fixure
87494fd Reduce duplication and complexity in format_dom
bf6280e Fix invalid exception mock for InvalidNUMANodesNumber
dccaf9c libvirt: fix serial console not correctly defined after live-migration
f81e32c Add more description when service delete
3e92d21 trivial: Rewrap guide at 79 characters
6bb1fd7 plugins/xenserver: Add '.py' extension
c4ce5f1 conf: Fix opt indentation for scheduler.py
9723864 conf: Reorder scheduler opts
29f065d Updated from global requirements
ee2c0a0 Revert "Set 'serial' to new volume ID in swap volumes"
5f887d8 [placement] Adjust the name of the gabbi tests
a6cfc68 placement: refactor instance translate function
d3dfeb4 Move wsgi-intercept to test-requirements.txt
859de9c Add missing slash to dir path
bfe42de Expand feature classification matrix with gate checks
995d283 [placement] Stringify class and provider uuid in error
a68cd91 [api-ref] Correct parameter type
13a5fc6 Remove default=None for config options
0fafb81 libvirt: cleanup never used migratable flag checking
a468f8c Remove unnecessary setUp and tearDown
5e8f66d Remove unused parameters
4720fdf Remove duplicate key from dictionary
b535632 Updated from global requirements
310e4dc placement: refactor translate from node to dict
dc4d1a6 stub out instances_path in unit tests
a7c0a84 Add a new release note
7f7324c XenAPI: add unit test for plugin test_pluginlib_nova.py
b2ee12c Add link ref to nova api concept doc
8795b20 libvirt: Use the recreated disk.config.rescue during a rescue
43826e4 Add members in InstanceGroup object members field
2f202bb Updates URL and removes trailing characters
fc0e281 Stop ovn networking failing on mtu
57bd7b9 Update reno for stable/newton
103f13e Don't pass argument sqlite_db in method set_defaults
e202a01 Add is_cell0 helper method
836747b [placement] consolidate json handling in util module
644d310 Fix unnecessary string interpolation
0683fcd Handle TypeError when disabling host service
c95c2f2 Remove deprecated flag in neutron.py
2b4ac81 Body Verification of api-ref os-volume-attachments.inc
845adc6 Add functional regression test for bug 1595962
a836139 Use tempest tox with regex first
58be202 Doc fix for Nova API Guide, added missing word.
5af99c7 conf: Make list->dict conversion more specific
67b19e8 Improve help text for xenapi_session_opts
e843628 Improve help text for service options.
5982b94 Use assertEqual() instead of assertDictEqual()
8568cb4 Fixed suspend for PCI passthrough
6bd8029 Switching expression order within if condition
304bc20 Use to_policy_values for policy credentials
41aa264 Doc fix for Nova API Guide, fixed wording
32be810 Nova shelve creates duplicated images in cells
2dd231c HyperV: ensure config drives are copied as well during resizes
3ec1eca Fill destination check data with VNC/SPICE listen addresses
b6b31c2 Using assertIsNotNone() instead of assertIsNot(None,)
f8c1ee3 Fix SafeConfigParser DeprecationWarning in Python 3.2
e4c8084 Remove RateLimitFault class
3e29e55 Rate limit is removed , update doc accordingly
9a5ec4b Fix a typo from ID to Id
2e64261 context: change the name 'rule' to 'action' in context.can
a4c8680 Add description for v2.20 changes in api-ref
7b9e340 Add keypairs_links into resp
6178700 Add hypervisor_links into hypervisor v2.33
c1a8b89 Add reserved param for v2.4
3634270 Add more description on v2.9 history
d7376df Pin maximum API version of microversion
676babb XenAPI: resolve the fetch_bandwidth failure
174f5a0 [api-ref] Update configuration file
054e3a5 Trivial fix remove not used var in parameters
e12fe76 Trival fix a typo
bd2ccb9 Enable py3 tests for unit.api.openstack.compute.test_console_output
76b5379 [placement] clean up some nits in the requestlog middleware
a2ff3aa Stop using mox in virt/libvirt/test_imagecache.py
876d408 Stop using mox in unit/fake_processutils.py
4d052f2 ironic: Rename private methods for instance info
5db0545 Remove mox from api/openstack/compute/test_networks.py
7d1ab19 Remove mox from api/openstack/compute/test_rescue.py
83fe182 Remove mox from api/openstack/compute/test_image_size.py
752a13f Remove mox from api/openstack/compute/test_extended_ips.py
eed029d Remove mox from nova/tests/unit/virt/xenapi/test_driver.py
9f2f999 Remove mox from unit/api/openstack/compute/test_hide_server_addresses.py
58de262 Add bigswitch command to compute rootwrap filters
39bd43b Remove unused conf
8361d8d Allow linear packing of cores
4483d02 [placement] remove a comment that is no longer a todo
fd58a6a Fix a typo in the driver.py file
fcf2a64 Not allow overcommit ratios to be negative
0be9298 Use cls in class method instead of self _delete_domain is a class method, so cls should be used instead of self.
d8fdeac TrivialFix: Remove cfg import unused
1b7b098 Update link in general purpose feature matrix
e59ba69 Add warning if metadata_proxy_shared_secret is not configured
d2abe0b TrivialFix: removed useless storing of sample directory
47275d0 Fix link reference in Nova API version
9d08e80 doc: fix disk=0 use case in flavor doc
3157861 Move some flavor fakes closer to where they are being used
55f3f98 Replace flavors.get_all_flavors_sorted_list() with object call
62c7eb8 Refactor and objectify flavor fakes used in api tests
754adc4 [vncproxy] log for closing web is misleading
99b30d8 VIF: add in missing translation
aeb17fd Clean imports in code
4ca189a modify description of "Inject guest networking config"
d60ff73 Remove unnecessary debug logs of normal API ops
63b781d Replace fake_utils by using Fixture
c1a30f8 docs: update code-review guide for config options
7e6e336 use the HostPortGroupSpec.vswitchName instead of HostPortGroup.vswitch.split
1c04e18 Fix require thread policy for multi-NUMA computes
131686f Fix database poison warnings, part 13
36a0ba9 Avoid update resource if compute node not updated
3edc02d Document update_task_state for ComputeDriver.snapshot
e245086 Fix database poison warnings, part 12
af9aa1c Fix database poison warnings, part 11
54b122c Update instance node on rebuild only when it is recreate
0d814ac Fix database poison warnings, part 10
46cf8af Fix database poison warnings, part 9
dce1f71 Fix invalid import order and remove import *
ab5e67f XenAPI: add unit test for plugin bandwidth
65bcd21 Complete verification for os-virtual-interfaces
1e3e730 Do not try to backport when db has older object version
da0dbd7 Cleanup instance device metadata object code
41c651e Remove mox from nova/tests/unit/virt/libvirt/test_utils.py
531b401 Stop using mox in test_firewall
8b199c6 Fix exception when vcpu_pin_set is set to ""
6701af8 VMware: add in context for log messages
Diffstat (except docs and test files)
-------------------------------------
.coveragerc | 2 +-
.gitignore | 1 +
.gitreview | 1 +
.testr.conf | 2 +-
HACKING.rst | 11 +-
README.rst | 9 +
api-guide/source/conf.py | 2 -
api-guide/source/faults.rst | 12 +-
api-guide/source/limits.rst | 52 +-
api-guide/source/server_concepts.rst | 8 +-
api-guide/source/versions.rst | 5 +-
api-ref/source/conf.py | 7 +-
api-ref/source/diagnostics.inc | 7 +-
api-ref/source/images.inc | 4 +-
api-ref/source/index.rst | 7 +-
api-ref/source/ips.inc | 9 +-
api-ref/source/limits.inc | 2 +-
api-ref/source/metadata.inc | 30 +-
api-ref/source/os-aggregates.inc | 9 +-
api-ref/source/os-availability-zone.inc | 2 +-
api-ref/source/os-baremetal-nodes.inc | 2 +-
api-ref/source/os-certificates.inc | 2 +-
api-ref/source/os-consoles.inc | 41 +-
api-ref/source/os-fixed-ips.inc | 3 +-
api-ref/source/os-flavor-extra-specs.inc | 5 +
api-ref/source/os-floating-ip-dns.inc | 2 +-
api-ref/source/os-floating-ip-pools.inc | 2 +-
api-ref/source/os-floating-ips-bulk.inc | 2 +-
api-ref/source/os-floating-ips.inc | 56 +-
api-ref/source/os-fping.inc | 2 +-
api-ref/source/os-hypervisors.inc | 34 +-
api-ref/source/os-instance-usage-audit-log.inc | 19 +-
api-ref/source/os-keypairs.inc | 6 +-
api-ref/source/os-networks.inc | 2 +-
api-ref/source/os-quota-sets.inc | 2 +
api-ref/source/os-security-group-default-rules.inc | 2 +-
api-ref/source/os-security-group-rules.inc | 2 +-
api-ref/source/os-security-groups.inc | 2 +-
api-ref/source/os-server-groups.inc | 13 +-
api-ref/source/os-server-password.inc | 10 +-
api-ref/source/os-server-tags.inc | 2 +
api-ref/source/os-services.inc | 6 +-
api-ref/source/os-simple-tenant-usage.inc | 52 +-
api-ref/source/os-tenant-network.inc | 12 +-
api-ref/source/os-virtual-interfaces.inc | 27 +-
api-ref/source/os-volume-attachments.inc | 18 +-
api-ref/source/os-volumes.inc | 22 +-
api-ref/source/parameters.yaml | 616 ++--
api-ref/source/server-migrations.inc | 231 ++
api-ref/source/server-security-groups.inc | 4 +-
api-ref/source/servers-action-console-output.inc | 20 +-
api-ref/source/servers-action-evacuate.inc | 7 +-
api-ref/source/servers-action-fixed-ip.inc | 10 +-
api-ref/source/servers-action-shelve.inc | 31 +-
api-ref/source/servers-actions.inc | 162 +-
api-ref/source/servers-admin-action.inc | 58 +-
api-ref/source/servers.inc | 71 +-
api-ref/source/urls.inc | 14 +-
api-ref/source/versions.inc | 12 +-
bandit.yaml | 129 -
devstack/tempest-dsvm-cells-rc | 3 +
.../keypairs/v2.35/keypairs-list-user2-resp.json | 2 +-
.../v2.41/aggregate-add-host-post-req.json | 5 +
.../v2.41/aggregate-metadata-post-req.json | 9 +
.../os-aggregates/v2.41/aggregate-post-req.json | 7 +
.../os-aggregates/v2.41/aggregate-post-resp.json | 12 +
.../v2.41/aggregate-remove-host-post-req.json | 5 +
.../v2.41/aggregate-update-post-req.json | 7 +
.../v2.41/aggregate-update-post-resp.json | 16 +
.../v2.41/aggregates-add-host-post-resp.json | 18 +
.../os-aggregates/v2.41/aggregates-get-resp.json | 16 +
.../v2.41/aggregates-list-get-resp.json | 20 +
.../v2.41/aggregates-metadata-post-resp.json | 17 +
.../v2.41/aggregates-remove-host-post-resp.json | 16 +
.../v2.40/simple-tenant-usage-get-detail.json | 35 +
.../v2.40/simple-tenant-usage-get-specific.json | 33 +
.../v2.40/simple-tenant-usage-get.json | 19 +
.../server-migrations/v2.23/migrations-get.json | 4 +-
.../server-migrations/v2.23/migrations-index.json | 4 +-
.../servers/server-action-addfloatingip.json | 6 +
.../servers/v2.42/server-create-req.json | 18 +
.../servers/v2.42/server-create-resp.json | 22 +
.../aggregate-create-start.json | 17 +
.../aggregate-delete-start.json | 19 +
.../instance-create-error.json | 70 +
.../instance-create-start.json | 60 +
.../instance-delete-start.json | 19 +-
.../instance-power_off-end.json | 73 +
.../instance-power_off-start.json | 73 +
.../instance-power_on-end.json | 19 +-
.../instance-power_on-start.json | 19 +-
.../instance-resize-start.json | 17 +-
.../instance-resize_finish-end.json | 73 +
.../instance-resize_finish-start.json | 73 +
.../instance-restore-start.json | 19 +-
.../instance-resume-start.json | 73 +
.../instance-shelve-start.json | 17 +-
.../instance-shelve_offload-end.json | 73 +
.../instance-shelve_offload-start.json | 74 +
.../instance-shutdown-end.json | 73 +
.../instance-shutdown-start.json | 73 +
.../instance-snapshot-end.json | 73 +
.../instance-snapshot-start.json | 73 +
.../instance-suspend-start.json | 17 +-
.../instance-unpause-start.json | 73 +
.../instance-unshelve-end.json | 73 +
.../instance-unshelve-start.json | 73 +
.../instance-volume_swap-end.json | 75 +
.../instance-volume_swap-error.json | 85 +
.../instance-volume_swap-start.json | 75 +
etc/nova/README-policy.yaml.txt | 4 +
etc/nova/api-paste.ini | 13 +-
etc/nova/policy.json | 2 -
etc/nova/rootwrap.d/compute.filters | 6 +
gate/README | 4 +
gate/post_test_hook.sh | 21 +
nova/api/auth.py | 14 +-
nova/api/metadata/base.py | 69 +-
nova/api/metadata/handler.py | 26 +-
nova/api/metadata/password.py | 4 +
nova/api/metadata/vendordata_dynamic.py | 71 +-
nova/api/metadata/vendordata_json.py | 4 +-
nova/api/openstack/__init__.py | 5 +-
nova/api/openstack/api_version_request.py | 17 +-
nova/api/openstack/auth.py | 2 +-
nova/api/openstack/common.py | 41 +-
nova/api/openstack/compute/__init__.py | 8 +-
nova/api/openstack/compute/admin_actions.py | 4 +-
nova/api/openstack/compute/aggregates.py | 26 +-
nova/api/openstack/compute/attach_interfaces.py | 1 -
nova/api/openstack/compute/block_device_mapping.py | 14 +-
nova/api/openstack/compute/cells.py | 2 +-
nova/api/openstack/compute/create_backup.py | 7 +-
nova/api/openstack/compute/deferred_delete.py | 4 +
nova/api/openstack/compute/evacuate.py | 2 +-
nova/api/openstack/compute/extension_info.py | 6 +-
nova/api/openstack/compute/flavor_access.py | 4 -
nova/api/openstack/compute/flavor_manage.py | 2 +-
nova/api/openstack/compute/flavors.py | 5 +-
nova/api/openstack/compute/flavors_extraspecs.py | 2 +-
nova/api/openstack/compute/fping.py | 8 +-
.../api/openstack/compute/hide_server_addresses.py | 2 +-
nova/api/openstack/compute/hypervisors.py | 42 +-
nova/api/openstack/compute/image_metadata.py | 12 +-
.../openstack/compute/instance_usage_audit_log.py | 19 +-
nova/api/openstack/compute/keypairs.py | 10 +
nova/api/openstack/compute/limits.py | 23 +-
nova/api/openstack/compute/migrate_server.py | 2 +-
nova/api/openstack/compute/quota_classes.py | 4 +-
nova/api/openstack/compute/quota_sets.py | 12 +-
nova/api/openstack/compute/remote_consoles.py | 6 +-
nova/api/openstack/compute/rescue.py | 2 +-
.../openstack/compute/rest_api_version_history.rst | 479 +++
.../compute/schemas/block_device_mapping.py | 26 +-
.../compute/schemas/block_device_mapping_v1.py | 2 +-
.../api/openstack/compute/schemas/create_backup.py | 4 +-
nova/api/openstack/compute/schemas/keypairs.py | 23 +
nova/api/openstack/compute/schemas/server_tags.py | 16 +-
nova/api/openstack/compute/schemas/servers.py | 154 +-
nova/api/openstack/compute/security_groups.py | 9 +-
.../openstack/compute/server_external_events.py | 10 +-
nova/api/openstack/compute/server_groups.py | 12 +-
nova/api/openstack/compute/server_metadata.py | 6 +-
nova/api/openstack/compute/server_tags.py | 42 +-
nova/api/openstack/compute/servers.py | 86 +-
nova/api/openstack/compute/simple_tenant_usage.py | 115 +-
nova/api/openstack/compute/suspend_server.py | 4 +-
nova/api/openstack/compute/tenant_networks.py | 6 +-
nova/api/openstack/compute/used_limits.py | 3 +-
nova/api/openstack/compute/versions.py | 4 -
nova/api/openstack/compute/views/addresses.py | 24 +-
nova/api/openstack/compute/views/flavors.py | 17 +-
nova/api/openstack/compute/views/limits.py | 25 +-
nova/api/openstack/compute/views/servers.py | 26 +-
nova/api/openstack/compute/views/usages.py | 28 +
nova/api/openstack/compute/volumes.py | 27 +-
nova/api/openstack/extensions.py | 2 +-
nova/api/openstack/placement/deploy.py | 20 +-
nova/api/openstack/placement/handler.py | 52 +-
nova/api/openstack/placement/handlers/aggregate.py | 76 +
.../api/openstack/placement/handlers/allocation.py | 42 +-
nova/api/openstack/placement/handlers/inventory.py | 88 +-
.../openstack/placement/handlers/resource_class.py | 199 ++
.../placement/handlers/resource_provider.py | 197 +-
nova/api/openstack/placement/handlers/root.py | 3 +-
nova/api/openstack/placement/handlers/usage.py | 18 +-
nova/api/openstack/placement/microversion.py | 98 +
nova/api/openstack/placement/policy.py | 75 +
nova/api/openstack/placement/requestlog.py | 20 +-
.../placement/rest_api_version_history.rst | 83 +
nova/api/openstack/placement/util.py | 36 +-
nova/api/openstack/rest_api_version_history.rst | 417 ---
nova/api/openstack/wsgi.py | 64 +-
nova/api/validation/__init__.py | 160 +-
nova/api/validation/parameter_types.py | 28 +
nova/api/validation/validators.py | 33 +-
nova/availability_zones.py | 8 +-
nova/block_device.py | 20 +-
nova/cells/manager.py | 10 +-
nova/cells/messaging.py | 4 +-
nova/cells/rpcapi.py | 5 +-
nova/cells/state.py | 16 +-
nova/cells/utils.py | 4 +-
nova/cert/manager.py | 1 -
nova/cert/rpcapi.py | 9 +-
nova/cloudpipe/pipelib.py | 2 +-
nova/cmd/all.py | 91 -
nova/cmd/api.py | 3 +-
nova/cmd/api_metadata.py | 4 +-
nova/cmd/cert.py | 2 +-
nova/cmd/common.py | 18 +-
nova/cmd/compute.py | 16 +-
nova/cmd/conductor.py | 3 +-
nova/cmd/dhcpbridge.py | 11 +-
nova/cmd/manage.py | 583 ++--
nova/cmd/network.py | 19 +-
nova/cmd/scheduler.py | 1 +
nova/cmd/status.py | 460 +++
nova/common/config.py | 39 +-
nova/compute/api.py | 486 +++-
nova/compute/arch.py | 162 --
nova/compute/cells_api.py | 13 +-
nova/compute/claims.py | 18 +-
nova/compute/cpumodel.py | 45 -
nova/compute/flavors.py | 16 +-
nova/compute/hv_type.py | 106 -
nova/compute/manager.py | 422 ++-
nova/compute/resource_tracker.py | 411 +--
nova/compute/rpcapi.py | 13 +-
nova/compute/utils.py | 100 +-
nova/compute/vm_mode.py | 87 -
nova/conductor/__init__.py | 21 +-
nova/conductor/api.py | 115 +-
nova/conductor/manager.py | 326 ++-
nova/conductor/rpcapi.py | 26 +-
nova/conf/__init__.py | 14 +-
nova/conf/api.py | 215 +-
nova/conf/availability_zone.py | 8 +-
nova/conf/base.py | 21 +-
nova/conf/cache.py | 3 +-
nova/conf/cells.py | 263 +-
nova/conf/cert.py | 40 -
nova/conf/cinder.py | 8 +-
nova/conf/compute.py | 826 ++++--
nova/conf/conductor.py | 31 +-
nova/conf/console.py | 103 +-
nova/conf/consoleauth.py | 43 +-
nova/conf/database.py | 20 +-
nova/conf/ephemeral_storage.py | 45 +-
nova/conf/exceptions.py | 39 -
nova/conf/flavors.py | 3 +-
nova/conf/floating_ips.py | 47 +-
nova/conf/glance.py | 114 +-
nova/conf/hyperv.py | 34 +-
nova/conf/image_file_url.py | 3 +
nova/conf/ironic.py | 34 +-
nova/conf/key_manager.py | 50 +-
nova/conf/libvirt.py | 577 ++--
nova/conf/network.py | 584 ++--
nova/conf/neutron.py | 3 -
nova/conf/notifications.py | 49 +-
nova/conf/opts.py | 11 -
nova/conf/osapi_v21.py | 32 +-
nova/conf/pci.py | 66 +-
nova/conf/placement.py | 5 +
nova/conf/quota.py | 365 ++-
nova/conf/rpc.py | 56 -
nova/conf/s3.py | 73 -
nova/conf/scheduler.py | 1064 +++----
nova/conf/serial_console.py | 120 +-
nova/conf/service.py | 172 +-
nova/conf/service_token.py | 66 +
nova/conf/spice.py | 163 +-
nova/conf/ssl.py | 3 +-
nova/conf/upgrade_levels.py | 179 +-
nova/conf/vendordata.py | 42 +
nova/conf/virt.py | 326 ---
nova/conf/vmware.py | 5 +
nova/conf/wsgi.py | 43 +-
nova/conf/xenserver.py | 410 ++-
nova/config.py | 5 +
nova/console/fake.py | 52 -
nova/console/manager.py | 11 +-
nova/console/rpcapi.py | 9 +-
nova/console/websocketproxy.py | 20 +-
nova/consoleauth/manager.py | 2 +-
nova/consoleauth/rpcapi.py | 7 +-
nova/context.py | 39 +-
nova/db/api.py | 12 +-
nova/db/sqlalchemy/api.py | 591 ++--
.../migrate_repo/versions/021_placeholder.py | 23 +
.../migrate_repo/versions/022_placeholder.py | 23 +
.../migrate_repo/versions/023_placeholder.py | 23 +
.../migrate_repo/versions/024_placeholder.py | 23 +
.../migrate_repo/versions/025_placeholder.py | 23 +
.../versions/026_add_resource_classes.py | 36 +
.../migrate_repo/versions/027_quotas.py | 124 +
.../028_build_requests_instance_mediumtext.py | 24 +
.../versions/029_placement_aggregates.py | 37 +
.../versions/030_require_cell_setup.py | 60 +
nova/db/sqlalchemy/api_models.py | 143 +-
.../migrate_repo/versions/335_placeholder.py | 23 +
.../migrate_repo/versions/336_placeholder.py | 23 +
.../migrate_repo/versions/337_placeholder.py | 23 +
.../migrate_repo/versions/338_placeholder.py | 23 +
.../migrate_repo/versions/339_placeholder.py | 23 +
.../migrate_repo/versions/340_placeholder.py | 23 +
.../migrate_repo/versions/341_placeholder.py | 23 +
.../migrate_repo/versions/342_placeholder.py | 23 +
.../migrate_repo/versions/343_placeholder.py | 23 +
.../migrate_repo/versions/344_placeholder.py | 23 +
.../345_require_online_migration_completion.py | 68 +
.../versions/346_remove_scheduled_at_column.py | 29 +
.../versions/347_add_updated_at_index.py | 58 +
nova/db/sqlalchemy/models.py | 19 +-
nova/db/sqlalchemy/resource_class_cache.py | 139 +
nova/db/sqlalchemy/utils.py | 20 -
nova/exception.py | 73 +-
nova/exception_wrapper.py | 4 +-
nova/hacking/checks.py | 166 +-
nova/image/api.py | 2 +
nova/image/glance.py | 109 +-
nova/image/s3.py | 410 ---
nova/locale/cs/LC_MESSAGES/nova-log-error.po | 33 +-
nova/locale/cs/LC_MESSAGES/nova-log-info.po | 12 +-
nova/locale/cs/LC_MESSAGES/nova-log-warning.po | 45 +-
nova/locale/cs/LC_MESSAGES/nova.po | 107 +-
nova/locale/de/LC_MESSAGES/nova-log-error.po | 33 +-
nova/locale/de/LC_MESSAGES/nova-log-info.po | 12 +-
nova/locale/de/LC_MESSAGES/nova.po | 192 +-
nova/locale/es/LC_MESSAGES/nova-log-error.po | 33 +-
nova/locale/es/LC_MESSAGES/nova-log-info.po | 12 +-
nova/locale/es/LC_MESSAGES/nova-log-warning.po | 30 +-
nova/locale/es/LC_MESSAGES/nova.po | 114 +-
nova/locale/fr/LC_MESSAGES/nova-log-error.po | 33 +-
nova/locale/fr/LC_MESSAGES/nova-log-info.po | 9 +-
nova/locale/fr/LC_MESSAGES/nova-log-warning.po | 30 +-
nova/locale/fr/LC_MESSAGES/nova.po | 115 +-
nova/locale/it/LC_MESSAGES/nova-log-error.po | 25 +-
nova/locale/it/LC_MESSAGES/nova-log-info.po | 8 +-
nova/locale/it/LC_MESSAGES/nova.po | 113 +-
nova/locale/ja/LC_MESSAGES/nova.po | 112 +-
nova/locale/ko_KR/LC_MESSAGES/nova-log-error.po | 46 +-
nova/locale/ko_KR/LC_MESSAGES/nova-log-info.po | 72 +-
nova/locale/ko_KR/LC_MESSAGES/nova-log-warning.po | 51 +-
nova/locale/ko_KR/LC_MESSAGES/nova.po | 126 +-
nova/locale/pt_BR/LC_MESSAGES/nova-log-error.po | 46 +-
nova/locale/pt_BR/LC_MESSAGES/nova-log-info.po | 12 +-
nova/locale/pt_BR/LC_MESSAGES/nova.po | 114 +-
nova/locale/ru/LC_MESSAGES/nova.po | 113 +-
nova/locale/tr_TR/LC_MESSAGES/nova-log-error.po | 33 +-
nova/locale/tr_TR/LC_MESSAGES/nova-log-info.po | 12 +-
nova/locale/tr_TR/LC_MESSAGES/nova-log-warning.po | 30 +-
nova/locale/tr_TR/LC_MESSAGES/nova.po | 96 +-
nova/locale/zh_CN/LC_MESSAGES/nova-log-error.po | 33 +-
nova/locale/zh_CN/LC_MESSAGES/nova-log-info.po | 12 +-
nova/locale/zh_CN/LC_MESSAGES/nova-log-warning.po | 26 +-
nova/locale/zh_CN/LC_MESSAGES/nova.po | 108 +-
nova/locale/zh_TW/LC_MESSAGES/nova.po | 108 +-
nova/manager.py | 23 +
nova/network/api.py | 2 +
nova/network/floating_ips.py | 2 +-
nova/network/ldapdns.py | 2 +-
nova/network/linux_net.py | 21 +-
nova/network/manager.py | 34 +-
nova/network/model.py | 22 +-
nova/network/neutronv2/api.py | 118 +-
nova/network/os_vif_util.py | 69 +-
nova/network/rpcapi.py | 9 +-
nova/network/security_group/neutron_driver.py | 8 +-
nova/network/security_group/security_group_base.py | 16 +-
nova/notifications/base.py | 25 +-
nova/notifications/objects/aggregate.py | 53 +
nova/notifications/objects/base.py | 6 +-
nova/notifications/objects/exception.py | 4 +-
nova/notifications/objects/flavor.py | 91 +
nova/notifications/objects/instance.py | 135 +-
nova/objects/aggregate.py | 19 +-
nova/objects/base.py | 87 +-
nova/objects/build_request.py | 77 +-
nova/objects/cell_mapping.py | 3 +
nova/objects/compute_node.py | 110 +-
nova/objects/fields.py | 424 ++-
nova/objects/flavor.py | 44 +-
nova/objects/host_mapping.py | 76 +
nova/objects/hv_spec.py | 5 +-
nova/objects/image_meta.py | 11 +-
nova/objects/instance.py | 83 +-
nova/objects/instance_fault.py | 12 +-
nova/objects/instance_group.py | 2 +-
nova/objects/instance_mapping.py | 16 +-
nova/objects/instance_numa_topology.py | 30 +-
nova/objects/keypair.py | 4 +-
nova/objects/migrate_data.py | 64 +-
nova/objects/numa.py | 12 +
nova/objects/pci_device.py | 37 +-
nova/objects/pci_device_pool.py | 2 +-
nova/objects/request_spec.py | 37 +-
nova/objects/resource_provider.py | 740 ++++-
nova/objects/security_group.py | 39 +-
nova/objects/service.py | 5 +-
nova/objects/virt_device_metadata.py | 17 +-
nova/pci/devspec.py | 245 +-
nova/pci/manager.py | 27 +-
nova/pci/request.py | 16 +-
nova/pci/stats.py | 4 +-
nova/pci/utils.py | 6 +-
nova/pci/whitelist.py | 5 -
nova/policies/server_groups.py | 13 +
nova/policy.py | 9 +-
nova/profiler.py | 73 +
nova/quota.py | 46 +-
nova/rpc.py | 56 +-
nova/scheduler/caching_scheduler.py | 2 +-
nova/scheduler/client/report.py | 594 +++-
nova/scheduler/driver.py | 2 +-
nova/scheduler/filter_scheduler.py | 81 +-
.../aggregate_image_properties_isolation.py | 14 +-
.../filters/aggregate_instance_extra_specs.py | 4 +-
.../filters/compute_capabilities_filter.py | 2 +-
nova/scheduler/filters/image_props_filter.py | 10 +-
nova/scheduler/filters/io_ops_filter.py | 8 +-
nova/scheduler/filters/isolated_hosts_filter.py | 8 +-
nova/scheduler/filters/num_instances_filter.py | 16 +-
nova/scheduler/filters/numa_topology_filter.py | 27 +-
nova/scheduler/filters/pci_passthrough_filter.py | 5 +-
nova/scheduler/filters/trusted_filter.py | 10 +-
nova/scheduler/host_manager.py | 47 +-
nova/scheduler/ironic_host_manager.py | 20 +-
nova/scheduler/manager.py | 46 +-
nova/scheduler/rpcapi.py | 5 +-
nova/scheduler/scheduler_options.py | 98 -
nova/scheduler/utils.py | 11 +-
nova/scheduler/weights/affinity.py | 19 +-
nova/scheduler/weights/disk.py | 2 +-
nova/scheduler/weights/io_ops.py | 2 +-
nova/scheduler/weights/ram.py | 2 +-
nova/service.py | 56 +-
nova/service_auth.py | 39 +
nova/servicegroup/drivers/db.py | 4 +-
nova/servicegroup/drivers/mc.py | 2 +-
nova/test.py | 105 +-
.../functional/api/openstack/placement/fixtures.py | 44 +-
.../api/openstack/placement/gabbits/aggregate.yaml | 104 +
.../openstack/placement/gabbits/allocations.yaml | 29 +-
.../api/openstack/placement/gabbits/inventory.yaml | 170 +-
.../openstack/placement/gabbits/microversion.yaml | 4 +-
.../placement/gabbits/resource-classes.yaml | 217 ++
.../gabbits/resource-provider-aggregates.yaml | 106 +
.../gabbits/resource-provider-resources-query.yaml | 136 +
.../placement/gabbits/resource-provider.yaml | 36 +-
.../api/openstack/placement/gabbits/unicode.yaml | 32 -
.../api/openstack/placement/gabbits/usage.yaml | 2 +
.../placement/gabbits/with-allocations.yaml | 9 +-
.../api/openstack/placement/test_placement_api.py | 14 +
.../api/openstack/placement/test_report_client.py | 30 +-
.../v2.35/keypairs-list-user2-resp.json.tpl | 2 +-
.../limits/v2.39/limit-get-resp.json.tpl | 20 +
.../v2.41/aggregate-add-host-post-req.json.tpl | 5 +
.../v2.41/aggregate-metadata-post-req.json.tpl | 9 +
.../v2.41/aggregate-post-req.json.tpl | 7 +
.../v2.41/aggregate-post-resp.json.tpl | 12 +
.../v2.41/aggregate-remove-host-post-req.json.tpl | 5 +
.../v2.41/aggregate-update-post-req.json.tpl | 7 +
.../v2.41/aggregate-update-post-resp.json.tpl | 16 +
.../v2.41/aggregates-add-host-post-resp.json.tpl | 18 +
.../v2.41/aggregates-get-resp.json.tpl | 16 +
.../v2.41/aggregates-list-get-resp.json.tpl | 20 +
.../v2.41/aggregates-metadata-post-resp.json.tpl | 17 +
.../aggregates-remove-host-post-resp.json.tpl | 16 +
.../hypervisors-detail-resp.json.tpl | 2 +-
.../os-hypervisors/hypervisors-show-resp.json.tpl | 2 +-
.../v2.28/hypervisors-detail-resp.json.tpl | 2 +-
.../v2.28/hypervisors-show-resp.json.tpl | 2 +-
.../v2.40/simple-tenant-usage-get-detail.json.tpl | 35 +
.../simple-tenant-usage-get-specific.json.tpl | 33 +
.../v2.40/simple-tenant-usage-get.json.tpl | 19 +
.../v2.23/migrations-get.json.tpl | 4 +-
.../v2.23/migrations-index.json.tpl | 4 +-
.../servers/server-action-addfloatingip.json.tpl | 6 +
.../servers/server-create-req-v237.json.tpl | 2 +-
.../servers/v2.42/server-create-req.json.tpl | 18 +
.../servers/v2.42/server-create-resp.json.tpl | 22 +
.../test_assisted_volume_snapshots.py | 2 +-
.../functional/db/test_resource_class_cache.py | 99 +
.../functional/libvirt/test_pci_sriov_servers.py | 332 +++
.../notification_sample_base.py | 52 +-
.../test_exception_notification.py | 6 +-
.../functional/regressions/test_bug_1522536.py | 10 +-
.../functional/regressions/test_bug_1541691.py | 4 -
.../functional/regressions/test_bug_1548980.py | 10 +-
.../functional/regressions/test_bug_1554631.py | 10 +-
.../functional/regressions/test_bug_1558866.py | 1 +
.../functional/regressions/test_bug_1595962.py | 145 +
.../functional/regressions/test_bug_1620248.py | 5 +-
.../functional/regressions/test_bug_1627838.py | 32 +
.../unit/api/openstack/compute/test_access_ips.py | 3 +-
.../api/openstack/compute/test_admin_password.py | 2 +-
.../unit/api/openstack/compute/test_aggregates.py | 29 +-
.../openstack/compute/test_attach_interfaces.py | 77 +-
.../openstack/compute/test_availability_zone.py | 38 +-
.../openstack/compute/test_block_device_mapping.py | 61 +
.../compute/test_block_device_mapping_v1.py | 79 +-
.../unit/api/openstack/compute/test_cloudpipe.py | 153 +-
.../api/openstack/compute/test_config_drive.py | 40 +-
.../api/openstack/compute/test_console_output.py | 3 +-
.../unit/api/openstack/compute/test_consoles.py | 6 +-
.../api/openstack/compute/test_create_backup.py | 32 +
.../api/openstack/compute/test_deferred_delete.py | 25 +
.../unit/api/openstack/compute/test_disk_config.py | 20 +-
.../unit/api/openstack/compute/test_evacuate.py | 22 +-
.../compute/test_extended_availability_zone.py | 21 +-
.../openstack/compute/test_extended_hypervisors.py | 76 +-
.../api/openstack/compute/test_extended_ips.py | 10 +-
.../api/openstack/compute/test_extended_ips_mac.py | 5 +-
.../compute/test_extended_server_attributes.py | 10 +-
.../api/openstack/compute/test_extended_status.py | 12 +-
.../api/openstack/compute/test_extended_volumes.py | 4 +-
.../unit/api/openstack/compute/test_extensions.py | 3 -
.../api/openstack/compute/test_flavor_disabled.py | 61 +-
.../api/openstack/compute/test_flavor_manage.py | 11 +-
.../unit/api/openstack/compute/test_flavor_rxtx.py | 62 +-
.../unit/api/openstack/compute/test_flavor_swap.py | 60 +-
.../api/openstack/compute/test_flavorextradata.py | 86 +-
.../unit/api/openstack/compute/test_flavors.py | 219 +-
.../openstack/compute/test_flavors_extra_specs.py | 2 +-
.../api/openstack/compute/test_floating_ip_dns.py | 95 +-
.../openstack/compute/test_floating_ip_pools.py | 12 +-
.../api/openstack/compute/test_floating_ips.py | 15 +-
.../compute/test_hide_server_addresses.py | 31 +-
.../unit/api/openstack/compute/test_hypervisors.py | 81 +-
.../api/openstack/compute/test_image_metadata.py | 25 +
.../unit/api/openstack/compute/test_image_size.py | 22 +-
.../unit/api/openstack/compute/test_images.py | 5 +-
.../api/openstack/compute/test_instance_actions.py | 10 +-
.../unit/api/openstack/compute/test_keypairs.py | 48 +-
.../unit/api/openstack/compute/test_limits.py | 33 +
.../api/openstack/compute/test_microversions.py | 32 +-
.../api/openstack/compute/test_migrate_server.py | 2 +-
.../unit/api/openstack/compute/test_migrations.py | 8 +-
.../api/openstack/compute/test_multiple_create.py | 66 +-
.../unit/api/openstack/compute/test_networks.py | 12 +-
.../compute/test_neutron_security_groups.py | 26 +-
.../api/openstack/compute/test_plugin_framework.py | 2 +-
.../unit/api/openstack/compute/test_quotas.py | 59 +-
.../unit/api/openstack/compute/test_rescue.py | 63 +-
.../api/openstack/compute/test_scheduler_hints.py | 4 +-
.../compute/test_security_group_default_rules.py | 1 +
.../api/openstack/compute/test_security_groups.py | 20 +-
.../api/openstack/compute/test_server_actions.py | 293 +-
.../openstack/compute/test_server_diagnostics.py | 3 +-
.../compute/test_server_external_events.py | 9 +-
.../openstack/compute/test_server_group_quotas.py | 2 +-
.../api/openstack/compute/test_server_groups.py | 140 +-
.../api/openstack/compute/test_server_metadata.py | 15 +-
.../openstack/compute/test_server_migrations.py | 14 +-
.../unit/api/openstack/compute/test_server_tags.py | 14 +-
.../api/openstack/compute/test_server_usage.py | 3 +-
.../unit/api/openstack/compute/test_serversV21.py | 376 ++-
.../unit/api/openstack/compute/test_shelve.py | 59 +-
.../openstack/compute/test_simple_tenant_usage.py | 141 +-
.../unit/api/openstack/compute/test_snapshots.py | 21 +-
.../api/openstack/compute/test_tenant_networks.py | 75 +-
.../unit/api/openstack/compute/test_urlmap.py | 21 +-
.../unit/api/openstack/compute/test_used_limits.py | 4 +-
.../unit/api/openstack/compute/test_user_data.py | 17 +-
.../unit/api/openstack/compute/test_versions.py | 23 +-
.../openstack/compute/test_virtual_interfaces.py | 4 +
.../unit/api/openstack/compute/test_volumes.py | 189 +-
.../unit/api/openstack/placement/test_handler.py | 47 +-
.../api/openstack/placement/test_microversion.py | 107 +
.../api/openstack/placement/test_requestlog.py | 15 +-
.../unit/api/openstack/placement/test_util.py | 93 +
.../unit/conductor/tasks/test_live_migrate.py | 237 +-
.../network/security_group/test_neutron_driver.py | 6 +-
.../unit/notifications/objects/test_flavor.py | 142 +
.../notifications/objects/test_notification.py | 31 +-
.../unit/objects/test_instance_device_metadata.py | 13 +-
.../unit/objects/test_instance_numa_topology.py | 47 +-
.../scheduler/filters/test_affinity_filters.py | 11 +-
...aggregate_image_properties_isolation_filters.py | 39 +-
.../test_aggregate_instance_extra_specs_filters.py | 8 +-
.../filters/test_availability_zone_filters.py | 6 +-
.../unit/scheduler/filters/test_disk_filters.py | 3 -
.../scheduler/filters/test_image_props_filters.py | 174 +-
.../unit/scheduler/filters/test_io_ops_filters.py | 8 +-
.../filters/test_isolated_hosts_filter.py | 7 +-
.../filters/test_num_instances_filters.py | 8 +-
.../filters/test_numa_topology_filters.py | 21 +-
.../filters/test_pci_passthrough_filters.py | 22 +-
.../unit/scheduler/test_ironic_host_manager.py | 60 +-
.../scheduler/weights/test_weights_affinity.py | 18 +-
.../unit/scheduler/weights/test_weights_disk.py | 6 +-
.../scheduler/weights/test_weights_ioopsweight.py | 3 +-
.../unit/scheduler/weights/test_weights_ram.py | 6 +-
.../unit/servicegroup/test_db_servicegroup.py | 34 +-
.../unit/virt/hyperv/test_block_device_manager.py | 69 +
.../unit/virt/hyperv/test_livemigrationops.py | 13 +-
.../unit/virt/libvirt/storage/test_dmcrypt.py | 1 -
.../unit/virt/libvirt/volume/test_fibrechannel.py | 14 +-
.../unit/virt/libvirt/volume/test_glusterfs.py | 17 +-
.../unit/virt/libvirt/volume/test_vzstorage.py | 17 +-
.../unit/virt/xenapi/image/test_bittorrent.py | 21 +-
.../unit/virt/xenapi/image/test_vdi_through_dev.py | 2 +-
.../xenapi/plugins/test_nova_plugin_version.py | 28 -
.../virt/xenapi/plugins/test_partition_utils.py | 108 -
.../unit/volume/encryptors/test_cryptsetup.py | 40 +-
nova/utils.py | 34 +-
nova/virt/block_device.py | 32 +-
nova/virt/configdrive.py | 5 +
nova/virt/diagnostics.py | 3 +-
nova/virt/disk/api.py | 6 +-
nova/virt/disk/vfs/guestfs.py | 24 +-
nova/virt/driver.py | 32 +-
nova/virt/fake.py | 32 +-
nova/virt/hardware.py | 720 ++---
nova/virt/hyperv/block_device_manager.py | 42 +
nova/virt/hyperv/constants.py | 23 +-
nova/virt/hyperv/driver.py | 27 +-
nova/virt/hyperv/hostops.py | 55 +-
nova/virt/hyperv/imagecache.py | 37 +-
nova/virt/hyperv/livemigrationops.py | 6 +-
nova/virt/hyperv/migrationops.py | 22 +-
nova/virt/hyperv/vif.py | 54 +-
nova/virt/hyperv/vmops.py | 294 +-
nova/virt/hyperv/volumeops.py | 557 ++--
nova/virt/images.py | 14 +-
nova/virt/ironic/client_wrapper.py | 24 +-
nova/virt/ironic/driver.py | 452 ++-
nova/virt/ironic/patcher.py | 8 +-
nova/virt/libvirt/blockinfo.py | 73 +-
nova/virt/libvirt/config.py | 96 +-
nova/virt/libvirt/designer.py | 5 +-
nova/virt/libvirt/driver.py | 1597 +++++-----
nova/virt/libvirt/firewall.py | 16 +-
nova/virt/libvirt/guest.py | 237 +-
nova/virt/libvirt/host.py | 231 +-
nova/virt/libvirt/imagebackend.py | 126 +-
nova/virt/libvirt/imagecache.py | 15 +-
nova/virt/libvirt/migration.py | 121 +-
nova/virt/libvirt/storage/lvm.py | 6 +-
nova/virt/libvirt/storage/rbd_utils.py | 30 +-
nova/virt/libvirt/utils.py | 67 +-
nova/virt/libvirt/vif.py | 209 +-
nova/virt/libvirt/volume/aoe.py | 4 +-
nova/virt/libvirt/volume/disco.py | 4 +-
nova/virt/libvirt/volume/fibrechannel.py | 4 +-
nova/virt/libvirt/volume/fs.py | 4 +-
nova/virt/libvirt/volume/hgst.py | 4 +-
nova/virt/libvirt/volume/iscsi.py | 4 +-
nova/virt/libvirt/volume/net.py | 76 +-
nova/virt/libvirt/volume/quobyte.py | 4 +-
nova/virt/libvirt/volume/scaleio.py | 4 +-
nova/virt/libvirt/volume/scality.py | 8 +-
nova/virt/libvirt/volume/volume.py | 22 +-
nova/virt/libvirt/volume/vzstorage.py | 2 +-
nova/virt/netutils.py | 10 +
nova/virt/vmwareapi/constants.py | 26 +-
nova/virt/vmwareapi/driver.py | 26 +-
nova/virt/vmwareapi/host.py | 12 +-
nova/virt/vmwareapi/images.py | 7 +-
nova/virt/vmwareapi/network_util.py | 2 +-
nova/virt/vmwareapi/vim_util.py | 4 +-
nova/virt/vmwareapi/vm_util.py | 9 +-
nova/virt/vmwareapi/vmops.py | 26 +-
nova/virt/watchdog_actions.py | 24 -
nova/virt/xenapi/agent.py | 18 +-
nova/virt/xenapi/client/__init__.py | 0
nova/virt/xenapi/client/objects.py | 148 -
nova/virt/xenapi/client/session.py | 351 ---
nova/virt/xenapi/driver.py | 72 +-
nova/virt/xenapi/fake.py | 74 +-
nova/virt/xenapi/firewall.py | 5 +-
nova/virt/xenapi/host.py | 20 +-
nova/virt/xenapi/image/bittorrent.py | 2 +-
nova/virt/xenapi/image/glance.py | 10 +-
nova/virt/xenapi/pool.py | 2 +-
nova/virt/xenapi/vif.py | 126 +-
nova/virt/xenapi/vm_utils.py | 46 +-
nova/virt/xenapi/vmops.py | 150 +-
nova/virt/xenapi/volume_utils.py | 7 +-
nova/virt/xenapi/volumeops.py | 13 +-
nova/volume/cinder.py | 47 +-
nova/volume/encryptors/__init__.py | 44 +-
nova/volume/encryptors/cryptsetup.py | 25 +-
nova/volume/encryptors/luks.py | 44 +
nova/wsgi.py | 4 +-
nova/wsgi/nova-api.py | 6 +
plugins/xenserver/xenapi/README | 8 -
.../xenapi/etc/xapi.d/plugins/_bittorrent_seeder | 129 -
plugins/xenserver/xenapi/etc/xapi.d/plugins/agent | 266 --
.../xenserver/xenapi/etc/xapi.d/plugins/bandwidth | 53 -
.../xenserver/xenapi/etc/xapi.d/plugins/bittorrent | 327 ---
.../xenapi/etc/xapi.d/plugins/config_file | 34 -
.../xenserver/xenapi/etc/xapi.d/plugins/console | 89 -
plugins/xenserver/xenapi/etc/xapi.d/plugins/glance | 632 ----
plugins/xenserver/xenapi/etc/xapi.d/plugins/ipxe | 140 -
plugins/xenserver/xenapi/etc/xapi.d/plugins/kernel | 143 -
.../xenserver/xenapi/etc/xapi.d/plugins/migration | 84 -
.../xenapi/etc/xapi.d/plugins/nova_plugin_version | 43 -
.../xenapi/etc/xapi.d/plugins/partition_utils.py | 87 -
.../xenapi/etc/xapi.d/plugins/pluginlib_nova.py | 147 -
.../xenserver/xenapi/etc/xapi.d/plugins/utils.py | 519 ----
.../xenapi/etc/xapi.d/plugins/workarounds | 53 -
.../xenserver/xenapi/etc/xapi.d/plugins/xenhost | 626 ----
.../xenapi/etc/xapi.d/plugins/xenstore.py | 218 --
...d-api-config-to-api-group-af20a57a9e3e1b85.yaml | 26 +
...nfig-to-consoleauth-group-aaa4d9ab8db7c78a.yaml | 6 +
...cors-to-versions-pipeline-56277ca66e796569.yaml | 7 +
...figdrive-network-metadata-4e8f06dfd6d6d6d4.yaml | 7 +
...add-ivs-filter-to-compute-093734c1c5348e99.yaml | 5 +
...epage-support-for-aarch64-14279c307e44b147.yaml | 4 +
.../add-osprofiler-support-b04f1e4cfa550440.yaml | 27 +
...d-pci-config-to-pci-group-5648cc0f307f24f8.yaml | 9 +
...config-to-scheduler-group-c83bc770e67ac115.yaml | 35 +
...swap-volume-notifications-bb7e14230fccfd6e.yaml | 9 +
...r-list-filter-sort-params-2ae766d03ba895e5.yaml | 115 +
.../notes/archive-all-db-aadf2ce0394c24fa.yaml | 7 +
...cate-image-meta-proxy-api-7f21e1e6a94944ee.yaml | 9 +
.../bp-ephemeral-disk-ploop-a9b3af1f36ae42ed.yaml | 3 +
.../bp-flavor-notifications-7b3a56509c3f138d.yaml | 11 +
.../bp-hyperv-storage-qos-d559634e5df0f1d4.yaml | 17 +
.../bp-hyperv-use-os-brick-bf576a5bc97f0ea2.yaml | 11 +
.../bp-inject-nmi-ironic-be5405065b6dd890.yaml | 5 +
.../bp-soft-reboot-poweroff-203e0f33e3b8042e.yaml | 6 +
.../bp-soft-reboot-poweroff-6215d216a6aedafa.yaml | 5 +
...o-instance-admin-password-8278cad73f3be98d.yaml | 4 +
.../bp-xenapi-vif-hotplug-2a2b913c49123fe0.yaml | 4 +
.../notes/bug-1604116-87a823c3c165d057.yaml | 7 +
.../notes/bug-1633518-0646722faac1a4b9.yaml | 7 +
.../notes/bug-1636157-2148ea3675969a5d.yaml | 10 +
.../notes/bug-1661258-ee202843157f6a27.yaml | 9 +
.../notes/bug-1662699-06203e7262e02aa6.yaml | 10 +
.../notes/bug-hyperv-1629040-e1eb35a7b31d9af8.yaml | 5 +
...ll-id-db-sync-nova-manage-8504b54dd115a2e9.yaml | 5 +-
...-single-migration-command-0e98d66e31e02a50.yaml | 7 +-
...deprecate-compute-options-011c9a454182a8bf.yaml | 7 +
...recate-console_driver-opt-26475263aad3b655.yaml | 9 +
...igration-progress-timeout-b4640047dc5c8eed.yaml | 16 +
...precate-nova-network-opts-b6da6af4497ef4ca.yaml | 41 +
...precate-remap_vbd_dev-opt-c1690c5b447f0053.yaml | 5 +
.../deprecate-topic-opts-68b1a752dba1eb24.yaml | 13 +
...cate-vmware-wsdl-location-97af576f53fef771.yaml | 7 +
...nserver-vif-driver-option-12eb279c0c93c157.yaml | 13 +
...recate_live_migration_uri-8ae6656664db5ba0.yaml | 13 +
...xenapi_torrent_downloader-ebcbb3d5f929d893.yaml | 16 +
...fault-cell0-db-connection-f9717053cc34778e.yaml | 10 +
...rtual-device-role-tagging-7cfdb14f2ba4fbcf.yaml | 10 +
...flavor_hw_watchdog_action-512d79155c91cb84.yaml | 6 +
.../notes/hyper-v-ovs-vif-348fca68db4918fe.yaml | 10 +
.../hyper-v-pci-passthrough-babf104d6bc2baa6.yaml | 27 +
.../hyper-v-set-boot-order-1e76b08ca6783add.yaml | 8 +
.../hyper-v-vnuma-support-ffedfaadac91bbac.yaml | 15 +
.../hyperv-uefi-secure-boot-a2a617ac2c313afd.yaml | 20 +
...yption-provider-constants-a7cd0ce58da2bae8.yaml | 14 +
...ic-serial-console-support-82632bd4db6d1fda.yaml | 9 +
...itch-to-vif-attach-detach-cc8583c604510f95.yaml | 6 +
...rt-script-with-empty-path-2b49caa68b05278d.yaml | 27 +
.../notes/live-migration-vz-3236af37a522e411.yaml | 4 +
.../notes/minimum_vc_version-0695a79dc1df3caa.yaml | 7 +
...sole-opt-to-console-group-de693ac26bc9b090.yaml | 5 +
...ts-to-notifications-group-7dc9e76673472b8b.yaml | 11 +
...tion-transformation-ocata-ec42281e9df6019c.yaml | 23 +
...-network-only-for-cellsv1-dfb72fb1d3339bb3.yaml | 6 +
...nova-status-upgrade-check-8190e6061680ff1f.yaml | 12 +
...-bug-1635008-rbd-vol-auth-83277b02ea87e16e.yaml | 11 +
.../ocata-cellsv2-support-4b3b5e70e76bc756.yaml | 17 +
...ta-drop-cinder-v1-support-e383bc3623dbdb21.yaml | 3 +
.../ocata-requires-cellv2-96bd243be874d77f.yaml | 12 +
...ta-use-neutron-by-default-7a836e65e1c3ccaf.yaml | 9 +
.../notes/ocata_prelude-cfa8793d07f963e7.yaml | 41 +
.../pagination-for-usage-a313397f9a7e9a70.yaml | 17 +
...h-whitelist-regex-support-5004c5db4fbe09c8.yaml | 5 +
...pi-endpoint-interface-set-29af8b9400ce7775.yaml | 9 +
.../placement-api-member-of-d8a08d0d0c5700d7.yaml | 14 +
...er-providers-by-resources-0ab51c9766fe654f.yaml | 19 +
...t-custom-resource-classes-a3f2175772983b0a.yaml | 10 +
.../policy-discover-cli-a14a115cacbdc9c6.yaml | 2 +-
.../notes/quota-config-group-8028127074d43c48.yaml | 26 +
...remove-deprecated-cmd-all-c91c8fc2f3a56a97.yaml | 5 +
...eprecated-compute-options-dbf2be75d6bdbcc8.yaml | 6 +
...-deprecated-glance-v1-opt-976e680457f8b2c7.yaml | 5 +
.../notes/remove-image-s3-ae6164a0d524602f.yaml | 3 +
...ntegration-bridge-default-0b838f0816829b68.yaml | 9 +
...on_config_location-option-c669e8c9867ce0fb.yaml | 5 +
...ated_barbican_config_opts-7eb4e801d0ac252f.yaml | 10 +
...ted_cells_driver_conf_opt-dbb80137b3632500.yaml | 6 +
...cated_cert_topic_conf_opt-6402aeca8629da95.yaml | 4 +
...ecated_exception_conf_opt-94bfea599c2ebf5c.yaml | 5 +
...eprecated_ironic_conf_opt-0bff87f16412d4b8.yaml | 11 +
...ce_manager_config_options-2e1eaae92ea82d84.yaml | 15 +
...pci-parent_addr-migration-f7dfa2b441cf30e8.yaml | 7 +
...ders_scheduler_db_filters-16b2ed3da00c51dd.yaml | 18 +
...-attribute-for-aggregates-70d9f733f86fb1a3.yaml | 5 +
.../rm-conductor-local-apis-f121afaee99f6fa4.yaml | 9 +
...on-snapshot_name_template-1d8b1ee431d30e4d.yaml | 6 +
...available_monitors-option-c8d0b81304452786.yaml | 6 +
...nova-manage-cmds-ocata-b3-813d3bcecfb939e2.yaml | 9 +
...ed-nova-manage-cmds-ocata-bada0a4dbbc50eb6.yaml | 6 +
...sched-host-mgr-class-load-2a86749a38f0688d.yaml | 4 +-
...d_remove_classpath_import-5d0f48eb388e6948.yaml | 6 +
...eduler-can-discover-hosts-4b799cbd14dbc7dc.yaml | 13 +
...on_live-migration_failure-d1f6f29ceafdd598.yaml | 9 +
...through-neutron-port-vlan-7d19df7ac6e2730a.yaml | 13 +
...pported-virtuozzo-version-569db9259a7ee579.yaml | 5 +
...idate-expired-user-tokens-57a265cb4ee4ba6f.yaml | 14 +
...a-reboot-cache-boot-roles-6051fabcd4981928.yaml | 8 +
...rdata-reboot-hard-failure-42beeb1044680a50.yaml | 7 +
...vendordata-service-tokens-876505167395a56d.yaml | 14 +
...verbose-online-migrations-bd6f57e43328d554.yaml | 6 +
.../vif-vrouter-multiqueue-077785e1a2d242a0.yaml | 7 +
.../virtuozzo_vif_types-6e50217b295a1589.yaml | 5 +
...nserver-plugin-extensions-57e01c9473073d0a.yaml | 6 +
releasenotes/source/conf.py | 7 +-
releasenotes/source/index.rst | 9 +-
releasenotes/source/newton.rst | 7 +
requirements.txt | 48 +-
setup.cfg | 6 +-
test-requirements.txt | 28 +-
tools/hooks/post_test_hook.sh | 1 +
tools/pretty_tox3.sh | 8 +-
tools/releasenotes_tox.sh | 2 +-
tools/test-setup.sh | 54 +
tools/xenserver/destroy_cached_images.py | 14 +-
tools/xenserver/stress_test.py | 12 +
tox.ini | 56 +-
1151 files changed, 47065 insertions(+), 29127 deletions(-)
Requirements updates
--------------------
diff --git a/requirements.txt b/requirements.txt
index a728c7e..3183f7a 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -5 +5 @@
-pbr>=1.6 # Apache-2.0
+pbr>=1.8 # Apache-2.0
@@ -7 +6,0 @@ SQLAlchemy<1.1.0,>=1.0.10 # MIT
-boto>=2.32.1 # MIT
@@ -10,3 +9,3 @@ eventlet!=0.18.3,>=0.18.2 # MIT
-Jinja2>=2.8 # BSD License (3 clause)
-keystonemiddleware!=4.1.0,!=4.5.0,>=4.0.0 # Apache-2.0
-lxml>=2.3 # BSD
+Jinja2!=2.9.0,!=2.9.1,!=2.9.2,!=2.9.3,!=2.9.4,>=2.8 # BSD License (3 clause)
+keystonemiddleware>=4.12.0 # Apache-2.0
+lxml!=3.7.0,>=2.3 # BSD
@@ -16 +15 @@ cryptography!=1.3.0,>=1.0 # BSD/Apache-2.0
-WebOb>=1.2.3 # MIT
+WebOb>=1.6.0 # MIT
@@ -20 +19 @@ Paste # MIT
-PrettyTable<0.8,>=0.7 # BSD
+PrettyTable<0.8,>=0.7.1 # BSD
@@ -25,0 +25 @@ Babel>=2.3.4 # BSD
+enum34;python_version=='2.7' or python_version=='2.6' or python_version=='3.3' # BSD
@@ -29 +29 @@ python-cinderclient!=1.7.0,!=1.7.1,>=1.6.0 # Apache-2.0
-keystoneauth1>=2.10.0 # Apache-2.0
+keystoneauth1>=2.18.0 # Apache-2.0
@@ -31,2 +31,2 @@ python-neutronclient>=5.1.0 # Apache-2.0
-python-glanceclient!=2.4.0,>=2.3.0 # Apache-2.0
-requests>=2.10.0 # Apache-2.0
+python-glanceclient>=2.5.0 # Apache-2.0
+requests!=2.12.2,>=2.10.0 # Apache-2.0
@@ -34 +34 @@ six>=1.9.0 # MIT
-stevedore>=1.16.0 # Apache-2.0
+stevedore>=1.17.1 # Apache-2.0
@@ -39 +39 @@ oslo.concurrency>=3.8.0 # Apache-2.0
-oslo.config>=3.14.0 # Apache-2.0
+oslo.config!=3.18.0,>=3.14.0 # Apache-2.0
@@ -41 +41 @@ oslo.context>=2.9.0 # Apache-2.0
-oslo.log>=1.14.0 # Apache-2.0
+oslo.log>=3.11.0 # Apache-2.0
@@ -44,2 +44,2 @@ oslo.serialization>=1.10.0 # Apache-2.0
-oslo.utils>=3.16.0 # Apache-2.0
-oslo.db!=4.13.1,!=4.13.2,>=4.10.0 # Apache-2.0
+oslo.utils>=3.18.0 # Apache-2.0
+oslo.db>=4.15.0 # Apache-2.0
@@ -47,2 +47,2 @@ oslo.rootwrap>=5.0.0 # Apache-2.0
-oslo.messaging>=5.2.0 # Apache-2.0
-oslo.policy>=1.9.0 # Apache-2.0
+oslo.messaging>=5.14.0 # Apache-2.0
+oslo.policy>=1.17.0 # Apache-2.0
@@ -52 +52 @@ oslo.service>=1.10.0 # Apache-2.0
-rfc3986>=0.2.2 # Apache-2.0
+rfc3986>=0.3.1 # Apache-2.0
@@ -54,5 +54,5 @@ oslo.middleware>=3.0.0 # Apache-2.0
-psutil<2.0.0,>=1.1.1 # BSD
-oslo.versionedobjects>=1.13.0 # Apache-2.0
-os-brick>=1.6.1 # Apache-2.0
-os-vif>=1.1.0 # Apache-2.0
-os-win>=0.2.3 # Apache-2.0
+psutil>=3.0.1 # BSD
+oslo.versionedobjects>=1.17.0 # Apache-2.0
+os-brick>=1.8.0 # Apache-2.0
+os-vif>=1.4.0 # Apache-2.0
+os-win>=1.4.0 # Apache-2.0
@@ -61 +61 @@ microversion-parse>=0.1.2 # Apache-2.0
-wsgi_intercept>=0.6.1 # MIT License
+os-xenapi>=0.1.1 # Apache-2.0
diff --git a/test-requirements.txt b/test-requirements.txt
index 249bca6..0af1013 100644
--- a/test-requirements.txt
+++ b/test-requirements.txt
@@ -6 +6,2 @@ hacking<0.11,>=0.10.0
-coverage>=3.6 # Apache-2.0
+coverage>=4.0 # Apache-2.0
+ddt>=1.0.1 # MIT
@@ -9 +10 @@ mock>=2.0 # BSD
-mox3>=0.7.0 # Apache-2.0
+mox3!=0.19.0,>=0.7.0 # Apache-2.0
@@ -11 +12 @@ psycopg2>=2.5 # LGPL/ZPL
-PyMySQL!=0.7.7,>=0.6.2 # MIT License
+PyMySQL>=0.7.6 # MIT License
@@ -13 +14 @@ python-barbicanclient>=4.0.0 # Apache-2.0
-python-ironicclient>=1.6.0 # Apache-2.0
+python-ironicclient>=1.11.0 # Apache-2.0
@@ -15,2 +16,2 @@ python-subunit>=0.0.18 # Apache-2.0/BSD
-requests-mock>=1.0 # Apache-2.0
-sphinx!=1.3b1,<1.3,>=1.2.1 # BSD
+requests-mock>=1.1 # Apache-2.0
+sphinx!=1.3b1,<1.4,>=1.2.1 # BSD
@@ -18 +19 @@ os-api-ref>=1.0.0 # Apache-2.0
-oslosphinx!=3.4.0,>=2.5.0 # Apache-2.0
+oslosphinx>=4.7.0 # Apache-2.0
@@ -20 +21,2 @@ oslotest>=1.10.0 # Apache-2.0
-os-testr>=0.7.0 # Apache-2.0
+os-testr>=0.8.0 # Apache-2.0
+osprofiler>=1.4.0 # Apache-2.0
@@ -22,0 +25 @@ testresources>=0.2.4 # Apache-2.0/BSD
+testscenarios>=0.4 # Apache-2.0/BSD
@@ -27 +30 @@ openstackdocstheme>=1.5.0 # Apache-2.0
-gabbi>=1.24.0 # Apache-2.0
+gabbi>=1.26.1 # Apache-2.0
@@ -30 +33 @@ gabbi>=1.24.0 # Apache-2.0
-oslo.vmware>=2.11.0 # Apache-2.0
+oslo.vmware>=2.17.0 # Apache-2.0
@@ -33 +36,4 @@ oslo.vmware>=2.11.0 # Apache-2.0
-reno>=1.8.0 # Apache2
+reno>=1.8.0 # Apache-2.0
+
+# placement functional tests
+wsgi-intercept>=1.4.1 # MIT License
1
0
We are amped to announce the release of:
zaqar 4.0.0: OpenStack Queuing and Notification Service
This release is part of the ocata release series.
Download the package from:
https://tarballs.openstack.org/zaqar/
For more details, please see below.
4.0.0
^^^^^
New Features
* The OSprofiler is integrated to Zaqar in Ocata. It is a library
from oslo. It aims to analyse the performance bottleneck issue by
making possible to generate one trace per request affecting all
involved services and build a tree of calls.
* A new queue action is added so that users can purge a queue
quickly. That means all the messages and subscriptions will be
deleted automatically but the metadata of the queue will be kept.
* Add migration support for Zaqar's sqlalchemy storage driver.
* This feature is the third part of subscription confirmation
feature. Support to send email to subscriber if confirmation is
needed. To use this feature, user need to set the config option
"external_confirmation_url",
"subscription_confirmation_email_template" and
"unsubscribe_confirmation_email_template". The confirmation page url
that will be used in email subscription confirmation before
notification, this page is not hosted in Zaqar server, user should
build their own web service to provide this web page. The
subscription_confirmation_email_template let user to customize the
subscription confimation email content, including topic, body and
sender. The unsubscribe_confirmation_email_template let user to
customize the unsubscribe confimation email content, including
topic, body and sender too.
Changes in zaqar 3.0.0.0rc1..4.0.0
----------------------------------
f196f9a Subscription Confirmation Support-3
5a6823a Update .gitreview for stable/ocata
1ddd9ca Fix sqlalchemy migration
90dedee Enable swift in the gate hook
83bbd7b Updated from global requirements
a7dfeaf Switch to decorators.idempotent_id
8477f95 Add validation of limit value in querying flavors and poolss
ef7110c Add the release note for OSprofiler feature
95b2290 Remove py34 support in favour of py35
dfaa49b Make the log work when deploy Zaqar with uwsgi
8e32ee2 Fix wrong value of require_confirmation
8d9be75 Replace assertTrue(*>*) with assertGreater
4a40387 Use _LW() to wrap the warning message
1a9760d Fix typos in HACKING.rst
40083a7 Swift storage
e22ce5e Fix unit test unstable issue
455cf6e don't allow get/update/delete subscirtions with wrong queue
53f0c9f Removes unnecessary utf-8 encoding
874fd85 Updated from global requirements
39452c9 Use pop in message_delete_many
828bab9 Enable coverage report in console output
649ae23 Add tempest test for purge queue
908d75c Update README.rst
ca1501a Fix CI failure
b41802c Add API ref of purging queue
77af509 insert Apache 2.0 license into source file
5b1f915 Support purge queue -- websocket
d91cfb7 Clean transport logs for API endpoints
fb8da5d Add support for sqlalchemy migration based on alembic
460c345 Support purge queue -- wsgi
5a901c2 Convert user getting started guide to rst
effbf89 Add OSprofiler guide
3851144 Updated from global requirements
75c0279 Updated from global requirements
03b3c6d Show team and repo badges on README
4a1a6b3 Remove startup check from devstack
65a6953 Use KEYSTONE_IDENTITY_BACKEND
e5eee70 Consistent with the project code
35deeef Fix SSL and verbose issue of zaqar bench
4732417 Integrate OSprofiler with Zaqar
308934a Fix an typo in flavors.inc
7fb030e Fix zaqar client gate
00fc1f6 Use build interval and timeout from conf
aa0889a Fix zaqar-ui clone issue
a6ceea7 Add Feature section in doc
160f958 Reword description of grace
5edc11d Add missing policy check for queue stats and share
c19d0a0 Don't send confirmation notification if it's not enabled
1032436 Add some descriptions for resources in API Ref
de075b8 Updated from global requirements
2fae4ec Update .coveragerc after the removal of openstack directory
9d9147a Enanble Zaqar-UI in devstack
f3b4745 Fix doc build if git is absent
4f8470e Enable release notes translation
69df431 Updated from global requirements
885435b Fix a typo: remove redundant 'the'
f0d216b Change assertTrue(isinstance()) by optimal assert
670afbf Subscription Confirmation Support-2
176a3e5 Update reno for stable/newton
d7c16b9 Don't check key format in mongodb
f31a6e2 [api-ref] Remove temporary block in conf.py
993e804 Using oslo_config's min attribute
b5e3980 Add install guide for ubuntu and suse
Diffstat (except docs and test files)
-------------------------------------
.coveragerc | 2 +-
.gitreview | 1 +
HACKING.rst | 2 +-
README.rst | 13 +-
api-ref/source/claims.inc | 6 +-
api-ref/source/conf.py | 38 +-
api-ref/source/flavors.inc | 2 +-
api-ref/source/health.inc | 3 +
api-ref/source/messages.inc | 6 +
api-ref/source/parameters.yaml | 10 +-
api-ref/source/pools.inc | 8 +-
api-ref/source/queues.inc | 46 +-
api-ref/source/samples/purge-queue-request.json | 3 +
api-ref/source/subscription.inc | 4 +
bench-requirements.txt | 4 +-
devstack/gate/gate_hook.sh | 7 +-
devstack/plugin.sh | 41 +-
devstack/settings | 5 +
.../os-zaqar-apiGettingStarted.xml | 1153 --------------------
etc/oslo-config-generator/zaqar.conf | 3 +
etc/policy.json.sample | 2 +
install-guide/source/install-obs.rst | 545 +++++++++
install-guide/source/install-rdo.rst | 48 +-
install-guide/source/install-ubuntu.rst | 529 +++++++++
install-guide/source/install.rst | 2 +
...ate-OSprofiler-with-zaqar-59d0dc3d0326947d.yaml | 6 +
.../notes/purge-queue-6788a249ee59d55a.yaml | 4 +
.../sqlalchemy-migration-6b4eaebb6e02a449.yaml | 3 +
...onfirmation-support-email-0c2a56cfedc5d1e2.yaml | 15 +
releasenotes/source/conf.py | 4 +-
releasenotes/source/index.rst | 1 +
releasenotes/source/newton.rst | 6 +
requirements.txt | 21 +-
samples/html/confirmation_web_service_sample.py | 86 ++
samples/html/subscriptionConfirmation.html | 148 +++
samples/html/unsubscriptionConfirmation.html | 145 +++
setup.cfg | 7 +-
test-requirements.txt | 16 +-
tools/test-setup.sh | 33 +
tox.ini | 3 +-
zaqar/api/v2/endpoints.py | 53 +-
zaqar/api/v2/request.py | 19 +
zaqar/bench/conductor.py | 8 +-
zaqar/bench/config.py | 3 +
zaqar/bench/consumer.py | 2 +-
zaqar/bench/helpers.py | 23 +-
zaqar/bench/observer.py | 2 +-
zaqar/bench/producer.py | 2 +-
zaqar/bootstrap.py | 13 +
zaqar/common/configs.py | 48 +-
zaqar/common/consts.py | 2 +
zaqar/notification/notifier.py | 28 +-
zaqar/notification/tasks/mailto.py | 78 +-
zaqar/profile.py | 116 ++
zaqar/storage/base.py | 31 +
zaqar/storage/mongodb/driver.py | 60 +-
zaqar/storage/mongodb/messages.py | 26 +-
zaqar/storage/mongodb/options.py | 2 +-
zaqar/storage/mongodb/subscriptions.py | 14 +-
zaqar/storage/mongodb/utils.py | 2 -
zaqar/storage/pipeline.py | 15 +-
zaqar/storage/pooling.py | 36 +-
zaqar/storage/redis/driver.py | 31 +-
zaqar/storage/redis/models.py | 9 +-
zaqar/storage/redis/subscriptions.py | 55 +-
zaqar/storage/redis/utils.py | 2 +-
zaqar/storage/sqlalchemy/driver.py | 44 +-
zaqar/storage/sqlalchemy/migration/__init__.py | 0
zaqar/storage/sqlalchemy/migration/alembic.ini | 54 +
.../migration/alembic_migrations/README.md | 73 ++
.../sqlalchemy/migration/alembic_migrations/env.py | 96 ++
.../migration/alembic_migrations/script.py.mako | 34 +
.../alembic_migrations/versions/001_liberty.py | 72 ++
.../alembic_migrations/versions/002_placeholder.py | 30 +
.../alembic_migrations/versions/003_placeholder.py | 30 +
.../alembic_migrations/versions/004_placeholder.py | 30 +
.../alembic_migrations/versions/005_placeholder.py | 30 +
zaqar/storage/sqlalchemy/migration/cli.py | 118 ++
zaqar/storage/swift/__init__.py | 0
zaqar/storage/swift/claims.py | 188 ++++
zaqar/storage/swift/controllers.py | 23 +
zaqar/storage/swift/driver.py | 78 ++
zaqar/storage/swift/messages.py | 352 ++++++
zaqar/storage/swift/options.py | 31 +
zaqar/storage/swift/queues.py | 124 +++
zaqar/storage/swift/subscriptions.py | 159 +++
zaqar/storage/swift/utils.py | 166 +++
zaqar/storage/utils.py | 10 +-
.../services/messaging/json/messaging_client.py | 10 +
.../unit/storage/sqlalchemy_migration/__init__.py | 0
.../sqlalchemy_migration/test_db_manage_cli.py | 89 ++
.../sqlalchemy_migration/test_migrations.py | 173 +++
.../sqlalchemy_migration/test_migrations_base.py | 194 ++++
.../unit/transport/websocket/v2/test_claims.py | 6 +-
.../unit/transport/websocket/v2/test_messages.py | 3 +-
.../transport/websocket/v2/test_queue_lifecycle.py | 53 +
.../unit/transport/wsgi/v2_0/test_subscriptions.py | 4 +
.../unit/transport/wsgi/v2_0/test_validation.py | 22 +
zaqar/transport/validation.py | 55 +-
zaqar/transport/wsgi/app.py | 3 +
zaqar/transport/wsgi/driver.py | 7 +-
zaqar/transport/wsgi/v2_0/__init__.py | 13 +-
zaqar/transport/wsgi/v2_0/flavors.py | 16 +-
zaqar/transport/wsgi/v2_0/health.py | 2 +
zaqar/transport/wsgi/v2_0/homedoc.py | 13 +
zaqar/transport/wsgi/v2_0/ping.py | 3 +
zaqar/transport/wsgi/v2_0/pools.py | 15 +-
zaqar/transport/wsgi/v2_0/purge.py | 82 ++
zaqar/transport/wsgi/v2_0/queues.py | 9 +-
zaqar/transport/wsgi/v2_0/stats.py | 4 +
zaqar/transport/wsgi/v2_0/subscriptions.py | 39 +-
zaqar/transport/wsgi/v2_0/urls.py | 4 +
146 files changed, 6616 insertions(+), 1647 deletions(-)
Requirements updates
--------------------
diff --git a/bench-requirements.txt b/bench-requirements.txt
index 5cc80af..2026a02 100644
--- a/bench-requirements.txt
+++ b/bench-requirements.txt
@@ -3,2 +3,2 @@ marktime>=0.2.0
-python-zaqarclient>=0.0.2
-os-client-config!=1.6.2,>=1.4.0
\ No newline at end of file
+python-zaqarclient>=1.1.0
+os-client-config>=1.13.1 # Apache-2.0
\ No newline at end of file
diff --git a/requirements.txt b/requirements.txt
index 5b913db..361ce53 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -4 +4 @@
-pbr>=1.6 # Apache-2.0
+pbr>=1.8 # Apache-2.0
@@ -5,0 +6 @@ pbr>=1.6 # Apache-2.0
+alembic>=0.8.10 # MIT
@@ -10 +11 @@ iso8601>=0.1.11 # MIT
-keystonemiddleware!=4.1.0,!=4.5.0,>=4.0.0 # Apache-2.0
+keystonemiddleware>=4.12.0 # Apache-2.0
@@ -13,2 +14,2 @@ python-memcached>=1.56 # PSF
-WebOb>=1.2.3 # MIT
-stevedore>=1.16.0 # Apache-2.0
+WebOb>=1.6.0 # MIT
+stevedore>=1.17.1 # Apache-2.0
@@ -17 +18 @@ oslo.cache>=1.5.0 # Apache-2.0
-oslo.config>=3.14.0 # Apache-2.0
+oslo.config!=3.18.0,>=3.14.0 # Apache-2.0
@@ -20 +21,2 @@ oslo.i18n>=2.1.0 # Apache-2.0
-oslo.log>=1.14.0 # Apache-2.0
+oslo.log>=3.11.0 # Apache-2.0
+oslo.messaging>=5.14.0 # Apache-2.0
@@ -22,2 +24,3 @@ oslo.serialization>=1.10.0 # Apache-2.0
-oslo.utils>=3.16.0 # Apache-2.0
-oslo.policy>=1.9.0 # Apache-2.0
+oslo.utils>=3.18.0 # Apache-2.0
+oslo.policy>=1.17.0 # Apache-2.0
+osprofiler>=1.4.0 # Apache-2.0
@@ -28 +31 @@ autobahn>=0.10.1 # MIT License
-requests>=2.10.0 # Apache-2.0
+requests!=2.12.2,>=2.10.0 # Apache-2.0
diff --git a/test-requirements.txt b/test-requirements.txt
index 93fe258..30aa62c 100644
--- a/test-requirements.txt
+++ b/test-requirements.txt
@@ -12,0 +13 @@ pymongo!=3.1,>=3.0.2 # Apache-2.0
+python-swiftclient>=3.2.0 # Apache-2.0
@@ -13,0 +15 @@ websocket-client>=0.32.0 # LGPLv2+
+PyMySQL>=0.7.6 # MIT License
@@ -16 +18 @@ websocket-client>=0.32.0 # LGPLv2+
-coverage>=3.6 # Apache-2.0
+coverage>=4.0 # Apache-2.0
@@ -19,0 +22 @@ python-subunit>=0.0.18 # Apache-2.0/BSD
+testscenarios>=0.4 # Apache-2.0/BSD
@@ -21,0 +25,2 @@ testtools>=1.4.0 # MIT
+oslo.db>=4.15.0 # Apache-2.0
+testresources>=0.2.4 # Apache-2.0/BSD
@@ -24,2 +29,2 @@ testtools>=1.4.0 # MIT
-sphinx!=1.3b1,<1.3,>=1.2.1 # BSD
-oslosphinx!=3.4.0,>=2.5.0 # Apache-2.0
+sphinx!=1.3b1,<1.4,>=1.2.1 # BSD
+oslosphinx>=4.7.0 # Apache-2.0
@@ -28 +33 @@ oslotest>=1.10.0 # Apache-2.0
-reno>=1.8.0 # Apache2
+reno>=1.8.0 # Apache-2.0
@@ -32,0 +38,3 @@ tempest>=12.1.0 # Apache-2.0
+
+#OSprofiler
+osprofiler>=1.4.0 # Apache-2.0
1
0
We are gleeful to announce the release of:
mistral 4.0.0: Mistral Project
This release is part of the ocata release series.
Download the package from:
https://pypi.python.org/pypi/mistral
For more details, please see below.
4.0.0
^^^^^
New Features
************
* New function, called tasks, available from within an expression
(Yaql, Jinja2). This function allows to filter all tasks of a user
by workflow execution id and/or state. In addition it is possible to
get tasks recursively and flatten the tasks list.
* It is now possible to use the Bare metal (Ironic) API features
introduced in API version 1.10 to 1.22.
* Aodh actions are now supported.
* Gnocchi actions are now supported.
* Senlin actions are now supported.
Upgrade Notes
*************
* Required Ironic API version was bumped to '1.22' (corresponding to
Ironic 6.2.0 - Newton final release).
* Due to the default Ironic API version change to '1.22', new bare
metal nodes created with 'node_create' action appears in "enroll"
provision state instead of "available". Please update your workflows
accordingly.
Critical Issues
***************
* Due to bug https://bugs.launchpad.net/mistral/+bug/1631140,
Mistral was not considering retry with value 1. After this bug is
fixed, Mistral now considers count value 1 as a value for retry.
* Mistral does not consider the initial task run as a retry but only
considers the retry value after the failure of initial task
execution.
Bug Fixes
*********
* [bug 1633345 (https://bugs.launchpad.net/mistral/+bug/1633345)
User now could define the target region for the openstack actions.
It could be done via API in X-Region-Name and X-Target-Region-Name
in case of multi-vim feature is used.
Changes in mistral 3.0.0.0rc1..4.0.0
------------------------------------
b8927d8 Fix for coverage job showing 0% coverage for kombu
8749353 Refactor RPC serialization: add polymophic serializer
f3dff12 Add Keycloak authentication doc for client side
1e15010 Add details into docs about semantics of 'on-XXX' clauses.
5a3dae3 Add Keycloak authentication doc for server side
bb3a4fb Add reno for tasks function
c333576 Remove '__task_execution' from task outbound context
e86619c Fix for failing services on py3 with kombu driver
6d014c7 Remove support for py34
2abe892 Remove wrong licensing
de2bd4a Refactor RPC serialization: remove JsonPayloadSerializer class
02c9475 Update reno for stable/ocata
3332fe7 Enforce style check for xrange()
9f5214b Fix doc build if git is absent
443d7aa Prepare for using standard python tests
b26f2fd Update UPPER_CONSTRAINTS_FILE for stable/ocata
bf1c363 Update .gitreview for stable/ocata
672f466 Fix for failing gates
1562d15 Fix for failing services on py3 with kombu driver
bc18ecb Fix try import of openstack client modules
f16f4a3 Remove some profiler traces, logs, use utils.cut() where needed
4b6cca4 Remove unnecessary evaluation of outbound context
a3c07e0 Optimizing utils.cut() for big dictionaries and lists
47efc0f Updated from global requirements
0ee5433 Add support for Rabbit HA
5341fb2 Refactor rpc configuration loading
ab2919e Updated from global requirements
5267e1e Invalid jinja pattern regex corrected
e36d7f8 Add script for unit test coverage job
101ff40 Updated from global requirements
74f4778 In Python 3.7 "async" and "await" will become reserved keywords
b8d94ee Allow hyphens in Workflow and ad-hoc action names
5e41fc7 External OpenStack action mapping file support added
9d462e9 Make 'task' function work w/o a task name
fb384c9 using utcnow instead of now in expiration policy
8aedd49 Enforce style check for assertIsNone
0653e40 Add action "std.test_dict"
f190b5e Register Javascript action additionally as 'js' action
002ba71 Role based resource access control - update workflows
76f20ee Remove insecure flag from the Baremetal Introspection client
9f8a7c8 Updated from global requirements
498e69c Make kombu driver work in multi-thread manner
2b45567 Fix unit test that rely on order of return from DB
f78b0a6 Use utcnow() instead of now()
50b1228 Stop excpecting to have rabbit flags set when using fake driver
9b66d05 Updated from global requirements
600dd47 Insecure flag added to openstack context
51279dd Initial commit for mistral api-ref
285beb6 Removed unnecessary utf-8 encoding
08f186a Python3 common patterns
7b96269 Updated from global requirements
0c8fce2 Fix unit test that rely on order of return from DB
a4b8355 Fix for failing kombu dsvm gate
0cb0532 Move mock requirement to test-requirements.txt
d597dab Using sys.exit(main()) instead of main()
8629a58 Use i18n for help text
6d9b53e Added gnocchi action pack
4a86e96 Add 'retry_on_deadlock' decorator
2d13eab Fix two failing test cases in test_tasks
815c4a7 Add the "has" DB filter
0d4adc4 Use assertGreater() or assertLess()
bff0a36 Fix version response from root controller
de38c41 Adding releasenotes for aodh action support
96dc308 Updated from global requirements
9cf365f Refactor 'stress_test' to fit the current layout better
75f8894 Add rally tests for 'join': 100 and 500 parallel tasks
4aa186c Add a test for 'with-items' task: count=100, concurrency=10
4476873 Add aodh actions to mistral
a962ef4 Disable invalid API test till it's fixed
462cbf1 Copy _50_mistral.py file from enabled folder
581f6a1 Fix doc for missing dashboard config file
965db53 Role based resource access control - get workflows
4cea9bd Make body of std.email optional
62862ca Refresh object state after lock acquisition in WithItemsTask
aeb3ac5 Small adjustments in WithItemsTask
7ec56f5 Fix 'with-items' task completion condition
221bd0b Apply locking to control 'with-items' concurrency
2cacd26 Slightly improve 'with-items' tests
bfe9122 Get rid of with_items.py module in favor of WithItemsTask class
73ee6ce Refactor and improve 'with-items' algorithms
f90c2c9 Fix docs in README.rst
83e2431 Fix configuration generator
4293e40 Fix version response from root controller
8a51b6b Exclude .tox folder from coverage report
b22de94 Updated from global requirements
c019c09 Add more tests to mistral rally
3b1ed4e Replace six.iteritems() with .items()
8a52e9e Display all the possible server values.
a95a7cd Correct missspellings of secret
8f7153f Minor changes in the document
52c20c4 Added test cases for a few possible scenarios
85be004 change the cron-trigger execution time from localtime to UTC
d7fcd4e Use the with keyword dealing with file objects
de1db60 Modify the link in 'README.rst'
7a8beba Modify the function "_get_spec_version(spec_dict)"
24405a4 Update the wording in the actions terminology docs
74bca2d Remove commented-out Apache 2 classifier from setup.cfg
f6e4e23 Updated from global requirements
a5be14f Fix for failing kombu gate
8fc65d7 modify something in 'dsl_v2.rst'
769c3fe Fix two errors in YAML example and a error in action doc
5fd47d5 Handling MistralException in default executor
9c20b15 Fix a syntax error in yaml example
2059691 std.email action requires a smtp_password
33e8889 Change version '1.0' to '2.0'
ea062f0 Add descriptions for on_task_state_change parameters.
b922fe2 Updated from global requirements
fd5db96 Added releasenote for retry policy update
8425154 Cleanup obvious issues in 'with-items' tests
ff01014 Updated from global requirements
ba67b3a Allow "version" to be within workflow names in workbooks
d11405d Updated from global requirements
eb6c051 Yaql Tasks Function
57e4614 Bump Ironic API version to 1.22 when creating the Ironic client
26f5658 Small changes to docs to comply with openstack document style
a5d284a Fix launch process of Mistral components
a80e09a Modify import style in code
eb812f3 Some spelling errors
bdece6e Initial commit for mistral-i18n support
a24941a Add timestamp at the bottom of every page
ab5fe56 Show team and repo badges on README
eaf5058 Make CI gate for unit tests on mysql work
50cb85b Fix the default configuration file path
c19513c Updated from global requirements
2f89396 Mock the HTTP action in the with_items tests
196ee5a Fix devstack plugin compatibility
2842415 Updated the retries_remain statement
f26c150 Updated from global requirements
28e633f Add Ironic RAID actions
4e2e46a Revert "Remove unused scripts in tools"
9ddc32e Add a test for invalid task input expression
da7798b Fix config import in javascript action module
764f529 Make Jinja evaluator catch and wrap all underlying exceptions
1ae3359 Make YAQL evaluator catch and wrap all underlying exceptions
f7eb3e7 Replace 'assertFalse(a in b)' with 'assertNotIn(a, b)'
6094642 Updated from global requirements
c8cb137 Replace retrying with tenacity
ab2c23a Add cancelled state to action executions
1374566 Updated from global requirements
ae06418 Fix possible DB race conditions in REST controller
d66f271 Remove unused pylintrc
1312852 Added releasenote for Senlin Action Pack
db289f2 Migrated to the new oslo.db enginefacade
84f3c1f Added senlin action pack
d914e28 Few changes in the doc
f7501a8 Use mock for a bad HTTP call in unit tests
912056d Few changes related to the doc blueprint
c707790 Fix REST API dangling transactions
f1071f5 Fix error message format in action handler
88047af Fix error message format in other task handler methods
4f07468 Migrate mistral task_type
07039d3 Fix error message format for task run and continue
28d1675 Fix missing exception decorators in REST API
1bf9ca5 Remove unused scripts in tools
e9ba374 Replace uuid4() with generate_uuid() from oslo_utils
b08f1a5 Updated from global requirements
553c2b7 Add type to tasks API
603cd48 Handle region_name in openstack actions
c89c635 Add more tests to mistral rally
e9e7c42 Replace oslo_utils.timeutils.isotime
4e5ca38 Adding Variables to Log Messages
7fd509d Updated from global requirements
3cf9e5e cors: update default configuration
17b892d Added unit tests for workflow executions and task executions filtering
90460cb Fix DB API transaction()
6b229d3 Run actions without Scheduer
455e12e Get correct inbound tasks context for retry policy
acce19e Updated from global requirements
854aa45 Adding tests for workbook execution and execution list to Rally
bffb247 Use service catalog from authentication response
88cd04f Updated from global requirements
78514f8 Fix a bug in the algo that determines if a route is possible
6173a03 Enable DeprecationWarning in test environments
b749522 Added additional info in devstack/readme.rst
9ce3a75 Fixing 'join' task completion logic
e6cfe2b Updated from global requirements
2a6f470 Removal of unneccessary directory in run_tests.sh
b766e0d Get service catalog from token info
f9c85bf Add one more test for YAQL error message format
91068b5 Change format of YAQL errors
20c3bcc Updated from global requirements
9dc9d65 Update .coveragerc after the removal of openstack directory
474bf2e Enable code coverage report in console output
fe55c39 Updated from global requirements
195f697 Remove logging import unused
6beae4d Cleanup Newton Release Notes
3f5092d Publish/output in case of task/workflow failure
169d983 Don't include openstack/common in flake8 exclude list
ca3e51b Fix PEP8 issue
422def6 Change task() function to return 'null' if task doesn't exist
fc2f0be Enable release notes translation
8122c6f Updated from global requirements
8bf1da2 Describe vital details for debugging in PyCharm
798c459 Update documentation for multi-vim support
362c229 Add Jinja evaluator
6ca6e78 Minor changes to the documentation
539d15a Minor changes in the installation guides
0ed4f05 Add a way to save action executions that run synchronously
26f7d62 Import haskey from keys module
c707c43 Declare the encoding of file
c07cf48 Changes made to comply with OpenStack writing style
e6134ee Cleanup the Quickstart Documentation
cab2734 Stop adding ServiceAvailable group option
8279976 Updated from global requirements
ce7fcac Update heat actions in mapping.json
559ead4 Updated from global requirements
9ebf329 Accept service catalog from client side
2277b29 Using assertIsNone() instead of assertEqual(None, ...)
c9db0f7 Updated from global requirements
ac486f2 Make deafult executor use async messaging when returning action results
ff4f95f Disable Client Caching
068ab6f Updated from global requirements
bb257de Revert "Update UPPER_CONSTRAINTS_FILE for stable/newton"
bdf49b7 Remove environment data from task inbound context
6d5cd66 Use parenthesis to wrap strings over multiple lines
e0aa5d4 Updated from global requirements
1827e54 Using sys.exit(main()) instead of main()
ea9fece Do not include project name in the client cache key
acaafb4 Updated from global requirements
a7830dc Add tests to check deletion of delayed calls on WF execution delete
2f817e9 Delete all necessary delayed calls on WF stop
26894df Update UPPER_CONSTRAINTS_FILE for stable/newton
cca13bb Fix for timeouting actions on run-action
6252ded Fix a typo in access_control.py
259868e Adding a script for fast mistralclient help generation
03e3ebe Make Javascript implementation configurable
50671ea Add unit test case for deletion of execution in case of (error and cancelled)
a4287a5 Avoid storing workflow input in task inbound context
8ba7de9 Replace assertEqual(None, *) with assertIsNone in tests
2ad512a Updated from global requirements
6b88627 Add __ne__ built-in function
92b9010 Update reno for stable/newton
7d03d18 Remove context.spawn
6e6461f Correct documentation about task attributes 'action' and 'workflow'
b1acf3d Updating mistralclient docs
f9c9ca8 Abstract authentication function
22244e0 Fix for raising excepton from kombu
211456a Fixed task in_bound context when retrying
2085102 Enable changing of rpc driver from devstack
e89f4e7 Take os_actions_endpoint_type into use
Diffstat (except docs and test files)
-------------------------------------
.coveragerc | 4 +-
.gitignore | 5 +-
.gitreview | 1 +
.pylintrc | 49 -
HACKING.rst | 12 +
README.rst | 65 +-
api-ref/source/conf.py | 131 +++
api-ref/source/index.rst | 8 +
api-ref/source/v2/action.inc | 0
api-ref/source/v2/cron-trigger.inc | 0
api-ref/source/v2/execution.inc | 0
api-ref/source/v2/task.inc | 0
api-ref/source/v2/workbook.inc | 0
api-ref/source/v2/workflow.inc | 0
devstack/README.rst | 13 +-
devstack/plugin.sh | 20 +-
etc/policy.json | 1 +
mistral/_i18n.py | 36 +
mistral/actions/base.py | 2 -
mistral/actions/generator_factory.py | 2 +-
mistral/actions/openstack/action_generator/base.py | 17 +-
mistral/actions/openstack/actions.py | 200 +++-
mistral/actions/openstack/base.py | 9 +-
mistral/actions/openstack/mapping.json | 106 ++
mistral/actions/std_actions.py | 31 +-
mistral/api/access_control.py | 4 +-
mistral/api/app.py | 3 +-
mistral/api/controllers/resource.py | 3 +-
mistral/api/controllers/root.py | 32 +-
mistral/api/controllers/v2/action.py | 9 +-
mistral/api/controllers/v2/action_execution.py | 45 +-
mistral/api/controllers/v2/cron_trigger.py | 1 +
mistral/api/controllers/v2/environment.py | 1 +
mistral/api/controllers/v2/event_trigger.py | 13 +-
mistral/api/controllers/v2/execution.py | 75 +-
mistral/api/controllers/v2/member.py | 23 +-
mistral/api/controllers/v2/resources.py | 11 +-
mistral/api/controllers/v2/service.py | 4 +-
mistral/api/controllers/v2/task.py | 36 +-
mistral/api/controllers/v2/workbook.py | 1 +
mistral/api/controllers/v2/workflow.py | 23 +-
mistral/api/hooks/content_type.py | 2 -
mistral/api/service.py | 9 +-
mistral/auth/__init__.py | 50 +
mistral/auth/keycloak.py | 56 ++
mistral/auth/keystone.py | 45 +
mistral/cmd/launch.py | 102 +-
mistral/config.py | 172 ++--
mistral/context.py | 157 ++-
mistral/coordination.py | 209 ----
mistral/db/sqlalchemy/base.py | 7 +-
.../sqlalchemy/migration/alembic_migrations/env.py | 2 -
.../versions/020_add_type_to_task_execution.py | 73 ++
mistral/db/sqlalchemy/migration/cli.py | 3 +-
mistral/db/sqlalchemy/model_base.py | 7 +-
mistral/db/sqlalchemy/types.py | 2 -
mistral/db/utils.py | 74 ++
mistral/db/v2/api.py | 8 +
mistral/db/v2/sqlalchemy/api.py | 229 +++--
mistral/db/v2/sqlalchemy/filters.py | 8 +-
mistral/db/v2/sqlalchemy/models.py | 8 +-
mistral/engine/action_handler.py | 12 +-
mistral/engine/action_queue.py | 82 ++
mistral/engine/actions.py | 44 +-
mistral/engine/base.py | 30 +-
mistral/engine/default_engine.py | 79 +-
mistral/engine/default_executor.py | 38 +-
mistral/engine/dispatcher.py | 2 +-
mistral/engine/engine_server.py | 242 +++++
mistral/engine/executor_server.py | 98 ++
mistral/engine/policies.py | 38 +-
mistral/engine/rpc_backend/base.py | 27 +-
mistral/engine/rpc_backend/kombu/base.py | 45 +-
.../engine/rpc_backend/kombu/examples/client.py | 4 +-
.../engine/rpc_backend/kombu/examples/server.py | 4 +-
mistral/engine/rpc_backend/kombu/kombu_client.py | 200 ++--
mistral/engine/rpc_backend/kombu/kombu_hosts.py | 58 ++
mistral/engine/rpc_backend/kombu/kombu_listener.py | 109 +++
mistral/engine/rpc_backend/kombu/kombu_server.py | 205 ++--
mistral/engine/rpc_backend/oslo/oslo_client.py | 5 +-
mistral/engine/rpc_backend/oslo/oslo_server.py | 27 +-
mistral/engine/rpc_backend/rpc.py | 296 +-----
mistral/engine/task_handler.py | 72 +-
mistral/engine/tasks.py | 377 ++++++--
mistral/engine/utils.py | 3 +-
mistral/engine/workflow_handler.py | 16 +-
mistral/engine/workflows.py | 92 +-
mistral/event_engine/__init__.py | 0
mistral/event_engine/event_engine.py | 377 ++++++++
mistral/event_engine/event_engine_server.py | 91 ++
mistral/exceptions.py | 27 +-
mistral/expressions.py | 210 ----
mistral/expressions/__init__.py | 103 ++
mistral/expressions/base_expression.py | 55 ++
mistral/expressions/jinja_expression.py | 152 +++
mistral/expressions/yaql_expression.py | 126 +++
mistral/hacking/checks.py | 24 +
mistral/serialization.py | 192 ++++
mistral/service/__init__.py | 0
mistral/service/base.py | 63 ++
mistral/service/coordination.py | 209 ++++
mistral/services/event_engine.py | 377 --------
mistral/services/expiration_policy.py | 8 +-
mistral/services/periodic.py | 2 -
mistral/services/scheduler.py | 30 +-
mistral/services/security.py | 2 -
mistral/services/triggers.py | 63 +-
mistral/services/workbooks.py | 2 -
mistral/services/workflows.py | 1 +
.../workbook/v2/workbook_schema_test.yaml | 52 +
.../actions/openstack/test_openstack_actions.py | 58 +-
.../unit/engine/rpc_backend/kombu/fake_kombu.py | 4 +
.../engine/rpc_backend/kombu/test_kombu_client.py | 154 +--
.../rpc_backend/kombu/test_kombu_listener.py | 222 +++++
.../engine/rpc_backend/kombu/test_kombu_server.py | 69 +-
.../unit/engine/test_direct_workflow_rerun.py | 277 ++++--
.../engine/test_direct_workflow_rerun_cancelled.py | 662 +++++++++++++
.../test_execution_fields_size_limitation.py | 12 +-
.../unit/engine/test_reverse_workflow_rerun.py | 133 ++-
.../test_reverse_workflow_rerun_cancelled.py | 196 ++++
.../unit/expressions/test_jinja_expression.py | 430 +++++++++
mistral/utils/__init__.py | 129 ++-
mistral/utils/expression_utils.py | 263 +++++
mistral/utils/filter_utils.py | 9 +-
mistral/utils/javascript.py | 23 +-
mistral/utils/openstack/keystone.py | 104 +-
mistral/utils/profiler.py | 3 +-
mistral/utils/rest_utils.py | 64 +-
mistral/utils/rpc_utils.py | 89 +-
mistral/utils/serializers.py | 41 -
mistral/utils/ssh_utils.py | 2 -
mistral/utils/yaql_utils.py | 132 ---
mistral/version.py | 2 -
mistral/workbook/base.py | 19 +-
mistral/workbook/parser.py | 11 +-
mistral/workbook/types.py | 37 +-
mistral/workbook/v2/actions.py | 6 +-
mistral/workbook/v2/policies.py | 20 +-
mistral/workbook/v2/retry_policy.py | 16 +-
mistral/workbook/v2/task_defaults.py | 4 +-
mistral/workbook/v2/tasks.py | 43 +-
mistral/workbook/v2/workbook.py | 17 +-
mistral/workbook/v2/workflows.py | 13 +-
mistral/workflow/base.py | 16 +-
mistral/workflow/data_flow.py | 158 ++-
mistral/workflow/direct_workflow.py | 48 +-
mistral/workflow/lookup_utils.py | 6 +-
mistral/workflow/reverse_workflow.py | 5 +-
mistral/workflow/states.py | 6 +-
mistral/workflow/utils.py | 26 +-
mistral/workflow/with_items.py | 194 ----
.../actions/v2/test_multi_vim_authentication.py | 125 ++-
.../scenario/engine/actions/v2/test_ssh_actions.py | 2 +-
rally-jobs/extra/nested_wb.yaml | 73 ++
.../scenarios/complex_wf/complex_wf_params.json | 12 +
.../extra/scenarios/complex_wf/complex_wf_wb.yaml | 895 +++++++++++++++++
rally-jobs/extra/scenarios/join/join_100_wb.yaml | 212 ++++
rally-jobs/extra/scenarios/join/join_500_wb.yaml | 1012 ++++++++++++++++++++
.../with_items/count_100_concurrency_10.json | 4 +
rally-jobs/extra/scenarios/with_items/wb.yaml | 16 +
rally-jobs/task-mistral.yaml | 116 +++
...vailable-in-an-expression-17ca83d797ffb3ab.yaml | 8 +
.../notes/ironic-api-newton-9397da8135bb97b4.yaml | 10 +
.../mistral-aodh-actions-e4c2b7598d2e39ef.yaml | 3 +
.../mistral-gnocchi-actions-f26fd76b8a4df40e.yaml | 3 +
.../mistral-senlin-actions-f3fe359c4e91de01.yaml | 3 +
.../region-name-support-9e4b4ccd963ace88.yaml | 8 +
.../update-retry-policy-fb5e73ce717ed066.yaml | 8 +
releasenotes/source/conf.py | 5 +-
releasenotes/source/index.rst | 2 +
releasenotes/source/newton.rst | 7 +
releasenotes/source/ocata.rst | 6 +
requirements.txt | 50 +-
setup.cfg | 30 +-
test-requirements.txt | 14 +-
tools/cover.sh | 66 ++
tools/generate_mistralclient_help.sh | 42 +
tools/get_action_list.py | 18 +
tools/install_venv.py | 2 +-
tools/sync_db.py | 4 +-
tools/test-setup.sh | 54 ++
tox.ini | 30 +-
299 files changed, 16107 insertions(+), 5709 deletions(-)
Requirements updates
--------------------
diff --git a/requirements.txt b/requirements.txt
index 3a9683e..088b372 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -5 +5,2 @@
-alembic>=0.8.4 # MIT
+alembic>=0.8.10 # MIT
+aodhclient>=0.7.0 # Apache-2.0
@@ -9,0 +11,2 @@ eventlet!=0.18.3,>=0.18.2 # MIT
+gnocchiclient>=2.7.0 # Apache-2.0
+Jinja2!=2.9.0,!=2.9.1,!=2.9.2,!=2.9.3,!=2.9.4,>=2.8 # BSD License (3 clause)
@@ -11,2 +14 @@ jsonschema!=2.5.0,<3.0.0,>=2.0.0 # MIT
-keystonemiddleware!=4.1.0,!=4.5.0,>=4.0.0 # Apache-2.0
-mock>=2.0 # BSD
+keystonemiddleware>=4.12.0 # Apache-2.0
@@ -15,3 +17,4 @@ oslo.concurrency>=3.8.0 # Apache-2.0
-oslo.config>=3.14.0 # Apache-2.0
-oslo.db!=4.13.1,!=4.13.2,>=4.10.0 # Apache-2.0
-oslo.messaging>=5.2.0 # Apache-2.0
+oslo.config!=3.18.0,>=3.14.0 # Apache-2.0
+oslo.db>=4.15.0 # Apache-2.0
+oslo.i18n>=2.1.0 # Apache-2.0
+oslo.messaging>=5.14.0 # Apache-2.0
@@ -19,3 +22,3 @@ oslo.middleware>=3.0.0 # Apache-2.0
-oslo.policy>=1.9.0 # Apache-2.0
-oslo.utils>=3.16.0 # Apache-2.0
-oslo.log>=1.14.0 # Apache-2.0
+oslo.policy>=1.17.0 # Apache-2.0
+oslo.utils>=3.18.0 # Apache-2.0
+oslo.log>=3.11.0 # Apache-2.0
@@ -26,2 +29,2 @@ paramiko>=2.0 # LGPLv2.1+
-pbr>=1.6 # Apache-2.0
-pecan!=1.0.2,!=1.0.3,!=1.0.4,>=1.0.0 # BSD
+pbr>=1.8 # Apache-2.0
+pecan!=1.0.2,!=1.0.3,!=1.0.4,!=1.2,>=1.0.0 # BSD
@@ -32,3 +35,3 @@ python-designateclient>=1.5.0 # Apache-2.0
-python-glanceclient!=2.4.0,>=2.3.0 # Apache-2.0
-python-heatclient>=1.4.0 # Apache-2.0
-python-keystoneclient!=2.1.0,>=2.0.0 # Apache-2.0
+python-glanceclient>=2.5.0 # Apache-2.0
+python-heatclient>=1.6.1 # Apache-2.0
+python-keystoneclient>=3.8.0 # Apache-2.0
@@ -39,3 +42,4 @@ python-neutronclient>=5.1.0 # Apache-2.0
-python-novaclient!=2.33.0,>=2.29.0 # Apache-2.0
-python-swiftclient>=2.2.0 # Apache-2.0
-python-tackerclient>=0.6.0 # Apache-2.0
+python-novaclient!=7.0.0,>=6.0.0 # Apache-2.0
+python-senlinclient>=1.1.0 # Apache-2.0
+python-swiftclient>=3.2.0 # Apache-2.0
+python-tackerclient>=0.8.0 # Apache-2.0
@@ -43 +47 @@ python-troveclient>=2.2.0 # Apache-2.0
-python-ironicclient>=1.6.0 # Apache-2.0
+python-ironicclient>=1.11.0 # Apache-2.0
@@ -46,3 +50,3 @@ python-zaqarclient>=1.0.0 # Apache-2.0
-PyYAML>=3.1.0 # MIT
-requests>=2.10.0 # Apache-2.0
-retrying!=1.3.0,>=1.2.3 # Apache-2.0
+PyYAML>=3.10.0 # MIT
+requests!=2.12.2,>=2.10.0 # Apache-2.0
+tenacity>=3.2.1 # Apache-2.0
@@ -52 +56 @@ SQLAlchemy<1.1.0,>=1.0.10 # MIT
-stevedore>=1.16.0 # Apache-2.0
+stevedore>=1.17.1 # Apache-2.0
@@ -55 +59 @@ yaql>=1.1.0 # Apache 2.0 License
-tooz>=1.28.0 # Apache-2.0
+tooz>=1.47.0 # Apache-2.0
diff --git a/test-requirements.txt b/test-requirements.txt
index 0671158..e1d8dfe 100644
--- a/test-requirements.txt
+++ b/test-requirements.txt
@@ -4 +4 @@
-coverage>=3.6 # Apache-2.0
+coverage>=4.0 # Apache-2.0
@@ -8 +8 @@ nose # LGPL
-oslosphinx!=3.4.0,>=2.5.0 # Apache-2.0
+oslosphinx>=4.7.0 # Apache-2.0
@@ -9,0 +10 @@ oslotest>=1.10.0 # Apache-2.0
+os-api-ref>=1.0.0 # Apache-2.0
@@ -11,3 +12,3 @@ pyflakes==0.8.1 # MIT
-pylint==1.4.5 # GPLv2
-requests-mock>=1.0 # Apache-2.0
-sphinx!=1.3b1,<1.3,>=1.2.1 # BSD
+mock>=2.0 # BSD
+requests-mock>=1.1 # Apache-2.0
+sphinx!=1.3b1,<1.4,>=1.2.1 # BSD
@@ -15,0 +17 @@ sphinxcontrib-pecanwsme>=0.8 # Apache-2.0
+openstackdocstheme>=1.5.0 # Apache-2.0
@@ -19 +21 @@ unittest2 # BSD
-reno>=1.8.0 # Apache2
+reno>=1.8.0 # Apache-2.0
1
0
We are gleeful to announce the release of:
searchlight-ui 2.0.0: Horizon panels and libraries for Searchlight
This release is part of the ocata release series.
The source is available from:
http://git.openstack.org/cgit/openstack/searchlight-ui
Download the package from:
https://tarballs.openstack.org/searchlight-ui/
Please report issues through launchpad:
http://bugs.launchpad.net/searchlight
For more details, please see below.
Changes in searchlight-ui 1.0.0.0rc1..2.0.0
-------------------------------------------
ffb7e7c Imported Translations from Zanata
a956790 Imported Translations from Zanata
21d4c15 Update .gitreview for stable/ocata
a4bf436 Add ironic resource types
457eaf4 Replace 'filtered' queries with 'bool'
2920a48 Imported Translations from Zanata
1a6c85a Imported Translations from Zanata
2398bc2 Add horizon tox based instructions
5765c2b Update horizon version compatibility matrix
a3b3702 Imported Translations from Zanata
686ffdd UI-Bootstrap services use $uib prefix
b49a723 Use urlparse.urljoin to join searchlight url
6f2a2d3 Show team and repo badges on README
2d57b93 Imported Translations from Zanata
b170730 Modify development doc url in CONTRIBUTING.rst
6e7617b Clean imports in code
e69ab1a Imported Translations from Zanata
b2a240d Imported Translations from Zanata
2fbce89 Make manage.py executable
c8f05aa Enable release notes translation
0704a1a Honor 'nested' in facets
55d3b51 Add 'More Actions...' Actions
8a3a60b Update homepage with developer documentation page
5fdd379 Do not display Visibility column when All Projects option shown
574c8e0 Update reno for stable/newton
Diffstat (except docs and test files)
-------------------------------------
.gitreview | 1 +
CONTRIBUTING.rst | 2 +-
README.rst | 32 +-
manage.py | 0
releasenotes/source/conf.py | 3 +
releasenotes/source/index.rst | 1 +
releasenotes/source/newton.rst | 6 +
searchlight_ui/api/rest/searchlight.py | 7 +-
searchlight_ui/locale/ca/LC_MESSAGES/django.po | 18 +
searchlight_ui/locale/cs/LC_MESSAGES/django.po | 18 +
searchlight_ui/locale/cs/LC_MESSAGES/djangojs.po | 804 ++++++++++++
searchlight_ui/locale/de/LC_MESSAGES/django.po | 18 +
searchlight_ui/locale/de/LC_MESSAGES/djangojs.po | 1261 +++++++++++++++++++
searchlight_ui/locale/en_AU/LC_MESSAGES/django.po | 18 +
searchlight_ui/locale/en_GB/LC_MESSAGES/django.po | 18 +
searchlight_ui/locale/es/LC_MESSAGES/django.po | 18 +
searchlight_ui/locale/fr/LC_MESSAGES/django.po | 18 +
searchlight_ui/locale/fr/LC_MESSAGES/djangojs.po | 766 ++++++++++++
searchlight_ui/locale/id/LC_MESSAGES/django.po | 18 +
searchlight_ui/locale/id/LC_MESSAGES/djangojs.po | 1283 ++++++++++++++++++++
searchlight_ui/locale/it/LC_MESSAGES/django.po | 18 +
searchlight_ui/locale/ja/LC_MESSAGES/djangojs.po | 927 ++++++++++++++
searchlight_ui/locale/ko_KR/LC_MESSAGES/django.po | 18 +
.../locale/ko_KR/LC_MESSAGES/djangojs.po | 960 +++++++++++++++
searchlight_ui/locale/pt_BR/LC_MESSAGES/django.po | 18 +
searchlight_ui/locale/ru/LC_MESSAGES/django.po | 19 +
searchlight_ui/locale/ru/LC_MESSAGES/djangojs.po | 1195 ++++++++++++++++++
searchlight_ui/locale/tr_TR/LC_MESSAGES/django.po | 18 +
searchlight_ui/locale/zh_CN/LC_MESSAGES/django.po | 18 +
.../locale/zh_CN/LC_MESSAGES/djangojs.po | 1222 +++++++++++++++++++
searchlight_ui/locale/zh_TW/LC_MESSAGES/django.po | 18 +
.../os-cinder-snapshots/actions/actions.module.js | 61 +
.../os-cinder-snapshots.module.js | 3 +-
.../os-cinder-volumes/actions/actions.module.js | 61 +
.../os-cinder-volumes/os-cinder-volumes.module.js | 3 +-
.../os-ironic-chassis/os-ironic-chassis.module.js | 78 ++
.../resources/os-ironic-chassis/summary.html | 7 +
.../os-ironic-nodes/os-ironic-nodes.module.js | 132 ++
.../static/resources/os-ironic-nodes/summary.html | 8 +
.../os-ironic-ports/os-ironic-ports.module.js | 89 ++
.../static/resources/os-ironic-ports/summary.html | 7 +
.../os-neutron-nets/actions/actions.module.js | 61 +
.../os-neutron-nets/os-neutron-nets.module.js | 1 +
.../os-neutron-ports/actions/actions.module.js | 61 +
.../os-neutron-ports/os-neutron-ports.module.js | 1 +
.../os-neutron-routers/actions/actions.module.js | 61 +
.../os-neutron-routers/os-neutron-router.module.js | 1 +
.../os-neutron-subnets/actions/actions.module.js | 61 +
.../os-neutron-subnets.module.js | 1 +
.../os-nova-hypervisors/actions/actions.module.js | 61 +
.../os-nova-hypervisors/os-nova-hypervisors.js | 1 +
.../resources/os-nova-hypervisors/summary.html | 1 +
.../os-nova-servers/actions/actions.module.js | 14 +
.../actions/create-snapshot.controller.js | 8 +-
.../actions/create-snapshot.controller.spec.js | 2 +-
.../actions/create-snapshot.service.js | 6 +-
.../actions/create-snapshot.service.spec.js | 10 +-
.../static/resources/resources.module.js | 3 +
.../settings/search-settings.controller.js | 8 +-
.../settings/search-settings.service.js | 8 +-
.../syntax/search-syntax.controller.js | 6 +-
.../static/searchlight-ui/table/search-table.html | 6 +-
.../util/modified-item-cache.service.spec.js | 2 +-
.../static/searchlight-ui/util/redirect.action.js | 48 +
.../searchlight-ui/util/redirect.controller.js | 50 +
.../util/redirect.controller.spec.js | 56 +
.../util/searchlight-facet-utils.service.js | 11 +-
.../util/searchlight-query-generator.service.js | 11 +-
.../searchlight-query-generator.service.spec.js | 82 +-
.../util/searchlight-query-utils.service.js | 15 +-
setup.cfg | 2 +-
71 files changed, 9758 insertions(+), 91 deletions(-)
1
0