[openstack-announce] [new][senlin] senlin 2.0.0 release (newton)

no-reply at openstack.org no-reply at openstack.org
Thu Oct 6 13:30:56 UTC 2016


We are glad to announce the release of:

senlin 2.0.0: OpenStack Clustering

This release is part of the newton release series.

Please report issues through launchpad:

    https://bugs.launchpad.net/senlin

For more details, please see below.

2.0.0
^^^^^


New Features
************

* Improved the action scheduler so that it can decide how many node
  actions will be fired in each batch. Batch control is a throttling
  measure to avoid raising too many requests in a short interval to
  the backend services.

* A new "cluster_collect" API is added.

* Added dependents to clusters and nodes for recording other
  clusters/nodes that depend on them.

* The senlin-engine now supports fencing a corrupted VM instance by
  deleting it forcibly.

* A new profile type 'container.dockerinc.docker-1.0' is added to
  support creation and management of docker clusters. This is still an
  experimental feature. Please use with caution.

* The deletion policy is enhanced to handle 'NODE_DELETE' actions
  which derives from a standalone 'node_delete' request.

* The cluster health manager has gained a new feature where nova
  server instance failures can be detected and handled, with and
  without a health policy attached to a cluster.

* The health policy was improved so that it will suspend itself when
  a node deletion comes from senlin-engine or client request. The
  policy will only effect when node failure is 'unexpected'.

* The load-balancing policy is improved to handle 'NODE_CREATE' and
  'NODE_DELETE' actions that derive from 'node_create' or
  'node_delete' RPC requests directly.

* A new "lb_status_timeout" option is added to the LB policy to cope
  with load-balancers that are not so responsive.

* Added a new type of receiver (i.e. message) which is based on
  Zaqar message queue.

* The region placement policy and the zone placement policy have
  been augmented with spec validation support.

* The affinity policy is improved to handle NODE_CREATE actions
  which are derived from 'node_create' RPC requests.

* The availability-zone placement policy is improved to handle
  NODE_CREATE actions which are derived from 'node_create' RPC
  requests.

* The region placement policy is improved to handle the NODE_CREATE
  action which derives from a 'node_create' RPC request.

* The 'image', 'flavor', 'key_name' and 'networks' properties of a
  nova server profile can now be validated via profile-validate API.

* With the new 'profile-validate' API, the nova server profile now
  supports the validation of its 'flavor', 'image' (if provided),
  'availability_zone' and block device driver properties.

* Optimized nova server update so that password and server name can
  be updated with and without image-based rebuild.

* Added support to oslo.versionedobject so that DB interactions are
  abstracted. It is possible to do live upgrade for senlin service
  now.

* A new policy-validate API has been added to validate the spec of a
  policy without actually creating an instance of it.

* The affinity policy, loadbalancing policy now support spec
  validation. Invalid properties can be detected using policy-validate
  API.

* A new profile-validate API has been added to validate the spec of
  a profile without actually creating an instance of it.

* Engine scheduler was redesigned to work in "tickless" way.

* Tempest API test for all Senlin API interfaces for both positive
  and negative cases.

* Reimplement functional test using tempest.

* Added 'template_url' support to heat stack profile.

* Zaqar resources including "queue", "message", "subscription" and
  "claim" are now supported in Senlin driver.


Upgrade Notes
*************

* The cluster delete API calls may return a 409 status code if there
  are policies and/or receivers associated with it. Previously, we
  return a 400 status code.

* DB columns obj_id, obj_type and obj_name in the event table are
  now renamed to oid, otype and oname correspondingly.

* The 'details/addresses' property of a node output for a nova
  server used to contain only some trimed information. This has been
  changed to a faithful dumping of the 'addresses' property.

* Several configuration options are consolidated into the
  'senlin_api' group in 'senlin.conf' file ('api_paste_config',
  'wsgi_keep_alive', 'client_socket_timeout', 'max_json_body_size').

* With the newly added 'message' type of receivers, the 'cluster'
  and the 'action' property are not always required when creating a
  receiver. They are still required if the receiver type is 'webhook'
  (the default).


Deprecation Notes
*****************

* Deprecate 'block_device_mapping' from nova server profile since it
  was never supported by OpenStack SDK.


Security Issues
***************

* The configuration option 'service_password' is marked as secret so
  that its value won't get leaked into log files.


Bug Fixes
*********

* Fixed a bug in affinity policy where the calls to nova driver was
  wrong.

* The new API documentation include fixes to the header like
  'location', 'OpenStack-Request-Id' and responses during version
  negotiation.

* Fixed bug related to the desired_capacity calculation. The base
  number used now is the current capacity of the cluster instead of
  previous 'desired' capacity. This include all actions that change
  cluster capacity and all related policies.

* The 'desired_capacity' reflects the expectation from a requester's
  view point. The engine now changes the 'desired_capacity' after the
  request is validated/sanitized, before the action is actually
  implemented. This means the 'desired_capacity' will change event if
  an action fails.

* Fixed cluster/node status setting after a cluster/node check
  operation.

* Fixed cluster status update logic so that cluster status is solely
  determined by the status of its member nodes. The status is updated
  each time a cluster operation has completed.

* Various fixes to the user doc, developer doc and API
  documentation.

* Fix cluster next_index update when adding nodes to cluster.

* Fixed DB layer dead lock issue that surfaced recently during
  concurrent DB operations.

* Fixed resource delete operations which should return 204 status
  code with body length of zero.

* Fixed error handling when network is not found in nova server
  creation.

* Fixed node recover operation behavior so that unsupported
  operations can be detected and handled.

* A cluster in the middle of an on-going action should not be
  deletable. The engine service has been improved to detect this
  situation.

* The unimplemented properties for health policy are masked out.

* Removed 'metadata' from profile query parameters because the
  current support is known to have issues.

* The node action execution logic is fixed so that it will skip
  cluster checking for orphan nodes and policy checking will be
  skipped for derived node actions.

* Fixed bug introduced by openstacksdk when updating nova server
  metadata.

* Added validation of key_name, flavor, image, networks when
  updating nova server.

* Fixed bugs related to receiver creation when type is set to
  'message'.

* Fixed dead service clean-up logic so that the clean-up operation
  can be retried.

* The 'senlin-manage' command has been fixed so that it will report
  the senlin service status correctly.

* The 'tools/setup-service' script has been fixed so that it works
  under keystone v3.


Other Notes
***********

* Senlin API/Engine configuration options are now documented and
  published online.

* Reworked API documentation which is now published at
  http://developer.openstack.org/api-ref/clustering

