We joyfully announce the release of: blazar 2.0.0: Reservation Service for OpenStack clouds This release is part of the rocky release series. Download the package from: https://tarballs.openstack.org/blazar/ Please report issues through launchpad: https://launchpad.net/blazar For more details, please see below. Changes in blazar 1.0.0..2.0.0 ------------------------------ 1d8a6a0 Check number of replaced hosts in update_reservation 03ee019 Add some release notes for Rocky release ed82418 Catch any exception raised in call_monitor_plugin() b54d05b Set username when initializing PhysicalHostMonitorPlugin 8c46b5c Continue running on_end() when instance deletion fails 32e356a Restore execution of plugin tests 76edd79 Add get/create/delete resource provider c86e241 Start to make placement client 52634f5 Fix directory structure 2986471 Add release note for response code fixes 60e3a01 Support nova compute-api microversion '2.53' 513bde4 Add cleaning time d781cf7 Spec: Placement API support for instance reservation 4253cb0 Set Tempest concurrency to one 756d460 Fix unit test to have appropriate FakeHost 9da871a Fix POST and PUT status codes and update API Reference 02c7010 Change invalid date error code to 400 84785b7 Change pylint requirement d21f38b Spec: Resource allocation API 580d4ae Return 400 Bad Request for extra capability keys longer than 64 chars 4b23129 Change response status code when start_date and end_date are invalid 0c65190 Update pylint 3a7f630 Correct the project domain option for authorization 539f32c Check time order between start_date and end_date 6b7b59f Support blazar-dashboard installation in DevStack 0107cd7 Use assertEqual(len(x), y) instead of assertTrue(len(x) == y) 8dd7a70 Query multiple events in the event loop 5914e22 Use the full OpenStackClient option name to specify region c2ab836 Handle availability zone info in compute host APIs 0c3142d Add upgrade releaesnote for policy-in-code 98ae9a9 Add a release note for policy-in-code f2b3e1f Change invalid input error code to 400 905778e Register error response handlers with register_error_handler() 36259ac Use parameters in config file for trust test e316a9a add release notes to README.rst 99cb6b5 Register and document policy in code addc8f5 Remove deprecated configuration options c1c7768 Change html_context options to openstackdocstheme options 0cbe6cf Prevent the host update API from updating in-use extra capabilities 36dffc5 fix tox python3 overrides 29e68d8 Ignore keys unsupported by BlazarContext in its creation 66e8160 Update default configuration values related to Keystone 5030705 Update the home-page link for setup.cfg c175f2b Support resource_properties key in instance reservation 0596122 Add resource_properties column to instance_reservations table 83860ab Replace db_api with sql query in migration script 6d2950f Add periodic healing ad575d3 Fix initialization of the PhysicalHostMonitorPlugin 514d7d0 add lower-constraints job b11e8f2 Correct API URLs 56bd9d8 uncap eventlet f34fdd4 Updated from global requirements 5fb5d6e Updated from global requirements 6482296 Remove climate namespace 58459f8 Spec: Support multi availability zones 84c0dfe Create rocky directory for specs d0a4778 Add earliest-version tag to release notes bee849c Ignore Queens release notes in the next release d53a45d Add release note for Python 3 support dc56611 Add links to Blazar Dashboard documentation 7f2aa90 Update links to API reference e29984d Remove non-voting option for blazar-devstack-dsvm-py35 3895b3e Correct information in state machine release note 9bce206 Fix a link address 5e98ae5 Fix a link address 453419e Update reno for stable/queens dd8d245 Fix typos bbba153 Fix typo 7262564 Delete unnecessary new lines in API reference 3eb08cf Remove use of unsupported TEMPEST_SERVICES variable Diffstat (except docs and test files) ------------------------------------- .gitignore | 3 + .zuul.yaml | 4 +- README.rst | 1 + api-ref/source/conf.py | 6 +- api-ref/source/index.rst | 1 + api-ref/source/v1/hosts.inc | 19 +- api-ref/source/v1/index.rst | 2 +- api-ref/source/v1/leases.inc | 21 +- api-ref/source/v1/parameters.yaml | 2 +- blazar/api/v1/app.py | 6 +- blazar/api/v1/leases/__init__.py | 0 blazar/api/v1/leases/service.py | 92 + blazar/api/v1/leases/v1_0.py | 70 + blazar/api/v1/oshosts/service.py | 4 +- blazar/api/v1/service.py | 92 - blazar/api/v1/utils.py | 4 +- blazar/api/v1/v1_0.py | 70 - blazar/api/v2/controllers/extensions/host.py | 9 +- blazar/api/v2/controllers/extensions/lease.py | 8 +- blazar/api/v2/hooks.py | 4 +- blazar/config.py | 14 +- blazar/context.py | 7 +- blazar/db/api.py | 6 + .../versions/35b314cd39ee_add_az_in_compute.py | 39 + .../versions/75a74e4539cb_update_lease_status.py | 87 +- ...8b0d7_resource_properties_in_instance_plugin.py | 48 + blazar/db/sqlalchemy/api.py | 26 + blazar/db/sqlalchemy/models.py | 14 +- blazar/db/sqlalchemy/utils.py | 29 +- blazar/db/utils.py | 10 +- blazar/manager/exceptions.py | 11 + blazar/manager/leases/__init__.py | 0 blazar/manager/leases/rpcapi.py | 47 + blazar/manager/rpcapi.py | 47 - blazar/manager/service.py | 28 +- blazar/monitor/base.py | 50 +- blazar/monitor/notification_monitor.py | 9 +- blazar/monitor/polling_monitor.py | 23 +- blazar/plugins/base.py | 17 +- blazar/plugins/instances/__init__.py | 15 + blazar/plugins/instances/instance_plugin.py | 157 +- blazar/plugins/oshosts/host_plugin.py | 307 ++- blazar/policies/__init__.py | 25 + blazar/policies/base.py | 32 + blazar/policies/leases.py | 72 + blazar/policies/oshosts.py | 72 + blazar/policy.py | 2 + .../plugins/instances/test_instance_plugin.py | 495 +++-- .../plugins/oshosts/test_physical_host_plugin.py | 2141 ++++++++++++++++++++ blazar/utils/openstack/exceptions.py | 27 + blazar/utils/openstack/nova.py | 34 +- blazar/utils/openstack/placement.py | 179 ++ devstack/plugin.sh | 31 +- devstack/settings | 6 +- .../images/statuses_source/event_statuses.xml | 1 - .../images/statuses_source/lease_statuses.xml | 1 - .../statuses_source/reservation_statuses.xml | 1 - etc/blazar/blazar-policy-generator.conf | 3 + etc/policy.json | 20 - lower-constraints.txt | 121 ++ .../legacy/blazar-devstack-dsvm-py35/run.yaml | 1 + playbooks/legacy/blazar-devstack-dsvm/run.yaml | 1 + .../notes/bug-1779660-b623de868955e7d9.yaml | 20 + .../notes/bug-1786031-800a33c681fafdc0.yaml | 8 + .../notes/cleaning-time-825d148b704b0c56.yaml | 12 + .../notes/devstack-dashboard-1b96128952e64c1f.yaml | 5 + .../notes/multi-freepools-9d88b1f79c330a3c.yaml | 13 + .../notes/periodic-healing-143ed251d990580b.yaml | 14 + .../notes/policy-in-code-3107271b0636fcea.yaml | 14 + .../notes/python3-support-d9657c136cad2a41.yaml | 5 + .../notes/remove-climate-fb62d72ca8fc5c7d.yaml | 4 + .../resource-monitoring-622b6ebcb7472cf2.yaml | 4 +- ...esponse-code-fix-in-rocky-2197a9c1516a0ac4.yaml | 60 + .../notes/state-machine-37be751ed54c1c75.yaml | 4 +- ...ate-used-extra-capability-6d7bc7fa23c91295.yaml | 7 + releasenotes/source/index.rst | 1 + releasenotes/source/ocata.rst | 1 + releasenotes/source/pike.rst | 1 + releasenotes/source/queens.rst | 7 + releasenotes/source/unreleased.rst | 3 + requirements.txt | 10 +- setup.cfg | 16 +- test-requirements.txt | 3 +- tox.ini | 23 +- 142 files changed, 6344 insertions(+), 3642 deletions(-) Requirements updates -------------------- diff --git a/requirements.txt b/requirements.txt index 353fcca..3c66364 100644 --- a/requirements.txt +++ b/requirements.txt @@ -8,2 +8,2 @@ Babel!=2.4.0,>=2.3.4 # BSD -eventlet!=0.18.3,!=0.20.1,<0.21.0,>=0.18.2 # MIT -Flask!=0.11,<1.0,>=0.10 # BSD +eventlet!=0.18.3,!=0.20.1,>=0.18.2 # MIT +Flask!=0.11,>=0.10 # BSD @@ -10,0 +11 @@ iso8601>=0.1.11 # MIT +keystoneauth1>=3.4.0 # Apache-2.0 @@ -13,2 +14,2 @@ kombu!=4.0.2,>=4.0.0 # BSD -oslo.concurrency>=3.25.0 # Apache-2.0 -oslo.config>=5.1.0 # Apache-2.0 +oslo.concurrency>=3.26.0 # Apache-2.0 +oslo.config>=5.2.0 # Apache-2.0 @@ -28,0 +30 @@ sqlalchemy-migrate>=0.11.0 # Apache-2.0 +requests>=2.18.4 # Apache-2.0 diff --git a/test-requirements.txt b/test-requirements.txt index d15b059..7806a8f 100644 --- a/test-requirements.txt +++ b/test-requirements.txt @@ -13 +12,0 @@ coverage!=4.4,>=4.0 # Apache-2.0 -pylint==1.4.5 # GPLv2 @@ -19 +18 @@ reno>=2.5.0 # Apache-2.0 -sphinx!=1.6.6,>=1.6.2 # BSD +sphinx!=1.6.6,!=1.6.7,>=1.6.2 # BSD