[release-announce] [senlin] senlin 3.0.0 (ocata)

no-reply at openstack.org no-reply at openstack.org
Wed Feb 22 13:56:56 UTC 2017


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





More information about the Release-announce mailing list