Release-announce
Threads by month
- ----- 2026 -----
- January
- ----- 2025 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- 1 participants
- 17252 discussions
We contentedly announce the release of:
kuryr-libnetwork 4.0.0: Docker libnetwork driver for OpenStack Neutron
This release is part of the train release series.
The source is available from:
https://opendev.org/openstack/kuryr-libnetwork
Download the package from:
https://tarballs.openstack.org/kuryr-libnetwork/
Please report issues through:
https://bugs.launchpad.net/kuryr-libnetwork/+bugs
For more details, please see below.
Changes in kuryr-libnetwork 3.0.0..4.0.0
----------------------------------------
b63cd9a Fix ipv6 issue on devstack
f555383 Update api-ref location
86b6bf3 Add Python 3 Train unit tests
c528e9b Replace port 35357 with port 5000
01b20b1 Update install guide for master branch
9665daf OpenDev Migration Patch
ca8160e Dropping the py35 testing
0c148b9 Update master for stable/stein
2c59972 Replace openstack.org git:// URLs with https://
be37558 README: make it us-ascii
1fb4c1a Migrate legacy jobs to Ubuntu Bionic
e028d0c add python 3.7 unit test job
Diffstat (except docs and test files)
-------------------------------------
.gitreview | 2 +-
.zuul.yaml | 20 +++++++---------
Dockerfile | 2 +-
README.rst | 10 ++++----
contrib/docker/v2plugin/config.json | 2 +-
devstack/settings | 2 +-
playbooks/kuryr-libnetwork-fullstack-base/run.yaml | 8 +++----
.../kuryr-libnetwork-install-multinode/run.yaml | 8 +++----
playbooks/kuryr-libnetwork-install/run.yaml | 8 +++----
releasenotes/source/index.rst | 1 +
releasenotes/source/stein.rst | 6 +++++
setup.cfg | 3 ++-
tox.ini | 2 +-
18 files changed, 60 insertions(+), 54 deletions(-)
1
0
We are gleeful to announce the release of:
python-watcher 3.0.0: OpenStack Watcher provides a flexible and
scalable resource optimization service for multi-tenant OpenStack-
based clouds.
This release is part of the train release series.
The source is available from:
https://opendev.org/openstack/python-watcher
Download the package from:
https://tarballs.openstack.org/watcher/
For more details, please see below.
Changes in python-watcher 2.0.0..3.0.0
--------------------------------------
c02ddd58 Imported Translations from Zanata
7abb57dc Update TOX/UPPER_CONSTRAINTS_FILE for stable/train
963d026d Update .gitreview for stable/train
2b63a35e Fix damodel list return None error When has a compute node
48694492 Fix misspelling
42c1babf skip deleted instance when creating datamodel
519ca2c9 Fix unit test failed
a88e0766 Watcher planner slector releasenote
0559cd7a Set strategy planner
0c191a2d Get planner from solution
ffd8e27b Build pdf docs
31460ac4 update test about cinderclient v1
86af6ab8 correct watcher project for oslo_config
605d7f22 Add node resource consolidation planner
aa2a084d Watcher Planner Selector
03a6216d Add releasenote about bp show-datamodel-api
f1fe4b6c node resource consolidation
944fda33 Fix misspell word
020a99f0 Remove redundant word 'strategy'
10d8a5fb Add node_resource_consolidation doc
3c0ee0ca Add watcher-specs link to readme.rst
7eb10eee Add get node used and free resources
d0a20fb0 Implement watcher datamodel list in watcher-api
49fba60e Implement watcher datamodel list in watcher-decision-engine
5aa4637f Add api-ref doc for data model api
b4a02a6d add audit parameter to do_execute
8ca5d655 improve strategies tempest
6ac6ab24 add placement min_microversion
d6fbc797 set compute min_microversion
26cce968 [train][goal] Define new 'watcher-tempest-functional-ipv6-only' job
99cd0098 Remove unused disk_capacity field
c522e881 Don't revert Migrate action
5a26ceb1 update workload_balance strategy
33d7de12 update node resource capacity for basic_consolidation
3bcd2572 update host_maintenance strategy
60ef8776 update noisy_neighbor strategy
93b40e92 update outlet_temp_control strategy
4b2238f9 add releasenote for bp improve-compute-data-model
74209152 update vm_workload_consolidation strategy
4e4cfc95 Remove resource used fields from ComputeNode
cbc2b9eb Fix var src_extra_specs error
251ad35c Remove stale comment in method execute()
0b25c884 Add resource capacity property
86d9cf17 Getting data from placement when updating datamodel
86ea9c8e replace disk_capacity by disk
6cc9ea7c set disk field to disk capacity
0986168f Check resource class before using
4b83bf33 remove id field from CDM
54344208 Update api-ref location
3d741d05 Improve Compute Data Model
cadc000f Add call_retry for ModelBuilder for error recovery
361f2263 Remove useless gconfig process in watcher/api/scheduling.py
458ad086 Optimize method list_opts() in watcher/conf/opts.py
d5126174 Fix watcher/conf/applier.py default worker value
904720b0 Remove useless _opts.py
933bc59b Baseclass for ModelBuilder with audit scope
433eabb8 Move datasources folder into decision_engine
0727c0e3 Add reource_name for save_energy in action input parameter field
3009716d Add get_compute_node_by_uuid
80e8d000 Resolve aggregate error in workload_stabilization
6dd35a00 Remove redundant human_id fields when creating and updating datamodel
8cb71587 Replace human_id with name in grafana doc
502ed741 Add marker option for get_instance_list()
256104a3 remove baremetal nodes when building CDM
612fc12a Add reource_name for zone_migration in action input parameter field
0541d8c2 Grafana proxy datasource to retrieve metrics
dc2c361d Add reource_name in action input parameter field
a3c49cf8 Add get_node_by_name
1e8b17ac Reduce the query time of the instances when call get_instance_list()
ac53dbf0 remove baremetal nodes from hypversior list
8bddafbd Remove notifier_driver option in Watcher devstack
052fae4b Improve logging in building of nova data model
a45f5abe Releasenote for grafana datasource
cebee2c4 improve OptGroup consistency across configuration
dd1800fb Blacklist sphinx 2.1.0 (autodoc bug)
148ae368 Add Python 3 Train unit tests
8fc4a9cb Fix invalid assert states
0a435f0b Add name field for test data
c1a5e443 Add uWSGI support
b62965c2 Add name for instance in Watcher datamodel
fa1642e3 Documentation configuring grafana datasource
9c9f336f Configure nova notification_format for grenade
5f521471 Fix placement_client group help docs generation
d08d7c39 Improve the configuration parameters for grafana
966a4dfa Configure nova notification format in non-grenade CI jobs
dd321e9f improve the process of instance_created.end
9b8d1445 remove tail_log
90291923 Update strategy doc
06f8aa71 Implement the configuration for Grafana datasource
37b11fa4 Fix missing print format
e4fc5a08 typo ceilometer url
15754a14 Replace removed exceptions and prevent regression
a4d978b8 Define a new InstanceNotMapped exception
584eeefd Move datasource query_retry into baseclass.
28df60e2 Fix base enable_plugin branch for grenade run
7281f618 Remove dead code
79a57f67 Map instance to its node
731d4bfd update contraints url
dd119ca1 Backwards compatibility for node parameter
00f20ab1 Fix property access in test_global_preference* tests
b57feba5 Add Placement helper
251264b1 Cleanup ConfFixture
2d4bc095 Fix string formatting
f9e267fa check instance state for instance.update
c3e0e41f add strategy tempest job
7f37f7b9 Remove apidoc
374fd279 Optimize NovaHelper.get_compute_node_by_hostname
3f76f9cf Optimize hypervisor API calls
9c1b83e6 Add missing ws separator between words
a00daf9f Group instance methods together in nova_helper
2afd0dfc Audit API supports new force option
fdea38fb Optimize NovaClusterDataModelCollector.add_instance_node
5c492ea8 Fix test_metric_file_override metric from backend
62d181d9 Add force field to Audit
a09cb3fa Remove 2.56 version compatibility check
7489126d Require nova_client.api_version >= 2.56
e76c20d1 Improve exceptions and logging in ds manager
5a35b307 Improve DevStack documentation to support metrics
84cb589a formal datasource interface implementation
dea32c5e Improve Gnocchi and Monasca datasource tests
b6200817 Allow using file to override metric map
f1318256 support-keystoneclient-option
f92f77f6 Fix typo in ceilometer datasource
8a206a6a Handle no nova CDM in notification code
76367afd Remove unused utilities file
6d965121 Update migration notification
86a537fe Remove bandit from lower-constraints
15c842fb Update Sphinx requirement
3edafc9b Fix Stein version in watcher-status docs
efb4aaa0 Add doc/requirements.txt to venv tox target
4cd8a2f4 Remove dead code from NovaClusterDataModelCollector
aa7442d7 Enhance the collector_plugins option help text
0df6c0d9 Use base_strategy's add_action_migrate method
d9eb9253 Fix_inappropriate_name
a40892c3 update api version history
241df0d5 allow building docs without ceilometer client
dce23d7e pass default_config_dirs variable for config initialization.
14d4cb54 docs: fix link to install guide from user guide
5c2939f2 Remove watcher.openstack.common=WARN from _DEFAULT_LOG_LEVELS
76f0ce1d Add force field to api-ref
606f20b6 Fix API version header
567e0798 Remove unused exceptions
838768c7 Fix bandit runs with 1.6.0
bd8636f3 Allow for global datasources preference from config
173bf11a Use the common logging setup function in devstack runs
af0f02d1 Fix reraising of exceptions
e2285777 Using node replace resource_id in method add_action_disable_node()
4d480d5c Put the method add_migration() in base.py
8fa89344 update wsme types
c99e051a Add tempest voting
d84f8c50 Resolve problems with audit scope and add tests
d2e1d69d Replace git.openstack.org with opendev.org
4db39c52 Add hardware.cpu_util in workload_stabilization
647b5e94 Drop use of git.openstack.org
62da2984 OpenDev Migration Patch
0def7b4d separate launching audit scheduler
f36c25b5 Replace HOST_IP to SERVICE_HOST
f52716fc remove py35
8cb4c8e4 Uncap jsonschema
2df5ab92 Fix docs gate failed
6dfeeb73 Adapt Watcher to Python3.7
ac3aa945 Move eventlet monkey patch code
68a90b2c Fix lower-constraint deps handling
7f495e8e Fix openstack-tox-lower-constraint TIMED_OUT Error
3b80b352 Update meeting schedule to new bi-weekly format
c8e4efcd Make datasource methods match names of metrics
b023c907 Replace openstack.org git:// URLs with https://
ab03bf9b Imported Translations from Zanata
871a01f5 Update master for stable/stein
a4865b64 Migrate legacy jobs to Ubuntu Bionic
Diffstat (except docs and test files)
-------------------------------------
.gitreview | 3 +-
.zuul.yaml | 56 +-
README.rst | 3 +-
api-ref/source/index.rst | 1 +
api-ref/source/parameters.yaml | 119 +++-
api-ref/source/samples/audit-cancel-response.json | 1 +
.../samples/audit-create-request-continuous.json | 1 +
.../samples/audit-create-request-oneshot.json | 3 +-
api-ref/source/samples/audit-create-response.json | 1 +
.../samples/audit-list-detailed-response.json | 1 +
api-ref/source/samples/audit-show-response.json | 1 +
api-ref/source/samples/audit-update-response.json | 1 +
.../source/samples/datamodel-list-response.json | 38 ++
api-ref/source/watcher-api-v1-audits.inc | 6 +
api-ref/source/watcher-api-v1-datamodel.inc | 55 ++
devstack/lib/watcher | 88 +--
devstack/local.conf.compute | 11 +-
devstack/local.conf.controller | 13 +-
devstack/override-defaults | 9 +
devstack/upgrade/settings | 11 +-
devstack/upgrade/upgrade.sh | 13 +
.../strategies/basic-server-consolidation.rst | 14 +-
.../strategies/node_resource_consolidation.rst | 95 +++
.../strategies/vm_workload_consolidation.rst | 9 +-
etc/apache2/watcher | 2 +-
lower-constraints.txt | 16 +-
playbooks/legacy/grenade-devstack-watcher/run.yaml | 10 +-
.../add-force-field-to-audit-4bcaeedfe27233ad.yaml | 7 +
.../notes/api-call-retry-fef741ac684c58dd.yaml | 9 +
.../datasource-query-retry-00cba5f7e68aec39.yaml | 17 +
.../file-based-metric-map-c2af62b5067895df.yaml | 11 +
...-interface-implementation-222769d55a127d33.yaml | 17 +
...bal-datasource-preference-3ab47b4be09ff3a5.yaml | 11 +
.../notes/grafana-datasource-b672367c23ffa0c6.yaml | 10 +
...mprove-compute-data-model-b427c85e4ed2b6fb.yaml | 23 +
.../min-required-nova-train-71f124192d88ae52.yaml | 8 +
...de-resource-consolidation-73bc0c0abfeb0b03.yaml | 7 +
.../notes/show-datamodel-api-6945b744fd5d25d5.yaml | 12 +
...ort-keystoneclient-option-b30d1ff45f86a2e7.yaml | 5 +
.../support-placement-api-58ce6bef1bbbe98a.yaml | 8 +
.../notes/uwsgi-support-8dcea6961e56dad0.yaml | 12 +
.../watcher-planner-selector-84d77549d46f362a.yaml | 5 +
releasenotes/source/index.rst | 1 +
.../locale/en_GB/LC_MESSAGES/releasenotes.po | 651 ---------------------
releasenotes/source/stein.rst | 6 +
requirements.txt | 20 +-
setup.cfg | 8 +-
test-requirements.txt | 2 +-
tox.ini | 34 +-
watcher/api/app.wsgi | 23 +-
.../api/controllers/rest_api_version_history.rst | 5 +
watcher/api/controllers/v1/__init__.py | 12 +
watcher/api/controllers/v1/action.py | 8 +-
watcher/api/controllers/v1/action_plan.py | 17 +-
watcher/api/controllers/v1/audit.py | 51 +-
watcher/api/controllers/v1/audit_template.py | 14 +-
watcher/api/controllers/v1/data_model.py | 68 +++
watcher/api/controllers/v1/goal.py | 3 +-
watcher/api/controllers/v1/scoring_engine.py | 3 +-
watcher/api/controllers/v1/service.py | 11 +-
watcher/api/controllers/v1/strategy.py | 11 +-
watcher/api/controllers/v1/utils.py | 9 +
watcher/api/controllers/v1/versions.py | 4 +-
watcher/api/scheduling.py | 3 +-
watcher/api/wsgi.py | 41 ++
watcher/applier/actions/base.py | 7 +-
.../applier/actions/change_nova_service_state.py | 7 +-
watcher/applier/actions/migration.py | 6 +-
watcher/applier/actions/volume_migration.py | 11 +-
watcher/applier/messaging/trigger.py | 4 +-
watcher/applier/workflow_engine/default.py | 4 +-
watcher/cmd/__init__.py | 20 +
watcher/cmd/status.py | 21 +-
watcher/common/clients.py | 69 ++-
watcher/common/config.py | 7 +-
watcher/common/exception.py | 53 +-
watcher/common/nova_helper.py | 133 +++--
watcher/common/placement_helper.py | 179 ++++++
watcher/common/policies/__init__.py | 2 +
watcher/common/policies/data_model.py | 37 ++
watcher/common/scheduling.py | 27 +
watcher/common/service.py | 9 +-
watcher/common/utils.py | 5 +-
watcher/conf/__init__.py | 10 +
watcher/conf/_opts.py | 58 --
watcher/conf/api.py | 2 +-
watcher/conf/applier.py | 4 +-
watcher/conf/ceilometer_client.py | 2 +-
watcher/conf/cinder_client.py | 2 +-
watcher/conf/clients_auth.py | 2 +-
watcher/conf/collector.py | 22 +-
watcher/conf/datasources.py | 59 ++
watcher/conf/db.py | 2 +-
watcher/conf/decision_engine.py | 25 +-
watcher/conf/glance_client.py | 2 +-
watcher/conf/gnocchi_client.py | 13 +-
watcher/conf/grafana_client.py | 146 +++++
watcher/conf/grafana_translators.py | 44 ++
watcher/conf/ironic_client.py | 2 +-
watcher/conf/keystone_client.py | 38 ++
watcher/conf/monasca_client.py | 2 +-
watcher/conf/neutron_client.py | 2 +-
watcher/conf/nova_client.py | 15 +-
watcher/conf/opts.py | 31 +-
watcher/conf/placement_client.py | 41 ++
watcher/conf/planner.py | 2 +-
watcher/datasource/base.py | 100 ----
watcher/datasource/ceilometer.py | 289 ---------
watcher/datasource/gnocchi.py | 197 -------
watcher/datasource/manager.py | 77 ---
watcher/datasource/monasca.py | 221 -------
.../versions/609bec748f2a_add_force_field.py | 22 +
watcher/db/sqlalchemy/models.py | 1 +
watcher/decision_engine/audit/base.py | 36 +-
watcher/decision_engine/audit/continuous.py | 33 +-
.../datasources}/__init__.py | 0
watcher/decision_engine/datasources/base.py | 227 +++++++
watcher/decision_engine/datasources/ceilometer.py | 273 +++++++++
watcher/decision_engine/datasources/gnocchi.py | 200 +++++++
watcher/decision_engine/datasources/grafana.py | 251 ++++++++
.../datasources/grafana_translator}/__init__.py | 0
.../datasources/grafana_translator/base.py | 125 ++++
.../datasources/grafana_translator/influxdb.py | 88 +++
watcher/decision_engine/datasources/manager.py | 156 +++++
watcher/decision_engine/datasources/monasca.py | 171 ++++++
.../decision_engine/goal/efficacy/indicators.py | 2 +-
watcher/decision_engine/manager.py | 7 +-
.../decision_engine/messaging/audit_endpoint.py | 4 +-
.../messaging/data_model_endpoint.py | 60 ++
watcher/decision_engine/model/collector/base.py | 52 +-
watcher/decision_engine/model/collector/cinder.py | 30 +-
watcher/decision_engine/model/collector/ironic.py | 22 +-
watcher/decision_engine/model/collector/nova.py | 342 ++++-------
.../model/element/compute_resource.py | 1 -
watcher/decision_engine/model/element/instance.py | 5 +-
watcher/decision_engine/model/element/node.py | 22 +-
watcher/decision_engine/model/element/volume.py | 2 +-
watcher/decision_engine/model/model_root.py | 58 +-
watcher/decision_engine/model/notification/nova.py | 172 ++++--
watcher/decision_engine/planner/manager.py | 10 +-
.../planner/node_resource_consolidation.py | 163 ++++++
watcher/decision_engine/rpcapi.py | 5 +
watcher/decision_engine/scope/compute.py | 21 +-
watcher/decision_engine/solution/base.py | 6 +-
.../decision_engine/strategy/context/default.py | 10 +-
.../strategy/strategies/__init__.py | 6 +-
.../strategy/strategies/actuation.py | 8 +-
.../decision_engine/strategy/strategies/base.py | 92 ++-
.../strategy/strategies/basic_consolidation.py | 115 ++--
.../strategy/strategies/dummy_strategy.py | 2 +-
.../strategy/strategies/dummy_with_resize.py | 2 +-
.../strategy/strategies/dummy_with_scorer.py | 2 +-
.../strategy/strategies/host_maintenance.py | 21 +-
.../strategies/node_resource_consolidation.py | 291 +++++++++
.../strategy/strategies/noisy_neighbor.py | 33 +-
.../strategy/strategies/outlet_temp_control.py | 51 +-
.../strategy/strategies/saving_energy.py | 37 +-
.../strategies/storage_capacity_balance.py | 3 +-
.../strategy/strategies/uniform_airflow.py | 81 +--
.../strategies/vm_workload_consolidation.py | 93 +--
.../strategy/strategies/workload_balance.py | 68 +--
.../strategy/strategies/workload_stabilization.py | 133 +++--
.../strategy/strategies/zone_migration.py | 47 +-
watcher/hacking/checks.py | 1 +
watcher/locale/de/LC_MESSAGES/watcher.po | 51 +-
watcher/locale/en_GB/LC_MESSAGES/watcher.po | 45 +-
watcher/objects/audit.py | 9 +-
watcher/objects/utils.py | 151 -----
.../actions/test_change_nova_service_state.py | 2 +-
.../test_taskflow_action_container.py | 12 +-
.../decision_engine/audit/test_audit_handlers.py | 11 +-
.../decision_engine/cluster/test_cinder_cdmc.py | 2 +
.../decision_engine/cluster/test_nova_cdmc.py | 339 ++++++++++-
.../datasources/grafana_translators/__init__.py | 0
.../datasources/grafana_translators/test_base.py | 106 ++++
.../grafana_translators/test_influxdb.py | 176 ++++++
.../datasources/test_ceilometer_helper.py | 171 ++++++
.../datasources/test_gnocchi_helper.py | 178 ++++++
.../datasources/test_grafana_helper.py | 305 ++++++++++
.../decision_engine/datasources/test_manager.py | 158 +++++
.../datasources/test_monasca_helper.py | 116 ++++
.../messaging/test_data_model_endpoint.py | 54 ++
.../decision_engine/model/ceilometer_metrics.py | 211 ++++---
.../decision_engine/model/data/scenario_1.xml | 80 +--
.../decision_engine/model/data/scenario_10.xml | 27 +
.../data/scenario_1_with_1_node_unavailable.xml | 84 +--
.../data/scenario_1_with_all_instances_exclude.xml | 80 +--
.../data/scenario_1_with_all_nodes_disable.xml | 8 +-
.../model/data/scenario_1_with_metrics.xml | 8 +-
.../model/data/scenario_2_with_metrics.xml | 20 +-
.../model/data/scenario_3_with_2_nodes.xml | 8 +-
.../model/data/scenario_3_with_metrics.xml | 12 +-
.../data/scenario_4_with_1_node_no_instance.xml | 2 +-
.../model/data/scenario_5_with_instance_disk_0.xml | 4 +-
.../model/data/scenario_6_with_2_nodes.xml | 12 +-
.../model/data/scenario_7_with_2_nodes.xml | 12 +-
.../model/data/scenario_8_with_4_nodes.xml | 20 +-
...nario_9_with_3_active_plus_1_disabled_nodes.xml | 20 +-
.../model/faker_cluster_and_metrics.py | 104 ++--
.../decision_engine/model/faker_cluster_state.py | 10 +
....json => instance-live_migration_post-end.json} | 2 +-
.../data/scenario3_service-update-disabled.json | 2 +-
.../data/scenario3_service-update-enabled.json | 2 +-
.../model/notification/data/service-create.json | 2 +-
.../model/notification/data/service-delete.json | 2 +-
.../model/notification/data/service-update.json | 26 +-
.../model/notification/test_nova_notifications.py | 193 ++++--
.../planner/test_node_resource_consolidation.py | 245 ++++++++
.../planner/test_planner_manager.py | 4 +-
.../solution/test_default_solution.py | 9 +-
.../strategy/strategies/test_base.py | 70 +++
.../strategies/test_basic_consolidation.py | 84 +--
.../strategy/strategies/test_host_maintenance.py | 31 +-
.../strategies/test_node_resource_consolidation.py | 345 +++++++++++
.../strategy/strategies/test_noisy_neighbor.py | 2 +-
.../strategies/test_outlet_temp_control.py | 14 +-
.../strategy/strategies/test_saving_energy.py | 78 +--
.../strategies/test_vm_workload_consolidation.py | 84 +--
.../strategy/strategies/test_workload_balance.py | 16 +-
.../strategies/test_workload_stabilization.py | 125 ++--
.../strategy/strategies/test_zone_migration.py | 158 +++--
266 files changed, 9304 insertions(+), 4679 deletions(-)
Requirements updates
--------------------
diff --git a/requirements.txt b/requirements.txt
index 39d429b2..cc65597b 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -9 +9 @@ keystoneauth1>=3.4.0 # Apache-2.0
-jsonschema<3.0.0,>=2.6.0 # MIT
+jsonschema>=2.6.0 # MIT
@@ -12,0 +13 @@ croniter>=0.3.20 # MIT License
+os-resource-classes>=0.4.0
@@ -16 +17 @@ oslo.config>=5.2.0 # Apache-2.0
-oslo.context>=2.20.0 # Apache-2.0
+oslo.context>=2.21.0 # Apache-2.0
@@ -20 +21 @@ oslo.log>=3.37.0 # Apache-2.0
-oslo.messaging>=5.36.0 # Apache-2.0
+oslo.messaging>=8.1.2 # Apache-2.0
@@ -30 +31 @@ pbr>=3.1.1 # Apache-2.0
-pecan>=1.2.1 # BSD
+pecan>=1.3.2 # BSD
@@ -39 +40 @@ python-neutronclient>=6.7.0 # Apache-2.0
-python-novaclient>=10.1.0 # Apache-2.0
+python-novaclient>=14.1.0 # Apache-2.0
@@ -41 +42 @@ python-openstackclient>=3.14.0 # Apache-2.0
-python-ironicclient>=2.3.0 # Apache-2.0
+python-ironicclient>=2.5.0 # Apache-2.0
@@ -46 +47 @@ taskflow>=3.1.0 # Apache-2.0
-WebOb>=1.7.4 # MIT
+WebOb>=1.8.5 # MIT
@@ -48 +49,3 @@ WSME>=0.9.2 # MIT
-networkx>=1.11 # BSD
+# NOTE(fdegir): NetworkX 2.3 dropped support for Python 2
+networkx>=1.11,<2.3;python_version<'3.0' # BSD
+networkx>=1.11;python_version>='3.4' # BSD
@@ -49,0 +53 @@ microversion_parse>=0.2.1 # Apache-2.0
+futurist>=1.8.0 # Apache-2.0
diff --git a/test-requirements.txt b/test-requirements.txt
index a6810b6a..1a5854f6 100644
--- a/test-requirements.txt
+++ b/test-requirements.txt
@@ -16 +16 @@ os-api-ref>=1.4.0 # Apache-2.0
-bandit>=1.1.0 # Apache-2.0
+bandit>=1.6.0 # Apache-2.0
1
0
We are pumped to announce the release of:
sahara-plugin-vanilla 2.0.0: Vanilla Plugin for Sahara Project
This release is part of the train release series.
The source is available from:
https://opendev.org/openstack/sahara-plugin-vanilla
Download the package from:
https://tarballs.openstack.org/sahara-plugin-vanilla/
Please report issues through:
https://storyboard.openstack.org/#!/project/1106
For more details, please see below.
Changes in sahara-plugin-vanilla 1.0.0..2.0.0
---------------------------------------------
9fcba44 Imported Translations from Zanata
bf9ce22 Imported Translations from Zanata
0d51795 Update TOX/UPPER_CONSTRAINTS_FILE for stable/train
8e76f13 Update .gitreview for stable/train
0790c5b Imported Translations from Zanata
568be30 Fix string
8589ddf Update the constraints url
ac67514 Doc updates: bump theme to 1.20.0, add PDF build
7d9be6f Imported Translations from Zanata
8a8520b Limit envlist to py37 for Python 3 Train goal
3c73896 Update sphinx from current requirements
d6b6947 Update Python 3 test runtimes for Train
cd9dec5 Replace git.openstack.org URLs with opendev.org URLs
686ae55 OpenDev Migration Patch
47a9338 Dropping the py35 testing
f27e464 Update master for stable/stein
Diffstat (except docs and test files)
-------------------------------------
.gitreview | 3 +-
.zuul.yaml | 4 +-
README.rst | 2 +-
lower-constraints.txt | 2 +-
releasenotes/source/conf.py | 13 ---
releasenotes/source/index.rst | 1 +
releasenotes/source/stein.rst | 6 ++
.../locale/de/LC_MESSAGES/sahara_plugin_vanilla.po | 103 +++++++++++++++++++++
.../locale/id/LC_MESSAGES/sahara_plugin_vanilla.po | 101 ++++++++++++++++++++
.../locale/ne/LC_MESSAGES/sahara_plugin_vanilla.po | 95 +++++++++++++++++++
.../plugins/vanilla/hadoop2/validation.py | 4 +-
setup.cfg | 2 +-
tox.ini | 31 +++++--
16 files changed, 342 insertions(+), 62 deletions(-)
1
0
We are happy to announce the release of:
designate 9.0.0: DNS as a Service
This release is part of the train release series.
The source is available from:
https://opendev.org/openstack/designate
Download the package from:
https://tarballs.openstack.org/designate/
Please report issues through:
https://bugs.launchpad.net/designate/+bugs
For more details, please see below.
Changes in designate 8.0.0..9.0.0
---------------------------------
528f4e05 fix call obj_reset_changes with recursive=True raise error
58147938 Set enable_host_header in documentation
660eacbc Removed deprecated powerdns 3 driver
52ad1c4c Removed deprecated pool-manager implementation
a09064a5 Refactored service layer
0ba52bfb fix get the name servers for a zone not validate zone_id
88a8ba5d Add missing RabbitMQ configuration to install guides
ceaba7d0 Build man pages for the commands that are documented
4428275d Make IPv6 jobs voting
437cbf05 Add pdf-docs env to tox.ini
833f9c87 Adjusted default heartbeat interval and renamed file
bcaf9fd1 Only log zone not found when notifing
b591ad75 Only log unexpected rndc errors
57f42080 Fix bug in recordset status
005ecc87 Standardizing install guides
7cf35ad9 Updated install guide
dd720584 Blacklist eventlet 0.21.0,0.23.0,0.25.0
3429014c Fixed error in install guide
c2ff6b9b Fixed broken kolla install link
a3afcde0 Skip grenade jobs on Release note changes
b04e4a45 Updated Release notes for Train
2ad08a6a Fix ipv6 bugs with devstack and pdns4 driver
e1ea4044 Docs: Fix broken links and make more robust
c640baf7 Add non voting ipv6 only jobs
d160f364 Fix missing _static folder breaking gate
556a27e4 Ensure coordination IDs are encoded
e23f47d0 Drop creating extra endpoints in devstack
c53b1684 Fixing 404 link
ed34f9a3 Use zone.tenant_id when context.project_id is None for pdns3
7ea92555 Blacklist sphinx 2.1.0 (autodoc bug)
1ac2c8db Use zone.tenant_id as tenant if context.project_id is None
ad32f7a1 Update api-ref location
5e0e4c19 Cleaned up mdns handler and added better test coverage
e70af61d Improve log message for better understanding
2c9e9f5f Bump to hacking 1.1.0
d491cd78 Fix postgres job and make it non-voting for now
851d974a Fixed akamai default wsdl path
1f97fab5 Add some additional logging for failing task test
ee04eaf2 Remove unused code in utils and improved utils testing
c5bc8947 Change configuration to be consistent with underlines
08684a2c Rewrote bind9 backend unit tests
a15a2da6 Add Python 3 Train unit tests
5383ad9d Moved test_context to designate.tests.unit
bcd59f2b Removing manage command for akamai backend
3734f2a1 Update vagrant config
81acdc7a Improved CAA record test coverage
511c08fb Improved worker test coverage
d787ee45 Only register dynamic pool options when running designate-manage
a31982b5 Fixed oslo deprecated warning when running devstack
097ffec5 Finalized centralization of configuration
eb244360 Improving test coverage of designate backend
fcb3290b Fixed renaming topic breaking service
c95f0445 Fixed issue with documentation breaking CI
03b390de Updated context to use project_id
0d8154de Added config opts unit tests
47899bb7 Added sink unit tests
7acd220c Simplified metrics implementation
d60bd536 Modernized agent tests
926e4ed0 Modernized dnsutils tests
bed43e1d Modernized mdns tests
778bb8cd Renamed unit.test_api to unit.api
a53c3daf Moved most configuration into designate.conf
4eed31a9 Remove KS v2 support and add region support
201d8be1 Removing unused code and updated unit tests readme
2d091bfd Fix api-ref building
54c62ee7 Adding basic socket tests and fixed a typo
82ec7a8a Modernized backend tests
a7510ad4 Modernized pool manager tests
94c38c02 Modernized scheduler tests
4820cd48 Modernized object tests
2c7b8476 Lazy-load PowerDNS 4 logs + cleaned up tests
6158c837 Modernized producer tests
635fae01 Modernized workers tests
e18436a4 Added PowerDNS 4 unit tests
3f8c88f0 Fixed typo in PowerDNS tests
2db20ef8 Added basic synchronized_zone tests
b5b593ac Don't bind to tcp/udp when running unit-tests
dec36390 Clean fix for bandit exclusions change
af51a844 Cap to sphinx 2.0.0 on Python 2.7
6f13191a Clean up zone locking
c16478eb Blacklist Bandit 1.6.0 due to directory exclusion bug
27d2c22e Update Python 3 test runtimes for Train
9214a42a Designate service_statuses is not working
692eb798 Remove unused debug code
9512ef19 Ensure pdns4 driver is consistent with other drivers
5d0408c7 Replace git.openstack.org URLs with opendev.org URLs
fffdf29a OpenDev Migration Patch
2a63b4d0 Dropping the py35 testing
9b809a11 Replace RCPDispatcher with decorator
3fbd9dea Update Driver statuses
9fffac22 Added missing service_statuses metadata
3f5b7fc7 Switch to using project_id for network_api
3c231e39 Modernize tox
f828654a Fix DBDeadLock error resulting into 500
ce009757 Update Zuul Jobs
02ef0350 Check TXT/SPF records for RFC1035 sec. 5.1
55f31d48 Replace openstack.org git:// URLs with https://
7a1ba8ee Allow pdns4 backend to select tsigkey
178737c4 Fixing stevedore warning when running devstack
b7d735ae Update master for stable/stein
fa3bc779 Update json module to jsonutils
Diffstat (except docs and test files)
-------------------------------------
.gitreview | 2 +-
.zuul.yaml | 177 ++--
README.rst | 4 +-
contrib/vagrant/Vagrantfile | 24 +-
contrib/vagrant/local.conf | 5 +-
designate/__init__.py | 48 +-
designate/agent/__init__.py | 76 --
designate/agent/service.py | 36 +-
designate/api/__init__.py | 114 ---
designate/api/middleware.py | 24 +-
designate/api/service.py | 29 +-
designate/api/v2/controllers/quotas.py | 2 +-
designate/api/v2/controllers/rest.py | 5 -
designate/api/v2/controllers/zones/nameservers.py | 2 +
.../api/v2/controllers/zones/tasks/exports.py | 2 +-
designate/backend/agent.py | 6 +-
designate/backend/agent_backend/impl_bind9.py | 44 +-
.../backend/agent_backend/impl_denominator.py | 27 +-
designate/backend/agent_backend/impl_djbdns.py | 56 +-
designate/backend/agent_backend/impl_gdnsd.py | 37 +-
designate/backend/agent_backend/impl_knot2.py | 35 +-
designate/backend/agent_backend/impl_msdns.py | 17 -
designate/backend/base.py | 11 +-
designate/backend/impl_akamai.py | 24 +-
designate/backend/impl_bind9.py | 3 +-
designate/backend/impl_designate.py | 41 +-
designate/backend/impl_dynect.py | 27 +-
designate/backend/impl_infoblox/__init__.py | 5 +-
designate/backend/impl_infoblox/connector.py | 9 +-
designate/backend/impl_pdns4.py | 65 +-
designate/backend/impl_powerdns/__init__.py | 172 ----
.../backend/impl_powerdns/migrate_repo/README | 4 -
.../backend/impl_powerdns/migrate_repo/migrate.cfg | 25 -
.../versions/001_add_initial_schema.py | 103 ---
.../versions/002_add_moniker_id_cols.py | 55 --
.../versions/003_correct_master_column_length.py | 32 -
.../versions/004_correct_content_column_length.py | 32 -
.../versions/005_rename_moniker_id_columns.py | 42 -
.../versions/006_add_inherit_ttl_col.py | 61 --
.../versions/007_add_recordset_id_col.py | 38 -
.../008_record_add_designate_recordset_id_index.py | 37 -
.../versions/009_cascade_domain_deletes.py | 63 --
.../versions/010_records_add_disabled_column.py | 36 -
.../migrate_repo/versions/012_placeholder.py | 30 -
.../migrate_repo/versions/013_placeholder.py | 30 -
.../migrate_repo/versions/014_placeholder.py | 30 -
.../migrate_repo/versions/015_placeholder.py | 30 -
.../migrate_repo/versions/016_placeholder.py | 30 -
.../versions/017_records_drop_duped_index.py | 38 -
designate/backend/impl_powerdns/tables.py | 39 -
designate/central/__init__.py | 56 --
designate/central/rpcapi.py | 5 +-
designate/central/service.py | 266 +++---
designate/cmd/agent.py | 9 +-
designate/cmd/api.py | 10 +-
designate/cmd/central.py | 12 +-
designate/cmd/manage.py | 4 +-
designate/cmd/mdns.py | 9 +-
designate/cmd/pool_manager.py | 63 --
designate/cmd/producer.py | 17 +-
designate/cmd/sink.py | 9 +-
designate/cmd/status.py | 4 +-
designate/cmd/worker.py | 17 +-
designate/cmd/zone_manager.py | 62 --
designate/common/keystone.py | 16 -
designate/common/memorycache.py | 97 ---
designate/conf/__init__.py | 66 ++
designate/conf/agent.py | 59 ++
designate/conf/akamai.py | 46 +
designate/conf/api.py | 109 +++
designate/conf/base.py | 103 +++
designate/conf/bind9.py | 44 +
designate/conf/central.py | 64 ++
designate/conf/coordination.py | 53 ++
designate/conf/denominator.py | 39 +
designate/conf/djbdns.py | 57 ++
designate/conf/dynect.py | 41 +
designate/conf/gdnsd.py | 42 +
designate/conf/heartbeat_emitter.py | 38 +
.../impl_infoblox/config.py => conf/infoblox.py} | 42 +-
designate/conf/keystone.py | 32 +
designate/conf/knot2.py | 40 +
designate/conf/mdns.py | 60 ++
designate/conf/metrics.py | 36 +
.../migrate_repo/manage.py => conf/msdns.py} | 26 +-
designate/conf/network_api.py | 58 ++
designate/conf/opts.py | 80 ++
designate/conf/producer.py | 140 +++
designate/conf/proxy.py | 43 +
designate/conf/sink.py | 104 +++
.../test_backends/__init__.py => conf/storage.py} | 25 +-
designate/conf/worker.py | 66 ++
designate/context.py | 23 +-
designate/coordination.py | 162 +---
designate/debug.py | 39 -
designate/dnsutils.py | 16 +-
designate/exceptions.py | 58 +-
designate/hacking/checks.py | 8 +-
designate/manage/akamai.py | 107 ---
designate/manage/database.py | 18 +-
designate/manage/pool.py | 32 +-
designate/manage/pool_manager_cache.py | 66 --
designate/manage/powerdns.py | 73 --
designate/mdns/__init__.py | 67 --
designate/mdns/base.py | 5 -
designate/mdns/handler.py | 292 ++++---
designate/mdns/notify.py | 75 +-
designate/mdns/rpcapi.py | 8 +-
designate/mdns/service.py | 44 +-
designate/mdns/xfr.py | 31 +-
designate/metrics.py | 117 +--
designate/metrics_client/noop.py | 10 +-
designate/network_api/fake.py | 20 +-
designate/network_api/neutron.py | 43 +-
.../fake.py} | 31 +-
designate/notification_handler/neutron.py | 22 -
designate/notification_handler/nova.py | 22 -
designate/notifications.py | 12 +-
designate/objects/__init__.py | 1 -
designate/objects/base.py | 26 +-
designate/objects/fields.py | 6 +-
designate/objects/pool.py | 66 --
designate/objects/pool_manager_status.py | 43 -
designate/objects/recordset.py | 22 +-
designate/objects/rrdata_spf.py | 18 +
designate/objects/rrdata_txt.py | 18 +
designate/opts.py | 61 --
designate/plugin.py | 45 -
designate/pool_manager/__init__.py | 136 ---
designate/pool_manager/cache/__init__.py | 27 -
designate/pool_manager/cache/base.py | 63 --
.../pool_manager/cache/impl_memcache/__init__.py | 130 ---
designate/pool_manager/cache/impl_noop/__init__.py | 36 -
.../pool_manager/cache/impl_sqlalchemy/__init__.py | 78 --
.../cache/impl_sqlalchemy/migrate_repo/README | 4 -
.../cache/impl_sqlalchemy/migrate_repo/manage.py | 23 -
.../cache/impl_sqlalchemy/migrate_repo/migrate.cfg | 25 -
.../versions/001_add_pool_manager_status.py | 76 --
.../versions/002_rename_server_to_nameserver.py | 33 -
.../migrate_repo/versions/003_placeholder.py | 30 -
.../migrate_repo/versions/004_placeholder.py | 30 -
.../migrate_repo/versions/005_placeholder.py | 30 -
.../migrate_repo/versions/006_placeholder.py | 30 -
.../migrate_repo/versions/007_placeholder.py | 30 -
.../versions/008_domain_to_zone_rename.py | 34 -
.../pool_manager/cache/impl_sqlalchemy/tables.py | 50 --
designate/pool_manager/rpcapi.py | 115 ---
designate/pool_manager/service.py | 962 ---------------------
designate/producer/__init__.py | 121 ---
designate/producer/service.py | 47 +-
designate/producer/tasks.py | 118 +--
designate/quota/__init__.py | 17 -
designate/rpc.py | 74 +-
designate/scheduler/__init__.py | 16 -
designate/schema/_validators.py | 8 +-
designate/service.py | 343 +++-----
designate/service_status.py | 26 +-
designate/sink/__init__.py | 42 -
designate/sink/service.py | 13 +-
designate/sqlalchemy/base.py | 6 +-
designate/storage/impl_sqlalchemy/__init__.py | 13 +-
designate/storage/impl_sqlalchemy/tables.py | 2 +
.../test_agent/test_backends/test_denominator.py | 129 ---
.../test_api/test_admin/extensions/test_quotas.py | 42 +-
.../test_api/test_admin/extensions/test_reports.py | 4 +-
.../test_pool_manager/cache/test_sqlalchemy.py | 39 -
.../test_resources/test_templates/test_bind9.py | 29 -
.../agent/backends}/__init__.py | 19 +-
.../agent/backends}/test_fake.py | 38 +-
.../test_backends => agent/backends}/test_gdnsd.py | 62 +-
.../{test_agent => unit/agent}/test_handler.py | 129 ++-
.../unit/{test_api => api}/test_middleware.py | 15 +-
.../unit/backend}/__init__.py | 0
.../{test_backend => unit/backend}/test_dynect.py | 120 ++-
.../{test_backend => unit/backend}/test_nsd4.py | 57 +-
.../{test_objects => unit/metrics}/__init__.py | 0
.../unit/{test_metrics => metrics}/test_metrics.py | 106 ++-
.../notification_handler}/__init__.py | 0
.../test_templates => unit/objects}/__init__.py | 0
.../{test_objects => objects}/test_adapters.py | 13 +-
.../unit/{test_objects => objects}/test_base.py | 34 +-
.../objects}/test_mx_object.py | 26 +-
.../objects}/test_naptr_object.py | 14 +-
.../{test_objects => objects}/test_recordset.py | 197 +++--
.../{test_objects => objects}/test_rrdata_a.py | 12 +-
.../objects}/test_sshfp_object.py | 46 +-
.../test_yaml_adapters.py | 60 +-
.../test_domain.py => objects/test_zone.py} | 70 +-
.../{test_workers => unit/producer}/__init__.py | 0
.../unit/{test_producer => producer}/test_tasks.py | 88 +-
.../unit/{test_agent => scheduler}/__init__.py | 0
.../{test_scheduler => scheduler}/test_basic.py | 74 +-
.../{test_scheduler => scheduler}/test_filters.py | 38 +-
.../{test_agent/test_backends => sink}/__init__.py | 0
.../unit/test_agent/test_backends/test_djbdns.py | 126 ---
.../unit/test_agent/test_backends/test_knot2.py | 200 -----
.../unit/test_agent/test_backends/test_msdns.py | 122 ---
.../workers}/test_base_task.py | 8 +-
.../workers}/test_processing.py | 28 +-
.../workers}/test_zone_tasks.py | 520 +++++++----
designate/utils.py | 148 +---
designate/worker/__init__.py | 68 --
designate/worker/rpcapi.py | 5 +-
designate/worker/service.py | 38 +-
designate/worker/tasks/zone.py | 2 +-
devstack/README.rst | 4 +-
devstack/designate_plugins/backend-agent | 8 +-
devstack/designate_plugins/backend-agent-knot2 | 8 +-
devstack/designate_plugins/backend-agent-msdns | 2 +-
devstack/designate_plugins/backend-bind9 | 26 +-
devstack/designate_plugins/backend-designate | 26 +-
devstack/designate_plugins/backend-infoblox | 2 +-
devstack/designate_plugins/backend-pdns4 | 17 +-
devstack/designate_plugins/backend-powerdns | 171 ----
devstack/gate/gate_hook.sh | 4 +-
devstack/networking_test.py | 5 +-
devstack/plugin.sh | 41 +-
devstack/settings | 3 +-
devstack/upgrade/settings | 4 +-
devstack/upgrade/shutdown.sh | 18 +-
.../__init__.py => doc/source/_static/.placeholder | 0
.../admin/backends/sample_yaml_snippets/pdns4.yaml | 2 +
.../backends/sample_yaml_snippets/powerdns.yaml | 16 -
etc/designate/designate-config-generator.conf | 17 +-
.../{designate-base => designate-bind9}/post.yaml | 0
playbooks/designate-pdns4/post.yaml | 4 +
.../legacy/designate-devstack-agent-base/run.yaml | 8 +-
playbooks/legacy/designate-devstack-base/run.yaml | 8 +-
.../grenade-devstack-designate-pdns4/run.yaml | 10 +-
...755788-txt-spf-validation-d18e43c12691132a.yaml | 11 +
...e_status-multiple-workers-cf99fe9e4eaf57ff.yaml | 9 +
...rdination-ids-are-encoded-b5f32b9e16339251.yaml | 18 +
...2799-allow-topic-override-7540c14a10b8e3ae.yaml | 15 +
.../fix-recordset-status-204e2747ef47d5ad.yaml | 13 +
.../notes/new-service-layer-8023c242de89075a.yaml | 18 +
.../notes/pdns4-tsig-1fda534c01d90138.yaml | 10 +
.../removed-pool-manager-a1a9466aceb44b9f.yaml | 11 +
...ctated-pdns-mysql-backend-1babc968f5778ae6.yaml | 6 +
releasenotes/source/index.rst | 1 +
releasenotes/source/stein.rst | 6 +
requirements.txt | 4 +-
roles/pdns4-logs-conf/defaults/main.yaml | 1 +
roles/pdns4-logs-conf/tasks/main.yaml | 38 +
setup.cfg | 28 +-
test-requirements.txt | 2 +-
tox.ini | 80 +-
363 files changed, 9564 insertions(+), 12894 deletions(-)
Requirements updates
--------------------
diff --git a/requirements.txt b/requirements.txt
index 0afcc00f..35f59ac7 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -6 +6 @@ Babel!=2.4.0,>=2.3.4 # BSD
-eventlet!=0.18.3,!=0.20.1,>=0.18.2 # MIT
+eventlet!=0.18.3,!=0.20.1,!=0.21.0,!=0.23.0,!=0.25.0,>=0.18.2 # MIT
@@ -10 +10 @@ Jinja2>=2.10 # BSD License (3 clause)
-jsonschema<3.0.0,>=2.6.0 # MIT
+jsonschema>=2.6.0 # MIT
diff --git a/test-requirements.txt b/test-requirements.txt
index 237bfa3a..da11a6a6 100644
--- a/test-requirements.txt
+++ b/test-requirements.txt
@@ -6 +6 @@
-hacking!=0.13.0,<0.14,>=0.12.0 # Apache-2.0
+hacking>=1.1.0,<1.2.0 # Apache-2.0
1
0
We are delighted to announce the release of:
manila 9.0.0: Shared Storage for OpenStack
This release is part of the train release series.
The source is available from:
https://opendev.org/openstack/manila
Download the package from:
https://tarballs.openstack.org/manila/
Please report issues through:
https://bugs.launchpad.net/manila/+bugs
For more details, please see below.
Changes in manila 8.0.0..9.0.0
------------------------------
57edcbd1 Fix pagination does not speed up queries bug
6b1a5e01 Fix timeout when compute server was soft-deleted
923edff7 Fix [Unity] verification and convert mgmt ipv6
914fa7fd Retrieve compatible share servers using subnet id
e24099d6 Fix error print format
0c22a613 Skip NFS/Samba install for CephFS
d9666621 [train][goal] Define new manila-tempest-minimal-lvm-ipv6-only job
14d3e268 Add share network with multiple subnets
ac97bdbc Add manila-status to man-pages list
15b085ed [NetApp] Adds support for replication with DHSS=True
523c5aaa Pylint: use -j 0 arg
2d268a73 update share group test in db
01e89ae2 Add update share-type API to Share Types
9551623c Remove support for ``data_node_access_ip``
8d26a34c [Unity] Driver supports the mode that does not create and destory share servers (DHSS=False)
60254a4f Fix _list_view function for count
cef3bee0 Change PDF file name
361b15da [Nexenta] Refactored NexentaStor5 NFS driver
b1713e62 Add PDF documentation build
8688a198 Fix subsections for container driver.
d67dee17 Enable replication tests (DHSS=True) on Dummy driver
b917fabf Add extend/shrink feature for glusterfs directory layout
ec55c1a8 Validate API sample JSON files
fe43d281 Correct json format in api-ref
4aa0945c [CI] Enable glusterfs-nfs ci
0f4997d0 Fix incorrect 'cephfnfs1' to 'cephfsnfs1'
9603287c Add missing space
266972ab Add Infortrend Manila Driver
25506de0 Add manila-ui config instructions
8e1343c9 Remove support for "lvm_share_export_ip"
8cb70952 [CI] Convert rally jobs to zuulv3 native
d0bb79b3 Fix usage of deprecated devstack function
8d03a2a4 Make manila-tempest-plugin installation optional
b39bc700 [api-ref] Correct share metadata API ref
70e90834 Conditionally restore default route in setup_ipv6
cbe70568 Run tempest jobs under python3
9be39cbe add IPv6 support for CephFS/NFS back end
e5582cc5 [api-ref] Use relative links and fix grammar
7916986e Update api-ref location
6995b9f9 Manila PowerMax - rebrand from VMAX to PowerMax
a231100d Add Python 3 Train unit tests
d3b26f3d Remove the redunant table from windows' editor
8fd4dfb4 Unmount NetApp active share after replica promote
5c1f27f6 Bump the openstackdocstheme extension to 1.20
f333b88e Check NetApp SnapRestore license for pools
10bb9e8e Fix an invalid assert state
54d85587 Manila share driver for Inspur InStorage series.
1709fd7f [CI] Add bindep.txt
84e7f4e5 Adding documentation for User Messages in Manila Documentation
5d1ef157 Fix typo in Manila docs in manila.rst file
fd21f5f2 [CI] Run scenario tests in the cephfs-nfs job
408348b5 Add admin ref for manage/unmanage servers DHSS=True
c2953972 Blacklist python-cinderclient 4.0.0
6afe1205 Manila VMAX docs - notification of removal of tags
c5dd7673 Update sphinx dependency
4fbf1a2d [NetApp] Fix race condition issues on vserver deletion
fdefb0e7 [CI] Bump timeout for the migrations test case
bc87926e NeutronBindNetworkPlugin: fix multi segment mtu
f1042ed4 [api-ref] Update JSON samples for scheduler-stats API
51aa1d8c Fix error print format
e71e805f [Unity] Update doc for revert to snap support
8790c293 OpenDev Migration Patch
933ae44d Dropping the py35 testing
2736d4ad The parameters of 'list shares' are optional
4ffca949 [api-ref] Delete unused parameters
5bf03373 [api-ref] De-duplicate name and description parameters
f185ff0f [api-ref] De-duplicate date and time parameters
d7140ffe [api-ref] Replace "tenant" terminology with "project"
fb7ddd6d Fix misuse of assertFalse
8358b5f4 [grenade] Switch base version
d5bd526f [tests] Fix PYTHON3_VERSION
333d4ede Manila VMAX docs - clarify backend configurations
41d243c3 [doc][api-ref] Fix annotation and missing parameters
3fe22863 Add api-ref for manage/unmanage with DHSS=True
5cd64378 [doc][api-ref] Clarify manage/unmanage APIs
4c42246b Replace openstack.org git:// URLs with https://
f8ddadba [doc][api-ref] snapshot user_id and project_id fields
a4a0f16a Update master for stable/stein
e8adec1b Fix parameters passed to exception
Diffstat (except docs and test files)
-------------------------------------
.gitreview | 2 +-
.zuul.yaml | 150 +-
api-ref/source/availability-zones.inc | 8 +-
api-ref/source/conf.py | 16 -
api-ref/source/extensions.inc | 6 +-
api-ref/source/limits.inc | 4 +-
api-ref/source/os-share-manage.inc | 84 +-
api-ref/source/parameters.yaml | 1476 ++++---------------
api-ref/source/quota-classes.inc | 8 +-
api-ref/source/quota-sets.inc | 62 +-
.../samples/pools-list-detailed-response.json | 145 +-
api-ref/source/samples/pools-list-response.json | 48 +-
.../samples/share-access-rules-list-response.json | 2 +-
.../source/samples/share-group-create-request.json | 4 +-
.../source/samples/share-group-show-response.json | 8 +-
.../share-group-snapshot-create-request.json | 2 +-
.../share-group-snapshots-list-response.json | 2 +-
...hare-group-types-group-specs-list-response.json | 2 +-
.../samples/share-instances-list-response.json | 10 +-
api-ref/source/samples/share-manage-request.json | 3 +-
api-ref/source/samples/share-manage-response.json | 6 +-
...e-network-remove-security-service-response.json | 2 +-
.../samples/share-replicas-list-response.json | 4 +-
.../samples/share-server-manage-request.json | 10 +
.../samples/share-server-manage-response.json | 15 +
.../samples/share-server-reset-state-request.json | 5 +
.../samples/share-server-unmanage-request.json | 5 +
.../samples/share-show-instance-response.json | 5 +-
.../samples/share-show-metadata-item-response.json | 5 +
api-ref/source/samples/share-show-response.json | 2 +-
.../source/samples/share-type-update-request.json | 8 +
.../source/samples/share-type-update-response.json | 38 +
.../share-update-null-metadata-request.json | 3 +
.../share-update-null-metadata-response.json | 3 +
api-ref/source/samples/share-update-response.json | 2 +-
.../samples/shares-list-detailed-response.json | 6 +-
api-ref/source/samples/shares-list-response.json | 2 +-
.../source/samples/snapshot-create-response.json | 2 +
.../samples/snapshot-instances-list-response.json | 2 +-
.../source/samples/snapshot-manage-response.json | 2 +
api-ref/source/samples/snapshot-show-response.json | 2 +
.../source/samples/snapshot-update-response.json | 2 +
.../samples/snapshots-list-detailed-response.json | 4 +
.../source/samples/user-message-show-response.json | 3 +-
.../samples/user-messages-list-response.json | 3 +-
api-ref/source/scheduler-stats.inc | 8 +-
api-ref/source/security-services.inc | 89 +-
api-ref/source/services.inc | 14 +-
api-ref/source/share-access-rule-metadata.inc | 16 +-
api-ref/source/share-access-rules.inc | 23 +-
api-ref/source/share-actions.inc | 119 +-
api-ref/source/share-export-locations.inc | 16 +-
api-ref/source/share-group-snapshots.inc | 105 +-
api-ref/source/share-group-types.inc | 94 +-
api-ref/source/share-groups.inc | 82 +-
api-ref/source/share-instance-export-locations.inc | 15 +-
api-ref/source/share-instances.inc | 30 +-
api-ref/source/share-metadata.inc | 108 +-
api-ref/source/share-migration.inc | 40 +-
api-ref/source/share-networks.inc | 110 +-
api-ref/source/share-replica-export-locations.inc | 16 +-
api-ref/source/share-replicas.inc | 86 +-
api-ref/source/share-servers.inc | 193 ++-
api-ref/source/share-types.inc | 126 +-
api-ref/source/shares.inc | 185 +--
api-ref/source/snapshot-instances.inc | 32 +-
api-ref/source/snapshots.inc | 142 +-
api-ref/source/user-messages.inc | 18 +-
bindep.txt | 35 +
contrib/ci/post_test_hook.sh | 2 +
contrib/ci/pre_test_hook.sh | 9 +-
devstack/README.rst | 10 +
devstack/plugin.sh | 71 +-
devstack/settings | 7 +-
devstack/upgrade/settings | 8 +-
.../share_back_ends_feature_support_mapping.rst | 146 +-
.../admin/shared-file-systems-key-concepts.rst | 2 +-
...ared-file-systems-manage-and-unmanage-share.rst | 54 +-
.../admin/shared-file-systems-services-manage.rst | 2 +-
.../admin/shared-file-systems-share-migration.rst | 7 +-
.../shared-file-systems-share-replication.rst | 4 +
...shared-file-systems-share-server-management.rst | 180 +++
.../configuration/shared-file-systems/drivers.rst | 3 +-
...max-driver.rst => dell-emc-powermax-driver.rst} | 96 +-
.../drivers/dell-emc-unity-driver.rst | 118 +-
.../drivers/hitachi-hnas-driver.rst | 2 +-
.../shared-file-systems/drivers/lvm-driver.rst | 7 +-
.../drivers/nexentastor5-driver.rst | 100 ++
.../shared-file-systems/samples/manila.conf.rst | 11 +-
.../shared-file-systems/samples/policy.rst | 13 +-
.../configuration/tables/manila-nexentastor5.inc | 48 +
.../{manila-vmax.inc => manila-powermax.inc} | 10 +-
.../development-environment-devstack.rst | 42 +-
.../contributor/samples/container_local.conf | 4 +-
.../contributor/samples/zfsonlinux_local.conf | 4 +-
.../common/dhss-false-mode-configuration.rst | 8 +-
.../user/troubleshooting-asynchronous-failures.rst | 343 +++++
manila/api/common.py | 39 +-
manila/api/openstack/api_version_request.py | 8 +-
manila/api/openstack/rest_api_version_history.rst | 16 +-
manila/api/v1/security_service.py | 6 +-
manila/api/v1/share_servers.py | 53 +-
manila/api/v1/shares.py | 23 +-
manila/api/v2/router.py | 28 +
manila/api/v2/share_network_subnets.py | 202 +++
manila/api/v2/share_networks.py | 139 +-
manila/api/v2/share_replicas.py | 3 +-
manila/api/v2/share_servers.py | 58 +-
manila/api/v2/share_types.py | 93 +-
manila/api/views/share_network_subnets.py | 53 +
manila/api/views/share_networks.py | 42 +-
manila/api/views/share_servers.py | 11 +-
manila/api/views/shares.py | 2 +-
manila/data/helper.py | 10 +-
manila/db/api.py | 64 +-
...subnets_table_and_modify_share_servers_table.py | 231 +++
manila/db/sqlalchemy/api.py | 165 ++-
manila/db/sqlalchemy/models.py | 65 +-
manila/exception.py | 25 +-
manila/network/__init__.py | 15 +-
manila/network/neutron/neutron_network_plugin.py | 217 +--
manila/network/standalone_network_plugin.py | 52 +-
manila/opts.py | 8 +-
manila/policies/__init__.py | 2 +
manila/policies/share_network_subnet.py | 70 +
manila/policies/share_type.py | 10 +
manila/share/api.py | 77 +-
manila/share/driver.py | 5 +-
manila/share/drivers/cephfs/driver.py | 94 +-
manila/share/drivers/dell_emc/driver.py | 13 +-
.../plugins/{vmax => powermax}/__init__.py | 0
.../plugins/{vmax => powermax}/connection.py | 80 +-
.../plugins/{vmax => powermax}/object_manager.py | 219 +--
.../drivers/dell_emc/plugins/unity/connection.py | 39 +-
.../share/drivers/dell_emc/plugins/unity/utils.py | 2 +-
manila/share/drivers/glusterfs/layout_directory.py | 54 +-
manila/share/drivers/helpers.py | 24 +-
.../vmax => share/drivers/infortrend}/__init__.py | 0
manila/share/drivers/infortrend/driver.py | 257 ++++
manila/share/drivers/infortrend/infortrend_nas.py | 642 ++++++++
manila/share/drivers/inspur/instorage/__init__.py | 0
.../share/drivers/inspur/instorage/cli_helper.py | 476 ++++++
manila/share/drivers/inspur/instorage/instorage.py | 623 ++++++++
manila/share/drivers/lvm.py | 48 +-
.../netapp/dataontap/client/client_cmode.py | 37 +-
.../netapp/dataontap/cluster_mode/data_motion.py | 29 +-
.../netapp/dataontap/cluster_mode/drv_multi_svm.py | 35 +-
.../netapp/dataontap/cluster_mode/lib_base.py | 58 +-
.../netapp/dataontap/cluster_mode/lib_multi_svm.py | 121 +-
manila/share/drivers/nexenta/ns5/jsonrpc.py | 644 ++++++--
manila/share/drivers/nexenta/ns5/nexenta_nas.py | 586 +++++---
manila/share/drivers/nexenta/options.py | 65 +-
manila/share/drivers/nexenta/utils.py | 2 +-
manila/share/drivers/qnap/qnap.py | 6 +-
manila/share/drivers/service_instance.py | 6 +-
manila/share/manager.py | 121 +-
manila/share/share_types.py | 18 +
manila/share_group/share_group_types.py | 2 +-
.../migrations/alembic/migrations_data_checks.py | 114 ++
.../network/test_standalone_network_plugin.py | 61 +-
.../share/drivers/dell_emc/common/enas/fakes.py | 7 +-
.../share/drivers/dell_emc/common/enas/utils.py | 9 +-
.../drivers/dell_emc/plugins/powermax/__init__.py | 0
.../plugins/{vmax => powermax}/test_connection.py | 2 +-
.../{vmax => powermax}/test_object_manager.py | 90 +-
.../dell_emc/plugins/unity/mocked_manila.yaml | 36 +
.../dell_emc/plugins/unity/mocked_unity.yaml | 52 +
.../drivers/dell_emc/plugins/unity/res_mock.py | 7 +-
.../dell_emc/plugins/unity/test_connection.py | 44 +-
.../drivers/glusterfs/test_layout_directory.py | 82 +-
.../infortrend/fake_infortrend_manila_data.py | 408 ++++++
.../drivers/infortrend/fake_infortrend_nas_data.py | 416 ++++++
.../drivers/infortrend/test_infortrend_nas.py | 573 ++++++++
.../share/drivers/inspur/instorage/__init__.py | 0
.../drivers/inspur/instorage/test_instorage.py | 1534 ++++++++++++++++++++
.../share/drivers/netapp/dataontap/client/fakes.py | 18 +
.../netapp/dataontap/client/test_client_cmode.py | 48 +-
.../dataontap/cluster_mode/test_data_motion.py | 50 +
.../netapp/dataontap/cluster_mode/test_lib_base.py | 67 +-
.../dataontap/cluster_mode/test_lib_multi_svm.py | 207 ++-
.../share/drivers/nexenta/ns5/test_jsonrpc.py | 1259 ++++++++++++++--
.../share/drivers/nexenta/ns5/test_nexenta_nas.py | 684 +++++----
manila/volume/cinder.py | 10 +-
playbooks/legacy/grenade-dsvm-manila/run.yaml | 12 +-
.../run.yaml | 10 +-
.../run.yaml | 13 +-
.../run.yaml | 10 +-
.../run.yaml | 20 +-
.../manila-tempest-dsvm-glusterfs-native/run.yaml | 20 +-
.../run.yaml | 20 +-
.../manila-tempest-dsvm-glusterfs-nfs/run.yaml | 20 +-
playbooks/legacy/manila-tempest-dsvm-hdfs/run.yaml | 15 +-
.../manila-tempest-dsvm-mysql-generic/run.yaml | 13 +-
.../run.yaml | 13 +-
.../run.yaml | 13 +-
.../run.yaml | 13 +-
.../legacy/manila-tempest-dsvm-scenario/run.yaml | 13 +-
.../run.yaml | 12 +-
.../run.yaml | 12 +-
.../run.yaml | 12 +-
.../run.yaml | 43 +-
.../post.yaml | 15 +
.../manila-tempest-minimal-dsvm-dummy-py2/run.yaml | 82 ++
.../manila-tempest-minimal-dsvm-dummy/run.yaml | 16 +-
.../manila-tempest-minimal-dsvm-lvm/run-ipv6.yaml | 112 ++
.../manila-tempest-minimal-dsvm-lvm/run.yaml | 16 +-
.../run.yaml | 10 +-
.../run.yaml | 10 +-
.../rally-dsvm-manila-multibackend-no-ss/post.yaml | 41 -
.../rally-dsvm-manila-multibackend-no-ss/run.yaml | 88 --
.../rally-dsvm-manila-multibackend/post.yaml | 41 -
.../legacy/rally-dsvm-manila-multibackend/run.yaml | 87 --
...-type-name-or-description-a39c5991b930932f.yaml | 5 +
...orig-active-after-promote-8e24c099ddc1e564.yaml | 5 +
...cense-for-snapshot-revert-6d32afdc5d0b2b51.yaml | 5 +
...node-access-ip-config-opt-709f330c57cdb0d5.yaml | 7 +
...3-fix-pagination-slowness-8fcda3746aa13940.yaml | 7 +
...ame-in-case-of-proxy-urls-e33466af856708b4.yaml | 2 +-
...fix-multisegment-mtu.yaml-ac2e31c084d8bbb6.yaml | 5 +
...netapp-fix-race-condition-524555133aaa6ca8.yaml | 5 +
.../notes/bug-667744-fix-c64071e6e5a098f7.yaml | 4 +
.../cephfs-nfs-ipv6-support-2ffd9c0448c2f47e.yaml | 4 +
...t-for-lvm-share-export-ip-e031ef4c5f95b534.yaml | 7 +
...tory-layout-extend-shrink-fd2a008f152edbf5.yaml | 3 +
.../infortrend-manila-driver-a1a2af20de6368cb.yaml | 5 +
.../inspur-instorage-driver-51d7a67f253f3ecd.yaml | 6 +
...app-replication-dhss-true-5b2887de8e9a2cb5.yaml | 8 +
.../notes/nexentastor5-v1.1-1ad6c8f7b5cc11b6.yaml | 23 +
.../powermax-rebrand-manila-a46a0c2ac0aa77ed.yaml | 20 +
...ork-with-multiple-subnets-a56be8b646b9e463.yaml | 21 +
...share-server-mode-support-e179c092ab148948.yaml | 4 +
releasenotes/source/conf.py | 10 -
releasenotes/source/index.rst | 1 +
releasenotes/source/stein.rst | 6 +
requirements.txt | 2 +-
setup.cfg | 5 +-
tools/coding-checks.sh | 5 +-
tools/validate-json-files.py | 42 +
tox.ini | 24 +-
291 files changed, 17099 insertions(+), 4598 deletions(-)
Requirements updates
--------------------
diff --git a/requirements.txt b/requirements.txt
index 6cf7d9f2..60e5007c 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -44 +44 @@ tooz>=1.58.0 # Apache-2.0
-python-cinderclient>=3.3.0 # Apache-2.0
+python-cinderclient!=4.0.0,>=3.3.0 # Apache-2.0
1
0
We are delighted to announce the release of:
sahara 11.0.0: Sahara project
This release is part of the train release series.
The source is available from:
https://opendev.org/openstack/sahara
Download the package from:
https://tarballs.openstack.org/sahara/
Please report issues through:
https://bugs.launchpad.net/sahara/+bugs
For more details, please see below.
Changes in sahara 10.0.0..11.0.0
--------------------------------
8501b523 Python 3 fixes
244ee200 grenade: start from stein, disable heat integration tests
62b4c626 Update TOX/UPPER_CONSTRAINTS_FILE for stable/train
030ea4c5 Update .gitreview for stable/train
d97fa769 Update the constraints url
423247f0 Add more cross-functional jobs (TripleO, OSA)
3e615591 Fix unit tests: no more cinderclient v1
6e3e4b91 Fixing broken links and removing outdated driver
ea37e56a Update api-ref location
cc3a42ef Remove a monkey-patching workaround for python < 2.7.3
0c19fc26 Limit envlist to py37 for Python 3 Train goal
36dfcd77 Imported Translations from Zanata
22e1d9ac Imported Translations from Zanata
9f0f1b94 Bump the openstackdocstheme extension to 1.20
c7fc57b4 devstack: do not use configure_auth_token_middleware
ee46e8cb Blacklist python-cinderclient 4.0.0
86585846 Remove some files not worth maintaining
113382e9 Update keystone_authtoken config reference
c5aafbc3 Fix requirements (bandit, sphinx, jsonschema) and jobs
bc049c9f Update Python 3 test runtimes for Train
69794064 Add a required dep to fix the buildimages jobs
d17fd1d1 [Trivial fix]Remove unnecessary slash
e644d4a6 doc: additional git.openstack.org->opendev.org replacement
8c941ed1 Replace git.openstack.org URLs with opendev.org URLs
a3bf1a98 OpenDev Migration Patch
7b3588b8 Dropping the py35 testing
617be903 Replace openstack.org git:// URLs with https://
74897906 Imported Translations from Zanata
20591c14 Update master for stable/stein
Diffstat (except docs and test files)
-------------------------------------
.gitreview | 3 +-
.zuul.yaml | 41 +-
README.rst | 2 +-
api-ref/source/conf.py | 12 -
bindep.txt | 1 +
devstack/README.rst | 6 +-
devstack/plugin.sh | 8 +-
devstack/settings | 14 +-
devstack/upgrade/settings | 15 +-
.../dashboard-dev-environment-guide.rst | 6 +-
.../building-guest-images/sahara-image-create.rst | 12 +-
.../building-guest-images/sahara-image-pack.rst | 2 +-
etc/edp-examples/README.rst | 2 +-
etc/sahara/sahara.conf.sample-basic | 119 ----
lower-constraints.txt | 2 +-
playbooks/sahara-grenade/run.yaml | 14 +-
releasenotes/source/conf.py | 13 -
releasenotes/source/index.rst | 1 +
.../locale/en_GB/LC_MESSAGES/releasenotes.po | 19 +-
.../source/locale/it/LC_MESSAGES/releasenotes.po | 537 +++++++++++++++
releasenotes/source/stein.rst | 6 +
requirements.txt | 4 +-
roles/build-sahara-images-cli/defaults/main.yaml | 2 +-
roles/build-sahara-images-cli/tasks/main.yaml | 2 +-
sahara/cli/sahara_api.py | 3 -
sahara/locale/de/LC_MESSAGES/sahara.po | 729 +--------------------
sahara/service/edp/spark/engine.py | 2 +-
.../edp/workflow_creator/test_create_workflow.py | 2 -
sahara/utils/patches.py | 58 --
sahara/utils/rpc.py | 3 +-
sahara/utils/ssh_remote.py | 6 +-
setup.cfg | 3 +-
test-requirements-bandit.txt | 1 -
test-requirements.txt | 2 +-
tools/get_auth_token | 3 -
tools/get_auth_token.py | 88 ---
tox.ini | 22 +-
60 files changed, 710 insertions(+), 1247 deletions(-)
Requirements updates
--------------------
diff --git a/requirements.txt b/requirements.txt
index 28d95414..09ff14cb 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -15 +15 @@ Jinja2>=2.10 # BSD License (3 clause)
-jsonschema<3.0.0,>=2.6.0 # MIT
+jsonschema>=2.6.0 # MIT
@@ -35 +35 @@ requests>=2.14.2 # Apache-2.0
-python-cinderclient>=3.3.0 # Apache-2.0
+python-cinderclient!=4.0.0,>=3.3.0 # Apache-2.0
diff --git a/test-requirements.txt b/test-requirements.txt
index 12dde8e4..8c241974 100644
--- a/test-requirements.txt
+++ b/test-requirements.txt
@@ -8 +8 @@ PyMySQL>=0.7.6 # MIT License
-bandit>=1.1.0 # Apache-2.0
+bandit>=1.1.0,<1.6.0 # Apache-2.0
1
0
We are jazzed to announce the release of:
masakari 8.0.0: Virtual Machine High Availability (VMHA) service for
OpenStack
This release is part of the train release series.
The source is available from:
https://opendev.org/openstack/masakari
Download the package from:
https://tarballs.openstack.org/masakari/
Please report issues through:
https://bugs.launchpad.net/masakari/+bugs
For more details, please see below.
Changes in masakari 7.0.0..8.0.0
--------------------------------
24f678c Remove references of novaclient.exceptions.EndpointNotFound
85fa0c0 Add Python 3 Train unit tests
118381f add libpq-dev and python-dev to build psycopg2
50938d0 Replace git.openstack.org URLs with opendev.org URLs
7f16e79 Update api-ref location
9a2ce34 Resolve functional gate job failure
204fa9c Resolve gate job failure
e8a18ee OpenDev Migration Patch
0e10030 Switch from oslosphinx to openstackdocstheme
e2f9a3d Replace openstack.org git:// URLs with https://
d73a88a Update master for stable/stein
2e57fa0 Add devstack support for masakari-monitors
5f9f9ba Migrate multinode jobs to Ubuntu Bionic
Diffstat (except docs and test files)
-------------------------------------
.gitreview | 2 +-
.zuul.yaml | 19 ++-
README.rst | 2 +-
bindep.txt | 6 +
devstack/README.rst | 6 +-
devstack/plugin.sh | 166 +++++++++++++++++----
devstack/settings | 13 +-
masakari/compute/nova.py | 3 +-
releasenotes/source/conf.py | 6 +-
releasenotes/source/index.rst | 1 +
releasenotes/source/stein.rst | 6 +
requirements.txt | 2 +-
setup.cfg | 3 +-
test-requirements.txt | 5 -
tox.ini | 29 +++-
24 files changed, 253 insertions(+), 90 deletions(-)
Requirements updates
--------------------
diff --git a/requirements.txt b/requirements.txt
index aff54b3..f361341 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -7 +7 @@ iso8601>=0.1.11 # MIT
-jsonschema<3.0.0,>=2.6.0 # MIT
+jsonschema>=2.6.0 # MIT
diff --git a/test-requirements.txt b/test-requirements.txt
index 1545092..ae23692 100644
--- a/test-requirements.txt
+++ b/test-requirements.txt
@@ -13,2 +12,0 @@ python-subunit>=1.0.0 # Apache-2.0/BSD
-sphinx!=1.6.6,!=1.6.7,>=1.6.2 # BSD
-openstackdocstheme>=1.18.1 # Apache-2.0
@@ -16 +13,0 @@ os-api-ref>=1.4.0 # Apache-2.0
-oslosphinx>=4.7.0 # Apache-2.0
@@ -24,2 +20,0 @@ testtools>=2.2.0 # MIT
-# releasenotes
-reno>=2.5.0 # Apache-2.0
1
0
We are tickled pink to announce the release of:
sahara-dashboard 11.0.0: Sahara Management Dashboard
This release is part of the train release series.
The source is available from:
https://opendev.org/openstack/sahara-dashboard
Download the package from:
https://tarballs.openstack.org/sahara-dashboard/
Please report issues through:
https://bugs.launchpad.net/sahara/+bugs
For more details, please see below.
Changes in sahara-dashboard 10.0.0..11.0.0
------------------------------------------
3a8b05b Update the constraints url
e1ae0f7 Fix filter() usage for Py 3
30196d1 Imported Translations from Zanata
98ca3df Imported Translations from Zanata
cce212a Limit envlist to py37 for Python 3 Train goal
0a67ded Use the proper Python3 Train jobs
1b2eab6 Bring now-deleted Horizon utils in-tree
a97d060 Bump the openstackdocstheme extension to 1.20
8d12d66 Update sphinx dependency
7d24018 Use openstack-python3-train-jobs for python3 test runtime
21a61b5 Imported Translations from Zanata
d47ed15 Replace git.openstack.org URLs with opendev.org URLs
71e6813 OpenDev Migration Patch
45ef652 Dropping the py35 testing
6abed27 Replace openstack.org git:// URLs with https://
e19b174 Update master for stable/stein
Diffstat (except docs and test files)
-------------------------------------
.gitreview | 2 +-
.zuul.yaml | 10 ++--
README.rst | 4 +-
releasenotes/source/conf.py | 23 ---------
releasenotes/source/index.rst | 1 +
.../source/locale/de/LC_MESSAGES/releasenotes.po | 8 +--
.../source/locale/id/LC_MESSAGES/releasenotes.po | 43 +++++++++++++++-
releasenotes/source/stein.rst | 6 +++
.../clusters/cluster_templates/workflows/copy.py | 2 +-
.../clusters/clusters/workflows/update.py | 2 +-
.../clusters/nodegroup_templates/workflows/copy.py | 2 +-
.../nodegroup_templates/workflows/create.py | 29 +++++++++--
.../data_processing/utils/workflow_helpers.py | 4 +-
sahara_dashboard/locale/cs/LC_MESSAGES/django.po | 10 +---
sahara_dashboard/locale/de/LC_MESSAGES/django.po | 59 +++++++++++++++++-----
.../locale/en_GB/LC_MESSAGES/django.po | 14 +----
sahara_dashboard/locale/fr/LC_MESSAGES/django.po | 10 +---
sahara_dashboard/locale/id/LC_MESSAGES/django.po | 57 ++++++++++++++++-----
sahara_dashboard/locale/ja/LC_MESSAGES/django.po | 12 ++---
.../locale/ko_KR/LC_MESSAGES/django.po | 29 ++++++-----
.../locale/pt_BR/LC_MESSAGES/django.po | 8 +--
sahara_dashboard/locale/ru/LC_MESSAGES/django.po | 10 +---
.../locale/tr_TR/LC_MESSAGES/django.po | 8 +--
.../locale/zh_CN/LC_MESSAGES/django.po | 8 +--
setup.cfg | 2 +-
tox.ini | 10 ++--
27 files changed, 211 insertions(+), 167 deletions(-)
1
0
We are amped to announce the release of:
ec2-api 9.0.0: OpenStack Ec2api Service
This release is part of the train release series.
The source is available from:
https://opendev.org/openstack/ec2-api
Download the package from:
https://pypi.org/project/ec2-api
Please report issues through:
https://bugs.launchpad.net/ec2-api/+bugs
For more details, please see below.
Changes in ec2-api 8.0.0..9.0.0
-------------------------------
b1f4ce5 Replace git.openstack.org URLs with opendev.org URLs
f90d3b8 Add Python 3 Train unit tests
3d6106d temporary disable functional tests
b0361c0 Update api-ref location
7b7c2d9 tests: Avoid using mock wraps
b79d5e7 OpenDev Migration Patch
e9eae25 Dropping the py35 testing
ed73dc3 Replace openstack.org git:// URLs with https://
c3e30fb change error message for glance client
943ced6 up version to 9.0.0 due to release 8.0.0
0d0030f add python 3.7 unit test job
Diffstat (except docs and test files)
-------------------------------------
.gitreview | 2 +-
.zuul.yaml | 25 ++++----
README.rst | 4 +-
devstack/README.rst | 4 +-
devstack/create_config | 26 +++++---
devstack/override-defaults | 2 +-
devstack/plugin.sh | 2 +-
.../ec2-api-functional-neutron-full/run.yaml | 12 ++--
.../legacy/ec2-api-functional-neutron/run.yaml | 10 +--
playbooks/legacy/ec2-api-rally-fakevirt/run.yaml | 10 +--
setup.cfg | 7 +-
tox.ini | 8 +--
16 files changed, 71 insertions(+), 121 deletions(-)
1
0
We are pumped to announce the release of:
magnum 9.0.0: Container Management project for OpenStack
This release is part of the train release series.
The source is available from:
https://opendev.org/openstack/magnum
Download the package from:
https://tarballs.openstack.org/magnum/
Please report issues through:
https://bugs.launchpad.net/magnum/+bugs
For more details, please see below.
Changes in magnum 8.0.0.0rc1..9.0.0
-----------------------------------
5e66b4fe Propagate cloud_provider_enabled correctly
a0b1d70b Update .gitreview for stable/train
3658a980 ci: Add output stream fixture to fix CI
45730c78 Build k8s images v1.16.0 and minor bumps
cfe2753f [fedora atomic k8s] Add boot from volume support
eebcc9b7 Fix k8s deployment when cluster_user_trust=False
41768e0a Remove --os-url usage
997497d8 Remove unneeded Zuul branch matcher
2153287a Fixing broken links
3a38cfb2 k8s_fedora: Set rp_filter=1 for calico
7267c1ea k8s_fedora_atomic: Add PodSecurityPolicy
e59e3e07 Remove cluster floating_ip_enabled default value
17c770e8 Update flannel_backend in user guide
78718595 Trivial fix for cluster creation in master
3a0a4387 [fedora-atomic][k8s]Disable ssh password authentication
e655db33 etcd_volume_size from cluster not CT
c3bce488 [fedora-atomic][k8s] Fix missing internal IP
0b033f03 Using vxlan as default value for flannel_backend
e47d6f6c Readable heat-container-agent log
00f518fc Take kubeproxy_options into account on proxy setup
e84cc4c9 Convert network UUID to name required for OCCM
703de97c Using Fedora Atomic 29 as default image
efff7086 Publish 1.16 k8s images
68c0e86a kubernetes builds for v1.{13,14,15,16}.x
06f78353 Fix heat-container-agent by setting LC_ALL=C
b99673f8 Disable gpg check in fedora:rawhide image
3b147e36 [api-ref] Add network,subnet and FIP for cluster
9e815f6a Fix cloud-config file
893e2cdf Improve dns format validation
b3a183dc Fix addon tag/version parsing
2f2d05c8 k8s: stop introspecting instance name
243eb6aa Release k8s images v1.15.2, v1.14.5, v1.13.9 and v1.12.10
3b3c9977 Update "auth_url" port in install docs
0df6b5be Update for Storyboard
749a792e Bump the openstackdocstheme extension to 1.20
32989b4f Allow setting network, subnet and FIP when creating cluster
5438a3c6 Blacklist sphinx 2.1.0 (autodoc bug)
fb8d0185 Support py3.x for make cert scripts
bd23e588 Fix py3 issue of heat-container-agent
425fb0fa Add network config to stabilise multi-NIC scenario
e5eade03 Add information about the cluster in magnum event notifications
df54de88 Update docs links
c6bf1da0 Set train-dev as the default tag for heat-container-agent
92d51690 Return ClusterID for resize and upgrade
903c8a4d Update current k8s version after upgrade
451358a5 heat-agent: Do not use absolute path
52155f0e Support auto_healing_controller
810e8119 Fix kubernetes systemd service templates
b43c0a32 Update api-ref location
58230546 Add Python 3 Train unit tests
c9262419 ci: Fix ADD_ALLOW_PRIV build-arg
48e42ec0 Allow for cluster-autoscaler deployment roll-out
afd2403a k8s: Clear cni configuration
a4d34490 [fedora-atomic] kube_tag is not respcted
d79c5a86 Set default value for keystone_auth_default_policy
a1d385cc Hardcode the names of the default NGs
41b83cef [k8s] Update prometheus monitoring helm based configuration
35542713 Make kubernetes apiserver start after network
b5d50ddd k8s: refactor functions into KubernetesDriver
f989ab69 Fix auto_scaling_enabled default in docs
fe0f0efa Add build-arg for --allow-privileged
10a5996e Add npd_enabled label
85bd4247 Build kubernetes v1.15.0
d7035775 ci: Rotate dockerhub password
cd26be16 calico: drop calico_cni_tag
2ad3fd87 k8s_fedora: Update to kubernetes v1.14.3
ca049a40 k8s_fedora: Update to kubernetes v1.14.3
720f5694 Update keystone_authtoken config reference
e99b0e8d Build kubernetes images
8f6612b2 [k8s][fedora atomic] Using node instead of minion
d8df9d0c [fedora-atomic][k8s] Support default Keystone auth policy file
dc100551 Fix coe_version for k8s driver
cd67553f Fix overlay2 + docker_volume_size
9774e990 Update calico to v3.3
05c27f2d [k8s][fedora atomic] Rolling upgrade support
8cfa24cf Add API reference for cluster upgrade
9b1bd5da Add cluster upgrade to the API
1e8d5a73 Add missing ws separator between words
49e5f17c [k8s_fedora_atomic] Make calico devices unmanaged in NetworkManager config for master node
f82c61f8 Replace git.openstack.org URLs with opendev.org URLs
79699f23 Revert "support http/https proxy for discovery url"
913636b6 Blacklist bandit 1.6.0 and cap Sphinx on Python2
5a74b454 Release k8s v1.12.8
42c75c4d Disable broken image building
ef0678ec Fix container-build job
79e7931e OpenDev Migration Patch
e98b8e52 Build kubernetes v1.15.0-alpha.1
8fb27da2 Update coredns from upstream manifest and to 1.3.1
b3ceb252 [k8s] Set traefik to stable version v1.7.10
75fab6ff [fedora_atomic] Support auto healing for k8s
ecd07448 [fedora atomic] Allow traffic between k8s workers
0d3ad907 Dropping the py35 testing
00522c5b Fix registry on k8s_fedora_atomic
c0e51198 Fix proportional autoscaler image
0ba46679 Build kubernetes v1.14.1
b1d359e6 Fix missing print format error
375fbccf [k8s] Add nginx based ingress controller
3cb6226f Support multi DNS server
24a6d89a Revert "Specify internal network to improve stability in a multi-NIC scenario."
97811ef5 Specify internal network to improve stability in a multi-NIC scenario.
18119fb3 ng-5: APIs for listing and showing nodegroups
3f80cbab ng-4: Adapt cluster object
470fc261 Set a fixed cipher suite set for Traefik
2fcaf363 Allow admin update cluster/template in any project
ea95b0dc ng-3: Adapt existing drivers
18c77a28 ng-2: Adapt existing cluster APIs and conductor
5b348905 Publish k8s v1.14.0 image
70f1dbd9 Kubernetes images release
1f5dc1aa [fedora-atomic-k8s] Allow all traffic from master to worker nodes
66c6666a Add API ref for <ClusterID>/actions/resize
ae6933ff Replace openstack.org git:// URLs with https://
5e0672a4 Update master for stable/stein
0607c7a9 ng-1: Add nodegroup representation
21acb8dc Fix openstack-cloud-controller-manager restarts
41cdb489 add python 3.7 unit test job
e94f1a22 Move openstackdocstheme to extensions in api-ref
f553558e Add oslo_log command options to magnum-db-manage
Diffstat (except docs and test files)
-------------------------------------
.gitreview | 3 +-
.zuul.yaml | 84 +--
CONTRIBUTING.rst | 4 +-
README.rst | 6 +-
api-ref/source/clusters.inc | 117 ++++
api-ref/source/conf.py | 39 +-
api-ref/source/parameters.yaml | 29 +
api-ref/source/samples/cluster-resize-req.json | 5 +
api-ref/source/samples/cluster-resize-resp.json | 3 +
api-ref/source/samples/cluster-upgrade-req.json | 5 +
api-ref/source/samples/cluster-upgrade-resp.json | 3 +
.../dcos_centos_v1/templates/dcoscluster.yaml | 2 +-
contrib/drivers/heat/dcos_centos_template_def.py | 2 +-
.../drivers/k8s_opensuse_v1/templates/README.md | 4 +-
.../k8s_opensuse_v1/templates/kubecluster.yaml | 2 +-
devstack/lib/magnum | 28 +-
devstack/plugin.sh | 3 +-
.../common/configure_2_edit_magnum_conf.rst | 4 +-
.../heat-container-agent/scripts/55-heat-config | 18 +-
.../scripts/heat-config-notify | 2 +-
.../heat-container-agent/scripts/hooks/atomic | 4 +-
.../scripts/hooks/docker-compose | 6 +-
.../heat-container-agent/scripts/hooks/script | 10 +-
.../kubernetes-controller-manager/Dockerfile | 2 +
.../kubernetes-controller-manager/service.template | 4 +-
etc/magnum/keystone_auth_default_policy.sample | 76 +++
lower-constraints.txt | 3 +-
magnum/api/controllers/v1/__init__.py | 11 +
magnum/api/controllers/v1/bay.py | 70 +-
magnum/api/controllers/v1/cluster.py | 85 ++-
magnum/api/controllers/v1/cluster_actions.py | 86 ++-
magnum/api/controllers/v1/cluster_template.py | 10 +-
magnum/api/controllers/v1/nodegroup.py | 219 +++++++
magnum/api/controllers/v1/types.py | 13 +
magnum/api/controllers/versions.py | 3 +-
magnum/api/http_error.py | 2 +-
magnum/cmd/db_manage.py | 2 +
magnum/common/cinder.py | 46 ++
magnum/common/clients.py | 23 +
magnum/common/exception.py | 42 ++
magnum/common/neutron.py | 32 +-
magnum/common/policies/__init__.py | 4 +-
magnum/common/policies/cluster.py | 22 +
magnum/common/policies/cluster_template.py | 11 +
magnum/common/policies/nodegroup.py | 73 +++
magnum/common/utils.py | 19 +
magnum/conductor/api.py | 38 +-
magnum/conductor/handlers/cluster_conductor.py | 131 +++-
magnum/conductor/utils.py | 78 ++-
magnum/conf/__init__.py | 2 +
magnum/conf/cinder.py | 46 +-
magnum/conf/cluster.py | 6 +-
magnum/conf/kubernetes.py | 36 +
magnum/db/api.py | 115 ++++
...98132c7_change_cluster_to_support_nodegroups.py | 132 ++++
...380964133d_add_network_subnet_fip_to_cluster.py | 40 ++
.../versions/ac92cbae311c_add_nodegoup_table.py | 61 ++
magnum/db/sqlalchemy/api.py | 143 +++-
magnum/db/sqlalchemy/models.py | 37 +-
magnum/drivers/common/driver.py | 7 +
.../fragments/configure-docker-registry.sh | 12 +-
.../fragments/configure-docker-storage.sh | 8 +-
.../configure_docker_storage_driver_atomic.sh | 18 +-
.../templates/fragments/enable-docker-registry.sh | 8 +-
.../templates/kubernetes/fragments/add-proxy.sh | 8 +-
.../kubernetes/fragments/calico-service.sh | 722 +++++++++++++--------
.../kubernetes/fragments/configure-etcd.sh | 34 +-
.../fragments/configure-kubernetes-master.sh | 74 ++-
.../fragments/configure-kubernetes-minion.sh | 69 +-
.../kubernetes/fragments/core-dns-service.sh | 74 ++-
.../kubernetes/fragments/enable-auto-healing.sh | 302 ++++++++-
.../kubernetes/fragments/enable-auto-scaling.sh | 187 ++++++
.../kubernetes/fragments/enable-ingress-traefik.sh | 62 +-
.../kubernetes/fragments/enable-keystone-auth.sh | 25 +-
.../kubernetes/fragments/enable-services-master.sh | 10 +-
.../kubernetes/fragments/enable-services-minion.sh | 14 +-
.../kubernetes/fragments/flannel-service.sh | 82 ++-
.../fragments/kube-apiserver-to-kubelet-role.sh | 115 +++-
.../kubernetes/fragments/make-cert-client.sh | 28 +-
.../templates/kubernetes/fragments/make-cert.sh | 29 +-
.../kubernetes/fragments/start-container-agent.sh | 24 +-
.../kubernetes/fragments/upgrade-kubernetes.sh | 52 ++
...ams-master.yaml => write-heat-params-master.sh} | 40 +-
.../kubernetes/fragments/write-heat-params.sh | 67 ++
.../kubernetes/fragments/write-heat-params.yaml | 55 --
.../kubernetes/fragments/write-kube-os-config.sh | 40 +-
.../templates/kubernetes/helm/ingress-nginx.sh | 252 +++++++
.../kubernetes/helm/prometheus-operator.sh | 78 ++-
magnum/drivers/common/templates/network.yaml | 5 +-
magnum/drivers/heat/driver.py | 76 ++-
magnum/drivers/heat/k8s_coreos_template_def.py | 53 +-
magnum/drivers/heat/k8s_fedora_template_def.py | 136 +++-
magnum/drivers/heat/k8s_template_def.py | 70 +-
magnum/drivers/heat/swarm_fedora_template_def.py | 54 +-
magnum/drivers/heat/swarm_mode_template_def.py | 66 +-
magnum/drivers/heat/template_def.py | 227 +++++--
magnum/drivers/k8s_coreos_v1/driver.py | 12 +-
.../templates/fragments/enable-kubelet-master.yaml | 4 +-
.../templates/fragments/enable-kubelet-minion.yaml | 4 +-
.../k8s_coreos_v1/templates/kubecluster.yaml | 14 +-
.../k8s_coreos_v1/templates/kubemaster.yaml | 8 +-
magnum/drivers/k8s_fedora_atomic_v1/driver.py | 83 ++-
.../templates/kubecluster.yaml | 240 +++++--
.../k8s_fedora_atomic_v1/templates/kubemaster.yaml | 459 ++++++++-----
.../k8s_fedora_atomic_v1/templates/kubeminion.yaml | 353 +++++-----
magnum/drivers/k8s_fedora_ironic_v1/driver.py | 12 +-
.../templates/kubecluster.yaml | 2 +-
magnum/drivers/mesos_ubuntu_v1/driver.py | 5 +
magnum/drivers/mesos_ubuntu_v1/template_def.py | 48 +-
.../mesos_ubuntu_v1/templates/mesoscluster.yaml | 2 +-
magnum/drivers/swarm_fedora_atomic_v1/driver.py | 5 +
.../swarm_fedora_atomic_v1/templates/cluster.yaml | 2 +-
magnum/drivers/swarm_fedora_atomic_v2/driver.py | 5 +
.../templates/swarmcluster.yaml | 2 +-
magnum/objects/__init__.py | 5 +-
magnum/objects/cluster.py | 74 ++-
magnum/objects/nodegroup.py | 218 +++++++
magnum/service/periodic.py | 7 +-
.../api/controllers/v1/test_cluster_actions.py | 80 ++-
.../api/controllers/v1/test_cluster_template.py | 40 +-
.../unit/api/controllers/v1/test_nodegroup.py | 179 +++++
.../conductor/handlers/test_cluster_conductor.py | 125 +++-
.../handlers/test_k8s_cluster_conductor.py | 236 +++++--
.../handlers/test_mesos_cluster_conductor.py | 98 ++-
.../handlers/test_swarm_cluster_conductor.py | 101 ++-
playbooks/container-builder-vars.yaml | 13 +-
playbooks/container-builder.yaml | 43 ++
playbooks/container-publish.yaml | 9 +
playbooks/magnum-buildimages-base.yaml | 8 +-
playbooks/magnum-functional-base.yaml | 2 +-
playbooks/pre/prepare-workspace.yaml | 6 +-
...er-in-event-notifications-a3c992ab24b32fbd.yaml | 12 +
...FIP-when-creating-cluster-ae0cda35ade28a9f.yaml | 8 +
.../notes/boot-from-volume-7c73df68d7f325aa.yaml | 13 +
.../notes/coredns-update-9b03da4b89be18ad.yaml | 6 +
...-policy-k8s-keystone-auth-fa74aa03dcc12ef3.yaml | 9 +
...isable-ssh-password-authn-f2baf619710e52aa.yaml | 6 +
...-ip-enabled-default-value-4e24d4bf09fc08c8.yaml | 7 +
.../fix-k8s-coe-version-a8ea38f327ea6bb3.yaml | 7 +
...container-agent-for-train-e63bc1559750fe9c.yaml | 4 +
...elm-install-ingress-nginx-fe2acec1dd3032e3.yaml | 6 +
...stall-prometheus-operator-ea87752bc57a0945.yaml | 2 +-
...evices-in-network-manager-e1bdb052834e11e9.yaml | 5 +
...ra-atomic-rolling-upgrade-3d8edcdd91fa1529.yaml | 17 +
.../notes/podsecuritypolicy-2400063d73524e06.yaml | 6 +
.../rename-minion-to-node-9d32fe77d765f149.yaml | 7 +
...sterid-for-resize-upgrade-6e841c7b568fa807.yaml | 5 +
.../notes/set-traefik-tag-7d4aca5685147970.yaml | 8 +
.../support-auto-healing-3e07c16c55209b0a.yaml | 11 +
...t-auto-healing-controller-333d1266918111e9.yaml | 7 +
.../support-multi-dns-server-0528be20f0e6aa62.yaml | 6 +
.../notes/upgrade-api-975233ab93c0c092.yaml | 6 +
...vxlan-for-flannel-backend-8d82a290ca97d6e2.yaml | 6 +
releasenotes/source/conf.py | 19 +-
releasenotes/source/index.rst | 1 +
releasenotes/source/stein.rst | 6 +
requirements.txt | 1 +
setup.cfg | 3 +-
test-requirements.txt | 5 +-
tox.ini | 10 +-
220 files changed, 8140 insertions(+), 2138 deletions(-)
Requirements updates
--------------------
diff --git a/requirements.txt b/requirements.txt
index a5eff15d..f654bcc6 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -44,0 +45 @@ python-barbicanclient>=4.5.2 # Apache-2.0
+python-cinderclient>=2.2.0 # Apache-2.0
diff --git a/test-requirements.txt b/test-requirements.txt
index 209b0c4b..d966d21f 100644
--- a/test-requirements.txt
+++ b/test-requirements.txt
@@ -8 +8 @@
-bandit>=1.1.0 # Apache-2.0
+bandit!=1.6.0,>=1.1.0 # Apache-2.0
@@ -20 +20,2 @@ pytz>=2013.6 # MIT
-sphinx!=1.6.6,!=1.6.7,>=1.6.2 # BSD
+sphinx!=1.6.6,!=1.6.7,!=2.1.0,>=1.6.2;python_version>='3.4' # BSD
+sphinx!=1.6.6,!=1.6.7,>=1.6.2,<2.0.0;python_version=='2.7' # BSD
1
0