Changes in senlin 1.0.0.0rc1..2.0.0
-----------------------------------

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
0f5f232 Trim container id to a suitable size
a198eab Some more release notes for newton-3
4898eb8 Use openstack client in profile examples readme file uniformly
2e82e09 Fix container profile samples and README file
ca1b6e6 Remove unused LOG and CONF
7b3b897 EResourceOperation code comments need modify
7db00d1 Enable node filtering to filter nodes not created.
ece6d06 Validation for zone placement policy
404215a Validation for region placement policy
73c3f56 Updated from global requirements
7ef126d Change type of X-Openstack-Request-Id
75721bc Config logABug feature for Senlin api-ref
daf13c6 Release notes for newton-3
a9c5c17 Add host_cluster support in container profile
a2fcb3b Protect cluster from being deleted when appropriate
91d9ab5 Protect node from being deleted when necessary
a90ba7e Fix SDK log output setting
91c21f0 Spec validation for LB policy
310cd76 Fix 'load banlancer' in i18n strings
6fdd1e9 Mask unimplemented properties for health policy
30b7edc Fix cluster timestamp setting
e14a174 Fix cluster status update for SCALE_IN
ddf2e7e Fix cluster status update during SCALE_OUT
8b315fe Fix cluster status setting when RESIZE
23ce7a2 Fix cluster status update after CHECK/RECOVER
8c87ca6 Initial work for message type of receiver
6b782c0 Fix cluster status update after CLUSTER_DELETE
1346463 Fix cluster status update after CLUSTER_CREATE
4c2d27e Fix formatting strings when using multiple variables
1f979c5 Fix cluster status update after CLUSTER_UPDATE
89c4f8c Profile validation for nova server
e6334fc Revise sanity check for receiver creating
ef815b1 Policy validation - affinity polcy
2487a74 Rework policy validation invocation
17ab4d7 Fix some bugs for container creation
c46e892 Rework _build_conn_params for policies
151bb45 Fix coverage test script
2502299 Fix operation passing for cluster/node recover
3ba7dc4 Fix exception handling in server check
3682406 Fix oslo.i18n in senlin project
c10ae69 Fix exception handling in nova server recover
6affcb9 Fix exception handling in node_recover
e875c50 Enable health policy to skip more actions
5b91071 Fix using filter() to meet python2,3
1c81643 Add negative API tests for policy validation
400369a Add API tests for policy validation
802bb55 Minor tweak webhook receiver
3bcc293 api-ref doc for policy validation
05e2b10 Add API tests for profile validation
1260f2d Add negative API tests for profile validation
5021d02 Add API tests for profile validation
8a6a2e0 Always change desired_capacity for node_delete
a716e7f Adjust desired_capacity updating in NODE_CREATE action
e28cc03 api-ref doc for profile validation
c85809a Clean imports in code
7020aba Tweak cluster recover workflow
f644ec9 Health policy support to CLUSTER_RESIZE
6d41feb Update api-ref configuration
f69d659 Fix reraise issue
7bc5c3c Add version support to schema and spec
1f0771c Updated from global requirements
c80cd83 Rework receiver delete
c03b417 Fix policy command example
3242ea9 Fix api version mismatch return code
f2b740e Fix docs about autoscaling
7b8f063 TrivialFix: Remove logging import usused
7178b3b Updated from global requirements
a59311f api-ref: OpenStack-Request-Id and location
6303d71 Faithful dump nova server addresses property
08eb7da Revise tools/setup-service to make it work with keystone v3
d78c920 A spec for container cluster service
bd3bbc7 Some new typos need to be fixed
c2884f1 Add eval_status operation to cluster
20d6aa8 Release note for Zaqar resource support
8513da7 Updated from global requirements
ff2fbd5 Remove 'description' from Action class
e010110 Imported Translations from Zanata
434f35e Enable health policy to handle CLUSTER_SCALE_IN
27d4bbc Close health manager loop
0f63981 Improve server metadata format
79cc006 Reorganize receivers directory
06e938a Add new api for policy validation
c167430 Add policy_validate function to engine
4a00726 Fix do_validate in heat profile
cf1885a Add new api for profile validation
3d4a0ca Remove usage of mox/mox3
58eb443 Get ready for os-api-ref sphinx theme change
9163a4f py3:Remove six.iteritems/iterkeys
da08bc1 Fix nova_v2 fake driver
82ea6fe Fix stack status wait
60fd247 Remove garbage parameters at db layer
a46e5e3 Fix DB setup for unit tests
b7ed63a Fix node join behavior
038229e Support Fencing by Health Policy and Cluster Action
1ae2d9f Make server delete operation back compatible
f73b9d5 Add zaqar v2 driver interfaces for claim resource
8d9c1d9 Allow health check to be enabled/disabled
5a68ced Fix health manager initialization
ad8a538 Fix service filtering when claiming clusters
701ce2f Add function to perform profile validation
cd6c8ee Fix service list status report
74c9609 Fix endpoint href for v1 api
faf9e01 Add unit tests for _update_flavor
bd37d6d Updated from global requirements
a4bc4fe Rework version negotiation
da40df0 Prepare v1 controller for version negotiation
d653cce Throw and catch EResourceDeletion properly
ac6d308 Move profile validation logic into a function.
6b82f0c Optimize version negotiation
f1b3f26 Throw and catch EResourceUpdate properly
9046e39 Fix object serialization about metadata
e3b153b Refactor version negotiation middleware
51a8ba1 Throw and handle EResourceCreation properly
fec6955 Rework constructor of InternalError exception
1b51b85 Fix api-ref for version related samples
290d60b Replication version info into v1
d92830c Rename ResourceUpdateFailure and ResourceDeletion Failure
8ae82d0 Rename ResourceCreationFailure
f28f72f Rename 'ResourceBusyError' to 'EResourceBusy'
d767e75 Add a 'help' link into version list response
dce41dd Use constraints in tox.ini
a2c436f Trivial: Fix some typos in testing dev doc
82380ff Fix stack profile waiting operation
c9a2ec5 Add 'stack_check' operation to heat driver
08c3c21 Add zaqar v2 driver for subscription resource
0456a0a Add status code tables to api-ref doc
40639c2 Add fencing support into Driver and Profile
cdea70b Fix redundancy api-ref index
bdc4457 Fix cluster-collect API documentation
3147753 Developer doc for testing
77d7733 Add Apple OS X ".DS_Store" to ".gitignore" file
610d75b Updated from global requirements
88eca76 Fix unit tests for stack profile
861b45c Use SDK status wait when creating stacks
5dc12c3 Fix some typos in the doc
e4f22d3 Improve api-ref docs generation
5d2667e Updated from global requirements
9e38609 Minior revise pre/post_test_hook
36d680b Add wait_for_stack call to heat driver
82d390a Refactor rally plugin
8410ade Fix some typos in the files
2c5a4b9 Correct the installation doc
9d05ed0 Updated from global requirements
72d53a1 Add get_schema() method to Json field type
e39eabf Implement two operations for nova server profile
d0d7421 Update topic name to listen versioned notices of nova
81a5a0b Add 'reboot' and 'change_password' ops for nova server
3a8e76a Template for specs
2935313 Remove TODO item related to node-create/delete
27abf0b Documentation for Aodh Scaling Scenario
833941f Zaqar v2 driver for message resource
a035db2 Remove discover from test-requirements
1120911 Fix tox.ini for docs venv
dbd3ff2 command in doc is incorrect
4ff266e Move some config options into senlin_api group
10dc6c7 User scenario documentation for autoscaling (1)
cfb8513 Updated from global requirements
f8fb7ff Doc for affinity and affinity policy
c7bde3a Tutorial doc code is out of date
de233ff Make lb timeout configurable
981d9ab Documentation for builtin policies
6323b18 Integration test for heat stack cluster
0912cba Integration test for nova server cluster
057e70e Revise affinity policy doc for developer
9c20545 Revise zone placement policy doc for developer
3b32a76 Revise region placement policy doc for developer
a0c65a9 Revise LB policy doc for developer
680618b Revise deletion policy doc for developer
725771b Fix affinity policy for node create
ad1a604 Use assertEqual() instead of assertDictEqual()
e0032cd Add some release notes about recent changes
0b63af7 Initial work for integration test
39b7e69 Typo!
e533635 [Trivial] Remove executable privilege of doc/source/conf.py
f6f82d3 Update the home-page info with the developer documentation
91341e6 Add hacking check to ensure LOG.warn is not used
cccdf92 Add docs for configuration options
b2c5a2c Consolidate configuration options
c1d0127 Make sure service password not leaked into logs
1145b5a Fix listener setup in health manager
2052787 Enable zone placement to handle NODE_CREATE
415800b Enable region policy to handle NODE_CREATE
82a0fa1 Enable LB policy to handle NODE_CREATE
f315d91 Enable affinity policy to handle NODE_CREATE
0b00306 Fix docstring for affinity policy
69480fc Make NODE_DELETE operation respect grace_period
36f36cc Improve coverage test
d14cb83 Fix test cases for orphan node operations
99d3e99 Enable LB policy to handle NODE_DELETE
e8e6261 Updated from global requirements
865f13d Refactor lbaas driver
be6b93f Add 'NODE_DELETE' support to deletion policy
148ff8b Updated from global requirements
c09463e TODO Item for integration with Glare
780ddbe TODO: Add OSProfiler support
d24aed7 Fix node action execution logic
4691081 Fix coverage test
8c2197d Introduce microversion-parse package
e1fc67e Fix the typo in the files
82dba4e Trivial: use stripped path when doing collect
6ff946b Spelling errors need to be fixed
eab725b Fix some spelling mistakes in the files
48a41ed The typo in the file need to be fixed
d2707bb Simplify context tests to senlin only attributes
0c561d4 Change "senlin profile-create" to "openstack cluster profile create"
6f95ee9 Updated from global requirements
f11fe2e Replace deprecated LOG.warn with LOG.warning
406598c Add a TODO item about documentation
175958d Add some release notes for some important patches
30fbdd6 Prepare context tests for new to_dict() attributes
04a4a7d Cleanup i18n marker functions to match Oslo docs
ebd9715 Add Python 3.5 classifier and venv
b42f9be Revert "Add debug information for engine workflow"
f3ad8bc Fix delete API of profile/policy/receiver resources
920d41a Fix lb healthmonitor delay/timeout unit
5518ee6 Add driver for Zaqar v2 API
0f0c104 Fix context comparison problem
85239b1 Minor typo fixes and grammar adjustments
3d7d88d Revise nova server profile spec example
b71337b Updated from global requirements
4fbf315 Imported Translations from Zanata
ba73a1e Updated from global requirements
e907826 Twist the Tutorial for composition of ceilometer, Aodh, and Gnocchi
df5b2b8 Define api test in tox.ini
2cb8e39 Updated from global requirements
540bffa Remove deprecated functional test code
82c3067 Imported Translations from Zanata
ada0732 Add tempest functional test for cluster resize
05afcaa Release note for tempest functional test
abf9719 Add tempest functional test for webhook receiver
b1ab1b0 Add tempest functional test for lb policy
7fee971 Add tempest functional test for scaling policy
59d9b0c Add missing negative tempest API test cases
fac12d3 Fix cluster-resize API
0b2aef7 Add Container create/delete driver
85f0bae Add tempest functional test for cluster scale in/out
a3139c0 Add tempest functional test for node basic operations
1332faf Don't create network during API and functional tests
caf5654 Updated from global requirements
0dfd3b2 Rework some util functions for tempest test
1c4f3a2 Add tempest functional test for cluster membership
c571923 Add tempest functional test for basic cluster operations
5baf23e Fix cluster next_index updating
a827bda Make tempest utils available for both api and functional tests
c5e8bc7 Initial work for tempest functional test
b86bee2 Updated from global requirements
ab4d6bc Add debug information for engine workflow
33548aa Fix NoSuchOptError when using senlin-manage service list
d3c4e23 Fix oslo.config.opts in setup.cfg
aade87e Releasenote for tempest API test
f0464b1 Relocate openstack_test driver
f5e6f30 Add negative tempest API test for cluster check/recover
3c808f4 Add negative tempest API test for cluster-policy-update
f0ba4db Add negative tempest API test for cluster policy attach/detach
65b2622 API layer support for cluster-collect
416a9c4 Add negative tempest API test for cluster-del-nodes
d15f6af Add negative tempest API test for cluster-add-nodes
6da001d Add negative tempest API test for cluster scale in/out
5470fbb Add fake heat_v1 driver
0b643ac Add unittest for node recover with unsupported operations
5bb2234 Add negative tempest API test for cluster resize
e9443b3 Common negative tempset API test for cluster action
f4031bb Add rally plugin for cluster-size
cb04dd9 RPC support for cluster-collect
6459cb0 Updated from global requirements
a3653bc Add API test for cluster policy_update action
aa2afd9 Add API test for cluster policy_detach action
ea5a921 Add API test for cluster policy_attach action
af27a33 Add API  test for cluster recover action
3212b3a Add API test for cluster check action
ec1bf32 Add API test for cluster del_nodes action
2bf66dc Fix usage of NotImplemented
da15902 Add API test for cluster add_nodes action
d386a30 Engine level cluster-collect call
1d70286 Util function for parsing JsonPath
cfafea4 Remove an unnecessary log info
ffe025b Imported Translations from Zanata
37c3689 Add negative tempset API test for node actions
b3ddf3e Add negative tempset API test for api-version
ebe3854 Updated from global requirements
ef13545 Fix some errors in API doc
86bda7b Add negative tempset API test for resource delete
ad2ee27 Add two negative tempest API tests for cluster_policy
7065e5f Add negative tempest API test for receiver create
641c418 Updated from global requirements
5ee2afa Add negative tempest API test for profile create
0279163 Add negative tempest API test for policy-create
b61df5f Minor fix for action/event API doc
e037a29 Add negative tempest API test for cluster_policy show
3a2003f Add API test for node recover action
10c8220 Fix cluster-policies list API
b7febc6 Reorg cluster_polcy related tempest API test
5e3cfb6 Add negative tempest API test for all resource list APIs
0779b30 Fix an error in action API doc
ccffe85 Add first rally-gate job for Senlin
6bc9a08 Add a db_api interface for deleting actions
6f3007f Remove event config option and fix prune api
6c89099 Add API test for cluster scale_in action
ba5fe42 Add API test for cluster scale_out action
33ffd41 Revise cluster resize test
fe66908 Add negative tempest API test for profile/policy update
ea7688e Minor revise cluster_update and profile_update
a1d6959 Minor revise profile_update API
ce6b931 Initialize docker driver
e8d7a8a Replace 'format_time' with 'isotime'
b80fcb7 Add basic schema support for profile operations
f7a7546 Add negative tempest API test for node update
38b34d9 Improve DB sorting
21f9b1b Remove 'readonly' from property schema definition
89811a5 Add negative tempest API test for cluster update
1353593 Add negative tempest API test for resource show
33357bd Minor tweak negative tempest API test
7bbab37 Revise some neutron_v2 driver interfaces
842dd66 Initial framework for health manager listener
eb1f7d4 Updated from global requirements
a81816f Add negative tempest API test for cluster create
87e3e56 Add negative tempest API test for node create
5d04122 Add negative tempest API test for resource get
8f9ddb9 Release notes for newton-1
d4278b4 Add negative tempest API test for delete notfound
4f43133 Fix nova_v2 driver
3f826b7 Unify the naming of tempest API test cases
547ba3f Fix typo in tutorial about removing node
8fb6ab6 Minor tweak versioned object implementation
4f3a25c Remove duplicated logic about oslo notifier
3b1b9ff Fix TZAwareDateTime
3366a00 Optimize unit tests
6238567 Unit tests for versioned notification
4b518fe Simplify ovo fields/base import
e032d84 RPC notifier infra
a61798b Add Json comparison method for test case
13f03c8 Updated from global requirements
266a999 Unit test for objects fields
2200cf5 Fix event unit test
9eaa382 Fix policy unit test
2b90285 Fix scaling policy unit test
ea91ea2 Fix receiver unit tests
85e7f5c Fix engine service unit test
556aca7 Fix unit tests for action module
ac07d48 Revise cluster and cluster_policy unit test
b93de1d Tune node unit test
e1473c8 Fix a tiny defect of API ref
1def001 Improvement to oslo.versionedobject support
f2893e6 Updated from global requirements
2a064c7 Rename event table columns
5aa0d57 Updated from global requirements
ce39e4a Add 'host_node' and 'host_cluster' properties to container profile
5d98dae Rework tempest policy functions into utils
8105362 Rework node utility functions in tempest
563789b Fix tempest runs
d922f0f Revise receiver util function calls
d09c774 Remove 'get_test_cluster' function
fdb7c64 Make create_a_cluster return a UUID
704ce31 Further tune the tempest api tests
31bda17 Further tune tempest api tests
cc97c74 Further tune tempest api tests
4919424 Move test cluster creation into a util module
bb89fc8 [trivial] Tune tox.ini
62a922d Move build info api test to its own directory
c0d98d5 Add negative tempest API test for cluster_delete
3c854cd Minor revise cluster_delete engine service call
6f52de1 ovo - switch action calls
61acc57 ovo - swith cluster-policy calls
882defe ovo - switch cluster calls
a76e43f ovo - switch credential calls
b1501cd ovo - switch dependency calls
10a5a77 ovo - switch event calls
bd01d15 Add tempest test for API event show
2307235 ovo - switch health registry calls
ee96afa Updated from global requirements
c1bfe68 ovo - switch cluster lock and node lock calls
de15589 ovo - switch node calls
172e7b1 ovo - switch receiver calls
f534b1a ovo - switch policy calls
3c10ef1 ovo - switch profile calls
2ce1f3a ovo - switch service calls
fe48e09 Add negative tempest API test for http conflict cases
0531464 Fix links to API reference docs
5fabf15 Fix typos in tempest API tests for profile_delete
028342c Fix senlin-dashboard install
22e96db Updated from global requirements
2cd226e Tune health manager module
7c35887 versioned object -- credential
e3cfa6c versioned object -- service
f2b2dc5 versioned object -- event
6919c8e versioned object -- action
6662235 versioned object -- receiver
da8d34e versioned object -- action dependency
5f3707a versioned objects -- health_registry
416a494 Remove unnecessary executable permissions
b208ed1 versioned objects -- cluster lock and node lock
fe562ac versioned object -- cluster_policy
7321631 versioned object -- node
aeceb45 versioned object - cluster
135c487 versioned object - policy
110ff83 versioned object - profile
2619182 Initialization of versioned objects
bc00783 Add release note about DB deadlock fix
0cc0fd6 Release note for scheduler batch control
6c820df Add tempest API test for API version show
e0ea64e Minor fix for API document of API versions
9e0acc7 Add negative test for cluster show
3f7f23e Fix parameters 'required' status
f6d5891 Updated from global requirements
f15121a Updated from global requirements
52e78a3 Reorg profile_type and policy_type tempest API tests
053a62d Add tempest API test for API versions list
54233ce Tutorial documentation for receivers
7c77cf0 Reorder parameters to make os-api-ref happy
0661e50 Add batch control for node action scheduling
de2689e Add tutorial doc for policies
f7930f5 Add tempest tests for events list API
04a8fba Trivial fix to README doc
3a23528 Tune health manager options
8a1f253 Add basic section to tutorial doc
928327e Rename container profile
dcd2ef6 Migrate to os-api-ref upstream library
1b16ba7 Add DB retry decorator for DeadLock problem
b11f1d4 Updated from global requirements
705b529 Revert "Allow parameter location to be specified in rst"
2a99338 Fix functional tests
b24bbf0 Tune DB API for session sync
070577b Add tempest tests for build-info API
e997427 Add API tests for action list/show
33d4811 Add API test for cluster policies list/show
f3afeb4 Add create_test_policy function to base test class
b2aee33 Bump cirros version to 0.3.4
53c7dc2 Updated from global requirements
35f3aa0 Add API test for receiver show
8ef4bb6 Add API test for receiver list
0028236 Remove emacs magic line
8b17bf3 Fix typo in API docs
abf644b Add API document for build_info
d0d46c7 Add gate scripts for tempest
a3a361a Action APIs doc
2a84245 Nodes API doc
1acca02 Add API document for receiver
0525c28 Add API document for webhook
081eff7 Add API document for event
6677fc2 Clusters API doc (3)
9bd4341 Fix minor issues of profiles tests
1b6853b Add API test for policy show
71334eb Add API test for policy list
7c05fdb Clusters API doc (2)
e4e7419 Add support for container profile
6fcfd60 Revert "Fix minor issues of profiles tests"
45a46be Add API test for profile type show/list
b01bcf4 Fix minor issues of profiles tests
e8f8ad2 Minor tweaks to policies API docs
ffad377 Clusters API doc (1)
dda447c Add API test for profile list
00f3394 Add API test for profile show
f9815ac Add API test for profile update
c87e206 Add API tests for profile delete
aec21cb Add API tests for profile create
d989180 Add API tests for policy type list/show
54b1202 Fix nits found in profiles API doc
05182ab Fix nits in policies api doc
a29fb28 Add API document for cluster_policies
0974664 Remove the useless run_tests.sh
3d62aa1 Fix links in tutorials doc
b2ae5e5 Allow parameter location to be specified in rst
d2133bf Migrate DS action items into TODO/FEATURES
68f34b6 Add tempest API test for Node show/list
a7e43fc Add tempest API test for cluster show/list
5312297 [TrivialFix] Add missing `help` in README.rst
75352a6 API documentation for policies
ecbb83f Improve parameter parsing in api-ref
04de351 Updated from global requirements
86abb9a Add API tests for node action
523c0e7 Release note for scheduler rework
1aaf48f Add API tests for cluster action
711cd04 Updated from global requirements
bb82c4f Remove mitaka release notes data
3db0a3e Rework engine scheduler
a5a7ed4 Add tempest tests for policy create/delete/update API
03687aa Add tempest test cases for node create/delete/update API
22482fd Profile API doc part 2
91ffe86 API documentation for profiles (1)
6870cc7 Add tempest tests for receiver create/delete API
2e0cb2e replace logging with oslo.log
9cefbbc Added missing brackets in api microversion docs
23a20a0 Reorg existing tempeset test cases
82ffed9 Updated from global requirements
b509e27 API documentation for policy types
c572f7e Revert "Add Rally plugin for Senlin tempest"
8d79ba2 Fix cluster scaling operations
9b30710 Add a profile example
897734b Fix warnings in current documentation tree
a0e4a4e Fix ref links in user reference docs
16d88ef Add API doc content (1)
7aeef7d api-ref docs site for senlin
24fb363 Updated from global requirements
d9df44a Add Rally plugin for Senlin tempest
559904d Fix problems in glossary
25e58fa Clarify some guidelines on contribution
7ac89f9 Initial framework for user tutorial doc
2c488fc Reorg user documentation to be references
f955807 Release note for the event generation bug fix
f66b028 Release note for trust creation concurrency
3d6e77e Release note for API versioning
e4e3095 Use with_for_update in cluster_next_index db call
3b04d37 Rename tempest_tests to tempest
09ab723 Catch DBDuplicateEntry Error during cred_create
1937b50 Updated from global requirements
14960bf Add a tutorial for creation of senlin cluster from heat template
df6cab9 Add a TODO item (unexpected attribute)
09db3f1 Add unit test for event module (1)
519987f Remove duplicated keys in the dict
e6856b2 Fixed typos in the Mitaka Series Release Notes
188799b Reorganize profile example dir
d166833 Initial tempest plugin framework
bac99f7 Updated from global requirements
d89910d Define context.roles with base class
232c830 [doc] Removed the invalid link for Module Index
06b51d5 Add senlin-dashboard in doc/source/overview.rst
c153bc4 Fix event generation
5866a18 Remove concurrency constraint for functional tests
8973ef6 Updated from global requirements
2fae4eb Correct test case test_profile_create_with_bad_type
abcca1a Remove duplicated keys in the dict
c7a438e Updated from global requirements
956b7e8 Use the new enginefacade from oslo.db
38adbe4 Fix create profile API interface
f2cd784 Add NoneType protection for ex.response in sdk.py
40cc0db Developer doc for API microversioning
c6d31be Re-enable E402 check
5cac375 Fix minor typo in senlin project
cf56ff4 Support security_groups in nova profile
092434c Refactor do_create for nova profile
d6c96d0 More test case for method with diff versions
9742996 Add hacking rule for api_version
5a2c385 Fix typos in Senlin files
e0e5250 Add support to 'latest' version
0487c1f Modify location to point to action
a482de0 Rework senlin docs based on CLI changes
b40ec20 Refactor API version range support
668d2a6 Add API version header in responses
933dff7 Add global API version check for micronversion
5043f88 Add versioned method support
7b4be88 Make version resource a subclass of Controller
73d0b13 Set API version request on request objects
c7ca07e Move middleware filter resources
cfe732b Add version request object
54b749d Add health policy example
05667bb Reorg unit tests for API
4c4357c Complete functional test of cluster_membership
ab8ced2 Update reno for stable/mitaka


Diffstat (except docs and test files)
-------------------------------------

.gitignore                                         |    2 +
CONTRIBUTING.rst                                   |   67 +-
FEATURES.rst                                       |   68 +-
HACKING.rst                                        |    2 +
TODO.rst                                           |   34 +-
api-ref/source/actions.inc                         |  137 ++
api-ref/source/build_info.inc                      |   50 +
api-ref/source/cluster_policies.inc                |  111 +
api-ref/source/clusters.inc                        |  885 ++++++++
api-ref/source/conf.py                             |  232 +++
api-ref/source/events.inc                          |  125 ++
api-ref/source/index.rst                           |   21 +
api-ref/source/nodes.inc                           |  419 ++++
api-ref/source/parameters.yaml                     | 1233 +++++++++++
api-ref/source/policies.inc                        |  341 ++++
api-ref/source/policy_types.inc                    |   92 +
api-ref/source/profile_types.inc                   |   92 +
api-ref/source/profiles.inc                        |  337 +++
api-ref/source/receivers.inc                       |  242 +++
api-ref/source/samples/action-get-response.json    |   21 +
api-ref/source/samples/actions-list-response.json  |   46 +
api-ref/source/samples/build-show-response.json    |   10 +
.../source/samples/cluster-add-nodes-request.json  |    8 +
.../samples/cluster-attach-policy-request.json     |    6 +
.../samples/cluster-attrs-list-response.json       |   16 +
api-ref/source/samples/cluster-check-request.json  |    3 +
api-ref/source/samples/cluster-create-request.json |   11 +
.../source/samples/cluster-create-response.json    |   24 +
.../source/samples/cluster-del-nodes-request.json  |    8 +
.../samples/cluster-detach-policy-request.json     |    5 +
api-ref/source/samples/cluster-list-response.json  |   26 +
.../samples/cluster-policies-list-response.json    |   22 +
.../samples/cluster-policy-show-response.json      |   11 +
.../source/samples/cluster-recover-request.json    |    3 +
api-ref/source/samples/cluster-resize-request.json |    9 +
.../source/samples/cluster-scale-in-request.json   |    5 +
.../source/samples/cluster-scale-out-request.json  |    5 +
api-ref/source/samples/cluster-show-response.json  |   24 +
.../samples/cluster-update-policy-request.json     |    6 +
api-ref/source/samples/cluster-update-request.json |    8 +
.../source/samples/cluster-update-response.json    |   24 +
api-ref/source/samples/clusters-list-response.json |   30 +
api-ref/source/samples/event-show-response.json    |   16 +
api-ref/source/samples/events-list-response.json   |   18 +
api-ref/source/samples/node-check-request.json     |    3 +
api-ref/source/samples/node-create-request.json    |    9 +
api-ref/source/samples/node-create-response.json   |   22 +
api-ref/source/samples/node-list-response.json     |   24 +
api-ref/source/samples/node-recover-request.json   |    5 +
api-ref/source/samples/node-show-response.json     |   22 +
api-ref/source/samples/node-update-request.json    |    5 +
api-ref/source/samples/policy-create-request.json  |   17 +
api-ref/source/samples/policy-create-response.json |   26 +
api-ref/source/samples/policy-list-response.json   |   26 +
api-ref/source/samples/policy-show-response.json   |   26 +
.../source/samples/policy-type-show-response.json  |   55 +
.../source/samples/policy-types-list-response.json |   25 +
api-ref/source/samples/policy-update-request.json  |    5 +
api-ref/source/samples/policy-update-response.json |   24 +
api-ref/source/samples/profile-create-request.json |   24 +
.../source/samples/profile-create-response.json    |   31 +
api-ref/source/samples/profile-list-response.json  |   30 +
api-ref/source/samples/profile-show-response.json  |   28 +
.../source/samples/profile-type-show-response.json |   61 +
.../samples/profile-types-list-response.json       |   10 +
api-ref/source/samples/profile-update-request.json |    6 +
.../source/samples/profile-update-response.json    |   28 +
.../source/samples/receiver-create-request.json    |   11 +
.../source/samples/receiver-create-response.json   |   25 +
api-ref/source/samples/receiver-show-response.json |   25 +
.../source/samples/receivers-list-response.json    |   27 +
api-ref/source/samples/version-show-response.json  |   23 +
api-ref/source/samples/versions-list-response.json |   27 +
api-ref/source/status.yaml                         |   61 +
api-ref/source/versions.inc                        |   98 +
api-ref/source/webhooks.inc                        |   43 +
devstack/README.rst                                |   11 +-
devstack/lib/senlin                                |   17 +-
.../user/scenarios/autoscaling_ceilometer.rst      |  272 +++
etc/senlin/api-paste.ini                           |   10 +-
etc/senlin/policy.json                             |    4 +
examples/policies/WIP/health_policy_poll.yaml      |   28 -
examples/policies/deletion_policy.yaml             |    4 +-
examples/policies/health_policy_poll.yaml          |   28 +
examples/policies/lb_policy.yaml                   |   16 +-
examples/profiles/README.rst                       |   28 +
examples/profiles/cirros_basic/nova_server.yaml    |    9 -
.../profiles/docker_container/docker_basic.yaml    |   11 +
.../nova_server/heat_stack_nova_server.yaml        |    9 +
.../nova_server/nova_server_template.yaml          |   56 +
.../random_string/heat_stack_random_string.yaml    |    7 +
.../random_string/random_string_template.yaml      |   13 +
examples/profiles/nova_server/cirros_basic.yaml    |   14 +
examples/profiles/simple_stack/README.rst          |   23 -
examples/profiles/simple_stack/env.yaml            |    2 -
.../simple_stack/heat_stack_random_string.yaml     |    9 -
.../profiles/simple_stack/random_string_stack.yaml |   13 -
examples/profiles/simple_stack/test_script.sh      |    3 -
rally-jobs/README.rst                              |   11 +
rally-jobs/plugins/senlin_plugin.py                |  106 +
rally-jobs/senlin-senlin.yaml                      |   62 +
.../notes/404-return-code-e3cf3b6fb47a56fe.yaml    |    3 -
.../abandon-soft-delete-bb739b497ceeecce.yaml      |    7 -
.../action-filter-status-156542bfcb54e0e5.yaml     |    3 -
.../action-multi-tenancy-8d2f4e462b3d0c9b.yaml     |    3 -
.../action-status-check-fe5d7ccbc18e317e.yaml      |    4 -
.../notes/affinity-attach-e98079133d46ba78.yaml    |    3 -
.../notes/affinity-policy-c7dcb2e5fca6354b.yaml    |    4 -
.../affinity-policy-fix-72ae92dc8ffcff00.yaml      |    3 +
.../api-endpoint-tenant-ad58b556855e2806.yaml      |    4 -
.../notes/api-ref-fixes-19bc963430c32ecf.yaml      |    4 +
.../notes/batch-scheduling-ca5d98d41fc72973.yaml   |    6 +
.../capacity-calculation-4fd389ff12107dfb.yaml     |    6 +
.../check-recover-actions-27eef16643b23f47.yaml    |    3 -
.../notes/check-recover-apis-ea751a9c52736d67.yaml |    3 -
.../notes/cluster-collect-90e460c7bfede347.yaml    |    3 +
.../cluster-delete-conflict-94261706eb29e9bb.yaml  |    5 +
.../cluster-desired-capacity-d876347f69b04b4f.yaml |    6 +
.../cluster-node-dependents-3bdbebd773d276d1.yaml  |    4 +
.../cluster-node-status-e7fced162b415452.yaml      |    3 +
.../notes/cluster-quota-ab3dc57d61ea88bb.yaml      |    3 -
.../cluster-resizing-status-ca19571502cc0958.yaml  |    3 -
.../cluster-status-update-dd9133092aef05ab.yaml    |    5 +
.../compute-instance-fencing-63b931cdf35b127c.yaml |    4 +
.../notes/config-doc-cb8b37e360422301.yaml         |    4 +
.../notes/container-profile-152bf2908c70ffad.yaml  |    5 +
.../notes/db-isolation-level-3d61148ffdd3a91c.yaml |    4 -
.../notes/default-min-max-5d047c7cf9d98b71.yaml    |    4 -
.../delete-x-region-zone-fccfa2a35a05caad.yaml     |    4 -
.../deletion-policy-doc-e7e95f260b7a2470.yaml      |    3 -
...letion-policy-node-delete-dc70da377b2a4f77.yaml |    4 +
releasenotes/notes/doc-fixes-cd8c7006f8c66387.yaml |    3 +
.../engine-service-race-ba9f2f403b88f587.yaml      |    3 -
.../engine-service-status-d573e021c4f09ed6.yaml    |    3 -
.../notes/event-filter-level-7d9fd969e4018d77.yaml |    3 -
.../event-multi-tenancy-4b2269ae2bbf29c5.yaml      |    3 -
.../notes/event-table-change-dcb42c8b6d145fec.yaml |    4 +
...xplicit-plugin-versioning-f6dd44ba6bc07ae3.yaml |    4 -
.../notes/fix-api-return-202-b9d31250c4d7c624.yaml |    3 -
.../notes/fix-cluster-index-ae0060b6337d6d55.yaml  |    3 +
.../notes/fix-cluster-index-f09523055c286fc7.yaml  |    4 -
.../notes/fix-cluster-list-32007bfc8354c101.yaml   |    5 -
.../notes/fix-db-deadlock-1d2bdb9ce785734a.yaml    |    4 +
.../notes/fix-delete-apis-bf9f47b5fcf8f3e6.yaml    |    4 +
...ix-network-error-handling-e78da90b6bc2319c.yaml |    3 +
.../notes/fix-node-recover-5af129bf0688577d.yaml   |    4 +
.../notes/fix-policy-attach-d4c97babcd65e32e.yaml  |    3 -
.../notes/fix-setup-service-e6207fdc9647e1de.yaml  |    3 -
.../forbid-cluster-deletion-a8b0f55aaf0aa106.yaml  |    4 +
.../notes/health-check-3d0f1bcd8e76c9cd.yaml       |    4 -
.../health-manager-listener-8ddbe169e510031b.yaml  |    5 +
.../health-policy-properties-056d5b4aa63312c9.yaml |    3 +
.../health-policy-suspend-7aa33fc981c0f2c9.yaml    |    5 +
.../notes/improved-scheduler-579c0cd237f4d792.yaml |    4 -
.../notes/lb-based-health-d628938567f5824f.yaml    |    3 -
.../notes/lb-node-actions-95545338ae622f5c.yaml    |    5 +
.../notes/lb-timeout-option-990ba1f359b5daab.yaml  |    4 +
.../notes/lock-breaker-e4c45b2a5d851cef.yaml       |    3 -
.../notes/message-receiver-3432826515f8e70c.yaml   |    4 +
.../metadata-query-profile-9c45d99db7b30207.yaml   |    4 +
.../more-policy-validation-ace6a4f890b2a500.yaml   |    4 +
.../notes/multi-tenancy-bb6a7288c9c55fd0.yaml      |    4 -
.../multi-tenancy-in-find-cd1d07daec460b93.yaml    |    4 -
.../notes/name-uniqueness-d560c2cc2514c24d.yaml    |    3 -
.../notes/new-api-doc-f21eb0a9f53d7643.yaml        |    4 +
.../new-sorting-support-f523c272bbec8484.yaml      |    3 -
.../notes/node-action-logic-4d3e94818cccaa3e.yaml  |    5 +
.../node-create-affinity-ec126ccd3e9e0957.yaml     |    4 +
.../notes/node-create-az-d886dea98a25229f.yaml     |    4 +
.../notes/node-create-region-0cbac0918c703e27.yaml |    4 +
.../notes/nova-bdm2-support-e817d5775e466459.yaml  |    3 -
.../notes/nova-metadata-fix-89b7a2e06c3ce59f.yaml  |    3 +
.../nova-server-addresses-fd8afddc3fb36a0c.yaml    |    5 +
.../notes/nova-server-name-c045ba7e72ba0a50.yaml   |    3 -
.../notes/nova-server-update-1a976bd06b8884c7.yaml |    4 -
.../nova-server-validation-60612c1185738104.yaml   |    4 +
.../nova-server-validation-d36dbcf64fb90a43.yaml   |    5 +
.../notes/nova-update-opt-7372e4d189e483aa.yaml    |    4 +
.../nova-update-validation-dca7de984c2071d1.yaml   |    4 +
.../notes/options-shuffled-29c6cfac72aaf8ff.yaml   |    5 +
...-versioned-object-support-cc9463490306c26f.yaml |    4 +
.../notes/parameter-checking-d1fc14aee55ba484.yaml |    3 -
.../policy-create-check-86bd9b623ee44fcc.yaml      |    3 -
.../policy-detach-check-5fe6292ec264b24c.yaml      |    3 -
.../notes/policy-doc-89cfc7288a790379.yaml         |    4 -
.../policy-update-check-71d71fefe352eaa4.yaml      |    3 -
.../notes/policy-validate-04cbc74d2c025fcc.yaml    |    4 +
.../notes/policy-validation-477a103aa83835f9.yaml  |    4 +
.../notes/profile-updatable-6ee3f9a22f1b81ec.yaml  |    3 -
.../notes/profile-validate-45a9bc520880bc6b.yaml   |    4 +
.../notes/publish-api-doc-cc155e01fd66443b.yaml    |    3 -
.../purge-deleted-support-91ad29b09d75b35a.yaml    |    3 -
.../receiver-abstraction-e04b40e56c01c15b.yaml     |   11 -
.../receiver-create-check-2225f536f5150065.yaml    |    5 +
.../receiver-create-trust-bd5fdeb059e68330.yaml    |    3 +
.../region-placement-policy-743f8363846567b5.yaml  |    3 -
.../notes/remove-bdm-v1-4533677f3bca3c5d.yaml      |    4 +
.../remove-node-actions-eed0c6517ac9bb55.yaml      |    3 -
.../remove-policy-enable-3ce697e21dec7542.yaml     |    4 -
.../remove-priority-level-2b0c088f75ca3cf7.yaml    |    3 -
...remove-profile-permission-f1257ea4303cb9ac.yaml |    4 -
.../remove-trigger-support-c2f36b9b3c08ca99.yaml   |    3 -
.../removed-show-deleted-83f4b6886b24090e.yaml     |    5 -
.../rename-timestamp-fields-0921c426cbf13903.yaml  |    4 -
.../resource-name-underscore-29936ac9026e9c35.yaml |    4 -
.../revise-profile-update-59fdf617e51f7927.yaml    |    4 -
.../rework-action-dependency-da689dfeccd14e17.yaml |    6 -
.../scheduler-enhancement-09f86efe4dde4051.yaml    |    3 +
.../script-entry-points-85e225cc2cea7b68.yaml      |    3 -
.../notes/secure-password-e60243ae2befbbf6.yaml    |    4 +
.../senlin-manage-service-c86fca39fd1467b0.yaml    |    5 -
.../notes/service-cleanup-afacddfacd7b4dcd.yaml    |    4 +
.../service-status-report-625bc25b89907e07.yaml    |    4 +
...age-update-of-nova-server-bb2f7cdaa7fe883b.yaml |    3 -
.../support-network-update-7d576a52e4f894d6.yaml   |    3 -
.../support-nova-image-find-8f66ea48e127873c.yaml  |    4 -
.../tempest-api-test-support-c86091a7ba5fb789.yaml |    4 +
.../tempest-functional-test-383dad4d9acff97e.yaml  |    3 +
.../notes/template-url-19075b68d9a35a80.yaml       |    3 +
.../notes/tools-setup-d73e3298328c5355.yaml        |    4 +
.../notes/trust-id-usage-ca1196ae51b7fa04.yaml     |    4 -
.../notes/user-doc-added-b06635d9f6757dab.yaml     |    3 -
.../user-docs-published-84bae5b780e6cb52.yaml      |    3 -
.../notes/zaqar-support-470e824b7737e939.yaml      |    4 +
releasenotes/source/index.rst                      |    2 +
releasenotes/source/mitaka.rst                     |    6 +
releasenotes/source/newton.rst                     |    6 +
requirements.txt                                   |   34 +-
senlin/api/common/serializers.py                   |    4 +-
senlin/api/common/util.py                          |    3 +-
senlin/api/common/version_request.py               |  100 +
senlin/api/common/versioned_method.py              |   34 +
senlin/api/common/wsgi.py                          |  178 +-
senlin/api/middleware/__init__.py                  |   37 +
senlin/api/middleware/fault.py                     |   16 +-
senlin/api/middleware/trust.py                     |   11 +-
senlin/api/middleware/version_negotiation.py       |  147 +-
senlin/api/openstack/__init__.py                   |   46 -
senlin/api/openstack/history.rst                   |   30 +
senlin/api/openstack/v1/cluster_policies.py        |    8 +
senlin/api/openstack/v1/clusters.py                |   21 +-
senlin/api/openstack/v1/nodes.py                   |    3 +-
senlin/api/openstack/v1/policies.py                |   16 +
senlin/api/openstack/v1/profiles.py                |   30 +-
senlin/api/openstack/v1/receivers.py               |   24 +-
senlin/api/openstack/v1/router.py                  |   27 +-
senlin/api/openstack/v1/version.py                 |   70 +-
senlin/api/openstack/versions.py                   |   39 +-
senlin/cmd/engine.py                               |    4 +-
senlin/cmd/manage.py                               |   17 +-
senlin/common/config.py                            |  143 +-
senlin/common/consts.py                            |   21 +-
senlin/common/context.py                           |   22 +-
senlin/common/exception.py                         |  146 +-
senlin/common/messaging.py                         |   43 +-
senlin/common/scaleutils.py                        |   44 +-
senlin/common/schema.py                            |  146 +-
senlin/common/utils.py                             |   78 +-
senlin/db/api.py                                   |   40 +-
senlin/db/sqlalchemy/api.py                        | 1007 +++++----
senlin/db/sqlalchemy/migrate_repo/manage.py        |   13 +
.../migrate_repo/versions/001_first_version.py     |   14 +-
.../migrate_repo/versions/005_event_column_name.py |   23 +
.../versions/006_node_cluster_dependents_column.py |   28 +
senlin/db/sqlalchemy/models.py                     |   22 +-
senlin/db/sqlalchemy/types.py                      |   20 +
senlin/db/sqlalchemy/utils.py                      |   20 +-
senlin/drivers/base.py                             |    3 +-
senlin/drivers/container/__init__.py               |    0
senlin/drivers/container/docker_v1.py              |   32 +
senlin/drivers/openstack/__init__.py               |    2 +
senlin/drivers/openstack/heat_v1.py                |   18 +
senlin/drivers/openstack/keystone_v3.py            |   67 +-
senlin/drivers/openstack/lbaas.py                  |   46 +-
senlin/drivers/openstack/neutron_v2.py             |   63 +-
senlin/drivers/openstack/nova_v2.py                |  162 +-
senlin/drivers/openstack/sdk.py                    |    8 +-
senlin/drivers/openstack/zaqar_v2.py               |   45 +
senlin/engine/actions/base.py                      |  100 +-
senlin/engine/actions/cluster_action.py            |  507 +++--
senlin/engine/actions/node_action.py               |  159 +-
senlin/engine/cluster.py                           |  190 +-
senlin/engine/cluster_policy.py                    |   51 +-
senlin/engine/dispatcher.py                        |    5 +-
senlin/engine/environment.py                       |    8 +-
senlin/engine/event.py                             |   98 +-
senlin/engine/health_manager.py                    |  294 ++-
senlin/engine/node.py                              |  290 +--
senlin/engine/receiver.py                          |  208 --
senlin/engine/receivers/__init__.py                |    0
senlin/engine/receivers/base.py                    |  253 +++
senlin/engine/receivers/message.py                 |  279 +++
senlin/engine/receivers/webhook.py                 |   61 +
senlin/engine/registry.py                          |   17 +-
senlin/engine/scheduler.py                         |   73 +-
senlin/engine/senlin_lock.py                       |   57 +-
senlin/engine/service.py                           |  828 +++++---
senlin/hacking/checks.py                           |   27 +
senlin/locale/senlin.pot                           | 2009 ------------------
.../zh_CN/LC_MESSAGES/senlin-log-critical.po       |   19 +
.../locale/zh_CN/LC_MESSAGES/senlin-log-error.po   |  191 ++
.../locale/zh_CN/LC_MESSAGES/senlin-log-warning.po |   64 +
senlin/objects/__init__.py                         |   33 +
senlin/objects/action.py                           |  125 ++
senlin/objects/base.py                             |   87 +
senlin/objects/cluster.py                          |   88 +
senlin/objects/cluster_lock.py                     |   40 +
senlin/objects/cluster_policy.py                   |   85 +
senlin/objects/credential.py                       |   53 +
senlin/objects/dependency.py                       |   40 +
senlin/objects/event.py                            |   64 +
senlin/objects/fields.py                           |  214 ++
senlin/objects/health_registry.py                  |   47 +
senlin/objects/node.py                             |   93 +
senlin/objects/node_lock.py                        |   39 +
senlin/objects/notification.py                     |  137 ++
senlin/objects/policy.py                           |   73 +
senlin/objects/profile.py                          |   73 +
senlin/objects/receiver.py                         |   66 +
senlin/objects/requests/__init__.py                |    0
senlin/objects/requests/clusters.py                |   35 +
senlin/objects/service.py                          |   58 +
senlin/policies/affinity_policy.py                 |   72 +-
senlin/policies/base.py                            |  171 +-
senlin/policies/batch_policy.py                    |    2 +-
senlin/policies/deletion_policy.py                 |   30 +-
senlin/policies/health_policy.py                   |  122 +-
senlin/policies/lb_policy.py                       |  122 +-
senlin/policies/region_placement.py                |   56 +-
senlin/policies/scaling_policy.py                  |    9 +-
senlin/policies/zone_placement.py                  |   55 +-
senlin/profiles/base.py                            |  234 ++-
senlin/profiles/container/__init__.py              |    0
senlin/profiles/container/docker.py                |  299 +++
senlin/profiles/os/heat/stack.py                   |  246 ++-
senlin/profiles/os/nova/server.py                  | 1000 +++++----
senlin/rpc/client.py                               |   51 +-
.../functional/drivers/openstack/neutron_v2.py     |   37 -
.../api/actions/test_action_list_negative.py       |   27 +
.../api/actions/test_action_show_negative.py       |   27 +
.../api/api_versions/test_api_version_show.py      |   31 +
.../api_versions/test_api_version_show_negative.py |   26 +
.../api/api_versions/test_api_versions_list.py     |   35 +
.../tempest/api/build_info/test_build_info.py      |   29 +
.../cluster_policies/test_cluster_policy_list.py   |   49 +
.../test_cluster_policy_list_negative.py           |   38 +
.../cluster_policies/test_cluster_policy_show.py   |   48 +
.../test_cluster_policy_show_negative.py           |   99 +
.../tempest/api/clusters/test_cluster_action.py    |  324 +++
.../api/clusters/test_cluster_action_negative.py   | 1003 +++++++++
.../tempest/api/clusters/test_cluster_create.py    |   70 +
.../api/clusters/test_cluster_create_negative.py   |   81 +
.../tempest/api/clusters/test_cluster_delete.py    |   39 +
.../api/clusters/test_cluster_delete_negative.py   |   78 +
.../tempest/api/clusters/test_cluster_list.py      |   48 +
.../api/clusters/test_cluster_list_negative.py     |   27 +
.../tempest/api/clusters/test_cluster_show.py      |   43 +
.../api/clusters/test_cluster_show_negative.py     |   49 +
.../tempest/api/clusters/test_cluster_update.py    |   55 +
.../api/clusters/test_cluster_update_negative.py   |  148 ++
.../api/clusters/test_cluster_update_profile.py    |   62 +
.../tempest/api/events/test_event_list_negative.py |   27 +
.../tempest/api/events/test_event_show_negative.py |   27 +
.../tempest/api/nodes/test_node_action_negative.py |   93 +
.../tempest/api/nodes/test_node_create_negative.py |  104 +
.../tempest/api/nodes/test_node_delete_negative.py |   50 +
.../tempest/api/nodes/test_node_list_negative.py   |   27 +
.../tempest/api/nodes/test_node_show_negative.py   |   47 +
.../tempest/api/nodes/test_node_update_negative.py |  148 ++
.../tempest/api/nodes/test_node_update_profile.py  |   60 +
.../tempest/api/policies/test_policy_create.py     |   47 +
.../api/policies/test_policy_create_negative.py    |   94 +
.../tempest/api/policies/test_policy_delete.py     |   31 +
.../api/policies/test_policy_delete_negative.py    |   73 +
.../api/policies/test_policy_list_negative.py      |   27 +
.../api/policies/test_policy_show_negative.py      |   45 +
.../tempest/api/policies/test_policy_update.py     |   42 +
.../api/policies/test_policy_update_negative.py    |   68 +
.../tempest/api/policies/test_policy_validate.py   |   44 +
.../api/policies/test_policy_validate_negative.py  |   74 +
.../api/policy_types/test_policy_type_list.py      |   29 +
.../api/policy_types/test_policy_type_show.py      |   30 +
.../policy_types/test_policy_type_show_negative.py |   28 +
.../api/profile_types/test_profile_type_list.py    |   34 +
.../api/profile_types/test_profile_type_show.py    |   30 +
.../test_profile_type_show_negative.py             |   28 +
.../tempest/api/profiles/test_profile_create.py    |   45 +
.../api/profiles/test_profile_create_negative.py   |   94 +
.../tempest/api/profiles/test_profile_delete.py    |   31 +
.../api/profiles/test_profile_delete_negative.py   |   65 +
.../tempest/api/profiles/test_profile_list.py      |   41 +
.../api/profiles/test_profile_list_negative.py     |   27 +
.../tempest/api/profiles/test_profile_show.py      |   37 +
.../api/profiles/test_profile_show_negative.py     |   45 +
.../tempest/api/profiles/test_profile_update.py    |   44 +
.../api/profiles/test_profile_update_negative.py   |   66 +
.../tempest/api/profiles/test_profile_validate.py  |   39 +
.../api/profiles/test_profile_validate_negative.py |   76 +
.../tempest/api/receivers/test_receiver_create.py  |   55 +
.../api/receivers/test_receiver_create_negative.py |  103 +
.../tempest/api/receivers/test_receiver_delete.py  |   38 +
.../api/receivers/test_receiver_delete_negative.py |   56 +
.../tempest/api/receivers/test_receiver_list.py    |   48 +
.../api/receivers/test_receiver_list_negative.py   |   27 +
.../tempest/api/receivers/test_receiver_show.py    |   44 +
.../api/receivers/test_receiver_show_negative.py   |   55 +
.../tempest/api/receivers/test_webhook_trigger.py  |   48 +
.../tempest/functional/test_cluster_membership.py  |   92 +
.../tempest/functional/test_cluster_scaling.py     |  241 +++
.../tempest/functional/test_scaling_policy.py      |  130 ++
.../tempest/integration/test_heat_stack_cluster.py |   53 +
.../integration/test_nova_server_cluster.py        |   70 +
.../unit/api/middleware/policy/check_admin.json    |    3 +
.../unit/api/middleware/policy/notallowed.json     |   10 +
.../unit/api/middleware/test_middleware_filters.py |   93 +
.../api/middleware/test_version_negotiation.py     |  243 +++
.../unit/api/openstack/v1/test_cluster_policies.py |  181 ++
.../unit/api/openstack/v1/test_policy_types.py     |  113 ++
.../unit/api/openstack/v1/test_profile_types.py    |  115 ++
.../unit/engine/actions/test_cluster_action.py     | 2144 ++++++++++----------
.../unit/engine/service/test_cluster_policies.py   |   63 +-
.../unit/engine/service/test_profile_types.py      |    6 +-
.../unit/middleware/test_context_middleware.py     |  123 --
.../unit/middleware/test_openstack_filters.py      |  101 -
.../unit/middleware/test_version_middleware.py     |  140 --
.../unit/middleware/test_webhook_middleware.py     |  167 --
.../unit/policies/test_region_placement_policy.py  |  383 ----
.../unit/policies/test_zone_placement_policy.py    |  370 ----
.../unit/profiles/test_nova_server_validate.py     |  679 +++++++
setup.cfg                                          |   13 +-
test-requirements.txt                              |   21 +-
tools/config-generator.conf                        |    4 +-
tools/cover.sh                                     |   78 +
tools/setup-service                                |   22 +-
tox.ini                                            |   39 +-
700 files changed, 46135 insertions(+), 22010 deletions(-)


Requirements updates
--------------------

diff --git a/requirements.txt b/requirements.txt
index a53586c..7929138 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -6 +6,2 @@ pbr>=1.6 # Apache-2.0
-Babel>=1.3 # BSD
+Babel>=2.3.4 # BSD
+docker-py<1.8.0,>=1.6.0 # Apache-2.0
@@ -8,5 +9,7 @@ eventlet!=0.18.3,>=0.18.2 # MIT
-keystonemiddleware!=4.1.0,>=4.0.0 # Apache-2.0
-openstacksdk>=0.8.1 # Apache-2.0
-oslo.config>=3.7.0 # Apache-2.0
-oslo.context>=0.2.0 # Apache-2.0
-oslo.db>=4.1.0 # Apache-2.0
+jsonpath-rw<2.0,>=1.2.0 # Apache-2.0
+keystonemiddleware!=4.5.0,>=4.2.0 # Apache-2.0
+microversion-parse>=0.1.2 # Apache-2.0
+openstacksdk>=0.9.7 # Apache-2.0
+oslo.config>=3.14.0 # Apache-2.0
+oslo.context>=2.9.0 # Apache-2.0
+oslo.db!=4.13.1,!=4.13.2,>=4.10.0 # Apache-2.0
@@ -14,2 +17,2 @@ oslo.i18n>=2.1.0 # Apache-2.0
-oslo.log>=1.14.0 # Apache-2.0
-oslo.messaging>=4.0.0 # Apache-2.0
+oslo.log>=3.11.0 # Apache-2.0
+oslo.messaging>=5.2.0 # Apache-2.0
@@ -17 +20 @@ oslo.middleware>=3.0.0 # Apache-2.0
-oslo.policy>=0.5.0 # Apache-2.0
+oslo.policy>=1.14.0 # Apache-2.0
@@ -19,2 +22,3 @@ oslo.serialization>=1.10.0 # Apache-2.0
-oslo.service>=1.0.0 # Apache-2.0
-oslo.utils>=3.5.0 # Apache-2.0
+oslo.service>=1.10.0 # Apache-2.0
+oslo.utils>=3.16.0 # Apache-2.0
+oslo.versionedobjects>=1.13.0 # Apache-2.0
@@ -25,3 +29,3 @@ qpid-python;python_version=='2.7' # Apache-2.0
-requests!=2.9.0,>=2.8.1 # Apache-2.0
-Routes!=2.0,!=2.1,>=1.12.3;python_version=='2.7' # MIT
-Routes!=2.0,>=1.12.3;python_version!='2.7' # MIT
+requests>=2.10.0 # Apache-2.0
+Routes!=2.0,!=2.1,!=2.3.0,>=1.12.3;python_version=='2.7' # MIT
+Routes!=2.0,!=2.3.0,>=1.12.3;python_version!='2.7' # MIT
@@ -31 +35 @@ sqlalchemy-migrate>=0.9.6 # Apache-2.0
-stevedore>=1.5.0 # Apache-2.0
+stevedore>=1.16.0 # Apache-2.0
diff --git a/test-requirements.txt b/test-requirements.txt
index 05f5b50..7accf98 100644
--- a/test-requirements.txt
+++ b/test-requirements.txt
@@ -7,2 +7 @@ coverage>=3.6 # Apache-2.0
-discover # BSD
-flake8<2.6.0,>2.4.1 # MIT
+flake8<2.6.0,>=2.5.4 # MIT
@@ -10,4 +9,2 @@ hacking<0.11,>=0.10.2
-mock>=1.2 # BSD
-mox>=0.5.3 # Apache-2.0
-mox3>=0.7.0 # Apache-2.0
-openstackdocstheme>=1.0.3 # Apache-2.0
+mock>=2.0 # BSD
+openstackdocstheme>=1.5.0 # Apache-2.0
@@ -15,2 +12,3 @@ oslotest>=1.10.0 # Apache-2.0
-os-testr>=0.4.1 # Apache-2.0
-PyMySQL>=0.6.2 # MIT License
+os-testr>=0.7.0 # Apache-2.0
+PyMySQL!=0.7.7,>=0.6.2 # MIT License
+tempest>=12.1.0 # Apache-2.0
@@ -22,3 +20,4 @@ testtools>=1.4.0 # MIT
-oslosphinx!=3.4.0,>=2.5.0 # Apache-2.0
-sphinx!=1.2.0,!=1.3b1,<1.3,>=1.1.2 # BSD
-reno>=0.1.1 # Apache2
+os-api-ref>=1.0.0 # Apache-2.0
+oslosphinx>=4.7.0 # Apache-2.0
+sphinx!=1.3b1,<1.4,>=1.2.1 # BSD
+reno>=1.8.0 # Apache2





More information about the OpenStack-announce mailing list