OpenStack-announce
Threads by month
- ----- 2025 -----
- 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
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- 1 participants
- 2064 discussions
We are stoked to announce the release of:
ceilometer 7.0.0: OpenStack Telemetry
This release is part of the newton release series.
For more details, please see below.
7.0.0
^^^^^
Ceilometer backends are no more only databases but also REST API like
Gnocchi. So ceilometer-dbsync binary name doesn't make a lot of sense
and have been renamed ceilometer-upgrade. The new binary handles
database schema upgrade like ceilometer-dbsync does, but it also
handle any changes needed in configured ceilometer backends like
Gnocchi.
New Features
************
* Added support for magnum bay CRUD events, event_type is
'magnum.bay.*'.
* In the [dispatcher_http] section of ceilometer.conf, verify_ssl
can be set to True to use system-installed certificates (default
value) or False to ignore certificate verification (use in
development only!). verify_ssl can also be set to the location of a
certificate file e.g. /some/path/cert.crt (use for self-signed
certs) or to a directory of certificates. The value is passed as the
'verify' option to the underlying requests method, which is
documented at http://docs.python-
requests.org/en/master/user/advanced/#ssl-cert- verification
* Add two new meters, including memory.bandwidth.total and
memory.bandwidth.local, to get memory bandwidth statistics based on
Intel CMT feature.
* Add four new meters, including perf.cpu.cycles for the number of
cpu cycles one instruction needs, perf.instructions for the count of
instructions, perf.cache_references for the count of cache hits and
cache_misses for the count of caches misses.
* Add support of batch recording metering data to mongodb backend,
since the pymongo support *insert_many* interface which can be used
to batch record items, in "big-data" scenarios, this change can
improve the performance of metering data recording.
* Since the Glance v1 APIs won't be maintained any more, this change
add the support of glance v2 in images pollsters.
Upgrade Notes
*************
* Batching is enabled by default now when coordinated workers are
enabled. Depending on load, it is recommended to scale out the
number of *pipeline_processing_queues* to improve distribution.
*batch_size* should also be configured accordingly.
* The option >>`<<glance_page_size' has been removed because it's
not actually needed.
<SYSTEM MESSAGE: <string>:28: (WARNING/2) Inline interpreted text or
phrase reference start-string without end-string.>
Deprecation Notes
*****************
* The event database dispatcher is now deprecated. It has been moved
to a new project, alongside the Ceilometer API for /v2/events,
called Panko.
* The Kwapi pollsters are deprecated and will be removed in the next
major version of Ceilometer.
* For backward compatibility reason we temporary keep ceilometer-
dbsync, at least for one major version to ensure deployer have time
update their tooling.
Bug Fixes
*********
* [bug 1578128 (https://bugs.launchpad.net/ceilometer/+bug/1578128)
Add a tool that allow users to drop the legacy alarm and
alarm_history tables.
* [bug 1597618 (https://bugs.launchpad.net/ceilometer/+bug/1597618)
Add the full support of snmp v3 user security model.
* Fix to improve handling messages in environments heavily backed
up. Previously, notification handlers greedily grabbed messages from
queues which could cause ordering issues. A fix was applied to
sequentially process messages in a single thread to prevent ordering
issues.
Changes in ceilometer 6.0.0.0rc1..7.0.0
---------------------------------------
8c1e536 Fix problem when using wsgi script to start
6fc6341 Remove left over from old ceilometer-api binary
78be95b Move oslo.db to hard requirements list
43cbac3 Update .gitreview for stable/newton
92f30ac agentbase: remove flaky test
7a40bf4 add note regarding pipeline_processing_queues option
f76c069 Refactor Ceilometer event API
3e4c37a Refactor Ceilometer alarm API
cea2695 standardize release note page ordering
a1fae3f gnocchi: enable event_dispatcher in devstack and doc
2d09bce Use pbr wsgi_scripts feature to build ceilometer-api
2c5a419 Change fnmatch.match method to fnmatch.fnmatch
56855f2 tox: Remove useless env
3e013ff Use deps extra for optional requirements
18ad1c1 Don't require gnocchiclient
e0df9e3 Initialize correctly collector
790fd01 update docs to show Telemetry projects
7f8f6cc Remove store_events options
5c05c04 Remove sql-expire-samples-only as a CLI option
2feef3b Update the compute node service_credentials parameters
62f6a5f Corrected file mode settings.
5014464 Add oslo.config cli opt to skip the confirm check
aaedbbe add new meters about some perf events
f3ca7d8 Set a correct number of threads for polling tasks
5750fdd improve notification processing
74f6eb6 Fix string interpolation in log
84e411b correct input params in get_samples
1482731 refactor service to be less pipeline dependent
70a20d2 [api-ref] Correct response code
9e5a5c8 [api-ref] Remove temporary block in conf.py
d38c580 XenAPI: correct polling on memory_usage
9709608 gnocchi: Create resource-types on upgrades
a60b004 Allow to skip metering/event database upgrade
2bb81d4 Deprecate Kwapi pollsters
18c181f Rename ceilometer-dbsync in ceilometer-upgrade
edbe186 make reload test more resilient
fe2dec6 generalise instable API redirect assertion
5b941f9 Nit: Aligning the content.
c50f0e0 Config logABug feature for Ceilometer api-ref
e41adba Fix checking IP version when using IPv6.
0202c64 remove needless brackets
e2cd7f3 The debug that network.incoming/outgoing.packets print is not right
0b37c28 Update readme file
96adfd5 [install] Create endpoint in one command
ded35e3 [install] Add a missing stash
7d9dbfd Replace urllib.quote() with six.moves.urllib.parse.quote()
abacf40 correct the meaning of direct publish transport
9558451 correct the mistake in install-guide document
7b94277 Add a publish transport in Ceilometer architecture document
1374cf7 XenAPI: failed to poll cpu_util
c9fcf18 Cleanup imports in code
a5c5146 add url in setup.cfg
92fe022 conversions: remove no used local variable
fd7230b Add api-ref/build to .gitignore
5684aa0 Fix a warning when running `tox -e api-ref`
d298fad Gnocchi dispatcher fails on skipped metric
b9ce977 Get ready for os-api-ref sphinx theme change
e975f10 [dev-docs] Changed location of a class
2b6fb87 Limit Happybase to < 1.0.0
f2b6064 Fix tempest.conf generation
2fca7eb Configuration of certificate verification for HTTP dispatcher
bfffe35 api: redirect to Panko if enabled
ed41b32 fix the %{} when string formatting
7348c15 ValueError exception when SNMP returns NoSuchObject
4a51f27 Format error message in http.py
8e870b1 HTTP Dispatcher: Post event data as JSON & improve logging
3685dcf dispatcher: deprecate event database dispatcher for Panko
87d5ac1 dispatcher/database: simplify connection retrieving
28127f2 dispatcher: split the database dispatcher
f8933f4 Switch to use Glance v2 in image pollsters
b72442a Fix the not found link for notification in glossary.rst
725a884 Added a link to the architecture guide.
c2096fd Removed redundant phrase to increase readability
b1c192d Fixed small grammar error in overview.rst
d9ff460 Set the correct for image bytes_sent event
28f38cb Change keystoneclient to keystoneauth
cc410d3 tests: rewrite batching test in a less racy way
5bdbea2 Remove an unused method of network pollsters' base class
2634457 Fixed a small grammar error configuration help doc
ed7b6db add memory bandwidth meter
408f574 Do not limit elasticsearch to 2.0
4b3e041 tests: remove dead code with self.source_resources
6411b6f Remove Nadya Privalova from core reviewers
ca31c23 Fix wrong parameter reference in periodic decorator
d9d48bf Add missing %s in print message
e4ece33 test: Fix wrong override value of config option interface
ecd2215 Modify py3.4 to py3.5 in the py35-functional of tox
6dbbc9a Put py34 first in the env order of tox
8837801 This adds migrated API reference files
a3eb0fa consumes error notif. when event are disabled
8ed2e77 publisher: make direct publisher generic
e089ecc Revert "[install] Create endpoint in one command"
cee262b Register the gnocchi event dispatcher
a8ea360 Reduce code duplication
9da6ba2 Specify host info when using the notifier publisher
7b4e888 Add Python 3.4 and 3.5 classifiers and targets
3b14d40 Retrieval of RBD device information issue
e487756 Install configuration files in etc
dc254e2 Added full support of snmp v3 usm model
5cebb31 base.Resource not define __ne__() built-in function
46e0d65 Check lbaas version if call is v2 specific
80bc124 move out oslo.service
6773685 Remove unused AdvEnum class definition
e6ff145 fix l3_cache definition
b8cc36b throw PollsterPermenantError exception for memory usage meter
36df404 events: fix operator check in event filter
bf9f484 Raise PollsterPermanentError if inspector is not implemented
9f97bf8 Remove unused LOG
fc9d73d Fix get_gnocchiclient to work with python3.5
10a36ae collector: use an intermediate proxy class for event dispatcher
bb35821 Replace raw_input with input to make PY3 compatible
1ab0acb pollsters: Remove eventlet timers
c83e9ef Imported Translations from Zanata
67e0174 Fix the name as it was a typo
c853877 devstack: prefix _drop_database
60bd9a7 start partition coordinator only when there is a group to join
0b55827 split discover into different namespaces
cd2e041 devstack: disable workload_partition for compute polling
800034d Add a tool to clean the legacy alarm tables
913880b devstack: do not wait for service to start
677f967 Config: no need to set default=None
4bf0ae3 sqlalchemy: do not run upgrade on fresh install
7f603ce sqlalchemy: fix JSONEncodedDict implementation type
b33f32b Add install-guide for ceilometer
c940ccc gnocchi: use events to end Gnocchi resource
f48a6b6 Don't generate hostname of host running build to config file
5ad613f Fixing a trivial typo.
68be6c9 Add 'task_state' attribute to meter metadata
a2a04e5 add support of batch recording metering data for mongodb
23247f8 Switch to use glanceclient to get image
0936b5b Add install description for Neutron
a2dbcaf add l3 cache usage meter
196d320 doc: remove left over of docbookrestapi
68064ca tests: do not override auth version to v2
f7e27a2 dispacher/gnocchi: measures sent fix logging
5976031 Copy images_client from tempest + Correct concurrency of gabbi 1.22.0
98571ed Rename gabbits with _ to have - instead
8fcbc8d Correct concurrency of gabbi tests for gabbi 1.22.0
f99cedf Use "topics" instead of "topic" in Notifier initialization
c2b48d6 Clean deprecated "rpc_backend" in tests
1ccacfc Use trusts in Heat integration test
545a8b2 Remove configuration README in etc
c6b0664 Imported Translations from Zanata
6c0b97b Copy images_client from tempest
cf3f7c9 Add Magnum events to definitions
104dfe1 [dispatcher/gnocchi] add unit for metric
a9cb9b6 Delete unused last_dup variable
9c08a89 catch DriverLoadFailure for get_transport optional
d7f8ce9 catch DriverLoadFailure for get_transport optional
8ecf1fc Bump to Nova v2.1
0cf728a Fix the py34 jenkins job
f6b2406 tempest: import ImagesClient as ImagesClientV2
3c1b806 fix some typos in our doc, comments and releasenotes
7951eb5 enable swift pollsters poll data for specific region
1610935 enable swift pollsters poll data for specific region
9d2864f Imported Translations from Zanata
1c0b83c tempest_plugin: drop telemetry decorator
aa32401 tempest_plugin: drop telemetry decorator
9ba3c49 Updated from global requirements
9cf0397 [Trivial] Update Neutron resource status list
089f63b doc: remove database alarm capability
0718eeb replace deprecated heat command with OSC
45daf16 Update to hacking 0.11.0
ff05a0f Verify message's signature for every dispatcher
75c48c0 fix CI failure due to oslo.messaging 5.0.0
2b91096 remove log in tools/make_test_{event_}data.py
23d5c9f fix CI failure due to oslo.messaging 5.0.0
7ecbbf4 remove record_metering_data method from collector
15a424c tests: replace overtest by pifpaf
dfc3452 Add log hints for partition coordinator
5a5356b fix opts.list_opts for polling options
aa8c224 update help string for messaging_urls
8dd821a Drop timestamping in pollsters
615b120 Set the time point polling starts as timestamp of samples
6292e0e Fix notification listeners usage
72cc318 tox: only install hacking in pep8 target
25cd1d2 Remove unused pylintrc
f3817aa devstack: remove useless policy_file setting
984e2e1 event: verify signature before recording events for all dispatchers
ac5f725 tests: stop services on tests teardown
b5a870f Fix oslo_service stop/start mechanism
4538921 remove floating_ip_get_all in nova_client
39f0f90 [Trivial] Refactor libvirt inspector connection & uri
c898ecd Fix concurrency issue with snmp pollsters
da40664 Drop the executability of http.py
6f9346a Updated from global requirements
372d70c remove deprecated auth type password-ceilometer-legacy
c6022ff [Trivial] Update Neutron resource status list
54887ff [Trivial] Remove CEILOMETER_API_LOG_DIR option for devstack
90f771e Update the default log levels
3b41c49 Clean some unused method in ceilometer/keystone_client.py
8788d1a remove invalid todo in storage functional test code
f41d6dd return 400 when invalid aggregation function is specified
0267193 Replace logging with oslo_log
6e415fa remove deprecated option database_connection
0a4bff7 move EventFilter to event storage namespace
68248fe remove MultipleResultsFound and NoResultFound exception
eeb8cd4 Remove useless file
fd6c9ae remove todo for OS_TEST_PATH
be8c615 add tempest to test-requirements.txt
dcfe070 Improve the docstring for Swift pollsters
ed9a697 add log decorator for neutron_client public method
e4f19c0 add debtcollector to requirements
394f4e2 Remove direct dependency on babel
de82727 Imported Translations from Zanata
c262389 Refactor floatingip pollster to use discovery
726b2d4 Fix notification listeners usage
24f75da notification: Remove eventlet timers
72687f5 use static timestamps for api samples
d59f099 refactor DefinitionException classes
3766f21 collector: Don't use eventlet thread
196a747 fix openstack cli command in doc manual
9aac316 Add release note link
5ccbea9 switch to openstack cli instead of keystone cli
0b65c21 Updated from global requirements
7d455d5 libvirt: fix missing python-libvirt issue
9e44701 Add status in Ceilometer VPN connection sample
0958f16 document how to enable ceilometer stable branch in devstack
b26c1e1 remove python-ceilometerclient from requirements
9009c10 Imported Translations from Zanata
5e31807 Updated from global requirements
caa6f91 Imported Translations from Zanata
64e6536 Ignore the filter_service_activity option if gnocchi project not found
4a35a4f Fix Ceilometer tests config options
1ec0b61 Updated from global requirements
1fea0f5 Fix doc build if git is absent
6df47f7 Replace tempest-lib by os-testr
8e7940a Add notes on moving to Gnocchi
7fe87e9 delete verbose/redundant/deprecated text
d526651 replace fnmatch with oslo.utils.fnmatch
5676fe0 add ceilometer to gnocchi configuration notes
123fa26 Updated from global requirements
97f65ad Imported Translations from Zanata
7a4eca2 remove complex capabilities for meter, resource and statistics
4a451fa gnocchi: batch measurements
fcaec56 change keystone to openstack cli
182b4bd re-org existing manually install notes
2e3f792 messaging: remove RequestContextSerializer
36a5d1b Remove unused context object in vpnaas test
dba353e Remove unused object from lbaas_v2 test
4eae319 Remove unused context object lbaas test
2d1e390 test: remove unused context object in FWaaS tests
a02f35b Remove unused context objects in Glance tests
3e45352 Remove unused context object in test
10cb9f6 Remove a useless usage of oslo.context in meters API
9ad61b1 Remove the deprecated DB2 driver
aa012cd Update the Administrator Guide links
9bf2d37 mongo: remove unused function
e6005df Updated from global requirements
c2b7246 Imported Translations from Zanata
8599ec5 drop magnetodb support
8ee9fc1 Simplify chained comparison
3459bc5 Enhancing Retry logic to Coordination when joining partitioning grp
5d850f9 publisher: clean out context usage
4c491b5 Disable ceilometer-aipmi by default for devstack
b2549ae Remove useless context object usage
1266e56 Imported Translations from Zanata
333104d Imported Translations from Zanata
2444399 collector: never allow to lose data
bb6032f 'ceilometer-polling' should fail with no valid pollsters
acd1faf Imported Translations from Zanata
3fb6df9 Fix typos in comments and config strings.
78fac6e Updated from global requirements
19e751c abort alarms URLs when Aodh is unavailable
b934520 abort alarms URLs when Aodh is unavailable
cd2ebc6 fix minor typo in test_generic.py
7ee29aa Imported Translations from Zanata
7156e9d Add the functional tests for getting events
40684da collector: never allow to lose data
55337c5 devstack Fix unprocess measure path
621916b Imported Translations from Zanata
59f90f5 devstack: allow ceilometer-api and keystone to run on different hosts
49a204e Devstack: install coordination backend for compute agent
ef88a0a remove dns and trove from entry_points
1a935cd correct docstring in storage module
da805ef Imported Translations from Zanata
6563e6b Remove gabbi tests that check content-location
c634b5f Add http publisher
bc720bf remove dns and trove from entry_points
3026e98 Imported Translations from Zanata
f8b5be7 Imported Translations from Zanata
5922a1c Update reno for stable/mitaka
1f91372 Update .gitreview for stable/mitaka
639b947 Remove gabbi tests that check content-location
c569fcd remove unused field 'triggers' defined in sample event_pipeline.yaml
337cd3c remove SERVICE_TENANT_NAME from devstack plugin
7cae725 clean devstack plugin
d036d7a Fix SDR file parsing for Intel Node Manager
44d5769 unquote resource id to support slash in it
Diffstat (except docs and test files)
-------------------------------------
.gitignore | 5 +-
.gitreview | 1 +
.testr.conf | 2 +-
MAINTAINERS | 1 -
README.rst | 31 +-
api-ref/source/alarms.inc | 336 +++++++++
api-ref/source/capabilities.inc | 92 +++
api-ref/source/conf.py | 274 ++++++++
api-ref/source/events.inc | 93 +++
api-ref/source/index.rst | 8 +
api-ref/source/meters.inc | 386 +++++++++++
api-ref/source/parameters.yaml | 757 +++++++++++++++++++++
api-ref/source/resources.inc | 95 +++
api-ref/source/samples.inc | 111 +++
api-ref/source/samples/alarm-show-response.json | 24 +
api-ref/source/samples/alarm-show-response.xml | 25 +
api-ref/source/samples/alarms-list-response.json | 26 +
api-ref/source/samples/alarms-list-response.xml | 27 +
.../source/samples/capabilities-list-response.json | 40 ++
.../source/samples/capabilities-list-response.xml | 131 ++++
api-ref/source/samples/event-show-response.json | 18 +
api-ref/source/samples/events-list-response.json | 20 +
api-ref/source/samples/meters-list-response.json | 12 +
api-ref/source/samples/meters-list-response.xml | 13 +
api-ref/source/samples/resource-show-response.json | 20 +
api-ref/source/samples/resource-show-response.xml | 27 +
.../source/samples/resources-list-response.json | 22 +
api-ref/source/samples/resources-list-response.xml | 29 +
api-ref/source/samples/sample-create-request.json | 17 +
api-ref/source/samples/sample-create-request.xml | 23 +
api-ref/source/samples/sample-show-response.json | 17 +
api-ref/source/samples/sample-show-response.xml | 24 +
api-ref/source/samples/samples-list-response.json | 19 +
api-ref/source/samples/samples-list-response.xml | 26 +
.../source/samples/statistics-list-response.json | 16 +
.../source/samples/statistics-list-response.xml | 17 +
ceilometer/agent/discovery/endpoint.py | 3 +-
ceilometer/agent/manager.py | 141 ++--
ceilometer/agent/plugin_base.py | 21 +-
ceilometer/api/__init__.py | 36 -
ceilometer/api/app.py | 41 +-
ceilometer/api/controllers/v2/base.py | 25 -
ceilometer/api/controllers/v2/capabilities.py | 9 +-
ceilometer/api/controllers/v2/events.py | 20 +-
ceilometer/api/controllers/v2/meters.py | 23 +-
ceilometer/api/controllers/v2/resources.py | 7 +-
ceilometer/api/controllers/v2/root.py | 72 +-
ceilometer/api/controllers/v2/samples.py | 5 +-
ceilometer/cmd/agent_notification.py | 9 +-
ceilometer/cmd/api.py | 23 -
ceilometer/cmd/collector.py | 7 +-
ceilometer/cmd/polling.py | 13 +-
ceilometer/cmd/sample.py | 3 +-
ceilometer/cmd/storage.py | 124 +++-
ceilometer/collector.py | 115 ++--
ceilometer/compute/pollsters/__init__.py | 16 +
ceilometer/compute/pollsters/cpu.py | 39 ++
ceilometer/compute/pollsters/disk.py | 40 +-
ceilometer/compute/pollsters/memory.py | 97 ++-
ceilometer/compute/pollsters/net.py | 21 +-
ceilometer/compute/pollsters/perf.py | 128 ++++
ceilometer/compute/pollsters/util.py | 3 +-
ceilometer/compute/virt/inspector.py | 62 +-
ceilometer/compute/virt/libvirt/inspector.py | 137 +++-
ceilometer/compute/virt/xenapi/inspector.py | 40 +-
ceilometer/coordination.py | 50 +-
ceilometer/declarative.py | 17 +-
ceilometer/dispatcher/__init__.py | 4 +-
ceilometer/dispatcher/database.py | 121 ++--
ceilometer/dispatcher/gnocchi.py | 325 ++++++---
ceilometer/dispatcher/http.py | 96 +--
ceilometer/energy/kwapi.py | 6 -
ceilometer/event/converter.py | 17 +-
ceilometer/event/endpoint.py | 9 +-
ceilometer/event/storage/__init__.py | 57 ++
ceilometer/event/storage/impl_db2.py | 69 --
ceilometer/event/storage/impl_sqlalchemy.py | 15 +-
ceilometer/event/storage/pymongo_base.py | 4 +-
ceilometer/exchange_control.py | 3 -
ceilometer/gnocchi_client.py | 129 ++++
ceilometer/hardware/discovery.py | 51 +-
ceilometer/hardware/inspector/base.py | 3 -
ceilometer/hardware/inspector/snmp.py | 81 ++-
ceilometer/hardware/pollsters/generic.py | 22 +-
ceilometer/hardware/pollsters/util.py | 6 -
ceilometer/image/discovery.py | 43 ++
ceilometer/image/glance.py | 108 +--
ceilometer/ipmi/platform/intel_node_manager.py | 31 +-
ceilometer/ipmi/pollsters/node.py | 5 +-
ceilometer/ipmi/pollsters/sensor.py | 5 +-
ceilometer/keystone_client.py | 97 ---
ceilometer/locale/ceilometer-log-error.pot | 181 -----
ceilometer/locale/ceilometer-log-info.pot | 163 -----
ceilometer/locale/ceilometer-log-warning.pot | 164 -----
ceilometer/locale/ceilometer.pot | 566 ---------------
.../locale/de/LC_MESSAGES/ceilometer-log-error.po | 31 +-
.../locale/de/LC_MESSAGES/ceilometer-log-info.po | 18 +-
.../de/LC_MESSAGES/ceilometer-log-warning.po | 22 +-
ceilometer/locale/de/LC_MESSAGES/ceilometer.po | 42 +-
.../locale/es/LC_MESSAGES/ceilometer-log-error.po | 15 +-
.../locale/es/LC_MESSAGES/ceilometer-log-info.po | 6 +-
ceilometer/locale/es/LC_MESSAGES/ceilometer.po | 99 ++-
ceilometer/locale/fr/LC_MESSAGES/ceilometer.po | 36 +-
ceilometer/locale/it/LC_MESSAGES/ceilometer.po | 127 +++-
ceilometer/locale/ja/LC_MESSAGES/ceilometer.po | 86 ++-
.../ko_KR/LC_MESSAGES/ceilometer-log-error.po | 135 ++++
.../ko_KR/LC_MESSAGES/ceilometer-log-info.po | 128 ++++
.../ko_KR/LC_MESSAGES/ceilometer-log-warning.po | 155 +++++
ceilometer/locale/ko_KR/LC_MESSAGES/ceilometer.po | 119 +++-
ceilometer/locale/pt_BR/LC_MESSAGES/ceilometer.po | 119 +++-
ceilometer/locale/ru/LC_MESSAGES/ceilometer.po | 26 +-
ceilometer/locale/zh_CN/LC_MESSAGES/ceilometer.po | 29 +-
ceilometer/locale/zh_TW/LC_MESSAGES/ceilometer.po | 28 +-
ceilometer/messaging.py | 31 +-
ceilometer/meter/data/meters.yaml | 28 -
ceilometer/meter/notifications.py | 26 +-
ceilometer/network/floatingip.py | 46 +-
ceilometer/network/services/base.py | 11 +-
ceilometer/network/services/discovery.py | 7 +
ceilometer/network/services/fwaas.py | 3 -
ceilometer/network/services/lbaas.py | 9 -
ceilometer/network/services/vpnaas.py | 4 +-
ceilometer/network/statistics/__init__.py | 3 +-
.../network/statistics/opencontrail/driver.py | 4 +-
.../network/statistics/opendaylight/client.py | 2 +-
.../network/statistics/opendaylight/driver.py | 9 +-
ceilometer/neutron_client.py | 34 +-
ceilometer/notification.py | 244 ++++---
ceilometer/nova_client.py | 37 +-
ceilometer/objectstore/rgw.py | 7 -
ceilometer/objectstore/swift.py | 24 +-
ceilometer/opts.py | 19 +-
ceilometer/pipeline.py | 220 +++---
ceilometer/publisher/__init__.py | 4 +-
ceilometer/publisher/direct.py | 83 ++-
ceilometer/publisher/file.py | 6 +-
ceilometer/publisher/http.py | 137 ++++
ceilometer/publisher/kafka_broker.py | 2 +-
ceilometer/publisher/messaging.py | 41 +-
ceilometer/publisher/test.py | 6 +-
ceilometer/publisher/udp.py | 25 +-
ceilometer/sample.py | 18 +-
ceilometer/service.py | 16 +-
ceilometer/service_base.py | 100 +--
ceilometer/storage/__init__.py | 79 +--
ceilometer/storage/base.py | 27 +-
ceilometer/storage/hbase/utils.py | 4 +-
ceilometer/storage/impl_db2.py | 419 ------------
ceilometer/storage/impl_hbase.py | 4 +-
ceilometer/storage/impl_log.py | 2 +-
ceilometer/storage/impl_mongodb.py | 145 ++--
ceilometer/storage/impl_sqlalchemy.py | 28 +-
ceilometer/storage/mongo/utils.py | 11 +-
ceilometer/storage/pymongo_base.py | 8 +-
ceilometer/storage/sqlalchemy/models.py | 26 +-
ceilometer/storage/sqlalchemy/utils.py | 2 +-
.../api/v2/test_complex_query_scenarios.py | 3 -
.../functional/api/v2/test_event_scenarios.py | 65 +-
.../api/v2/test_list_resources_scenarios.py | 26 +
.../functional/api/v2/test_statistics_scenarios.py | 8 +-
.../gabbi/gabbits/api-events-no-data.yaml | 210 ++++++
.../gabbi/gabbits/api-events-with-data.yaml | 242 +++++++
.../gabbi/gabbits/api_events_no_data.yaml | 218 ------
.../gabbi/gabbits/api_events_with_data.yaml | 254 -------
.../gabbi/gabbits_prefix/api_events_with_data.yaml | 17 -
.../functional/storage/test_impl_sqlalchemy.py | 9 +-
.../functional/storage/test_storage_scenarios.py | 172 +++--
.../gabbi/gabbits-live/create_stack.json | 9 +-
.../gabbi/gabbits-live/update_stack.json | 9 +-
.../tempest/api/test_telemetry_notification_api.py | 2 +-
.../test_object_storage_telemetry_middleware.py | 4 +-
.../tempest/service/images/v1/images_client.py | 254 +++++++
.../tempest/service/images/v2/images_client.py | 245 +++++++
.../unit/compute/virt/libvirt/test_inspector.py | 108 ++-
.../unit/compute/virt/xenapi/test_inspector.py | 67 +-
.../unit/hardware/inspector/test_inspector.py | 2 -
.../unit/ipmi/platform/test_intel_node_manager.py | 24 +
.../network/statistics/opencontrail/test_driver.py | 30 +-
.../network/statistics/opendaylight/test_driver.py | 1 -
.../unit/network/statistics/test_statistics.py | 62 +-
.../unit/publisher/test_kafka_broker_publisher.py | 24 +-
.../unit/publisher/test_messaging_publisher.py | 78 ++-
ceilometer/transformer/__init__.py | 11 +-
ceilometer/transformer/accumulator.py | 4 +-
ceilometer/transformer/arithmetic.py | 4 +-
ceilometer/transformer/conversions.py | 18 +-
ceilometer/utils.py | 52 +-
devstack/README.rst | 10 +
devstack/plugin.sh | 84 +--
devstack/settings | 8 +-
devstack/upgrade/upgrade.sh | 4 +-
etc/ceilometer/README-ceilometer.conf.txt | 4 -
etc/ceilometer/event_definitions.yaml | 45 +-
etc/ceilometer/event_pipeline.yaml | 1 -
etc/ceilometer/gnocchi_resources.yaml | 13 +
functions.sh | 29 -
install-guide/source/conf.py | 304 +++++++++
.../cinder/install-cinder-obs.rst | 44 ++
.../cinder/install-cinder-rdo.rst | 44 ++
.../cinder/install-cinder-ubuntu.rst | 45 ++
.../glance/install-glance-obs.rst | 44 ++
.../glance/install-glance-rdo.rst | 44 ++
.../glance/install-glance-ubuntu.rst | 45 ++
.../nova/install-nova-common.rst | 82 +++
.../configure_services/nova/install-nova-obs.rst | 32 +
.../configure_services/nova/install-nova-rdo.rst | 32 +
.../nova/install-nova-ubuntu.rst | 31 +
.../swift/install-swift-config-common.rst | 40 ++
.../configure_services/swift/install-swift-obs.rst | 31 +
.../swift/install-swift-prereq-common.rst | 36 +
.../configure_services/swift/install-swift-rdo.rst | 31 +
.../swift/install-swift-ubuntu.rst | 31 +
.../database/environment-nosql-database-obs.rst | 78 +++
.../database/environment-nosql-database-rdo.rst | 50 ++
.../database/environment-nosql-database-ubuntu.rst | 52 ++
install-guide/source/get_started.rst | 41 ++
install-guide/source/index.rst | 31 +
.../source/install-base-config-common.rst | 76 +++
install-guide/source/install-base-obs.rst | 117 ++++
.../source/install-base-prereq-common.rst | 102 +++
install-guide/source/install-base-rdo.rst | 93 +++
install-guide/source/install-base-ubuntu.rst | 110 +++
install-guide/source/next-steps.rst | 9 +
install-guide/source/verify.rst | 70 ++
pylintrc | 48 --
.../add-db-legacy-clean-tool-7b3e3714f414c448.yaml | 6 +
...d-full-snmpv3-usm-support-ab540c902fa89b9d.yaml | 5 +
.../notes/add-magnum-event-4c75ed0bb268d19c.yaml | 5 +
.../notes/always-requeue-7a2df9243987ab67.yaml | 15 +
...nfigurable-data-collector-e247aadbffb85243.yaml | 2 +-
...se_event_dispatcher_panko-607d558c86a90f17.yaml | 4 +
...ttp-dispatcher-verify-ssl-551d639f37849c6f.yaml | 11 +
.../notes/kwapi_deprecated-c92b9e72c78365f0.yaml | 4 +
.../memory-bandwidth-meter-f86cf01178573671.yaml | 5 +
.../notes/perf-events-meter-b06c2a915c33bfaf.yaml | 6 +
.../rename-ceilometer-dbsync-eb7a1fa503085528.yaml | 13 +
.../single-thread-pipelines-f9e6ac4b062747fe.yaml | 11 +
.../skip-duplicate-meter-def-0420164f6a95c50c.yaml | 2 +-
...ter-batch-recording-mongo-6c2bdf4fbb9764eb.yaml | 6 +
...-timestamp-of-polled-data-fbfcff43cd2d04bc.yaml | 7 +
...nce-v2-in-image-pollsters-137a315577d5dc4c.yaml | 8 +
releasenotes/source/index.rst | 3 +-
releasenotes/source/mitaka.rst | 6 +
requirements.txt | 18 +-
setup.cfg | 52 +-
test-requirements.txt | 23 +-
tools/lintstack.py | 202 ------
tools/lintstack.sh | 57 --
tools/make_test_data.py | 11 -
tools/make_test_data.sh | 6 +-
tools/make_test_event_data.py | 11 -
tools/send_test_data.py | 2 +-
tox.ini | 63 +-
343 files changed, 12410 insertions(+), 6671 deletions(-)
Requirements updates
--------------------
diff --git a/requirements.txt b/requirements.txt
index 15d199a..71d9ff0 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -4,0 +5,4 @@
+cotyledon
+futures>=3.0;python_version=='2.7' or python_version=='2.6' # BSD
+futurist>=0.11.0 # Apache-2.0
+debtcollector>=1.2.0 # Apache-2.0
@@ -12,2 +15,0 @@ msgpack-python>=0.4.0 # Apache-2.0
-oslo.context>=0.2.0 # Apache-2.0
-oslo.db>=4.1.0 # Apache-2.0
@@ -15 +17,2 @@ oslo.concurrency>=3.5.0 # Apache-2.0
-oslo.config>=3.7.0 # Apache-2.0
+oslo.config>=3.9.0 # Apache-2.0
+oslo.db>=4.1.0 # Apache-2.0
@@ -21 +23,0 @@ oslo.rootwrap>=2.0.0 # Apache-2.0
-oslo.service>=1.0.0 # Apache-2.0
@@ -25 +27 @@ pecan>=1.0.0 # BSD
-oslo.messaging>=4.0.0 # Apache-2.0
+oslo.messaging>=5.2.0 # Apache-2.0
@@ -30 +31,0 @@ pysnmp<5.0.0,>=4.2.3 # BSD
-python-ceilometerclient>=2.2.1 # Apache-2.0
@@ -34 +35 @@ keystoneauth1>=2.1.0 # Apache-2.0
-python-neutronclient!=4.1.0,>=2.6.0 # Apache-2.0
+python-neutronclient>=4.2.0 # Apache-2.0
@@ -42 +43 @@ sqlalchemy-migrate>=0.9.6 # Apache-2.0
-stevedore>=1.5.0 # Apache-2.0
+stevedore>=1.9.0 # Apache-2.0
@@ -44 +44,0 @@ tooz>=1.28.0 # Apache-2.0
-Werkzeug>=0.7 # BSD License
diff --git a/test-requirements.txt b/test-requirements.txt
index 6ffbce0..422a4cb 100644
--- a/test-requirements.txt
+++ b/test-requirements.txt
@@ -5,3 +4,0 @@
-# Hacking already pins down pep8, pyflakes and flake8
-hacking<0.11,>=0.10.0
-Babel>=1.3 # BSD
@@ -10,3 +7,3 @@ coverage>=3.6 # Apache-2.0
-elasticsearch<2.0,>=1.3.0 # Apache-2.0
-fixtures>=1.3.1 # Apache-2.0/BSD
-happybase!=0.7,>=0.5;python_version=='2.7' # MIT
+elasticsearch>=1.3.0 # Apache-2.0
+fixtures<2.0,>=1.3.1 # Apache-2.0/BSD
+happybase!=0.7,>=0.5,<1.0.0;python_version=='2.7' # MIT
@@ -14 +10,0 @@ mock>=1.2 # BSD
-PyMySQL>=0.6.2 # MIT License
@@ -17,0 +14 @@ oslo.cache>=1.5.0 # Apache-2.0
+openstackdocstheme>=1.0.3 # Apache-2.0
@@ -19 +16 @@ oslosphinx!=3.4.0,>=2.5.0 # Apache-2.0
-reno>=0.1.1 # Apache2
+reno>=1.6.2 # Apache2
@@ -22,5 +18,0 @@ oslo.vmware>=1.16.0 # Apache-2.0
-overtest>=0.10.0 # Apache-2.0
-psycopg2>=2.5 # LGPL/ZPL
-pylint==1.4.5 # GNU GPL v2
-pymongo!=3.1,>=3.0.2 # Apache-2.0
-gnocchiclient>=2.1.0 # Apache-2.0
@@ -36 +28,2 @@ requests-aws>=0.1.4 # BSD License (3 clause)
-tempest-lib>=0.14.0 # Apache-2.0
+os-testr>=0.4.1 # Apache-2.0
+tempest>=11.0.0 # Apache-2.0
@@ -37,0 +31,2 @@ WebTest>=2.0 # MIT
+pifpaf>=0.0.11
+os-api-ref>=0.1.0 # Apache-2.0s
1
0
We are high-spirited to announce the release of:
cinder 9.0.0: OpenStack Block Storage
This release is part of the newton release series.
For more details, please see below.
9.0.0
^^^^^
Everything in Cinder's release notes related to the High Availability
Active-Active effort -preluded with "HA A-A:"- is work in progress and
should not be used in production until it has been completed and the
appropriate release note has been issued stating its readiness for
production.
The default key manager interface in Cinder was deprecated and the
Castellan key manager interface library is now used instead. For more
information about Castellan, please see
http://docs.openstack.org/developer/castellan/ .
New Features
************
* dell_server_os option added to the Dell SC driver. This option
allows the selection of the server type used when creating a server
on the Dell DSM during initialize connection. This is only used if
the server does not exist. Valid values are from the Dell DSM create
server list.
* Added support for the use of live volume in place of standard
replication in the Dell SC driver.
* Added replication failback support for the Dell SC driver.
* Added volume driver for Zadara Storage VPSA.
* Added a new config option *scheduler_weight_handler*. This is a
global option which specifies how the scheduler should choose from a
listed of weighted pools. By default the existing weigher is used
which always chooses the highest weight.
* Added a new weight handler *StochasticHostWeightHandler*. This
weight handler chooses pools randomly, where the random
probabilities are proportional to the weights, so higher weighted
pools are chosen more frequently, but not all the time. This weight
handler spreads new shares across available pools more fairly.
* Allow API user to remove the consistency group name or description
information.
* Support for snapshot backup using the optimal path in Huawei
driver.
* Added REST API to update backup name and description.
* Report pools in volume stats for Block Device Driver.
* Updating the Datera Elastic DataFabric Storage Driver to version
2.1. This adds ACL support, Multipath support and basic IP pool
support.
* Changes config option default for datera_num_replicas from 1 to 3
* Support for use of 'fc_southbound_protocol' configuration setting
in the Brocade FC SAN lookup service.
* Added Keystone v3 support for Swift backup driver in single user
mode.
* Added volume backend drivers for CoprHD FC, iSCSI and Scaleio.
* HA A-A: Add cluster configuration option to allow grouping hosts
that share the same backend configurations and should work in
Active-Active fashion.
* HA A-A: Updated manage command to display cluster information on
service listings.
* HA A-A: Added cluster subcommand in manage command to list,
remove, and rename clusters.
* HA A-A: Added clusters API endpoints for cluster related
operations (index, detail, show, enable/disable). Index and detail
accept filtering by *name*, *binary*, *disabled*, *num_hosts*,
*num_down_hosts*, and up/down status (*is_up*) as URL parameters.
Also added their respective policies.
* Separate create and update rules for volume metadata.
* Capabilites List for Datera Volume Drivers
* Extended Volume-Type Support for Datera Volume Drivers
* Naming convention change for Datera Volume Drivers
* Volume Manage/Unmanage support for Datera Volume Drivers
* New BoolOpt "datera_debug_override_num_replicas" for Datera Volume
Drivers
* Added using etags in API calls to avoid the lost update problem
during deleting volume metadata.
* Configuration options for the DRBD driver that will be applied to
DRBD resources; the default values should be okay for most
installations.
* Added manage/unmanage volume support for Dell Equallogic driver.
* Added backend driver for FalconStor FreeStor.
* Added backend driver for Huawei FusionStorage.
* Introduced generic volume groups and added create/
delete/update/list/show APIs for groups.
* Added create/delete APIs for group snapshots and an API to create
group from source.
* Added group type and group specs APIs.
* Added manage/unmanage snapshot support to the HNAS NFS driver.
* Add support for reporting pool disk type in Huawei driver.
* Add support for hybrid aggregates to the NetApp cDOT drivers.
* Volume manage/unmanage support for IBM FlashSystem FC and iSCSI
drivers.
* Added support for querying volumes filtered by group_id using
'group_id' optional URL parameter. For example,
"volumes/detail?group_id={consistency_group_id}".
* New FC Cinder volume driver for Kaminario K2 all-flash arrays.
* New iSCSI Cinder volume driver for Kaminario K2 all-flash arrays.
* Added the ability to list manageable volumes and snapshots via GET
operation on the /v2/<project_id>/os-volume-manage and
/v2/<project_id>/os-snapshot-manage URLs, respectively.
* The v2 API extensions os-volume-manage and os-snapshot-manage have
been mapped to the v3 resources manageable_volumes and
manageable_snapshots
* Added host-level (whole back end replication - v2.1) replication
support to the NetApp cDOT drivers (iSCSI, FC, NFS).
* Added Cinder consistency group for the NetApp NFS driver.
* Added HA support for NexentaEdge iSCSI driver
* Added NBD driver for NexentaEdge.
* Support for force backup of in-use Cinder volumes in Nimble
driver.
* Add get_manageable_volumes and get_manageable_snapshots
implementations for Pure Storage Volume Drivers.
* The xiv_ds8k driver now supports IBM XIV, Spectrum Accelerate,
FlashSystem A9000, FlashSystem A9000R and DS8000 storage systems,
and was renamed to IBM Storage Driver for OpenStack. The changes
include text changes, file names, names of cinder.conf flags, and
names of the proxy classes.
* Support for retype volumes with different encryptions including
changes from unencrypted types to encrypted types and vice-versa.
* Added support for manage/unmanage snapshot in the ScaleIO driver.
* Added support for scaling QoS in the ScaleIO driver. The new QoS
keys are maxIOPSperGB and maxBWSperGB.
* Added support for oversubscription in thin provisioning in the
ScaleIO driver. Volumes should have extra_specs with the key
provisioning:type with value equals to either 'thick' or 'thin'.
max_oversubscription_ratio can be defined by the global config or
for ScaleIO specific with the config option
sio_max_over_subscription_ratio. The maximum oversubscription ratio
supported at the moment is 10.0.
* Added v2.1 replication support to SolidFire driver.
* Added consistency group support to the Huawei driver.
* Added support for querying volumes filtered by glance metadata
key/value using 'glance_metadata' optional URL parameter. For
example, "volumes/detail?glance_metadata={"image_name":"xxx"}".
* Added supported driver checks on all drivers.
* Added backend driver for Synology iSCSI-supported storage.
* Added support for vhd and vhdx disk-formats for volume upload-to-
image.
* Support for iSCSI multipathing in EMC VMAX driver.
* Added oversubscription support in the VMAX driver
* QoS support in EMC VMAX iSCSI and FC drivers.
* Added backend driver for Violin Memory 7000 iscsi storage.
* New Cinder driver based on storops library (available in pypi) for
EMC VNX.
* A new API to display the volumes summary. This summary API
displays the total number of volumes and total volume's size in GB.
* Added snapshot manage/unmanage support to the EMC XtremIO driver.
* Added backend driver for ZTE iSCSI storage.
Known Issues
************
* When running Nova Compute and Cinder Volume or Backup services on
the same host they must use a shared lock directory to avoid rare
race conditions that can cause volume operation failures (primarily
attach/detach of volumes). This is done by setting the "lock_path"
to the same directory in the "oslo_concurrency" section of nova.conf
and cinder.conf. This issue affects all previous releases utilizing
os-brick and shared operations on hosts between Nova Compute and
Cinder data services.
Upgrade Notes
*************
* In certain environments (Kubernetes for example) indirect calls to
the LVM commands result in file descriptor leak warning messages
which in turn cause the process_execution method to raise and
exception.
To accommodate these environments, and to maintain backward
compatibility in Newton we add a "lvm_suppress_fd_warnings" bool
config to the LVM driver. Setting this to True will append the LVM
env vars to include the variable "LVM_SUPPRESS_FD_WARNINGS=1".
This is made an optional configuration because it only applies to
very specific environments. If we were to make this global that
would require a rootwrap/privsep update that could break
compatibility when trying to do rolling upgrades of the volume
service.
* The 'backup_service_inithost_offload' configuration option now
defaults to 'True' instead of 'False'.
* If policy for update volume metadata is modified in a desired way
it's needed to add a desired rule for create volume metadata.
* The Cinder database can now only be upgraded from changes since
the Kilo release. In order to upgrade from a version prior to that,
you must now upgrade to at least Kilo first, then to Newton or
later.
* Any Volume Drivers configured in the DEFAULT config stanza should
be moved to their own stanza and enabled via the enabled_backends
config option. The older style of config with DEFAULT is deprecated
and will be removed in future releases.
* HNAS drivers have new configuration paths. Users should now use
"cinder.volume.drivers.hitachi.hnas_nfs.HNASNFSDriver" for HNAS NFS
driver and
"cinder.volume.drivers.hitachi.hnas_iscsi.HNASISCSIDriver" for HNAS
iSCSI driver.
* HNAS drivers will now read configuration from cinder.conf.
* Support for iSCSI multipath in Huawei driver.
* Support iSCSI configuration in replication in Huawei driver.
* The Scality driver has been marked as unsupported and is now
deprecated. enable_unsupported_drivers will need to be set to True
in cinder.conf to continue to use it.
* While configuring NetApp cDOT back ends, new configuration options
('replication_device' and 'netapp_replication_aggregate_map') must
be added in order to use the host-level failover feature.
* Pure volume drivers will need 'purestorage' python module v1.6.0
or newer. Support for 1.4.x has been removed.
* The XML API has been removed in Newton release. Cinder supports
only JSON API request/response format now.
* The ISERTgtAdm target was deprecated in the Kilo release. It has
now been removed. You should now just use LVMVolumeDriver and
specify iscsi_helper for the target driver you wish to use. In order
to enable iser, please set iscsi_protocol=iser with lioadm or tgtadm
target helpers.
* The config options "scheduler_topic", "volume_topic" and
"backup_topic" have been removed without a deprecation period as
these had never worked correctly.
* Users of the IBM Storage Driver, previously known as the IBM
XIV/DS8K driver, upgrading from Mitaka or previous releases, need to
reconfigure the relevant cinder.conf entries. In most cases the
change is just removal of the xiv-ds8k field prefix, but for details
use the driver documentation.
* Deployments doing continuous live upgrades from master branch
should not upgrade into Ocata before doing an upgrade which includes
all the Newton's RPC API version bump commits (scheduler, volume).
If you're upgrading deployment in a release-to-release manner, then
you can safely ignore this note.
* EMC ScaleIO driver now uses the config option san_thin_provision
to determine the default provisioning type.
* If using the key manager, the configuration details should be
updated to reflect the Castellan-specific configuration options.
* use oslo_middleware.sizelimit rather than
cinder.api.middleware.sizelimit compatibility shim
* The default interval for polling vCenter tasks in the VMware VMDK
driver is changed to 2s.
* The VMware VMDK driver supports a new config option
'vmware_host_port' to specify the port number to connect to vCenter
server.
* For EMC VNX backends, please upgrade to use
"cinder.volume.drivers.emc.vnx.driver.EMCVNXDriver". Add config
option "storage_protocol = fc" or "storage_protocol = iscsi" to the
driver section to enable the FC or iSCSI driver respectively.
Deprecation Notes
*****************
* IntOpt "datera_num_replicas" is changed to a volume type extra
spec option-- "DF:replica_count"
* BoolOpt "datera_acl_allow_all" is changed to a volume type extra
spec option-- "DF:acl_allow_all"
* Configuring Volume Drivers in the DEFAULT config stanza is not
going to be maintained and will be removed in the next release. All
backends should use the enabled_backends config option with separate
stanza's for each.
* Deprecated the configuration option "nas_ip". Use option
"nas_host" to indicate the IP address or hostname of the NAS system.
* The old HNAS drivers configuration paths have been marked for
deprecation.
* The XML configuration file used by the HNAS drivers is now
deprecated and will no longer be used in the future. Please use
cinder.conf for all driver configuration.
* The Scality driver has been marked as unsupported and is now
deprecated. enable_unsupported_drivers will need to be set to True
in cinder.conf to continue to use it. If its support status does not
change it will be removed in the next release.
* All barbican and keymgr config options in Cinder are now
deprecated. All of these options are moved to the key_manager
section for the Castellan library.
* cinder.api.middleware.sizelimit was deprecated in kilo and
compatability shim added to call into oslo_middleware. Using
oslo_middleware.sizelimit directly will allow us to remove the
compatability shim in a future release.
* VMware VMDK driver deprecated the support for vCenter version 5.1
* Old VNX FC
("cinder.volume.drivers.emc.emc_cli_fc.EMCCLIFCDriver")/ iSCSI
("cinder.volume.drivers.emc.emc_cli_iscsi.EMCCLIISCSIDriver")
drivers are deprecated. Please refer to upgrade section for
information about the new driver.
Security Issues
***************
* The qemu-img tool now has resource limits applied which prevent it
from using more than 1GB of address space or more than 2 seconds of
CPU time. This provides protection against denial of service attacks
from maliciously crafted or corrupted disk images.
Bug Fixes
*********
* 3PAR driver creates FC VLUN of match-set type instead of host
sees. With match-set, the host will see the virtual volume on
specified NSP (Node-Slot-Port). This change in vlun type fixes bug
1577993.
* Projects with the admin role are now allowed to operate on the
quotas of all other projects.
* Volumes created on NetApp cDOT and 7mode storage systems now
report 'multiattach' capability. They have always supported such a
capability, but not reported it to Cinder.
* NetApp cDOT block and file drivers now report replication
capability at the pool level; and are hence compatible with using
the "replication_enabled" extra-spec in volume types.
* Fixed StorWize/SVC error causing volume deletion to get stuck in
the 'deleting' state when using FlashCopy.
* Fixed issue where the HNAS driver was not correctly reporting THIN
provisioning and related stats.
* Fixed live migration on EMC VMAX3 backends.
* Fix issue with PureFCDriver where partially case sensitive
comparison of connector wwpn could cause initialize_connection to
fail when attempting to create duplicate Purity host.
* Fixed 'No Space left' error by dd command when users set the
config option "volume_clear_size" to a value larger than the size of
a volume.
* Fixed backup and restore of volumes in VMware VMDK driver.
* Fixed the VMware VMDK driver to create volume from image in ova
container.
* Added support for images with vmware_adaptertype set to
paraVirtual in the VMDK driver.
Changes in cinder 8.0.0.0rc1..9.0.0
-----------------------------------
199bb9c Imported Translations from Zanata
844aa0a Provide cfg to ignore lvm descriptor leak warnings
e743040 XtremIO: fix migration bug
c0b2021 Fix a typo in scheduler manager "filter_propterties"
42effa4 Fix request_spec conversion from o.vo to dict
8547444 Limit memory & CPU when running qemu-img info
a75f862 Dell SC: Error attaching after LV-AFO
4cfaa76 Have a default OPTIONAL_FIELDS for persistent OVOs
b5a1cee Include OPTIONAL_FIELDS in VolumeType OVO class
72a1c5d Fix creating typeless volumes with Mitaka's c-sch
8b36b66 Remove extra param in list_manageable_snapshots
d533455 Dell SC: ISCSI initialize_connection fixes
d3f3791 Imported Translations from Zanata
d838c7c Update UPPER_CONSTRAINTS_FILE for stable/newton
f899096 Update .gitreview for stable/newton
f794629 Fixed request/response parameters in doc
7a2adc0 Add volume RPC API v3.0
8a4aecb Add scheduler RPC API v3.0
9d117a5 XtremIO: bump driver version to 1.0.8
a15459a Imported Translations from Zanata
442c8e8 Fix missing JSON response in API reference
d22f815 Add xUnknownSliceID to retry list
a04ef22 Use IP in Kaminario locks and add/delete loggers
3daafbf Imported Translations from Zanata
2933c33 Remove unreachable return statement
0ef3969 Dell SC: Disable connectivity failures for new servers
e87ec8d Fix coerce good values in test_fields.py
e7db3c2 VMAX driver - Does not honor clone volume size
f0f6ca1 Updated from global requirements
5f82b06 Unit test to use vol obj instead of dictionary
bec0491 Imported Translations from Zanata
74d0975 Remove few Kaminario release notes
a49711f Newton release notes cleanup
bc5a2d9 Use to_policy_values for enforcing policy
83bfa87 Fix logic in retype check for encryption changes
ef9a8cf Added default for ScaleIO driver max_over_subscription
cee739a Save volume_type/group_type uuid into db when creating group
032f30d Imported Translations from Zanata
8e62557 VMAX driver - Cleanup of Initiator group fails
e91db5d Imported Translations from Zanata
42a5c8e fix the %{} when string formating
2089e4e Fixed illegal syntax error code in ScaleIO rename volume
18325ae VMware: Send additional connection info
d551f4d Imported Translations from Zanata
a6eca29 Remove sleep mocks in RBD unit tests
0685b4f Fix RBD timeout
d1a45ba Add missing release notes
4f7074c Make sure get_backup_device result is an o.vo
09a40d4 VMAX driver - failed rollback on VMAX3 when MV issue
619d28b Remove driver interface changes from reno devref
cda4dc9 Imported Translations from Zanata
6bf2d1b Cleanup Newton release notes
754900f standardize release note page ordering
73fc4c3 VMAX driver - Removal of iscsiadm from vmax cinder
4702fd5 VMAX Plugin - Target WWN change for redundancy
084e11e Orphan view and multipath issue in Kaminario driver
c9148ea Imported Translations from Zanata
e34bc5d Eqlx: Ignore missing snapshot on delete
623990d NetApp cDOT: Fix reporting of replication capabilities
aded066 Mark Scality volume driver as unsupported
43c44c9 Trivial: Fix a trivial flake8 error
d797294 Register state_path opts and add it to sample conf
8a7ef83 Imported Translations from Zanata
044a34d Updated from global requirements
31220d0 VMAX driver - Won't delete pre-existing initiator groups.
388e52c NetApp: Fix issue with busy snapshot deletion.
bdb2cca Provide volume size for tempest volume creation
5197b2c Nexenta: Added use of sessions for NexentaEdge drivers
5a4ad31 Imported Translations from Zanata
8a06add RBD: Error when managing a nonexistent volume
27530c0 Fixed indentation
4fb27ce XtremIO: fix bug deleting cgsnapshot
018a9d4 Raise NotImplementedError instead of NotImplemented
143d656 Imported Translations from Zanata
b11602e Support create group with group type name
4e164f1 Rename specific driver option with synology prefix
b9ef6ef Remove doc for promote/reenable replica
c2cb32b Imported Translations from Zanata
26d4a53 Imported Translations from Zanata
371d25b LeftHand add entry point tracing
486dfe3 Remove host assignment in Snapshot OVO
a1f6436 Fix lazy loading cluster field from Service OVO
b937161 Fix manage existing MissingDependencies error
aeba181 Do not pass unicode to str.isspace() when disabling a service
2da1bdd Correction in log massage format syntax
f37a80a EMC VMAX - multi-attach failure to VMAX3 when SLO is omitted
eb6ed41 add more credentials information to check_is_admin
0d24178 VMAX driver - Retrieve volume from snapshot
ebeb0bb Fix CapacityWeiger to accept None volume type
b76d8c9 Imported Translations from Zanata
76d7a37 check quota per_volume_gigabytes for transfer-accept
3854939 Dell SC: Add dell_server_os configuration option
a93314b Add supported driver checks to Zone Manager
859653a Fix backup unit tests imports for os-brick
9cfceac Fix backup unit test with new os-brick
ca4ac3d Stop using mox in unit/api/contrib/ tests (1/2)
9c191bd Stop using mox in unit/volume/drivers/*.py
49093ae ScaleIO over subscription support
9d82ffa Fix exceed of dd action when copying with path
472ce4a Fix CapacityFilter to accept None volume type
f6adf72 Fix HNAS stats reporting
975ec07 Imported Translations from Zanata
4156389 Stop using mox in unit/api/v3/ tests
54ae452 Deleting volume metadata keys with a single request
682e49d Add Castellan release note
e27e450 Changes stats report for ScaleIO driver
7223af6 Remove cinder/tests/unit/test_misc.py
11e8ae7 Imported Translations from Zanata
9bb4dc7 CoprHD: Handle create volume from CG snapshot error
1732094 Performance issue for VNX attache LUN
b017983 Config logABug feature for Cinder api-ref
ad8cba2 Stop using mox in test_wsgi, test_nexenta, test_netapp
e9c206a Remove unused source file tests/unit/db/fakes.py
2360182 Fix an invalid function call in test_consistencygroups.py
9f87e20 zfssaiscsi driver log messges need cleaned up
7d5e957 Fix typo in enable_unsupported_driver description
55156e9 Mark GlusterFS driver as deprecated
2d1242a Retype encrypted volumes
99d2170 Fix DellStorageCenter docstrings
0abf399 Fix driver interface checks for ZTE driver
e7c1852 Add CI_WIKI_NAME to ZTE Driver
458f098 Add CI_WIKI_NAME to X-IO Driver
b1e061a Add CI_WIKI_NAME to Synology iSCSI Driver
70b05db Create encrypted volumes from images
fe17c3d Add encryptor attach/detach in utils
cb94db1 XtremIO: fix the returned value of CG actions
e48f6d9 Stop using mox in unit/api/contrib/ tests (2/2)
43c2286 Change assertTrue(isinstance()) with optimal assert
fbe0323 Stop using mox in unit/*.py tests (1/2)
a0e5de93 Use assertIn instead of assertTrue(A in B)
92891a5 Remove unused function from unit/fake_utils.py
0928f0a Imported Translations from Zanata
2246c5d Clean import in code
3ef1fad Remove unused config.CONF
23dab08 Add tempest tests for Consistency Groups
70bfb78 HNAS: Add support for manage/unmanage snapshots in NFS driver
f7e87cf Reduce the runtime of drivers/ibm/test_storwize_svc
efa39bf Improve TestCase.mock_object method
033284a Fix the password print in cinder-volume.log issue
3f3a0c8 VMAX Driver - Live Migration for VMAX3
8df7241 Remove self.__dict__ for formatting strings
4064697 Imported Translations from Zanata
37b333d CoprHD: Add missing key in ScaleIO driver
08f1a24 Avoid patch loopingcall in VNX
86f645a Add validation for the metadata properties
f6c20ed Removed RPC topic config options
72dd51e Clean imports in code
993ba89 Replace key manager with Castellan
f589c6e Cleanup api-ref
7f2131e Update api-ref path
e9b4097 Nexenta: NexentaStor4 NFS driver cache capacity and use sessions
c517048 Stop using /etc/cinder/cinder.conf for cmd tests
3d036a5 Use utils.validate_dictionary_string_length
f4fa6c5 Stop using mox from unit/image/*.py
9771c2c Separate create and update rules for volume metadata
46af008 Updated from global requirements
05bee1c TrivialFix: remove unnecessary VERSION_COMPATIBILITY
f15d9d5 When only .pyc left, the extended API can not be used.
c3b33b6 Recover volume status after remove_export
e71f621 Pure - warn when deleting destroyed snapshot
b4b1cde Fix quota rollback on retype failure
9e9b3ec Pin RPC server's serializer to min obj version
80c2578 Driver documentation cleanup
9845a95 Host selection when creating backup
fb688a7 TrivialFix: Remove cfg import unused
7d84ee9 Fix password masking result
0adde01 Let setup.py compile_catalog process all language files
5fe72f8 Dell SC: Add exclude_domain_ip option
1f7f45e Add support for force backup for Nimble Storage
ccf4884 Retype issue in Kaminario Cinder drivers
3bb531e TrivialFix: Remove logging import unused
6882c8f Stop using mox in unit/volume/drivers/emc/*.py tests
f239bf7 Stop using mox in unit/consistencygroup/*.py tests
7cc58b5 Stop using mox in unit/scheduler/*.py tests
eeee612 Stop using mox in unit/zonemanager/*.py tests
13a6718 Stop using mox in unit/backup/drivers/*.py
bdaabbe Fix incorrect parameter in create_key
7517be2 Use constraints for api-ref environment
5db6315 Dell SC: Live Volume Autofailover
a227bf4 Add new supported driver checks
aabca4d Tests: Fix racy volume unit test
79b3a92 vzstorage: fix create/delete snapshots
c8f7e80 Sending ScaleIO volume id in attach and detach volume
0f1ea3c Cleanup upgrade-related FIXME's
70cf094 Using oslo_config's min attribute
4e92c27 Add replication failback in Kaminario K2 drivers
19544f7 Added config option to enable SSL
d24fb4b Group specs: Fix exception name
2a20f1f Dell SC: Failback replications limited to 5 at a time
ddabae3 VMware: Add volume name in vCenter to conn info
5568b40 NetApp: Report multiattach as enabled
7a8daa5 Attachment lost after migrating in-use volume
af6879c Fix typo in the huawei_driver.py
0d894a9 Fix invalid services caused by enabled_backends
40dd1ae Updated from global requirements
b04072a Change NFS driver to not throw exception without nfs shares file
fff322b Datera driver 2.2 update
9f01b19 Reduce the runtime of drivers/dell/test_dellsc
37b7a20 Add release note to warn about os-brick lock dir
6ffe78f Updated from global requirements
d7f793d Use min attribute from oslo_config
2dfab71 Imported Translations from Zanata
2cd599a Fix the interface to call update_server_volume
40e1429 Dell SC: Break_replication unhandled NoneType error
5242d1f Volume Manage/Unmanage Support for IBM FlashSystem
f67f6b0 Imported Translations from Zanata
fa5ed85 Change a typo error in the releasenote
d9d2455 Fix reported driver's versions
7c8983d Use OVOs to set errors in manage volume/snapshot
f5634ea Use original volume OVO instance in create flow
50e6073 Fix mysql binary comparison
ce19eef VMware: Allow images in ova container
3a7686f Add CI_WIKI_NAME to driver's devref
dd8bb00 Improve Hitachi HNAS volume drivers log messages
4fd42d7 Updated from global requirements
f184b5f EMC VMAX - iSCSI Multipath support
0be6804 Fix typo in cinder/tests/unit/image/test_glance.py
4126397 Clean imports in code
450ac43 Imported Translations from Zanata
65531bf Enhance api_microversion doc
5d28eed Add CI_WIKI_NAME to Tegile volume driver
73d2b55 Add get_manageable_* methods to Pure drivers
66023c5 Use constraints for all tox environments
67ee229 Imported Translations from Zanata
d359734 Remove the using of dict.get() in assertIsNone
5564f22 Revise Synology DSM storage driver
3db21d0 Add volumes/summary API support
09d100e Imported Translations from Zanata
b521483 Ignore case when comparing wwns in Pure FC driver
389188c NetApp: Add Consistency Group Support for NFS
b7dcc4a Replication, hard-coding and dict.name issues in K2
34c56b4 Update homepage with developer document page
2a8d7f8 Add CI wiki page to driver listing
fe22e85 Imported Translations from Zanata
25f7c9e Refactor cinder.utils._copy_volume_with_path
3f292f0 HNAS: Deprecating XML config file
20d8ff5 Add functional-py35 to tox
e38d039 Remove code duplication in enums
79994d6 Concurrency issue in K2 iSCSI and FC Cinder drivers
a569e68 VMAX Driver - QoS support for the VMAX3
54a9585 Mask out passwords when tracing
169f79a Remove debug logger translations
e7afd33 Imported Translations from Zanata
9abeca3 Fix volume creation with no volume type
122e7b5 Dell SC: delete_live_volume payload incorrect
2f33bf6 Dell SC: Requests async header is invalid
249197e Imported Translations from Zanata
855a0c3 Use object instead of string when reset backup
5f0f752 Prevent doc generation failure on OVO decorators
1a5de5d CI: Add CI_WIKI_NAME to all drivers
72002e5 Imported Translations from Zanata
1a94f7f Make the volume-manage doc be more general
7649b50 Add missing dependency on keystoneauth1
7c9139c Fix tox pip-missing-reqs
9982226 Revert "Remove Tegile volume driver"
fcb73e4 HPE XP add entry point debug tracing
7dd5f38 Remove resource_common_manage load warning
9c5e7a0 Updated from global requirements
897dfef Huawei: Modify array LUNs naming rules
4559058 Imported Translations from Zanata
6601f5f Remove unused context parameter
8931f0c Imported Translations from Zanata
272e126 QoS support for the Coho Data Cinder driver
07ccd84 Add tracing to remotefs entry points
294ee65 NetApp cDOT: Add cheesecake replication support
93e5ed8 Don't use config option sqlite_db
7e10619 Improve snapshot handling in K2
a8e3220 Fix volume retype from SolidFire
5377ed5 EMC VMAX - Oversubscription support
53eef99 Updated from global requirements
e815f56 Fix volume upload-to-image for vhd disk-format
14b07eb Imported Translations from Zanata
1a49592 Remove context object in oslo.log method
9a3c7a1 3PAR add entry point debug tracing
889947c Fail manage operations if service is down
ed39bfe Support retype in K2 cinder driver
55a7de0 Remove comma from end of policy.json
95d2943 Prevent adding same OVO version twice to history
a88307c Removed a dead db function register_models()
1e82047 Handle snapshot delete conflict in 3par driver
0cbb34c Imported Translations from Zanata
fbd471c Specify key algorithm and size for create_key
872a46d Add functional-py34 to tox
50e1f16 Fix size exceed of dd action when clearing a volume
6c61bdd HNAS drivers refactoring
52efd1e Use volume o.vo in get_backup_volume_temp_snapshot
4b2e760 Imported Translations from Zanata
00f5662 Fix ImportError of fake_driver
4080179 Add proxy config option to google backup driver
de66e8f Add stochastic weight handler to scheduler
f519b8a Fix Scheduler manager masking retype fail details
5226fba fixed misspelling in synology_common.py
e792506 Updated from global requirements
c28cd11 Don't puke when exiting driver list
0291637 corrected the help string in coho.driver
f84c6c3 Fix ImportError of fake_driver
ac7641c Storwize:create_volume_from_snapshot with different size
8fd478a Imported Translations from Zanata
8d3dada Fixing pending comments for CoprHD Drivers
ef587d6 Huawei: Fixed problems caused by password expiration
a940f17 Add metadata length check to volume-manage
fecbf75 Dell SC: Use Live Volume for replication
4373e98 Remove race condition from lvextend
294425d Switch request_spec in create volume calls to ovo
f7e715f Support replication in K2
832ec71 Support manage/unmanage and extra-specs in K2
66bcfb2 Update xiv_ds8k driver name and description
39517e2 Imported Translations from Zanata
46b1498 Set VERSION in VNX cinder driver
d9bd9f5 ScaleIO ignore rename of external volumes
9a8e2a4 Managed snapshot should return ceiling of size in Huawei driver
8d0633d Size in tintri driver should be converted to integer
3eafcf5 Improvement to query cg detail(Part 1)
78e7713 Fix documentation and remove dead code
50276fd VMware: Fix retype when storage policy is enabled
4c8e8af Validate name in qos-spec
dced19a Replace functions 'Dict.get' and 'del' with 'Dict.pop'
31e164a Updated from global requirements
7cc95f8 NetApp: Report hybrid aggregates in volume stats
9232884 Storwize: Quote vdisk names to handle spaces
0545f55 Fixes ZFSSANFS driver
f1b9919 DRBD: Disk-options for new resources
e1b254d Fix mistakes introduced with QoSSpecs object
c5ebe48 Add backup update function (microversion)
4e8f83c VMware: Fix upload to image with glance v2
4679d1f Remove Tegile volume driver
4739fef Quobyte volume driver should use DLM
e323d9c Add functional tests for nested quotas
6f98f14 XtremIO: Implement update_migrated_volume
b5a75b0 NetApp: Refactor unit tests
8148038 Add driver list to doc build
9286ab4 Move fake_driver to tests root dir
0b0000f Map volume/snapshot manage extensions to v3
1761d87 Replace OpenStack LLC with OpenStack Foundation
eeab576 VMAX Driver - SnapVX licensing checks for VMAX3
697b98b LVM driver: list manageable volumes and snapshots
bc31ef8 Sheepdog:fix the bug of failed to clone image
39e0c88 Move drivers unit tests to unit.volume.drivers directory
b9c5c97 Docs: Correct i18n information
b392f8a Fix db purge for quality_of_service_specs FK constraint
fb0e8fd Fix log message when service is disabled
3c18c6f Add interface documentation to driver devref
5abd344 Docs: cleanup doc8 errors
14f378a Docs: remove todo list generation
8d9cad3 Update doc README and remove old Makefile
99c362b Imported Translations from Zanata
c491c3e Handle API NotFound exceptions at WSGI level
ee451e5 Add worker's DB operations
7294cf0 Add workers table
8b713e5 Modify API to include cluster related operations
62f761f Update manage with cluster related commands
bc88f16 Improve cinder-manage arg parsing
a5b4e34 Add cluster job distribution
625cab1 Update Versioned Objects with Cluster object
57ea696 Add cluster table and related methods
b03f539 Update OVO instance on destroy method call
5880297 Fix wrong declaration in Scheduler's base driver
6cfecad Refactor sqlalchemy service methods
a8edbd2 Improve api_version decorator to avoid noqa
dee1658 Imported Translations from Zanata
38c2af6 Tests: mock notifier in CG tests
0ee35f6 Remove duplicated code in manage_existing_snapshot
742ebf4 Initialise oslo.privsep early in main
8762267 Imported Translations from Zanata
0273dc5 Add lock decorator to SolidFire clone_image method
5816f0d Dell: Fix docstring cut/paste error
3af88ab NetApp: Support new parameter to cDOT clone API
7d1cdba Auto sync manager's RPC_API_VERSION
7d79909 Fix CinderPersistentObject.refresh
30f963a Replace locks in remotefs and glusterfs backend drivers
948ac4a Block Device Driver: report pools in volume stats
e6bfb03 Add missing test case
f12b238 Updated from global requirements
69b8d83 Invalid volume state when manage operation fails
708b9be Add group snapshots - APIs
73795f4 Dell SC: Add secondary DSM support
b145ac5 Fix some typos
71cf291 Remove generate_driver_list dependency on cur dir
3767c6b Huawei: Support reporting disk type of pool
f5c3bb1 Fix 500 for 'qos-create' key or value > 255 characters
4a67bc8 Add group snapshots - manager
325f99a Add group snapshots - db and objects
7f44844 XtremIO: support of snapshot manage commands
be821a3 Fix the group type filter
b08435e Fix policy check for group types
72d2a33 Differentiate thick and thin provisioning
729d86d Remove force option from create_snapshots_in_db()
1ac4303 Set sleep time to 0 in Datera driver
8c74c74 Add generic volume groups
3eb8552 Huawei: Support backup snapshot
6cf7227 Fix assertEqual usage in test_volume_manage
51a03d5 Fix chunked backup driver interface name
052e0ec Removed unused code from cinder.utils
3c18a2e 3par driver handles concurrent host create conflict
a052142 Fix typo in delete snapshot in Synology driver
fcda064 Removed unused code from cinder.utils
fb3a51a Fixes consistency snapshot creation
5a7fecf [doc] Fix a non-alphabetical order bug
5a9c4d9 Trivial: Use fake.VOLUME_ID instead of id
7720fce Violin Memory iSCSI storage for 7000 series AFA
24db697 update min tox version to 2.0
35c9729 Updated from global requirements
ed559ab Switch _create_temp_cloned_volume in driver to VO
27a8499 NetApp: Add aggregate capacity info to scheduler
bf76eb2 Add strict Boolean checking for storage pools
78d124d Add Synology DSM storage driver
abf91a8 Use from_environ to load context
842d95b Use context.from_dict to determine available arguments
c8dc22a Add ZTE Block Storage Driver
4240a41 iSCSI Target: remove confusing comment/log
eec1214 Storwize: Fix exception ProcessExecutionError
9165406 Changing method _from_db_object to classmethod
a0a04f4 Allow admin project to operate on all quotas
8319ea4 Use default provisioning type from config
348c260 Delete *.pyc files before running tox tests
a7c715b Implementation for CoprHD Cinder Drivers
e6fdc05 Image virtual size doesn't fit to volume size
0bd4a6c Don't apply config fixture to auth_token.CONF
a2bac00 Check flashcopy mapping before deleting volume
45de850 Send scaleio id to os-brick
672120b Nexenta: Added HA support and enhance get_volume_stats()
d4a61fc Fix failure with "None" volume type in Pure drivers
a85522c Add backend driver for Zadara Storage VPSA
8cf9786 Add group type and group specs
c8a5e7d Don't use shred for volume clearing
ecfb70c Add cinder backend driver for Huawei FusionStorage
f9d5285 Do not conjecture volume-id from iscsi_name
572b84c VNX: New Cinder driver in Newton
01cdd06 Return vaild reason when unknown error occur.
606dc15 Moving the OPTIONAL_FIELDS inside the OVO object
b3732ee Support microversions on inherited Controllers
33e4ccd Replace use of mox with mock in test_base_filter
7cfb013 Replace 10 ** 9 with a constant units.G
2a08267 Reduce logging level of API validation messages.
e2a80ea Fix manage existing volume fails after object merged
28b5c7e Add strict Boolean checking for volume manage
1913d43 Adds unit test coverage for consistencygroups.py
a6f48a5 FalconStor: New Cinder driver in Newton
e9c217f Move QualityOfServiceSpecs to use VersionedObject
b5fca83 Snapshot object has no attribute about size
1f8be4b Add return parameter info for manage_existing_get_size
b6d5948 cinder-manage db purge has issues with foreign keys
15ed23d Huawei: Use versionedObject
e568189 Resolve unittest hang issue
b96e3c2 Fix some typos
7a1742c Add logging when filtering returns nothing
618139e Validate extra_specs type
4547afd Just a few spelling modification. "occurred"
8d33f6b Remove white space between print and ()
00bce24 Log traceback for initialize connection failure
4c6dc3a Remove unused LOG
bcaa956 Use assertEqual/Less/Greater/In/IsNone
a13e1db Updated from global requirements
e6e2ef4 Add __ne__ built-in function
1a0dd6b Fix consisgroup V3 interfaces
f63d89d Add proper scheduler_hint key to dev-ref
f6aec5b check the validity of metadata when update volume
d1c7cdb Remove unused __init__
a337fb3 EQLX: Extend of snapshot or clone failure
81066a0 Log terminate_connection exception with traceback
d4b9738 Replace use of mox with mock in test_api_urlmap
f01ae06 Add README in release notes directory
afbb085 Fix broken link in HACKING.rst
d6a44c1 Replace int with float to bring math.ceil into effect
b2acb1d EMC ScaleIO should return ceiling of volume size
395288a Deprecate defining c-vol backends in DEFAULT
b15938b Dell SC: Do not set High Availability in async mode.
79a0a5b Replace use of mox with mock in test_ibm_xiv_ds8k
9768902 Remove translation from config options
47805a0 Correct reraising of exception
221405e EMC VMAX - locking SG for concurrent threads
afc9cb9 Use elevated context to query DB in VolumeNumberWeigher
d32d996 Huawei: Support huawei consistency group
069fd2e Make divisible py3 compatible in nfs driver
3e15a12 Updated unit tests to use official unittest methods
d70ed62 Fix raise UnableToFailover call in SolidFire
bfae22b Provide Kaminario K2 all-flash array FC driver
0a3c9a2 RBD: uppercase rbd_opts for consistency
505ccfd Add strict Boolean checking for volume create
9a9b4d8 Replace use of mox with mock in test_brick_lvm
0ca43fc Replace use of mox with mock in test_lvm_driver
d899d88 Remove six.iter*
4b77216 Updated from global requirements
b77f388 Add validation for container name
98939fc VMware: Fix create vol from streamOptimized image
7b0e5ac Use True instead of 1 in while loop
1e3b467 Remove mock.patch.stopall call in test_smbfs
0c3960c XtremIO: fix test suite
3fa5240 Add strict Boolean checking for quota show
27116d5 Correct unavailabe to unavailable
3c36251 Huawei: Support iSCSI configuration in replication feature
70b039c Dell SC: Specify High Availability for create replication
9374dcb Increment Pure Storage Driver Versions
c897d35 Refactoring Kaminario iSCSI driver
c063cbd Don't reuse pep8 env in compliance tox runs
7cd0a7b Trivial Fix
4ae92b9 NetApp: Finish SSC refactor by removing dead code
45caa0f Implement unit test for HPE Lefthand driver
2f56ccf Added coverage report to tox.ini
9154022 Add strict Boolean checking for qos delete
d5f1720 Add validation for type extra_specs
c3193b4 Replace mock with self.override_config
ea99de3 fix cinder ceph backup driver padding error
2a6fdde Replace 1024*1024*1024 with units.Gi to express more accurately
f019466 Violin: resize volume if cloned lun is larger
c25998e Make dict.keys() PY3 compatible
83405cb Move _validate_extra_specs to cinder/utils
cf1fed5 VMware: Refactor vmdk unit tests
5ac73a4 Updated from global requirements
7aa6d9e Move _check_metadata_properties to cinder/utils
b6b08eb Remove deprecaterd mapping in manager.py
db0cba2 Capability lists in Cinder scheduler
ebced3c Updated from global requirements
ca9e590 Nexenta: Add NBD driver for NexentaEdge.
de3794a Add missing coordination=True on service start
52fbd3f tempest: Add Unicode volume name test
17d7712 Adding Scaling QoS for ScaleIO driver
eccf737 Updated from global requirements
0912153 Implement match-set type 3PAR FC VLUN creation
2f15954 Fix pylint error in K2 iSCSI driver
549436c Fix lock files littering working dir during tests
3452827 Fix TSM backup driver test mocks
a85d950 Improve DB volume check in LVM manage volume
e8a3c50 VMware: Honor vmware_cluster_name during retype
d54027b Revert "Revert "use utf8 as default charset for all tables in mysql db""
bc9d737 Fix snapshot stuck in 'deleting' after reboot c-v
83a1fdb Update initialize_connection to use versionedobjects
357eaab Updated from global requirements
a5746b6 NetApp: Replace SSC for cDOT block & file drivers
592d034 Revert "use utf8 as default charset for all tables in mysql db"
a80119a huawei-iscsi-multipath-support
dfc69e8 use utf8 as default charset for all tables in mysql db
3d34ce0 Implemented unit test cases for HPE LeftHand driver
505b838 add FIXME tag for extra argument 'topic' in scheduler rpc api
ccd410b update coordination.Lock.release's docstring
36ce626 Fix permissions error when configuring nfs backend
207f5cf Use cinders test class in cloudbyte unit tests
ad2e538 Correct DB modifications from compaction
1003fbf Add unit tests in cinder for HPE Lefthand driver
7f87569 Provide Kaminario K2 all-flash array iSCSI driver
b9c3ea2 VMware:Persist storage policy ID in vmdk meta-data
e22c244 Allow setting CG name or description to empty value
dae9831 Support None value of extra_specs in cinder-scheduler filter
e9b928d Fix db purge for volume_types FK constraint
c9910c9 ABC Metaclass for IBM FlashSystem
8ec5562 IBM FlashSystem: Add host check for iSCSI driver
fdf02a7 vzstorage: add ploop volume format support
369572f Use versionedobjects in remotefs.py
ec51a68 Move test from test_glusterfs and test_quobyte to test_remotefs
81599f7 Netmask needs corersion to string
1936144 image_size_m should get ceiling of image
c0cf997 Add unit tests in cinder component for 3PAR driver
87c5749 Handle quota exceed exception
fa4442e Replace locks in volume manager
276bb76 Updated from global requirements
1c7b0a5 Start/Stop coordinator with Volume service
c899cee Tests: Remove notification_driver config
f2c2ee4 Tests: Use mock for notifier tests
f0dda71 3PAR: Fix delete volume when online clone
e7b4024 Add driver interface checks
61238e2 Add test type clarification to devref
c68892a Backup and restore broken in zfssaiscsi driver
6309292 Windows SMBFS: fix VHD/x resize
ffecc60 Remove duplicated fake drivers
a8744e2 Cleanup volume_type_projects
ad1ba8e Implement OVO class init mechanism
a505cad Add debug level logs on OVO backports
0e1df6b Stop assuming persistent OVOs are also DictCompat
0f72ff5 Move OVO methods from CinderObject to Persistent
504b466 Remove remotable from OVOs
f0d34b7 Use manifest to backport OVOs during upgrades
5730a8c Nimble: Don't query all vols from DB in do_setup()
fb19ea2 Fix wrong usage of exception's attribute message
142d035 Add parameter info for manageable snapshots
c06e552 Adds ACL, IP Pool, Multipath to Datera Driver
2c54480 Dell SC: Retry unhandled exception REST Gets
7a066eb Fixed _create_3par_iscsi_host(), added unit test for 3PAR
f574472 Set QoS on cloned volumes
1c1d845 VMware: Deprecate vCenter version 5.1
092a01f Update manage_existing to use volume object
07b1db4 VMware: Fix constants in unit tests
32a2a67 Updated from global requirements
c28a5cf EMC driver should return ceiling of volume size
ed4bcc0 Use oslo_middleware sizelimit
41929d1 migrate to os-api-ref
c5df007 volume upload-to-image fails for iso disk-format
f79dfe2 Huawei driver should return ceiling of volume size
62b0acb Volume manage/unmanage support for Eqlx driver
6440379 NetApp: Log unexpected errors from backend
c2ac7d6 Add Auth Version 3 support in Swift Backup Driver
3c7a71e Add error messages to conditional updates devref
896072a Add docstrings to CG and CG Snapshot filters
1730f2d Virtual size should get ceiling of image
e1c0645 DRBD: Allow to set options for new resources
f14aace SolidFire driver should return ceiling of volume size
d64f5fc Clean up man page and remove version/date
e62ed28 3PAR: Fix terminate_connection when failed over
f0ea3cb VMware: Remove unused methods
6f63347 Fix MySQL DB error in Delete CG
3dbaa2f Nimble driver should return ceiling of volume size
2b377e7 Updated from global requirements
c4b6d51 Remove locks from Pure volume drivers
cf19bc1 Give more fine grained access to DriverInitiatorData
7369aae Remove IN_USE from ConsistencyGroupStatus enum
10bce4b Compact Kilo database migrations
c614308 Bump to Nova v2.1
5b82638 Switch to using correct TaskFlow Failure class
9e84f1a Optimize service find in migration
0125df9 NetApp NFS Cmode: Fix NotFound exception
25f5eed Add check to limit maximum value of age_in_days
7763197 GPFS: Fix consistency group ERROR_CREATE status
b47ca63 Remove the duplicated definition of _add_to_threadpool
3e83a33 Imported Translations from Zanata
39ccd83 Coho data sanity fix in the driver unittest
6cfe6e2 Dell SC: Added support for failover_host failback
253f9ea Remove API races from consistency groups
e0c00c5 Minimize cost of DB exists decorator checks
f43e56e Pass volume_type_id in when deleting snapshot
41b025f Add unit test case in Nimble Driver
61a63dc Fix attachment_get_by_* to return entire list
135e094 Remove API races from migrate and retype
905908d SwiftBackupDriver: Dont add project_id to authurl
44dfac1 Updated from global requirements
79f21bb Catch GlanceMetadataNotFound in creating cgsnp
52faea5 Updated from global requirements
1574ccf List manageable volumes and snapshots
ad2d5e7 Updated from global requirements
b449025 Add pagination support to messages
b48614f gpfs: Add changed options for 'find' command in rootwrap filters
bbaab25 Huawei replication should use auto recovery policy
18f1b45 Dell SC: Switched REST calls to async where available
069d2dd Move all backups related unit tests to backup directory
d24d425 Move consistency groups tests to consistencygroup directory
512d7db Volume manage should parse volume size as float
3e3e7b6 Return BadRequest for invalid 4byte unicode character
f028df9 NetApp: Add iterator handling to client library
bf2be3d Make IBM drivers return snapshot object for cg ops
ec0d8da Coho Data: Reconnect to cluster on broken pipe
6991ddb Remove mox usage from test_nexenta
1861ed5 Manage/unmanage snapshot in ScaleIO driver
c7259c1 'display-name' is not used in snapshot_manage
6ab5e52 LeftHand Fix terminate_connection when failed over
c5057af Storwize: terminate_connetion NPIV perf improvement
c96be71 Revert "Add hacking check to prevent assert_called_once"
2ec1621 Fix 3PAR cg display name issues
8cb8cf5 DRBD: ensure_export() might not have 'provider_location'
7e634cb Fix image-volume cache to use volume object when evicting
b208280 Fix retype from non-repl to repl type in Pure drivers
edb829e Remove test_conf.py
c4d3b7d Dell SC: Changed rename volume REST API call
9400cee Add hacking check to prevent assert_called_once
f79a1bf Updated from global requirements
e084a38 Huawei: Raise if no FC port found
34604c8 VMware: Increase default task poll interval
c582d53 VMware: Update volume config during unmanage
44c397c Drop use of invalid assert_called_once call
9c1c545 Fix AttributeError when obtaining 'name' attribute from 'snap'
d7e7e7b Handle SSL termination proxies for version list
cbdd0fa Call _init_volume_driver in backup manager
f78c06b Updated from global requirements
24ea17a model_update for temp volume or snapshot in backup
876d797 Add debug messages and comments for ceph backup
c77ec0f Avoid ascii code error for request body strings
8a3d11c Fail on disabled_reasons with more than 255 chars
e4134f5 Windows iSCSI: properly handle config option
e33d6bf Remove unused logging import and LOG global var
03abe62 Fix Brcd zone driver initiator zone update
7043cc1 Add SnapshotStatus enum field
7740ad1 Tests: Fix mock imports
47000e1 NetApp: Remove type checks from manage workflow
79d2d63 ScaleIO actual volume size model update
49aef34 Capacity weigher: Pass correct arg to super()
a0300df IBM Flashsystem: Add missing items to common
0497c9b Prevent Multitable conditional updates
3f12a1f Remove support for 1.x volume RPC API
54bc12a Remove inappropriate Copyright
18dd346 RBD: include cluster name in connection info
5fea670 Tests: Don't attempt connection for Coho driver init
9b24d61 3PAR Clean up VLUN deletion on detach
ad9436e Remove object to dictionary translation logic
67cff3b Refactored the update method in api.py for vol obj
5ccb657 Tests: Use unique volume IDs in backup tests
a8d764e Move LVM tests to test_lvm_driver.py
68d33de Move CG unit tests to test_cg.py
9158fc7 Fix an error in CG object
763dd8c Fix backup using temp snapshot code path
c5992f4 IBM FlashSystem: Cleanup host resource leaking
19d7ec0 Updated from global requirements
fcd7fce Add sample config file to cinder docs
5e9a76e Make api_microversion_dev more explicit
4b47b3d Use check_string_length from oslo_utils
4805958 Fix up RPC cleanup process
9a3ecb2 Add unit tests in cinder component for HPE drivers
c2f2eeb Whitelist 'rm' in api-ref tox environment
e671104 gpfs: remove a race in deleting volumes
202caf2 Fix taskflow parameters for manage_existing
a7fba1c Correct misspelt words in msg in cinder
342be78 Implement CHAP Authentication for E-Series Driver
8659ff0 WADL to RST migration in cinder tree
7b0ae2e Properly mock out image_utils operations for tests
79abfda Dell Eqlx: Volume from snapshot now honors resize
5fa6616 Use example.com in unit tests
41981d4 Extend remove_version_from_href support
2a07124 Fix return value of _clone_image_volume
4e7624e image: don't use is_public with glance V2 API
13fcda4 Change provider_id to StringField
c7c642f Add missing SnapshotUnavailable to cinder/exception.py
963e435 NetApp: Rewrite user API discovery logic
017a322 Remove unnecessary v3 VolumeController.__init__
278715b Fix v3/volumes.py VolumeController super(...) parameters
6c5ddb1 DB: Optimize volume existence check
b50907b Reorder DB API require_context decorators
8c38b6a Remove API races on extend and volume_upload_image
eb1315b Manage existing volume with invalid host
b0d05e7 Remove CG db access in Storwize driver
925ee61 Specify a user-agent in Pure volume drivers
a802b23 Dell SC: find_volume failure in manage and retype
125a900 3PAR driver failure SR License missing in array
20152e0 Remove unnecessary created_at from ORM Message
c526255 Fix uncaught NotFound exceptions
599fff6 Remove support for 1.x Backup RPC API
4b07c88 Provide consistency to "Openstack-Api-Version" header
c5c5e24 Change OVOs project_id and user_id to StringField
6bc48ae Use to_utf8() instead of safe_encode() in convert_str()
7da93eb Replace manually changing CONF options
9809769 remove extra quota commit of manage snapshot
dc29f02 Add replication v2.1 test cases
1058f29 Move initiator_data access to helper methods
fca31fc Add ability to filter by volume_glance_metadata
01c6f68 Add Cheesecake APIs to policy.json file
3a9dc30 Add upload_image API role-based access policy
21e3368 Add snapshot_metadata operations to policy.json
e2cf841 Mark the v1 API as deprecated
4649d3d Fix Lun ID 0 in HPE 3PAR driver
394ea5a Added 'volume:get_transfer' to policy.json file
d0f7842 NetApp: Decouple capacity volume stats collection
c53ef88 NetApp: Managing cDOT LUN by UUID fails
591d58b VMware: Use _in_use() to check for in-use volumes
e4fb5aa Add devref for conditional updates
da4b17e Fix gate-cinder-tox-db-functional job
d060e8a Add ordering possibilities to conditional update
b7ce275 Add unmanage volume for RBD driver
5291406 Updated from global requirements
93490b2 VMware: Support for paraVirtual image adapter type
6425d9a Pass default executor to os-brick
cef3aa2 NetApp: E-Series driver using invalid host-types
fdca451 NetApp: Use Local Cache to Copy an Available Image
616a2bd Add provider_location to cloned volume
1f0f01a Failback will enable the host that has been frozen
427f0f0 Move and rename tempest_tests to cinder/tests/tempest
8c3abfd Tests: lower case all fake uuid constants
ed6d50b Tests: Fail if oslo.versionedobjects issues Invalid UUID warnings
b1eddc7 Removed extra line of code
1fe4ed1 Fix uuid warnings in various api contrib unit tests
93be776 Fix snapshot test uuid warnings in api.contrib
453e4a5 Fix volume test uuid warnings in api.contrib
358f78b Fix vol type/spec uuid warnings in api.contrib
3a914ba Fix qos_manage uuid warnings in api.contrib tests
be49c76 Fix CG uuid warnings in api.contrib unit tests
f167681 Fix admin_actions uuid warnings in api.contrib
c3cb40b Fix uuid warnings from api.contrib backup tests
dacf0df Fix uuid warnings from test_db_api unit tests
53cfde4 User messages API for error cases
db57966 Imported Translations from Zanata
3200dd4 Imported Translations from Zanata
7570482 Assisted snapshot: use Keystone Session with Nova Client
2482a54 Imported Translations from Zanata
30ac868 fix invalid uuid in emc extremio unit tests
4dd7cf6 fix invalid uuid warnings from test_cmd
caab3d9 Fix invalid uuids in tintri unit tests
9aeeffb Fix uuid warnings from db unit tests
9662f13 Fix invalid uuids in EMC scaleio unit tests
38d7045 Tests: Fix invalid UUIDs in EMC VNX tests
0fcef18 ibm flashsystem: Fixing hardcoded attribute
efac539 Fix 20 typos on devref
2b95f23 VMware: Remove TODO for port config option
c042a05 Remove XML API
0b6c68a Microversion of Bootable filter in cinder list
6226272 init_host offload to default to true
bb85920 Imported Translations from Zanata
dff49ad Updated from global requirements
960ce5a 3PAR: Remove metadata that tracks the instance id
82620e5 Updated from global requirements
689d94e Handle TFlow short comings in SF driver
7eb9580 Add failed_over detection to SolidFire driver
3f5e040 Implement replicate_volume & failover on SolidFire
5f5eede Deprecate nas_ip and change this to nas_host
b01ab1e Imported Translations from Zanata
cc16c4d Implement Cluster Pairing for SolidFire Driver
8b24dc6 Fix minor typos in the migration devref
ea19c4a Cleanup volume_attachment in case of reset-state attach_status
ce7dedf Updated from global requirements
1bdb400 Use messaging notifications transport instead of default
1323339 Fix doc and source documentation errors and warning
677eb1c RBD: delete snapshots if missing in the backend
75a6005 Coding style issue
30d2249 Remove support for 1.x scheduler RPC API
5559c39 Launchpad Answers no longer used
8ea9f67 Fix RPC and Object version pinning on API
7efb2c6 Fix service version pinning on start
e7f55be Fix doc build if git is absent
3e1f650 Updated from global requirements
d6c504e Tests: Define fake_constants as constants
7bf4542 Doc: Remove incorrect run_tests.sh documentation
41e4a9b fix invalid uuid warnings from test_quota
0a2384f Fix fake uuids in NetApp ESeries unit tests
038c206 Fix invalid uuids in sheepdog unit tests
74c8f65 Use utils.convert_str to convert HTTP header values
0bc4bb4 Remove deprecated ISERTgtAdm
5a0640e Set backup import volume id to real uuid
c164613 fix ConsistencyGroup volume_type_id field
d5504e7 Updated from global requirements
29bc118 Storwize: Multiple management IP not raising exceptions
320eaeb Fix ExtraSpecsOpsTestCase sub unit tests
5ed77d7 check per_volume_gigabytes quota for cinder extend
4b9df44 Imported Translations from Zanata
dbe761e Updated from global requirements
2513cef Make cinder-all binary deprecated
b906aee Add in-tree tempest tests
85d5238 Update SolidFire driver to store cluster info
12afec1 VMware: Reduce volume creation time
c6307f7 Fix typos in Cinder files
e01af62 Fix driver.failover_host call in manager.py
d21b934 Remove "patch mock to raise for invalid assert calls"
f7a3494 Add test for checking object compatibilities
ae3e892 Update the Administrator guide links
002c247 Update _usage_from_backup() method with versionedobjects
3d6f53e Dell SC: Updated to utilize provider_id
b4b0c96 Updated from global requirements
bac0d4e Sheepdog:make full use of all sheepdog nodes
5080405 Enable str2size() to handle long int for i386
eaeff0e Imported Translations from Zanata
437f5be Hacking: Ignore tools/ for C303
c5078ea Pylint: refactor ignored message lists
6664dac Brocade FCZM: Fix LOGOUT_PAGE reference
946d9e5 Fix volume retype failure with on-demand policy
05f39c1 Define context.roles with base class
5ab43c8 Fix invalid error message of volume create
924eb42 Stop using tpool with oslo_db
1180562 Huawei: Do not do split if replication pair abnormal
6531f39 Storwize: fix unmapped multi-attached volume failure
92be79e Cleanup DB schema after Mitaka
353127c Fix uuid warnings from api.v2 unit tests
13f9d42 Dell SC: Checking volume size in create_volume_from_snapshot
e3922a8 Fix uuid warnings from api.v1 unit tests
db9731a Fix api/v1 unit test inconsistencies
0e5e631 Add fake_cgsnapshot for unittest use
6cf0767 Fix typos in Cinder files
c20f335 http header value must be a string
41506ab python34 tests don't run without python3-dev
c8cff0a Re-enable image to volume with failure test
bc73049 Dell Eqlx: Cloning volume does not honor new size
7738c33 Storwize: fix deadlock and major lock granularity issue
57bde97 Fix for NexentaEdge jsonrpc url formatting
536b039 Support oversubscription for IBM Storwize/SVC
73b9976 Huawei: Fix getting admin_metadata
2adc8bb Imported Translations from Zanata
e2cf243 NexentaStor4 iSCSI: convert blocksize to str
314d4ec Conditionally restore display_name
5a3589d NexentaStor drivers: resize volume if cloned image is larger
4f1300c rtstool surrounds IPv6 addresses by brackets
da28ab6 Imported Translations from Zanata
ec320fd NexentaStor: Remove extra format string specifier
7641d8b Fix typos in Cinder files
9a8f9ee Imported Translations from Zanata
4dbb274 XtremIO handle errors in terminate_connection:
ee4dc38 Imported Translations from Zanata
128e6ef Check hasattr before calling get in SolidFire
bc0e1dc Huawei: Fix getting admin_metadata
9e72721 Remove unused utils.find_config function
b4af522 Sheepdog:optimization of connection error handling
f8f2f42 DRBD: extend volume if larger than snapshot
9d90a0a Imported Translations from Zanata
47d6957 Fix invalid uuids in rbd unit tests
4c81037 Dont query image metadata for empty volume list
91e4fe7 Remove entry_points from setup.cfg
11cf25e Don't suppress the path part of glance url
8a9e86c Fix meaningless quota exceeded exception info
5424566 Imported Translations from Zanata
edff6fb Don't disallow quota deletion if allocated < 0
f8ce884 Added more options while uploading volume as image
55b442c VMware: Support for non-default port
a9cfc46 Remove PyMySQL and psycopg2 from test-requirements.txt
ae388af Imported Translations from Zanata
dc70025 Provide user friendly message for FK failure
ab66b7c Fix misspelled word in help text
66c6844 Datera: resize volume if cloned image is larger
b550cec Fix Brcd lookup service to use defined southbound protocol
e940d3d Docs: Add genconfig to devref toc
ca88012 Updated doc string
f9ad35a Imported Translations from Zanata
c1e6472 Report 2.0 as supported version of RPC APIs
37c0556 Fix volume RPC API methods related to backups
c56ace1 Report 2.0 as supported version of RPC APIs
b6caf4c NexentaStor5 iscsi: resize volume if cloned image is larger
755253e Imported Translations from Zanata
ae8bb95 EMC VMAX - Operations and timeout issues
a6b4a84 Imported Translations from Zanata
16a1d80 Imported Translations from Zanata
8008489 Fix the format problem of LOG in failover_host
695266f Dell SC: Error results moved to json
d292fe1 Dell SC: create_cgsnapshot returning wrong structure
35ffa62 Re-add policy check for get_snapshot
fe0addf Enable functional test for volume creation
4e8ef51 Remove bandit.yaml in favor of defaults
e150db7 NexentaEdge: resize volume if cloned image is larger
7f17efc Storwize: Set multiattach property per pool
c8ba1a9 Fix volume RPC API methods related to backups
50e124e Imported Translations from Zanata
d542110 Imported Translations from Zanata
cf686d8 Fix race condition when toggling SP
43ec565 Dell SC: create_cgsnapshot returning wrong structure
dbf7495 Hitachi drivers: resize volume if cloned image is larger
6138aca Huawei: Record and check LUN wwn
c160116 Mark deprecated options correctly
691db5a SMBFS: fix parsing volume type extra specs and metadata
2c64b30 Update reno for stable/mitaka
38fc0b4 VMware: Bump driver version
a3a7fa8 VMware: Bump driver version
f9259e2 Imported Translations from Zanata
d5d7f6e VMware: Refactor unit tests
e784fcf Update .gitreview for stable/mitaka
f425bd5 Huawei: Record and check LUN wwn
ce26b4d VNX: Enhance migration start verification
5785c74 Fix race condition when toggling SP
ecf0a4b Alter wrong comment about param filters
e1775c2 XIO: refactor _send_cmd to reduce the redundant
fb68584 XtremIO handle errors in terminate_connection:
f9d2ba3 Fix py34 error of indexing 'dict_keys' object
3c6b224 Fix error message when running genconfig
2c083b4 typo: add a missing '}' in comment.
199162e Lazy load a project quotas's default values
4666091 SMBFS: fix parsing volume type extra specs and metadata
1787244 Run py34 tests with plain 'tox' command
d3b769f Add get_volume_stats for LoggingVolumeDriver
5e1af89 SMBFS: Fix initialize connection issues caused by in-use images
d7fead3 VMware: Unit test refactoring
6c27d05 Support https keystone CA checking in volume quotas
db8c916 Clarify glance_api_insecure help text
845abb9 Support IP lookup of target portal DNS name
50e1a1c Changed Nexenta default chunksize from 16k to 32k
58db994 Removed unreachable code
5a35c8a Test: use assert_has_calls() instead
df54190 Remove extra get_active_zoneset query from Brocade CLI
376bfea VNX: Add 'None' check in parsing provider location
3aa3238 Use the catalog to retrieve glance_api_servers
a7adc35 Cleanup orphaned code from image and manager
54bc595 Cleanup orphaned code from brick LVM
Diffstat (except docs and test files)
-------------------------------------
.gitignore | 6 +-
.gitreview | 1 +
HACKING.rst | 4 +-
api-ref/source/conf.py | 233 +
api-ref/source/index.rst | 18 +
api-ref/source/v1/index.rst | 13 +
api-ref/source/v1/os-quota-sets-v1.inc | 402 +
api-ref/source/v1/parameters.yaml | 642 +
.../v1/samples/quotas-defaults-show-response.json | 17 +
.../v1/samples/quotas-defaults-show-response.xml | 15 +
.../source/v1/samples/quotas-show-response.json | 17 +
api-ref/source/v1/samples/quotas-show-response.xml | 15 +
.../source/v1/samples/quotas-update-request.json | 5 +
.../source/v1/samples/quotas-update-request.xml | 4 +
.../source/v1/samples/quotas-update-response.json | 16 +
.../source/v1/samples/quotas-update-response.xml | 15 +
.../source/v1/samples/snapshot-create-request.json | 8 +
.../source/v1/samples/snapshot-create-request.xml | 6 +
.../samples/snapshot-metadata-show-response.json | 16 +
.../v1/samples/snapshot-metadata-show-response.xml | 13 +
.../samples/snapshot-metadata-update-request.json | 5 +
.../samples/snapshot-metadata-update-request.xml | 4 +
.../samples/snapshot-metadata-update-response.json | 5 +
.../samples/snapshot-metadata-update-response.xml | 4 +
.../source/v1/samples/snapshot-show-response.json | 11 +
.../source/v1/samples/snapshot-show-response.xml | 9 +
.../source/v1/samples/snapshots-list-response.json | 26 +
.../source/v1/samples/snapshots-list-response.xml | 21 +
.../v1/samples/user-quotas-delete-response.json | 0
.../samples/user-quotas-show-detail-response.json | 64 +
.../v1/samples/user-quotas-show-response.json | 17 +
.../v1/samples/user-quotas-show-response.xml | 15 +
.../v1/samples/user-quotas-update-request.json | 6 +
.../v1/samples/user-quotas-update-request.xml | 5 +
.../v1/samples/user-quotas-update-response.json | 16 +
.../v1/samples/user-quotas-update-response.xml | 15 +
.../source/v1/samples/version-show-response.json | 28 +
.../source/v1/samples/versions-list-response.json | 26 +
.../source/v1/samples/volume-create-request.json | 18 +
.../source/v1/samples/volume-create-request.xml | 11 +
.../source/v1/samples/volume-show-response.json | 27 +
api-ref/source/v1/samples/volume-show-response.xml | 15 +
.../v1/samples/volume-type-create-request.json | 8 +
.../v1/samples/volume-type-create-request.xml | 7 +
.../v1/samples/volume-type-show-response.json | 9 +
.../v1/samples/volume-type-show-response.xml | 8 +
.../v1/samples/volume-types-list-response.json | 16 +
.../v1/samples/volume-types-list-response.xml | 11 +
.../source/v1/samples/volumes-list-response.json | 41 +
.../source/v1/samples/volumes-list-response.xml | 25 +
api-ref/source/v1/volumes-v1-snapshots.inc | 188 +
api-ref/source/v1/volumes-v1-types.inc | 218 +
api-ref/source/v1/volumes-v1-versions.inc | 54 +
api-ref/source/v1/volumes-v1-volumes.inc | 234 +
api-ref/source/v2/api-versions.inc | 32 +
api-ref/source/v2/capabilities-v2.inc | 48 +
api-ref/source/v2/consistencygroups-v2.inc | 267 +
api-ref/source/v2/ext-backups-actions-v2.inc | 38 +
api-ref/source/v2/ext-backups.inc | 276 +
api-ref/source/v2/index.rst | 28 +
api-ref/source/v2/limits.inc | 57 +
api-ref/source/v2/os-cgsnapshots-v2.inc | 179 +
api-ref/source/v2/os-vol-image-meta-v2.inc | 46 +
api-ref/source/v2/os-vol-pool-v2.inc | 50 +
api-ref/source/v2/os-vol-transfer-v2.inc | 217 +
api-ref/source/v2/parameters.yaml | 1620 +++
api-ref/source/v2/qos-specs-v2-qos-specs.inc | 315 +
api-ref/source/v2/quota-sets.inc | 407 +
.../v2/samples/backend-capabilities-response.json | 33 +
.../source/v2/samples/backup-create-request.json | 9 +
.../source/v2/samples/backup-create-response.json | 16 +
.../v2/samples/backup-force-delete-request.json | 3 +
.../v2/samples/backup-record-export-response.json | 6 +
.../v2/samples/backup-record-import-request.json | 6 +
.../v2/samples/backup-record-import-response.json | 16 +
.../source/v2/samples/backup-restore-request.json | 6 +
.../source/v2/samples/backup-restore-response.json | 6 +
.../source/v2/samples/backup-show-response.json | 27 +
.../v2/samples/backups-list-detailed-response.json | 54 +
.../source/v2/samples/backups-list-response.json | 32 +
.../v2/samples/cgsnapshots-create-request.json | 10 +
.../v2/samples/cgsnapshots-create-response.json | 6 +
.../cgsnapshots-list-detailed-response.json | 20 +
.../v2/samples/cgsnapshots-list-response.json | 12 +
.../v2/samples/cgsnapshots-show-response.json | 10 +
.../consistency-group-create-from-src-request.json | 11 +
.../samples/consistency-group-create-request.json | 8 +
.../samples/consistency-group-create-response.json | 11 +
.../samples/consistency-group-delete-request.json | 5 +
.../samples/consistency-group-show-response.json | 13 +
.../v2/samples/consistency-group-show-response.xml | 14 +
.../samples/consistency-group-update-request.json | 8 +
.../consistency-groups-list-detailed-response.json | 26 +
.../consistency-groups-list-detailed-response.xml | 25 +
.../samples/consistency-groups-list-response.json | 12 +
.../v2/samples/extensions-list-response.json | 212 +
.../source/v2/samples/extensions-list-response.xml | 165 +
api-ref/source/v2/samples/host-attach-request.json | 5 +
.../v2/samples/image-metadata-show-request.json | 18 +
.../v2/samples/image-metadata-show-response.json | 33 +
.../source/v2/samples/limits-show-response.json | 17 +
api-ref/source/v2/samples/limits-show-response.xml | 17 +
.../v2/samples/pools-list-detailed-response.json | 30 +
api-ref/source/v2/samples/qos-create-request.json | 7 +
api-ref/source/v2/samples/qos-create-request.xml | 2 +
api-ref/source/v2/samples/qos-create-response.json | 21 +
api-ref/source/v2/samples/qos-create-response.xml | 9 +
api-ref/source/v2/samples/qos-list-response.json | 22 +
api-ref/source/v2/samples/qos-list-response.xml | 19 +
api-ref/source/v2/samples/qos-show-response.json | 21 +
api-ref/source/v2/samples/qos-show-response.xml | 11 +
api-ref/source/v2/samples/qos-unset-request.json | 5 +
api-ref/source/v2/samples/qos-unset-request.xml | 4 +
api-ref/source/v2/samples/qos-unset-response.json | 0
api-ref/source/v2/samples/qos-update-request.json | 5 +
api-ref/source/v2/samples/qos-update-request.xml | 2 +
api-ref/source/v2/samples/qos-update-response.json | 5 +
api-ref/source/v2/samples/qos-update-response.xml | 4 +
api-ref/source/v2/samples/qos_show_response.json | 9 +
api-ref/source/v2/samples/qos_show_response.xml | 6 +
.../v2/samples/quotas-defaults-show-response.xml | 15 +
.../source/v2/samples/quotas-delete-response.json | 0
.../v2/samples/quotas-show-defaults-response.json | 7 +
.../v2/samples/quotas-show-defaults-response.xml | 6 +
.../source/v2/samples/quotas-show-response.json | 7 +
api-ref/source/v2/samples/quotas-show-response.xml | 6 +
.../source/v2/samples/quotas-update-request.json | 5 +
.../source/v2/samples/quotas-update-request.xml | 4 +
.../source/v2/samples/quotas-update-response.json | 5 +
.../source/v2/samples/quotas-update-response.xml | 6 +
.../quotas-user-show-detailed-response.json | 19 +
.../v2/samples/quotas-user-show-response.json | 7 +
.../v2/samples/quotas-user-show-response.xml | 6 +
.../source/v2/samples/snapshot-create-request.json | 8 +
.../source/v2/samples/snapshot-create-request.xml | 5 +
.../v2/samples/snapshot-create-response.json | 12 +
.../source/v2/samples/snapshot-create-response.xml | 7 +
.../samples/snapshot-metadata-show-response.json | 5 +
.../v2/samples/snapshot-metadata-show-response.xml | 4 +
.../samples/snapshot-metadata-update-request.json | 5 +
.../samples/snapshot-metadata-update-request.xml | 4 +
.../samples/snapshot-metadata-update-response.json | 5 +
.../samples/snapshot-metadata-update-response.xml | 4 +
.../source/v2/samples/snapshot-show-response.json | 14 +
.../source/v2/samples/snapshot-show-response.xml | 11 +
.../source/v2/samples/snapshot-update-request.json | 6 +
.../source/v2/samples/snapshot-update-request.xml | 4 +
.../v2/samples/snapshot-update-response.json | 11 +
.../source/v2/samples/snapshot-update-response.xml | 14 +
.../samples/snapshots-list-detailed-response.json | 18 +
.../samples/snapshots-list-detailed-response.xml | 16 +
.../source/v2/samples/snapshots-list-response.json | 16 +
.../source/v2/samples/snapshots-list-response.xml | 13 +
.../v2/samples/user-quotas-show-response.json | 17 +
.../v2/samples/user-quotas-show-response.xml | 15 +
.../v2/samples/user-quotas-update-request.json | 6 +
.../v2/samples/user-quotas-update-request.xml | 5 +
.../v2/samples/user-quotas-update-response.json | 16 +
.../v2/samples/user-quotas-update-response.xml | 15 +
.../source/v2/samples/version-show-response.json | 33 +
.../source/v2/samples/version-show-response.xml | 17 +
.../v2/samples/version-v2-show-response.json | 44 +
api-ref/source/v2/samples/versions-response.json | 76 +
api-ref/source/v2/samples/versions-response.xml | 25 +
.../source/v2/samples/volume-attach-request.json | 6 +
.../source/v2/samples/volume-create-request.json | 22 +
.../source/v2/samples/volume-create-request.xml | 5 +
.../source/v2/samples/volume-create-response.json | 34 +
.../source/v2/samples/volume-create-response.xml | 11 +
.../source/v2/samples/volume-extend-request.json | 5 +
.../v2/samples/volume-force-detach-request.json | 8 +
.../samples/volume-image-metadata-set-request.json | 10 +
.../volume-image-metadata-unset-request.json | 5 +
.../source/v2/samples/volume-manage-request.json | 18 +
.../source/v2/samples/volume-manage-response.json | 33 +
.../v2/samples/volume-metadata-create-request.json | 5 +
.../samples/volume-metadata-create-response.json | 5 +
.../v2/samples/volume-metadata-show-response.json | 3 +
.../v2/samples/volume-metadata-show-response.xml | 2 +
.../v2/samples/volume-metadata-update-request.json | 5 +
.../v2/samples/volume-metadata-update-request.xml | 4 +
.../samples/volume-metadata-update-response.json | 5 +
.../v2/samples/volume-metadata-update-response.xml | 4 +
.../source/v2/samples/volume-show-response.json | 33 +
api-ref/source/v2/samples/volume-show-response.xml | 19 +
.../v2/samples/volume-status-reset-request.json | 7 +
.../v2/samples/volume-transfer-accept-request.json | 5 +
.../samples/volume-transfer-accept-response.json | 17 +
.../v2/samples/volume-transfer-create-request.json | 6 +
.../samples/volume-transfer-create-response.json | 19 +
.../v2/samples/volume-transfer-show-response.json | 18 +
.../volume-transfers-list-detailed-response.json | 36 +
.../v2/samples/volume-transfers-list-response.json | 34 +
.../v2/samples/volume-type-access-add-request.json | 5 +
.../v2/samples/volume-type-access-add-request.xml | 4 +
.../samples/volume-type-access-delete-request.json | 5 +
.../samples/volume-type-access-delete-request.xml | 4 +
.../samples/volume-type-access-list-response.json | 6 +
.../v2/samples/volume-type-create-request.json | 10 +
.../v2/samples/volume-type-create-request.xml | 6 +
.../v2/samples/volume-type-show-request.json | 9 +
.../source/v2/samples/volume-type-show-request.xml | 8 +
.../v2/samples/volume-type-show-response.json | 11 +
.../v2/samples/volume-type-show-response.xml | 9 +
.../v2/samples/volume-type-update-request.json | 10 +
.../v2/samples/volume-type-update-request.xml | 6 +
.../v2/samples/volume-types-list-response.json | 16 +
.../v2/samples/volume-types-list-response.xml | 11 +
.../source/v2/samples/volume-unmanage-request.json | 3 +
.../source/v2/samples/volume-update-request.json | 6 +
.../source/v2/samples/volume-update-request.xml | 4 +
.../source/v2/samples/volume-update-response.json | 36 +
.../source/v2/samples/volume-update-response.xml | 13 +
.../v2/samples/volumes-list-detailed-response.json | 102 +
.../v2/samples/volumes-list-detailed-response.xml | 31 +
.../source/v2/samples/volumes-list-response.json | 32 +
.../source/v2/samples/volumes-list-response.xml | 12 +
api-ref/source/v2/volume-manage.inc | 50 +
api-ref/source/v2/volume-type-access.inc | 103 +
api-ref/source/v2/volumes-v2-extensions.inc | 52 +
api-ref/source/v2/volumes-v2-snapshots.inc | 359 +
api-ref/source/v2/volumes-v2-types.inc | 273 +
api-ref/source/v2/volumes-v2-versions.inc | 67 +
api-ref/source/v2/volumes-v2-volumes-actions.inc | 269 +
api-ref/source/v2/volumes-v2-volumes.inc | 570 +
cinder/api/common.py | 98 +-
cinder/api/contrib/admin_actions.py | 58 +-
cinder/api/contrib/availability_zones.py | 22 -
cinder/api/contrib/backups.py | 163 +-
cinder/api/contrib/capabilities.py | 5 -
cinder/api/contrib/cgsnapshots.py | 88 +-
cinder/api/contrib/consistencygroups.py | 213 +-
cinder/api/contrib/extended_services.py | 2 -
cinder/api/contrib/extended_snapshot_attributes.py | 35 -
cinder/api/contrib/hosts.py | 78 +-
cinder/api/contrib/image_create.py | 1 -
cinder/api/contrib/qos_specs_manage.py | 144 +-
cinder/api/contrib/quota_classes.py | 18 -
cinder/api/contrib/quotas.py | 52 +-
cinder/api/contrib/resource_common_manage.py | 56 +
cinder/api/contrib/scheduler_hints.py | 5 -
cinder/api/contrib/scheduler_stats.py | 9 +-
cinder/api/contrib/services.py | 72 +-
cinder/api/contrib/snapshot_actions.py | 12 +-
cinder/api/contrib/snapshot_manage.py | 95 +-
cinder/api/contrib/snapshot_unmanage.py | 7 +-
cinder/api/contrib/types_extra_specs.py | 59 +-
cinder/api/contrib/types_manage.py | 14 +-
cinder/api/contrib/used_limits.py | 1 -
cinder/api/contrib/volume_actions.py | 161 +-
cinder/api/contrib/volume_encryption_metadata.py | 11 -
cinder/api/contrib/volume_host_attribute.py | 32 -
cinder/api/contrib/volume_image_metadata.py | 75 +-
cinder/api/contrib/volume_manage.py | 119 +-
cinder/api/contrib/volume_mig_status_attribute.py | 32 -
cinder/api/contrib/volume_tenant_attribute.py | 29 -
cinder/api/contrib/volume_transfer.py | 98 +-
cinder/api/contrib/volume_type_access.py | 74 +-
cinder/api/contrib/volume_type_encryption.py | 27 +-
cinder/api/contrib/volume_unmanage.py | 13 +-
cinder/api/extensions.py | 72 +-
cinder/api/middleware/auth.py | 38 +-
cinder/api/middleware/sizelimit.py | 4 +-
cinder/api/openstack/__init__.py | 4 +-
cinder/api/openstack/api_version_request.py | 25 +-
cinder/api/openstack/rest_api_version_history.rst | 162 +
cinder/api/openstack/wsgi.py | 346 +-
cinder/api/schemas/atom-link.rng | 141 -
cinder/api/schemas/v1.1/extension.rng | 11 -
cinder/api/schemas/v1.1/extensions.rng | 6 -
cinder/api/schemas/v1.1/limits.rng | 28 -
cinder/api/schemas/v1.1/metadata.rng | 9 -
cinder/api/schemas/v1.1/qos_association.rng | 8 -
cinder/api/schemas/v1.1/qos_associations.rng | 5 -
cinder/api/schemas/v1.1/qos_spec.rng | 16 -
cinder/api/schemas/v1.1/qos_specs.rng | 5 -
cinder/api/urlmap.py | 10 +-
cinder/api/v1/limits.py | 30 -
cinder/api/v1/router.py | 5 -
cinder/api/v1/snapshot_metadata.py | 40 +-
cinder/api/v1/snapshots.py | 67 +-
cinder/api/v1/types.py | 37 +-
cinder/api/v1/volume_metadata.py | 40 +-
cinder/api/v1/volumes.py | 170 +-
cinder/api/v2/limits.py | 30 -
cinder/api/v2/router.py | 5 -
cinder/api/v2/snapshot_metadata.py | 40 +-
cinder/api/v2/snapshots.py | 73 +-
cinder/api/v2/types.py | 38 +-
cinder/api/v2/views/volumes.py | 4 -
cinder/api/v2/volume_metadata.py | 70 +-
cinder/api/v2/volumes.py | 229 +-
cinder/api/v3/backups.py | 56 +
cinder/api/v3/clusters.py | 132 +
cinder/api/v3/consistencygroups.py | 89 +
cinder/api/v3/group_snapshots.py | 146 +
cinder/api/v3/group_specs.py | 154 +
cinder/api/v3/group_types.py | 269 +
cinder/api/v3/groups.py | 290 +
cinder/api/v3/messages.py | 112 +
cinder/api/v3/router.py | 90 +-
cinder/api/v3/snapshot_manage.py | 45 +
cinder/api/v3/snapshots.py | 30 +
cinder/api/v3/views/__init__.py | 0
cinder/api/v3/views/clusters.py | 63 +
cinder/api/v3/views/group_snapshots.py | 64 +
cinder/api/v3/views/group_types.py | 43 +
cinder/api/v3/views/groups.py | 81 +
cinder/api/v3/views/messages.py | 69 +
cinder/api/v3/views/snapshots.py | 33 +
cinder/api/v3/views/volumes.py | 40 +
cinder/api/v3/volume_manage.py | 45 +
cinder/api/v3/volume_metadata.py | 80 +
cinder/api/v3/volumes.py | 247 +
cinder/api/versions.py | 164 +-
cinder/api/views/backups.py | 5 -
cinder/api/views/cgsnapshots.py | 5 -
cinder/api/views/consistencygroups.py | 5 -
cinder/api/views/manageable_snapshots.py | 55 +
cinder/api/views/manageable_volumes.py | 53 +
cinder/api/views/qos_specs.py | 20 +-
cinder/api/views/snapshots.py | 5 -
cinder/api/views/transfers.py | 5 -
cinder/api/xmlutil.py | 968 --
cinder/backup/api.py | 107 +-
cinder/backup/chunkeddriver.py | 4 +-
cinder/backup/driver.py | 42 +-
cinder/backup/drivers/ceph.py | 12 +-
cinder/backup/drivers/glusterfs.py | 2 +
cinder/backup/drivers/google.py | 17 +-
cinder/backup/drivers/nfs.py | 2 +
cinder/backup/drivers/posix.py | 2 +
cinder/backup/drivers/swift.py | 30 +-
cinder/backup/drivers/tsm.py | 4 +-
cinder/backup/manager.py | 213 +-
cinder/backup/rpcapi.py | 23 +-
cinder/brick/local_dev/lvm.py | 104 +-
cinder/cmd/all.py | 21 +-
cinder/cmd/backup.py | 3 +
cinder/cmd/manage.py | 185 +-
cinder/cmd/rtstool.py | 15 +-
cinder/cmd/volume.py | 37 +-
cinder/cmd/volume_usage_audit.py | 36 +-
cinder/common/config.py | 38 +-
cinder/common/constants.py | 8 +
cinder/compute/nova.py | 32 +-
cinder/config/cinder-config-generator.conf | 1 +
cinder/config/generate_cinder_opts.py | 13 +-
cinder/consistencygroup/api.py | 277 +-
cinder/context.py | 55 +-
cinder/coordination.py | 9 +-
cinder/db/api.py | 675 +-
cinder/db/migration.py | 2 +-
cinder/db/sqlalchemy/api.py | 2328 +++-
.../migrate_repo/versions/001_cinder_init.py | 258 -
.../migrate_repo/versions/002_quota_class.py | 89 -
.../migrate_repo/versions/003_glance_metadata.py | 55 -
.../versions/004_volume_type_to_uuid.py | 81 -
.../versions/005_add_source_volume_column.py | 25 -
.../006_snapshots_add_provider_location.py | 25 -
.../versions/007_add_volume_snapshot_fk.py | 27 -
.../migrate_repo/versions/008_add_backup.py | 49 -
.../versions/009_add_snapshot_metadata_table.py | 38 -
.../versions/010_add_transfers_table.py | 41 -
.../versions/011_add_bootable_column.py | 33 -
.../versions/012_add_attach_host_column.py | 25 -
.../versions/013_add_provider_geometry_column.py | 25 -
.../migrate_repo/versions/014_add_name_id.py | 25 -
.../versions/015_drop_migrations_table.py | 23 -
.../migrate_repo/versions/016_drop_sm_tables.py | 29 -
.../versions/017_add_encryption_information.py | 60 -
.../migrate_repo/versions/018_add_qos_specs.py | 48 -
.../versions/019_add_migration_status.py | 26 -
.../020_add_volume_admin_metadata_table.py | 39 -
.../versions/021_add_default_quota_class.py | 66 -
.../versions/022_add_reason_column_to_service.py | 23 -
.../versions/023_add_expire_reservations_index.py | 38 -
.../versions/024_add_replication_support.py | 34 -
.../versions/025_add_consistencygroup.py | 81 -
.../026_add_consistencygroup_quota_class.py | 52 -
.../migrate_repo/versions/027_placeholder.py | 19 -
.../migrate_repo/versions/028_placeholder.py | 19 -
.../migrate_repo/versions/029_placeholder.py | 19 -
.../migrate_repo/versions/030_placeholder.py | 19 -
.../migrate_repo/versions/031_placeholder.py | 19 -
.../versions/032_add_volume_type_projects.py | 41 -
.../versions/033_add_encryption_unique_key.py | 95 -
.../versions/034_volume_type_add_desc_column.py | 25 -
.../versions/035_add_provider_id_column.py | 25 -
.../036_add_provider_id_column_to_snapshots.py | 25 -
...dd_cgsnapshot_id_column_to_consistencygroups.py | 26 -
.../038_add_driver_initiator_data_table.py | 36 -
.../versions/039_add_parent_id_to_backups.py | 28 -
.../versions/040_add_volume_attachment.py | 88 -
.../041_add_modified_at_column_to_service.py | 21 -
.../migrate_repo/versions/042_placeholder.py | 22 -
.../migrate_repo/versions/043_placeholder.py | 22 -
.../migrate_repo/versions/044_placeholder.py | 22 -
.../migrate_repo/versions/045_placeholder.py | 22 -
.../migrate_repo/versions/046_cinder_init.py | 574 +
.../migrate_repo/versions/046_placeholder.py | 22 -
...73_drop_available_versions_and_iscsi_targets.py | 25 +
.../migrate_repo/versions/074_add_message_table.py | 41 +
.../versions/075_add_cluster_and_fields.py | 58 +
.../migrate_repo/versions/076_add_workers_table.py | 52 +
.../077_add_group_types_and_group_specs_table.py | 75 +
...d_groups_and_group_volume_type_mapping_table.py | 97 +
.../versions/079_add_group_snapshots.py | 63 +
cinder/db/sqlalchemy/models.py | 344 +-
cinder/exception.py | 230 +-
cinder/group/__init__.py | 27 +
cinder/group/api.py | 843 ++
cinder/hacking/checks.py | 29 +-
cinder/image/cache.py | 8 +-
cinder/image/glance.py | 86 +-
cinder/image/image_utils.py | 46 +-
cinder/interface/__init__.py | 37 +
cinder/interface/backup_chunked_driver.py | 79 +
cinder/interface/backup_driver.py | 111 +
cinder/interface/backup_verify_driver.py | 38 +
cinder/interface/base.py | 105 +
cinder/interface/fczm_driver.py | 78 +
cinder/interface/util.py | 79 +
cinder/interface/volume_consistencygroup_driver.py | 231 +
cinder/interface/volume_driver.py | 256 +
cinder/interface/volume_management_driver.py | 92 +
cinder/interface/volume_snapshot_driver.py | 57 +
.../interface/volume_snapshotmanagement_driver.py | 80 +
cinder/keymgr/__init__.py | 63 +-
cinder/keymgr/barbican.py | 338 -
cinder/keymgr/conf_key_mgr.py | 97 +-
cinder/keymgr/key.py | 90 -
cinder/keymgr/key_mgr.py | 113 -
cinder/keymgr/not_implemented_key_mgr.py | 40 -
cinder/locale/cinder-log-error.pot | 4064 -------
cinder/locale/cinder-log-info.pot | 4195 -------
cinder/locale/cinder-log-warning.pot | 2427 ----
cinder/locale/cinder.pot | 11538 ------------------
cinder/locale/cs/LC_MESSAGES/cinder-log-error.po | 235 +-
cinder/locale/cs/LC_MESSAGES/cinder-log-info.po | 397 +-
cinder/locale/cs/LC_MESSAGES/cinder-log-warning.po | 453 +-
cinder/locale/cs/LC_MESSAGES/cinder.po | 720 +-
cinder/locale/de/LC_MESSAGES/cinder.po | 4791 +++++---
cinder/locale/es/LC_MESSAGES/cinder.po | 3037 ++++-
cinder/locale/fr/LC_MESSAGES/cinder.po | 3044 ++++-
cinder/locale/it/LC_MESSAGES/cinder-log-error.po | 1127 +-
cinder/locale/it/LC_MESSAGES/cinder-log-info.po | 3387 ++++++
cinder/locale/it/LC_MESSAGES/cinder.po | 885 +-
cinder/locale/ja/LC_MESSAGES/cinder.po | 11693 +++++++++++++++++++
.../locale/ko_KR/LC_MESSAGES/cinder-log-error.po | 3263 ++++++
cinder/locale/ko_KR/LC_MESSAGES/cinder-log-info.po | 3218 +++++
cinder/locale/ko_KR/LC_MESSAGES/cinder.po | 2770 ++++-
cinder/locale/pt_BR/LC_MESSAGES/cinder.po | 2867 ++++-
cinder/locale/ru/LC_MESSAGES/cinder.po | 2793 ++++-
.../locale/tr_TR/LC_MESSAGES/cinder-log-error.po | 184 +-
cinder/locale/tr_TR/LC_MESSAGES/cinder-log-info.po | 283 +-
.../locale/tr_TR/LC_MESSAGES/cinder-log-warning.po | 400 +-
cinder/locale/tr_TR/LC_MESSAGES/cinder.po | 709 +-
cinder/locale/zh_CN/LC_MESSAGES/cinder.po | 1811 +--
cinder/locale/zh_TW/LC_MESSAGES/cinder.po | 796 +-
cinder/manager.py | 25 +-
cinder/message/__init__.py | 0
cinder/message/api.py | 83 +
cinder/message/defined_messages.py | 44 +
cinder/message/resource_types.py | 15 +
cinder/objects/__init__.py | 6 +
cinder/objects/backup.py | 27 +-
cinder/objects/base.py | 411 +-
cinder/objects/cgsnapshot.py | 36 +-
cinder/objects/cluster.py | 186 +
cinder/objects/consistencygroup.py | 120 +-
cinder/objects/fields.py | 72 +-
cinder/objects/group.py | 197 +
cinder/objects/group_snapshot.py | 152 +
cinder/objects/group_type.py | 121 +
cinder/objects/qos_specs.py | 202 +
cinder/objects/request_spec.py | 127 +
cinder/objects/service.py | 122 +-
cinder/objects/snapshot.py | 82 +-
cinder/objects/volume.py | 149 +-
cinder/objects/volume_attachment.py | 33 +-
cinder/objects/volume_type.py | 74 +-
cinder/opts.py | 61 +-
cinder/policy.py | 13 +-
cinder/quota.py | 51 +-
cinder/quota_utils.py | 151 +-
cinder/replication/api.py | 4 -
cinder/rpc.py | 85 +-
cinder/scheduler/base_filter.py | 57 +-
cinder/scheduler/driver.py | 22 +-
cinder/scheduler/evaluator/evaluator.py | 2 +-
cinder/scheduler/filter_scheduler.py | 244 +-
cinder/scheduler/filters/affinity_filter.py | 3 -
cinder/scheduler/filters/capabilities_filter.py | 37 +-
cinder/scheduler/filters/capacity_filter.py | 15 +-
cinder/scheduler/filters/extra_specs_ops.py | 5 +
.../scheduler/filters/instance_locality_filter.py | 2 +
cinder/scheduler/flows/create_volume.py | 21 +-
cinder/scheduler/host_manager.py | 97 +-
cinder/scheduler/manager.py | 152 +-
cinder/scheduler/rpcapi.py | 165 +-
cinder/scheduler/weights/__init__.py | 5 +-
cinder/scheduler/weights/capacity.py | 16 +-
cinder/scheduler/weights/goodness.py | 15 +-
cinder/scheduler/weights/stochastic.py | 82 +
cinder/scheduler/weights/volume_number.py | 5 +-
cinder/service.py | 171 +-
cinder/test.py | 145 +-
cinder/testing/README.rst | 35 -
.../tempest/api/volume/test_consistencygroups.py | 287 +
.../tempest/api/volume/test_volume_placeholder.py | 25 +
.../tempest/api/volume/test_volume_unicode.py | 60 +
.../tempest/services/consistencygroups_client.py | 192 +
.../unit/api/contrib/test_availability_zones.py | 35 +-
.../unit/api/contrib/test_consistencygroups.py | 799 +-
.../contrib/test_extended_snapshot_attributes.py | 42 +-
.../unit/api/contrib/test_qos_specs_manage.py | 555 +-
.../unit/api/contrib/test_snapshot_actions.py | 47 +-
.../unit/api/contrib/test_snapshot_unmanage.py | 27 +-
.../unit/api/contrib/test_types_extra_specs.py | 177 +-
.../api/contrib/test_volume_encryption_metadata.py | 97 +-
.../unit/api/contrib/test_volume_host_attribute.py | 62 +-
.../unit/api/contrib/test_volume_image_metadata.py | 196 +-
.../test_volume_migration_status_attribute.py | 78 +-
.../api/contrib/test_volume_tenant_attribute.py | 56 +-
.../unit/api/contrib/test_volume_type_access.py | 192 +-
.../api/contrib/test_volume_type_encryption.py | 110 +-
.../unit/api/openstack/test_api_version_request.py | 18 +-
.../unit/backup/drivers/test_backup_driver_base.py | 424 +
.../unit/backup/drivers/test_backup_google.py | 582 +
.../unit/consistencygroup/fake_consistencygroup.py | 50 +
.../unit/keymgr/test_not_implemented_key_mgr.py | 50 -
.../scheduler/test_allocated_capacity_weigher.py | 18 +-
.../scheduler/test_stochastic_weight_handler.py | 67 +
.../unit/scheduler/test_volume_number_weigher.py | 29 +-
.../unit/test_huawei_drivers_compatibility.py | 65 -
.../unit/volume/drivers/dell/test_dellscapi.py | 7623 ++++++++++++
.../unit/volume/drivers/emc/scaleio/__init__.py | 3 +-
.../emc/scaleio/test_attach_detach_volume.py | 45 +
.../drivers/emc/scaleio/test_consistencygroups.py | 34 +-
.../emc/scaleio/test_create_cloned_volume.py | 3 +-
.../drivers/emc/scaleio/test_create_snapshot.py | 3 +-
.../drivers/emc/scaleio/test_create_volume.py | 23 +
.../scaleio/test_create_volume_from_snapshot.py | 2 +-
.../drivers/emc/scaleio/test_delete_snapshot.py | 7 +-
.../drivers/emc/scaleio/test_delete_volume.py | 3 +-
.../drivers/emc/scaleio/test_extend_volume.py | 7 +-
.../emc/scaleio/test_initialize_connection.py | 67 +-
.../drivers/emc/scaleio/test_manage_existing.py | 31 +-
.../emc/scaleio/test_manage_existing_snapshot.py | 154 +
.../unit/volume/drivers/emc/scaleio/test_misc.py | 57 +-
.../unit/volume/drivers/emc/test_emc_xtremio.py | 1074 ++
.../unit/volume/drivers/emc/vnx/fake_exception.py | 172 +
.../unit/volume/drivers/emc/vnx/fake_storops.py | 76 +
.../unit/volume/drivers/emc/vnx/mocked_cinder.yaml | 445 +
.../unit/volume/drivers/emc/vnx/mocked_vnx.yaml | 2029 ++++
.../unit/volume/drivers/emc/vnx/test_adapter.py | 1315 +++
.../unit/volume/drivers/emc/vnx/test_client.py | 465 +
.../unit/volume/drivers/emc/vnx/test_common.py | 297 +
.../unit/volume/drivers/emc/vnx/test_driver.py | 73 +
.../unit/volume/drivers/emc/vnx/test_res_mock.py | 90 +
.../unit/volume/drivers/emc/vnx/test_res_mock.yaml | 59 +
.../unit/volume/drivers/emc/vnx/test_taskflows.py | 181 +
.../unit/volume/drivers/emc/vnx/test_utils.py | 174 +
.../unit/volume/drivers/fusionstorage/__init__.py | 0
.../volume/drivers/fusionstorage/test_dsware.py | 771 ++
.../drivers/fusionstorage/test_fspythonapi.py | 447 +
.../drivers/hitachi/test_hitachi_hbsd_horcm_fc.py | 1034 ++
.../drivers/hitachi/test_hitachi_hbsd_snm2_fc.py | 618 +
.../hitachi/test_hitachi_hbsd_snm2_iscsi.py | 607 +
.../drivers/hitachi/test_hitachi_hnas_backend.py | 877 ++
.../drivers/hitachi/test_hitachi_hnas_iscsi.py | 592 +
.../drivers/hitachi/test_hitachi_hnas_nfs.py | 586 +
.../drivers/hitachi/test_hitachi_hnas_utils.py | 327 +
.../volume/drivers/hpe/fake_hpe_3par_client.py | 29 +
.../drivers/hpe/fake_hpe_client_exceptions.py | 119 +
.../volume/drivers/hpe/fake_hpe_lefthand_client.py | 29 +
.../unit/volume/drivers/hpe/test_hpe_xp_fc.py | 801 ++
.../unit/volume/drivers/hpe/test_hpelefthand.py | 3236 +++++
.../volume/drivers/huawei/test_huawei_drivers.py | 4615 ++++++++
.../huawei/test_huawei_drivers_compatibility.py | 65 +
.../volume/drivers/ibm/test_ibm_flashsystem.py | 1365 +++
.../drivers/ibm/test_ibm_flashsystem_iscsi.py | 421 +
.../unit/volume/drivers/ibm/test_ibm_storage.py | 926 ++
.../unit/volume/drivers/ibm/test_storwize_svc.py | 5487 +++++++++
.../unit/volume/drivers/infortrend/__init__.py | 0
.../drivers/infortrend/test_infortrend_cli.py | 2309 ++++
.../drivers/infortrend/test_infortrend_common.py | 2073 ++++
.../drivers/netapp/dataontap/client/fakes.py | 550 +-
.../drivers/netapp/dataontap/client/test_api.py | 62 +-
.../netapp/dataontap/client/test_client_7mode.py | 56 +-
.../netapp/dataontap/client/test_client_base.py | 49 +
.../netapp/dataontap/client/test_client_cmode.py | 2419 +++-
.../unit/volume/drivers/netapp/dataontap/fakes.py | 178 +-
.../dataontap/performance/test_perf_cmode.py | 46 +-
.../drivers/netapp/dataontap/test_block_7mode.py | 122 +-
.../drivers/netapp/dataontap/test_block_base.py | 211 +-
.../drivers/netapp/dataontap/test_block_cmode.py | 608 +-
.../drivers/netapp/dataontap/test_nfs_7mode.py | 90 +-
.../drivers/netapp/dataontap/test_nfs_base.py | 705 +-
.../drivers/netapp/dataontap/test_nfs_cmode.py | 1270 +-
.../drivers/netapp/dataontap/utils/__init__.py | 0
.../volume/drivers/netapp/dataontap/utils/fakes.py | 135 +
.../netapp/dataontap/utils/test_capabilities.py | 374 +
.../netapp/dataontap/utils/test_data_motion.py | 749 ++
.../netapp/dataontap/utils/test_loopingcalls.py | 63 +
.../drivers/netapp/dataontap/utils/test_utils.py | 103 +
.../unit/volume/drivers/netapp/eseries/fakes.py | 193 +-
.../volume/drivers/netapp/eseries/test_client.py | 29 +-
.../volume/drivers/netapp/eseries/test_driver.py | 13 -
.../volume/drivers/netapp/eseries/test_library.py | 204 +-
.../unit/volume/drivers/netapp/test_common.py | 31 +-
.../unit/volume/drivers/nexenta/test_nexenta.py | 687 ++
.../volume/drivers/nexenta/test_nexenta5_iscsi.py | 397 +
.../volume/drivers/nexenta/test_nexenta5_nfs.py | 172 +
.../volume/drivers/nexenta/test_nexenta_edge.py | 272 +
.../unit/volume/drivers/test_drbdmanagedrv.py | 707 ++
.../unit/volume/drivers/test_prophetstor_dpl.py | 771 ++
.../unit/volume/drivers/violin/fake_vmem_client.py | 67 +
.../volume/drivers/violin/test_v7000_common.py | 1420 +++
.../unit/volume/drivers/violin/test_v7000_fcp.py | 577 +
.../volume/drivers/vmware/test_vmware_datastore.py | 361 +
.../unit/volume/drivers/vmware/test_vmware_vmdk.py | 2794 +++++
.../volume/drivers/vmware/test_vmware_volumeops.py | 1971 ++++
.../unit/volume/flows/test_create_volume_flow.py | 277 +-
.../unit/volume/flows/test_manage_volume_flow.py | 104 +
.../zonemanager/test_brcd_fc_san_lookup_service.py | 94 +-
.../zonemanager/test_brcd_fc_zone_client_cli.py | 43 +-
.../unit/zonemanager/test_brcd_fc_zone_driver.py | 8 +-
.../zonemanager/test_brcd_http_fc_zone_client.py | 14 +-
.../unit/zonemanager/test_cisco_fc_zone_driver.py | 4 +-
cinder/transfer/api.py | 48 +-
cinder/utils.py | 228 +-
cinder/volume/api.py | 777 +-
cinder/volume/configuration.py | 2 -
cinder/volume/driver.py | 696 +-
cinder/volume/driver_utils.py | 72 +
cinder/volume/drivers/block_device.py | 42 +-
cinder/volume/drivers/blockbridge.py | 27 +-
cinder/volume/drivers/cloudbyte/cloudbyte.py | 3 +
cinder/volume/drivers/coho.py | 124 +-
cinder/volume/drivers/coprhd/__init__.py | 0
cinder/volume/drivers/coprhd/common.py | 1440 +++
cinder/volume/drivers/coprhd/fc.py | 226 +
cinder/volume/drivers/coprhd/helpers/__init__.py | 0
.../drivers/coprhd/helpers/authentication.py | 216 +
.../drivers/coprhd/helpers/commoncoprhdapi.py | 521 +
.../drivers/coprhd/helpers/consistencygroup.py | 220 +
.../volume/drivers/coprhd/helpers/exportgroup.py | 303 +
cinder/volume/drivers/coprhd/helpers/host.py | 93 +
cinder/volume/drivers/coprhd/helpers/project.py | 88 +
cinder/volume/drivers/coprhd/helpers/snapshot.py | 257 +
cinder/volume/drivers/coprhd/helpers/tag.py | 55 +
cinder/volume/drivers/coprhd/helpers/tenant.py | 117 +
cinder/volume/drivers/coprhd/helpers/urihelper.py | 82 +
.../volume/drivers/coprhd/helpers/virtualarray.py | 79 +
.../volume/drivers/coprhd/helpers/virtualpool.py | 77 +
cinder/volume/drivers/coprhd/helpers/volume.py | 521 +
cinder/volume/drivers/coprhd/iscsi.py | 177 +
cinder/volume/drivers/coprhd/scaleio.py | 330 +
cinder/volume/drivers/datera.py | 1002 +-
.../volume/drivers/dell/dell_storagecenter_api.py | 1565 ++-
.../drivers/dell/dell_storagecenter_common.py | 923 +-
.../volume/drivers/dell/dell_storagecenter_fc.py | 247 +-
.../drivers/dell/dell_storagecenter_iscsi.py | 221 +-
cinder/volume/drivers/disco/disco.py | 5 +-
cinder/volume/drivers/dothill/dothill_client.py | 7 +-
cinder/volume/drivers/dothill/dothill_fc.py | 9 +-
cinder/volume/drivers/dothill/dothill_iscsi.py | 5 +
cinder/volume/drivers/drbdmanagedrv.py | 91 +-
cinder/volume/drivers/emc/emc_cli_fc.py | 307 -
cinder/volume/drivers/emc/emc_cli_iscsi.py | 286 -
cinder/volume/drivers/emc/emc_vmax_common.py | 337 +-
cinder/volume/drivers/emc/emc_vmax_fast.py | 29 +-
cinder/volume/drivers/emc/emc_vmax_fc.py | 71 +-
cinder/volume/drivers/emc/emc_vmax_iscsi.py | 189 +-
cinder/volume/drivers/emc/emc_vmax_masking.py | 324 +-
cinder/volume/drivers/emc/emc_vmax_provision.py | 172 +-
cinder/volume/drivers/emc/emc_vmax_provision_v3.py | 280 +-
cinder/volume/drivers/emc/emc_vmax_utils.py | 384 +-
cinder/volume/drivers/emc/emc_vnx_cli.py | 4986 --------
cinder/volume/drivers/emc/scaleio.py | 295 +-
cinder/volume/drivers/emc/vnx/__init__.py | 0
cinder/volume/drivers/emc/vnx/adapter.py | 1463 +++
cinder/volume/drivers/emc/vnx/client.py | 566 +
cinder/volume/drivers/emc/vnx/common.py | 483 +
cinder/volume/drivers/emc/vnx/const.py | 39 +
cinder/volume/drivers/emc/vnx/driver.py | 333 +
cinder/volume/drivers/emc/vnx/taskflows.py | 579 +
cinder/volume/drivers/emc/vnx/utils.py | 339 +
cinder/volume/drivers/emc/xtremio.py | 165 +-
cinder/volume/drivers/eqlx.py | 152 +-
cinder/volume/drivers/falconstor/__init__.py | 0
cinder/volume/drivers/falconstor/fc.py | 113 +
cinder/volume/drivers/falconstor/fss_common.py | 399 +
cinder/volume/drivers/falconstor/iscsi.py | 105 +
cinder/volume/drivers/falconstor/rest_proxy.py | 1530 +++
cinder/volume/drivers/fujitsu/eternus_dx_common.py | 10 +-
cinder/volume/drivers/fujitsu/eternus_dx_fc.py | 6 +
cinder/volume/drivers/fujitsu/eternus_dx_iscsi.py | 6 +
cinder/volume/drivers/fusionstorage/__init__.py | 0
cinder/volume/drivers/fusionstorage/dsware.py | 627 +
cinder/volume/drivers/fusionstorage/fspythonapi.py | 499 +
cinder/volume/drivers/glusterfs.py | 63 +-
cinder/volume/drivers/hgst.py | 6 +
cinder/volume/drivers/hitachi/hbsd_common.py | 30 +-
cinder/volume/drivers/hitachi/hbsd_fc.py | 5 +
cinder/volume/drivers/hitachi/hbsd_iscsi.py | 5 +
cinder/volume/drivers/hitachi/hnas_backend.py | 1423 +--
cinder/volume/drivers/hitachi/hnas_iscsi.py | 1099 +-
cinder/volume/drivers/hitachi/hnas_nfs.py | 843 +-
cinder/volume/drivers/hitachi/hnas_utils.py | 339 +
cinder/volume/drivers/hpe/hpe_3par_common.py | 259 +-
cinder/volume/drivers/hpe/hpe_3par_fc.py | 172 +-
cinder/volume/drivers/hpe/hpe_3par_iscsi.py | 79 +-
cinder/volume/drivers/hpe/hpe_lefthand_iscsi.py | 72 +-
cinder/volume/drivers/hpe/hpe_xp_fc.py | 21 +
cinder/volume/drivers/huawei/constants.py | 15 +-
cinder/volume/drivers/huawei/fc_zone_helper.py | 80 +-
cinder/volume/drivers/huawei/huawei_conf.py | 47 +-
cinder/volume/drivers/huawei/huawei_driver.py | 634 +-
cinder/volume/drivers/huawei/huawei_utils.py | 32 +-
cinder/volume/drivers/huawei/hypermetro.py | 118 +-
cinder/volume/drivers/huawei/replication.py | 42 +-
cinder/volume/drivers/huawei/rest_client.py | 316 +-
cinder/volume/drivers/ibm/flashsystem_common.py | 141 +-
cinder/volume/drivers/ibm/flashsystem_fc.py | 44 +-
cinder/volume/drivers/ibm/flashsystem_iscsi.py | 68 +-
cinder/volume/drivers/ibm/gpfs.py | 91 +-
cinder/volume/drivers/ibm/ibm_storage.py | 292 +
.../ibm/storwize_svc/storwize_svc_common.py | 327 +-
.../drivers/ibm/storwize_svc/storwize_svc_fc.py | 92 +-
.../drivers/ibm/storwize_svc/storwize_svc_iscsi.py | 93 +-
cinder/volume/drivers/ibm/xiv_ds8k.py | 285 -
.../infortrend/eonstor_ds_cli/cli_factory.py | 12 +-
.../volume/drivers/infortrend/infortrend_fc_cli.py | 14 +-
.../drivers/infortrend/infortrend_iscsi_cli.py | 14 +-
cinder/volume/drivers/kaminario/__init__.py | 0
.../volume/drivers/kaminario/kaminario_common.py | 1151 ++
cinder/volume/drivers/kaminario/kaminario_fc.py | 198 +
cinder/volume/drivers/kaminario/kaminario_iscsi.py | 142 +
cinder/volume/drivers/lenovo/lenovo_fc.py | 5 +
cinder/volume/drivers/lenovo/lenovo_iscsi.py | 5 +
cinder/volume/drivers/lvm.py | 177 +-
.../volume/drivers/netapp/dataontap/block_7mode.py | 18 +-
.../volume/drivers/netapp/dataontap/block_base.py | 121 +-
.../volume/drivers/netapp/dataontap/block_cmode.py | 345 +-
.../volume/drivers/netapp/dataontap/client/api.py | 191 +-
.../netapp/dataontap/client/client_7mode.py | 103 +-
.../drivers/netapp/dataontap/client/client_base.py | 46 +-
.../netapp/dataontap/client/client_cmode.py | 1307 ++-
cinder/volume/drivers/netapp/dataontap/fc_7mode.py | 14 +-
cinder/volume/drivers/netapp/dataontap/fc_cmode.py | 15 +-
.../volume/drivers/netapp/dataontap/iscsi_7mode.py | 14 +-
.../volume/drivers/netapp/dataontap/iscsi_cmode.py | 15 +-
.../volume/drivers/netapp/dataontap/nfs_7mode.py | 56 +-
cinder/volume/drivers/netapp/dataontap/nfs_base.py | 227 +-
.../volume/drivers/netapp/dataontap/nfs_cmode.py | 542 +-
.../netapp/dataontap/performance/perf_cmode.py | 13 +-
.../volume/drivers/netapp/dataontap/ssc_cmode.py | 644 -
.../drivers/netapp/dataontap/utils/__init__.py | 0
.../drivers/netapp/dataontap/utils/capabilities.py | 245 +
.../drivers/netapp/dataontap/utils/data_motion.py | 638 +
.../drivers/netapp/dataontap/utils/loopingcalls.py | 43 +
.../volume/drivers/netapp/dataontap/utils/utils.py | 74 +
cinder/volume/drivers/netapp/eseries/client.py | 73 +-
cinder/volume/drivers/netapp/eseries/fc_driver.py | 10 +-
.../volume/drivers/netapp/eseries/iscsi_driver.py | 11 +-
cinder/volume/drivers/netapp/eseries/library.py | 85 +-
cinder/volume/drivers/netapp/eseries/utils.py | 3 -
cinder/volume/drivers/netapp/options.py | 26 +
cinder/volume/drivers/netapp/utils.py | 2 +-
cinder/volume/drivers/nexenta/iscsi.py | 22 +-
cinder/volume/drivers/nexenta/jsonrpc.py | 31 +-
cinder/volume/drivers/nexenta/nexentaedge/iscsi.py | 89 +-
.../volume/drivers/nexenta/nexentaedge/jsonrpc.py | 60 +-
cinder/volume/drivers/nexenta/nexentaedge/nbd.py | 349 +
cinder/volume/drivers/nexenta/nfs.py | 58 +-
cinder/volume/drivers/nexenta/ns5/iscsi.py | 16 +-
cinder/volume/drivers/nexenta/ns5/jsonrpc.py | 6 -
cinder/volume/drivers/nexenta/ns5/nfs.py | 15 +-
cinder/volume/drivers/nexenta/options.py | 12 +-
cinder/volume/drivers/nexenta/utils.py | 26 +-
cinder/volume/drivers/nfs.py | 62 +-
cinder/volume/drivers/nimble.py | 119 +-
cinder/volume/drivers/prophetstor/dpl_fc.py | 2 +
cinder/volume/drivers/prophetstor/dpl_iscsi.py | 2 +
cinder/volume/drivers/prophetstor/dplcommon.py | 7 +-
cinder/volume/drivers/pure.py | 431 +-
cinder/volume/drivers/quobyte.py | 41 +-
cinder/volume/drivers/rbd.py | 76 +-
cinder/volume/drivers/remotefs.py | 328 +-
cinder/volume/drivers/san/hp/hpmsa_fc.py | 2 +
cinder/volume/drivers/san/hp/hpmsa_iscsi.py | 2 +
cinder/volume/drivers/scality.py | 31 +-
cinder/volume/drivers/sheepdog.py | 162 +-
cinder/volume/drivers/smbfs.py | 106 +-
cinder/volume/drivers/solidfire.py | 534 +-
cinder/volume/drivers/synology/__init__.py | 0
cinder/volume/drivers/synology/synology_common.py | 1288 ++
cinder/volume/drivers/synology/synology_iscsi.py | 169 +
cinder/volume/drivers/tegile.py | 14 +-
cinder/volume/drivers/tintri.py | 11 +-
cinder/volume/drivers/violin/v7000_common.py | 466 +-
cinder/volume/drivers/violin/v7000_fcp.py | 18 +-
cinder/volume/drivers/violin/v7000_iscsi.py | 348 +
cinder/volume/drivers/vmware/datastore.py | 333 +-
cinder/volume/drivers/vmware/vmdk.py | 175 +-
cinder/volume/drivers/vmware/volumeops.py | 147 +-
cinder/volume/drivers/vzstorage.py | 462 +-
cinder/volume/drivers/windows/smbfs.py | 15 +-
cinder/volume/drivers/windows/windows.py | 5 +-
cinder/volume/drivers/xio.py | 44 +-
cinder/volume/drivers/zadara.py | 680 ++
cinder/volume/drivers/zfssa/zfssaiscsi.py | 88 +-
cinder/volume/drivers/zfssa/zfssanfs.py | 81 +-
cinder/volume/drivers/zte/__init__.py | 0
cinder/volume/drivers/zte/zte_ks.py | 985 ++
cinder/volume/drivers/zte/zte_pub.py | 59 +
cinder/volume/flows/api/create_volume.py | 173 +-
cinder/volume/flows/api/manage_existing.py | 36 +-
cinder/volume/flows/common.py | 48 +-
cinder/volume/flows/manager/create_volume.py | 289 +-
cinder/volume/flows/manager/manage_existing.py | 48 +-
.../flows/manager/manage_existing_snapshot.py | 33 +-
cinder/volume/group_types.py | 180 +
cinder/volume/manager.py | 1837 ++-
cinder/volume/qos_specs.py | 172 +-
cinder/volume/rpcapi.py | 361 +-
cinder/volume/targets/cxt.py | 2 +-
cinder/volume/targets/fake.py | 3 -
cinder/volume/targets/iscsi.py | 23 +-
cinder/volume/targets/iser.py | 46 -
cinder/volume/targets/scst.py | 27 +-
cinder/volume/targets/tgt.py | 5 +-
cinder/volume/utils.py | 281 +-
cinder/volume/volume_types.py | 62 +-
cinder/wsgi/common.py | 3 -
cinder/wsgi/eventlet_server.py | 3 -
.../drivers/brocade/brcd_fc_san_lookup_service.py | 112 +-
.../drivers/brocade/brcd_fc_zone_client_cli.py | 145 +-
.../drivers/brocade/brcd_fc_zone_driver.py | 116 +-
.../drivers/brocade/brcd_http_fc_zone_client.py | 179 +-
.../drivers/brocade/fc_zone_constants.py | 4 +-
.../drivers/cisco/cisco_fc_san_lookup_service.py | 4 +
.../drivers/cisco/cisco_fc_zone_client_cli.py | 44 +-
.../drivers/cisco/cisco_fc_zone_driver.py | 5 +
cinder/zonemanager/drivers/driver_utils.py | 21 +-
cinder/zonemanager/drivers/fc_zone_driver.py | 60 +-
cinder/zonemanager/fc_san_lookup_service.py | 12 +-
cinder/zonemanager/fc_zone_manager.py | 102 +-
cinder/zonemanager/utils.py | 18 +-
etc/cinder/api-paste.ini | 25 +-
etc/cinder/policy.json | 44 +-
etc/cinder/rootwrap.d/volume.filters | 29 +-
releasenotes/README.rst | 16 +
...te-fc-vlun-match-set-type-babcf2cbce1ce317.yaml | 5 +
...SC-ServerOS-Config-Option-bd0e018319758e03.yaml | 8 +
.../Dell-SC-live-volume-41bacddee199ce83.yaml | 4 +
...on-failover_host-failback-a9e9cbbd6a1be6c3.yaml | 4 +
.../notes/ZadaraStorage-13a5fff6f4fa1710.yaml | 3 +
...chastic-scheduling-option-99e10eae023fbcca.yaml | 11 +
...ss-lvm-fd-warnings-option.402bebc03b0a9f00.yaml | 17 +
...lume-upload-image-options-3a61a31c544fa034.yaml | 4 +
...ow-admin-quota-operations-c1c2236711224023.yaml | 4 +
...scription-for-consisgroup-408257a0a18bd530.yaml | 3 +
.../apply-limits-to-qemu-img-29f722a1bf4b91f8.yaml | 7 +
.../notes/backup-snapshot-6e7447db930c31f6.yaml | 4 +
.../notes/backup-update-d0b0db6a7b1c2a5b.yaml | 3 +
.../notes/bdd-pools-stats-afb4398daa9248de.yaml | 3 +
...-cinder-driver-update-2.1-5c6455b45563adc5.yaml | 7 +
...ookupservice_http_support-f6485b38a1feaa15.yaml | 5 +
.../notes/bug-1518213-a5bf2ea0d008f329.yaml | 3 +
.../notes/bug-1570845-efdb0206718f4ca4.yaml | 4 +
...h-enabled-NetApp-backends-0fbf2cb621e4747d.yaml | 5 +
...ng-replication-capability-dca29f39b9fa7651.yaml | 5 +
.../cinder-coprhd-driver-11ebd149ea8610fd.yaml | 2 +
.../cluster_job_distribution-f916dd2e4cce6c1b.yaml | 20 +
.../create-update-rules-b46cf9c07c5a3966.yaml | 6 +
.../datera-2.2-driver-update-28b97aa2aaf333b6.yaml | 12 +
.../db-schema-from-kilo-e6e952744531caa2.yaml | 5 +
.../notes/del_volume_with_fc-f024b9f2d6eaca0f.yaml | 4 +
...lete-volume-metadata-keys-3e19694401e13d00.yaml | 4 +
...ecate-backends-in-default-b9784a2333fe22f2.yaml | 10 +
.../notes/deprecated-nas-ip-fd86a734c92f6fae.yaml | 5 +
.../drbd-resource-options-88599c0a8fc5b8a3.yaml | 6 +
...lx-volume-manage-unmanage-a24ec7f0d9989df3.yaml | 3 +
.../falconstor-cinder-driver-dcb61441cd7601c5.yaml | 4 +
.../fix-hnas-stats-reporting-1335e582e46ff440.yaml | 4 +
...sionstorage-cinder-driver-8f3bca98f6e2065a.yaml | 3 +
.../generic-volume-groups-69f998ce44f42737.yaml | 4 +
.../notes/group-snapshots-36264409bbb8850c.yaml | 4 +
.../group-type-group-specs-531e33ee0ae9f822.yaml | 3 +
.../hnas-drivers-refactoring-9dbe297ffecced21.yaml | 7 +
...unmanage-snapshot-support-40c8888cc594a7be.yaml | 3 +
.../notes/hnas_deprecate_xml-16840b5a8c25d15e.yaml | 7 +
...i-iscsi-multipath-support-a056201883909287.yaml | 3 +
...wei-pool-disktype-support-7c1f64639b42a48a.yaml | 4 +
...figuration-in-replication-7ec53737b95ffa54.yaml | 3 +
...es-in-netapp-cdot-drivers-f6afa9884cac4e86.yaml | 4 +
...ashsystem-manage-unmanage-88e56837102f838c.yaml | 4 +
...-consistency-group-detail-84a906d45383e067.yaml | 5 +
...aminario-fc-cinder-driver-8266641036281a44.yaml | 3 +
...nario-iscsi-cinder-driver-c34fadf63cd253de.yaml | 3 +
.../notes/list-manageable-86c77fc39c5b2cc9.yaml | 5 +
.../notes/live_migration_v3-ae98c0d00e64c954.yaml | 3 +
.../manage-resources-v3-c06096f75927fd3b.yaml | 4 +
.../mark-scality-unsupported-530370e034a6f488.yaml | 11 +
...ckend-replication-support-59d7537fe3d0eb05.yaml | 8 +
...consistency-group-support-83eccc2da91ee19b.yaml | 3 +
.../notes/nexentaedge-iscsi-ee5d6c05d65f97af.yaml | 3 +
.../notes/nexentaedge-nbd-eb48268723141f12.yaml | 2 +
.../nimble-add-force-backup-539e1e5c72f84e61.yaml | 3 +
.../notes/os-brick-lock-dir-35bdd8ec0c0ef46d.yaml | 9 +
.../pure-custom-user-agent-dcca4cb44b69e763.yaml | 4 +
.../pure-eradicate-on-delete-1e15e1440d5cd4d6.yaml | 2 +-
.../notes/pure-fc-wwpn-case-c1d97f3fa7663acf.yaml | 5 +
.../pure-list-mangeable-fed4a1b23212f545.yaml | 4 +
...tings-larger-than-1024MiB-30b38811da048948.yaml | 4 +
.../notes/remove-xml-api-392b41f387e60eb1.yaml | 5 +
.../notes/removed-isertgtadm-7ccefab5d3e89c59.yaml | 8 +
...-rpc-topic-config-options-21c2b3f0e64f884c.yaml | 6 +
...e_xiv_ds8k_to_ibm_storage-154eca69c44b3f95.yaml | 15 +
.../retype-encrypted-volume-49b66d3e8e65f9a5.yaml | 4 +
.../notes/rpc-apis-3.0-b745f429c11d8198.yaml | 8 +
...fault-volume-provisioning-c648118fcc8f297f.yaml | 5 +
...-manage-existing-snapshot-5bbd1818654c0776.yaml | 3 +
.../scaleio-scaling-qos-50c58e43d4b54247.yaml | 4 +
...thin-provisioning-support-9c3b9203567771dd.yaml | 9 +
...olidfire-v2.1-replication-570a1f12f70e67b4.yaml | 3 +
...-huawei-consistency-group-b666f8f6c6cddd8f.yaml | 3 +
...ume-glance-metadata-query-866b9e3beda2cd55.yaml | 5 +
.../notes/supported-drivers-9c95dd2378cd308d.yaml | 3 +
.../synology-volume-driver-c5e0f655b04390ce.yaml | 3 +
...use-castellan-key-manager-4911c3c4908ca633.yaml | 15 +
...oslo_middleware_sizelimit-5f171cf1c44444f8.yaml | 9 +
...sk-format-upload-to-image-5851f9d35f4ee447.yaml | 3 +
.../vmax-iscsi-multipath-76cc09bacf4fdfbf.yaml | 3 +
.../vmax-oversubscription-d61d0e3b1df2487a.yaml | 3 +
releasenotes/notes/vmax-qos-eb40ed35bd2f457d.yaml | 3 +
.../vmdk_backup_restore-41f807b7bc8e0ae8.yaml | 4 +
...efault_task_poll_interval-665f032bebfca39e.yaml | 5 +
.../notes/vmdk_image_ova-d3b3a0e72221110c.yaml | 5 +
.../notes/vmdk_vc_51-df29eeb5fc93fbb1.yaml | 4 +
.../notes/vmem-7000-iscsi-3c8683dcc1f0b9b4.yaml | 3 +
.../notes/vmware-vmdk-config-eb70892e4ccf8f3c.yaml | 4 +
.../vmware_vmdk_paravirtual-3d5eeef96dcbcfb7.yaml | 4 +
.../notes/vnx-new-driver-7e96934c2d3a6edc.yaml | 15 +
.../notes/volumes-summary-6b2485f339c88a91.yaml | 4 +
.../xtremio-manage-snapshot-5737d3ad37df81d1.yaml | 3 +
.../notes/zte_cinder_driver-76ba6d034e1b6f65.yaml | 4 +
releasenotes/source/index.rst | 3 +-
releasenotes/source/mitaka.rst | 6 +
requirements.txt | 54 +-
setup.cfg | 13 +-
test-requirements.txt | 15 +-
tools/bandit.yaml | 128 -
tools/config/check_uptodate.sh | 67 +-
tools/config/generate_sample.sh | 105 -
tools/enable-pre-commit-hook.sh | 2 +-
tools/generate_driver_list.py | 146 +-
tools/lintstack.py | 79 +-
tox.ini | 66 +-
1307 files changed, 240446 insertions(+), 166914 deletions(-)
Requirements updates
--------------------
diff --git a/requirements.txt b/requirements.txt
index 5c2d858..64c1c3a 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -6 +6 @@ pbr>=1.6 # Apache-2.0
-Babel>=1.3 # BSD
+Babel>=2.3.4 # BSD
@@ -12,2 +12,4 @@ httplib2>=0.7.5 # MIT
-iso8601>=0.1.9 # MIT
-keystonemiddleware!=4.1.0,>=4.0.0 # Apache-2.0
+iso8601>=0.1.11 # MIT
+ipaddress>=1.0.7;python_version<'3.3' # PSF
+keystoneauth1>=2.10.0 # Apache-2.0
+keystonemiddleware!=4.1.0,!=4.5.0,>=4.0.0 # Apache-2.0
@@ -16,4 +18,4 @@ oauth2client>=1.5.0 # Apache-2.0
-oslo.config>=3.7.0 # Apache-2.0
-oslo.concurrency>=3.5.0 # Apache-2.0
-oslo.context>=0.2.0 # Apache-2.0
-oslo.db>=4.1.0 # Apache-2.0
+oslo.config>=3.14.0 # Apache-2.0
+oslo.concurrency>=3.8.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
@@ -21 +23 @@ oslo.log>=1.14.0 # Apache-2.0
-oslo.messaging>=4.0.0 # Apache-2.0
+oslo.messaging>=5.2.0 # Apache-2.0
@@ -23 +25,2 @@ oslo.middleware>=3.0.0 # Apache-2.0
-oslo.policy>=0.5.0 # Apache-2.0
+oslo.policy>=1.9.0 # Apache-2.0
+oslo.privsep>=1.9.0 # Apache-2.0
@@ -25 +28 @@ oslo.reports>=0.6.0 # Apache-2.0
-oslo.rootwrap>=2.0.0 # Apache-2.0
+oslo.rootwrap>=5.0.0 # Apache-2.0
@@ -27,5 +30,5 @@ 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.versionedobjects>=1.5.0 # Apache-2.0
-osprofiler>=1.1.0 # Apache-2.0
-paramiko>=1.16.0 # LGPL
+oslo.service>=1.10.0 # Apache-2.0
+oslo.utils>=3.16.0 # Apache-2.0
+oslo.versionedobjects>=1.13.0 # Apache-2.0
+osprofiler>=1.4.0 # Apache-2.0
+paramiko>=2.0 # LGPLv2.1+
@@ -36,3 +39,3 @@ pyparsing>=2.0.1 # MIT
-python-barbicanclient>=3.3.0 # Apache-2.0
-python-glanceclient>=2.0.0 # Apache-2.0
-python-keystoneclient!=1.8.0,!=2.1.0,>=1.6.0 # Apache-2.0
+python-barbicanclient>=4.0.0 # Apache-2.0
+python-glanceclient!=2.4.0,>=2.3.0 # Apache-2.0
+python-keystoneclient!=2.1.0,>=2.0.0 # Apache-2.0
@@ -42 +45 @@ pytz>=2013.6 # MIT
-requests!=2.9.0,>=2.8.1 # Apache-2.0
+requests>=2.10.0 # Apache-2.0
@@ -44,2 +47,2 @@ retrying!=1.3.0,>=1.2.3 # 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
+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
@@ -52,2 +55,2 @@ sqlalchemy-migrate>=0.9.6 # Apache-2.0
-stevedore>=1.5.0 # Apache-2.0
-suds-jurko>=0.6 # LGPL
+stevedore>=1.16.0 # Apache-2.0
+suds-jurko>=0.6 # LGPLv3+
@@ -56,2 +59,2 @@ oslo.i18n>=2.1.0 # Apache-2.0
-oslo.vmware>=1.16.0 # Apache-2.0
-os-brick>=1.0.0 # Apache-2.0
+oslo.vmware>=2.11.0 # Apache-2.0
+os-brick>=1.6.1 # Apache-2.0
@@ -60,0 +64 @@ google-api-python-client>=1.4.2 # Apache-2.0
+castellan>=0.4.0 # Apache-2.0
diff --git a/test-requirements.txt b/test-requirements.txt
index 866a3cb..7fb4e7c 100644
--- a/test-requirements.txt
+++ b/test-requirements.txt
@@ -11,2 +11,2 @@ ddt>=1.0.1 # MIT
-fixtures>=1.3.1 # Apache-2.0/BSD
-mock>=1.2 # BSD
+fixtures>=3.0.0 # Apache-2.0/BSD
+mock>=2.0 # BSD
@@ -14,2 +14 @@ mox3>=0.7.0 # Apache-2.0
-PyMySQL>=0.6.2 # MIT License
-psycopg2>=2.5 # LGPL/ZPL
+os-api-ref>=1.0.0 # Apache-2.0
@@ -17 +16 @@ oslotest>=1.10.0 # Apache-2.0
-sphinx!=1.2.0,!=1.3b1,<1.3,>=1.1.2 # BSD
+sphinx!=1.3b1,<1.3,>=1.2.1 # BSD
@@ -24 +23 @@ oslosphinx!=3.4.0,>=2.5.0 # Apache-2.0
-os-testr>=0.4.1 # Apache-2.0
+os-testr>=0.7.0 # Apache-2.0
@@ -26,2 +25,2 @@ tempest-lib>=0.14.0 # Apache-2.0
-bandit>=0.17.3 # Apache-2.0
-reno>=0.1.1 # Apache2
+bandit>=1.1.0 # Apache-2.0
+reno>=1.8.0 # Apache2
1
0
We are happy to announce the release of:
freezer-api 3.0.0: OpenStack Backup and Restore API Service
This release is part of the newton release series.
For more details, please see below.
Changes in freezer-api 2.0.0.0rc1..3.0.0
----------------------------------------
61f1b37 Change default value of elasticsearch replicas
5ba9b68 Update .gitreview for stable/newton
2ff22ec Updated from global requirements
977ca7c Implemented: Installation documentation and API Ref
83041ce Updated from global requirements
de7b8ec Update mappings to store current process id for each job
733bfe7 Get auth opts from appropriate getter
d44c089 Fixed elasticsearch scroll problem in scan search
247694c Fix wrong option group name
ce09bbf Implemented oslo.policy
0c2278c Fixed Error reporting while load freezer-api app
fd98698 Project/tenant ID now optional in client_id for freezer_api
7c340ee Fix inconsistent syntax in mappings
ff594fe Fix bug in README.rst
5db9ce7 Remove discover from test-requirements
338b925 Fix Rst grammar avoid to change every time when change order
afe97aa freezer API document error in README.rst
57cbc5a Return an error for negative limits and offsets
10ec5e3 client_id regex now permits valid fqdn for hostname
0fef37e Listen on 127.0.0.1 in devstack
6cbd042 Add display-name to freezer-api Apache config
65cde89 Fixes 'ElastichSearch' typo -> 'ElasticSearch' in freezer-api
5847d70 Remove white space between print and ()
964f6e7 Fix falcon version detection for falcon==0.1.6
1d0ecea Updated from global requirements
a28be05 Fix Middleware loading for falcon >= 0.1.6
5a99029 freezer-api README.rst needs to be updated
bb5ba82 fix job-stop request not accepted
3345c53 Fixed mapper_parser_error in elasticsearch when inserting documents with _version
9a46ed1 Make user_id not_analyzed
94200bc Moving to freezer-manage to create/update/delete mappings
42f1c84 [WIP] Fix tempest credentials issue
a94ea3f Remove _version from the document passed to elk
57eb687 Fix RST syntax in tempest tests README
44f8639 Add oslo.middleware to requirement.txt
0657535 Remove version from setup.cfg
525c7f1 Move to Paste and Paste-deploy
562a92f fix typo in jobs.py
fe2a5cf Remove version string from elk documents
ab486ba Don't check for content-type in requests
0b5f4fc Fix RST error in README
fc37320 Fix RST syntax in README
b142479 Moving to falcon middleware
67a8bdb Remove version when creating records in elasticsearch
24bac2a Add missing api tests for the backups endpoints
e67bc70 Updating freezer-api mappings adding no_incremental and overwite
213391d Add consistency_checksum parameter on backup metadata
31558ae Using oslo.context
39ac6c3 Fix documentation: There is no update endpoint for backups
efe376d Fix documentation: offset instead of marker
cf688c0 Fix oslo.config to load elk opts from the config file
3e95bc6 Fix refresh problem when a document gets created in elasticsearch
ab84438 fix session-remove-job
4ce9a67 Remove apache config file after cleanup freezer api
131c4ae Bumping version to 2.1.0 for Newton
b0735e2 Add Freezer API Tempest Tests
1532791 Adding storage, keystone_authtoken sections to sample config
d4e727d Switch Freezer-api to oslo.config and oslo.log
ea70bbc This is incorrect url in example doc and conf
13f0b7b Add Freezer API Version Test
e38f650 Fix url from stackforge to openstack
Diffstat (except docs and test files)
-------------------------------------
.gitreview | 1 +
.pylintrc | 2 +-
README.rst | 537 +++++++++++++--------
api-ref/source/conf.py | 206 ++++++++
api-ref/source/index.rst | 20 +
api-ref/source/parameters.yaml | 8 +
api-ref/source/samples/versions-list-response.json | 15 +
api-ref/source/versions.inc | 38 ++
config-generator/freezer-api.conf | 6 +
devstack/README.rst | 2 +-
devstack/files/apache-freezer-api.template | 8 +-
devstack/gate_hook.sh | 1 +
devstack/lib/freezer-api | 31 +-
devstack/local.conf.example | 2 +-
devstack/settings | 4 +-
etc/freezer-api.conf | 60 ---
etc/freezer/freezer-api.conf.sample | 354 ++++++++++++++
etc/freezer/freezer-paste.ini | 26 +
etc/freezer/policy.json | 39 ++
freezer_api/__init__.py | 21 +
freezer_api/api/common/middleware.py | 210 +++++++-
freezer_api/api/common/utils.py | 56 +++
freezer_api/api/v1/actions.py | 11 +-
freezer_api/api/v1/backups.py | 9 +-
freezer_api/api/v1/clients.py | 13 +-
freezer_api/api/v1/homedoc.py | 1 +
freezer_api/api/v1/jobs.py | 37 +-
freezer_api/api/v1/sessions.py | 22 +-
freezer_api/cmd/api.py | 123 +++--
freezer_api/cmd/db_init.py | 26 +-
freezer_api/cmd/manage.py | 353 ++++++++++++++
freezer_api/cmd/wsgi.py | 19 +
freezer_api/common/config.py | 119 ++++-
freezer_api/common/db_mappings.py | 145 +++---
freezer_api/common/exceptions.py | 2 +-
freezer_api/common/json_schemas.py | 29 +-
freezer_api/common/log.py | 62 ---
freezer_api/context.py | 72 +++
freezer_api/policy.py | 42 ++
freezer_api/service.py | 56 +++
freezer_api/storage/driver.py | 85 ++--
freezer_api/storage/elastic.py | 34 +-
.../services/freezer_api_client.py | 181 +++++++
install-guide/source/actions.rst | 27 ++
install-guide/source/api_documents.rst | 12 +
install-guide/source/api_routes.rst | 79 +++
install-guide/source/client_structure.rst | 29 ++
install-guide/source/conf.py | 291 +++++++++++
install-guide/source/devstack_plugin.rst | 48 ++
install-guide/source/get_started.rst | 27 ++
install-guide/source/index.rst | 23 +
install-guide/source/install.rst | 158 ++++++
install-guide/source/jobs.rst | 357 ++++++++++++++
install-guide/source/known_issues.rst | 22 +
install-guide/source/metadata_structure.rst | 55 +++
install-guide/source/sessions.rst | 104 ++++
requirements.txt | 19 +-
setup.cfg | 10 +-
setup.py | 25 +-
specs/Freezer-API-spec.rst | 33 +-
test-requirements.txt | 21 +-
tox.ini | 8 +
90 files changed, 5554 insertions(+), 919 deletions(-)
Requirements updates
--------------------
diff --git a/requirements.txt b/requirements.txt
index e7900ce..3562212 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -1 +1,4 @@
-elasticsearch>=1.3.0,<2.0 # Apache-2.0
+# The order of packages is significant, because pip processes them in the order
+# of appearance. Changing the order has an impact on the overall integration
+# process, which may cause wedges in the gate later.
+elasticsearch<=3.0.0,>=2.0.0 # Apache-2.0
@@ -3,4 +6,10 @@ falcon>=0.1.6 # Apache-2.0
-jsonschema>=2.0.0,<3.0.0,!=2.5.0 # MIT
-keystonemiddleware>=4.0.0 # Apache-2.0
-oslo.config>=3.2.0 # Apache-2.0
-oslo.i18n>=1.5.0 # Apache-2.0
+jsonschema!=2.5.0,<3.0.0,>=2.0.0 # MIT
+keystonemiddleware!=4.1.0,!=4.5.0,>=4.0.0 # Apache-2.0
+Paste # MIT
+PasteDeploy>=1.5.0 # MIT
+oslo.config>=3.14.0 # Apache-2.0
+oslo.context>=2.9.0 # Apache-2.0
+oslo.i18n>=2.1.0 # Apache-2.0
+oslo.log>=1.14.0 # Apache-2.0
+oslo.middleware>=3.0.0 # Apache-2.0
+oslo.policy>=1.9.0 # Apache-2.0
diff --git a/test-requirements.txt b/test-requirements.txt
index 777fcf5..6aadb34 100644
--- a/test-requirements.txt
+++ b/test-requirements.txt
@@ -1,4 +1,7 @@
-astroid<1.4.0 # breaks pylint 1.4.4
-flake8>2.4.1,<2.6.0 # MIT
-pylint==1.4.5 # GNU GPL v2
-hacking>=0.10.2,<0.11 # Apache-2.0
+# The order of packages is significant, because pip processes them in the order
+# of appearance. Changing the order has an impact on the overall integration
+# process, which may cause wedges in the gate later.
+astroid<1.4.0 # LGPLv2.1 # breaks pylint 1.4.4
+flake8<2.6.0,>=2.5.4 # MIT
+pylint==1.4.5 # GPLv2
+hacking<0.11,>=0.10.2 # Apache-2.0
@@ -6,3 +9,2 @@ coverage>=3.6 # Apache-2.0
-discover # BSD
-mock>=1.2 # BSD
-oslosphinx>=2.5.0,!=3.4.0 # Apache-2.0
+mock>=2.0 # BSD
+oslosphinx!=3.4.0,>=2.5.0 # Apache-2.0
@@ -10 +12 @@ python-subunit>=0.0.18 # Apache-2.0/BSD
-sphinx>=1.1.2,!=1.2.0,!=1.3b1,<1.3 # BSD
+sphinx!=1.3b1,<1.3,>=1.2.1 # BSD
@@ -12,0 +15 @@ testtools>=1.4.0 # MIT
+os-api-ref>=1.0.0 # Apache-2.0
@@ -15 +18 @@ testtools>=1.4.0 # MIT
-tempest-lib>=0.14.0 # Apache-2.0
+tempest-lib>=0.14.0 # Apache-2.0
1
0
We are amped to announce the release of:
heat 7.0.0: OpenStack Orchestration
This release is part of the newton release series.
For more details, please see below.
7.0.0
^^^^^
Previously 'parameters' and 'parameter_defaults' specified in an
environment file used to overwrite their existing values.
Previously the event list REST API call only returned events for the
specified stack even when that stack contained nested stack resources.
This meant that fetching all nested events required an inefficient
recursive client-side implementation.
Support external resource reference in template.
New Features
************
* Add *template_dir* to config. Normally heat has template directory
*/etc/heat/templates*. This change makes it more official. In the
future, it is possible to implement features like access templates
directly from global template environment.
* Adds optional section "conditions" for hot template (
heat_template_version.2016-10-14) and "Conditions" for cfn template
(AWSTemplateFormatVersion.2010-09-09).
* Adds some condition functions, like "equals", "not", "and" and
"or", these condition functions can be used in "conditions" section
to define one or more conditions which are evaluated based on input
parameter values provided when a user creates or updates a stack.
* Adds optional section "condition" for resource and output
definitions. Condition name defined in "conditions" and condition
functions can be referenced in this section, in order to
conditionally create resources or conditionally give outputs of a
stack.
* Adds function "if" to return corresponding value based on
condition evaluation. This function can be used to conditionally set
the value of resource properties and outputs.
* OS::Cinder::QoSSpecs resource plugin added to support cinder QoS
Specs, which is provided by cinder "qos-specs" API extension.
* cinder.qos_specs constraint added to support to validate QoS Specs
attribute.
* New resource "OS::Cinder::Quota" is added to manage cinder quotas.
Cinder quotas are operational limits to projects on cinder block
storage resources. These include gigabytes, snapshots, and volumes.
* Adds new 'max_server_name_length' configuration option which
defaults to the prior upper bound (53) and can be lowered by users
(if they need to, for example due to ldap or other internal name
limit restrictions).
* Supports internal DNS resolution and integration with external DNS
services for neutron resources. Template authors can use the
"dns_name" and "dns_domain" properties of neutron resource plugins
for this functionality.
* A new 'parameter_merge_strategies' section can be added to the
environment file, where 'default' and/or parameter specific merge
strategies can be specified.
* Parameters and parameter defaults specified in the environment
file would be merged as per their specified strategies.
* The event list GET REST API call now has a different behaviour
when the 'nested_depth' parameter is set to an integer greater than
zero. The response will contain all events down to the requested
nested depth.
* When 'nested_depth' is set the response also includes an extra
entry in the 'links' list with 'rel' set to 'root_stack'. This can
be used by client side implementations to detect whether it is
necessary to fall back to client-side recurisive event fetching.
* Add *external_id* attribute for resource to reference on an exists
external resource. The resource (with *external_id* attribute) will
not able to be updated. This will keep management rights stay
externally.
* This feature only supports templates with version over
*2016-10-14*.
* OS::Glance::Image resource plug-in is updated to support tagging
when image is created or updated as part of stack.
* Add "map_replace" function, that takes 2 arguments an input map
and a map containing a "keys" and/or "values" map. key/value
substitutions on the input map are performed based on the mappings
passed in "keys" and "values".
* Add optional 'period' property for Monasca Notification resource.
The new added property will now allow the user to tell Monasca the
interval in seconds to periodically invoke a webhook until the ALARM
state transitions back to an OK state or vice versa. This is useful
when the user wants to create a stack which will automatically scale
up or scale down more than once if the alarm state continues to be
in the same state. To conform to the existing Heat autoscaling
behaviour, we manually create the monasca notification resource in
Heat with a default interval value of 60.
* OS::Monasca::AlarmDefinition and OS::Monasca::Notification
resource plug-ins are now supported by heat community as monasca
became offcial OpenStack project.
* Add "yaql" function, that takes 2 arguments "expression" of type
string and "data" of type map and evaluates "expression" on a given
"data".
Upgrade Notes
*************
* New config section "volumes" with new config option
"[volumes]backups_enabled" (defaults to "True"). Operators that do
not have Cinder backup service deployed in their cloud are
encouraged to set this option to "False".
Bug Fixes
*********
* Allow to configure Heat service to forbid creation of stacks
containing Volume resources with "deletion_policy" set to "Snapshot"
when there is no Cinder backup service available.
Changes in heat 6.0.0.0rc1..7.0.0
---------------------------------
e59f927 Get rid of circular reference in Event class
ee86435 Increase the timeout for the stop_stack message
fb26ec9 Do not attempt deletion of a DELETE_COMPLETE stack in service api
a96d89b Don't use cast() to do StackResource delete
9ece778 Fix cancel update for nova server with defined port
c6bc3fe Re-trigger on update-replace
2dd44db Legacy delete attempt thread cancel before stop
9ea43ed Updated from global requirements
25fbedc Cancel traversal of nested stack
d26c903 Correct the response info of template-version-list
c7fe0ba Fix sync point delete
14a90d6 Use correct schema for SoftwareDeploymentGroup rolling_update
80081db Update UPPER_CONSTRAINTS_FILE for stable/newton
4695f47 Don't acquire the lock when cancelling a stack
5443453 Allow update inplace for allowed_address_pairs
4a57772 Don't log locked resource at ERROR level
8938a26 Update .gitreview for stable/newton
fbc0021 Make get_attr consistent across template versions
90d8ab6 Avoid circular references in Macro class
97483d5 Do str_replace in a single pass
0b5b21c Skip resource counting during validation
c7e3b8b Add releasenote for conditions function
6d0e8e9 Always use context manager for DB transactions
4a92678 Allows condition name using boolean or function
b67605d Refactor resource definition parsing in HOT/cfn
50bc53a Create ResourceDefinitions directly in ResourceGroup/Chain
bca8b8e Allow referencing conditions by name
4090dfe Refactor boolean condition functions
8262265 Make cfn functions inherit from HOT
0327c33 Ensure cached conditions match stack
7b129f6 Copy correct definition to the backup stack
b76f5b6 Add functional test for SDG rolling_update
6d61a7a Create a public Conditions class API
d98d821 Raise StackValidationFailed instead of InvalidCondition*
f18e57e Revert "Improve validation for some functions"
24bc69f Add way to use custom paths in translation
9b302b8 Add test for SoftwareDeploymentGroup resource
6dc3ab9 Deletion of in-progress stack
0f48b1d Convergence: Run scenario tests synchronously
873a408 Convergence: basic framework for cancelling workers
503108a Non-destructive upgrade for structured deployments
4d7257a Override the default Template.outputs() implementation
7de1c14 Handle outputs with an OutputDefinition class
d792364 Updated from global requirements
0d3bed1 Update plugin-guide documentation page
27aea71 Add releasenotes for OS::Cinder::QoSSpecs
8167a21 standardize release note page ordering
e417fc3 Revert "Allow reference conditions by name"
f655726 Restore timezone information in API response
29734db [api-ref] Remove temporary block in conf.py
8563762 Allow hyphens in OS::Trove::Instance database names
9ce052f Lazy-load outputs
cdae301 Trivial: remove unused LOG attribute
7ea3586 Migrate to keystoneauth
1fb6859 Use keystone session in endpoint_utils
4a8ad39 Allow reference conditions by name
c99165d Pre-validate cinder quotas with the real fact
cc94806 Correcting parameter type
c650b38 Cinder::Volume observe reality implementation
1744d67 Get rid of Template.validate_condition_definitions()
9bd13ad Evaluate resource conditions in-place
576d092 Use physical name in event if resource_id is None
edea948 Get rid of extra_rsrc_defn in templates
e3a2432 Modify use of assertTrue(A in B)
3aeaefc Non-destructive upgrade for deprecated resources
9f9cb4b Deprecate Template.validate_resource_definitions()
795041c Deprecate Template.validate_resource_key_type()
bc1adff Add unit tests for invalid keys in resources
fdcba53 Prevent direct access to conditions in templates
b26d28b Don't add new abstract methods to Template class
17c61da Provide default implementation of _parser_condition_functions
09042cc Call base __init__ from FakeHTTPClient
9982fd8 Remove _get_client_args() from client_plugin
567e93a Use heat functions from plugin for upgrade
14616c1 raw_template_files_get always use context session
094a146 Allow any data to be passed to yaql function
0641625 Updated from global requirements
d8260b7 Correct link reference in heat/doc
a3df3f8 [api-ref] Rewrite the Heat API version
7afb32b Don't run neutron tests before upgrade
860b927 Updated from global requirements
2c5fdb4 Unify getting properties for method of Server res
c898c77 Properly evaluate yaql expressions
c19c71a Config logABug feature for heat api-ref
3fbc60e Add cinder qos specs constraint
6522de8 Minor fix for hot_spec.rst
831e23d Add OS::Cinder::QoSSpecs
bfd8d7b Provide 'or' function
3f64680 Add doc and reno note for environment merging
6aa4967 Aodh::Gnocchi resources observe reality implementation
b22cd9d Change type of X-Openstack-Request-Id
93bbf92 Updated from global requirements
c00e776 Fix senlin profile/policy type constraint check
2656e35 Delete mox.stubs in heat
97ceec2 Updated from global requirements
d446b2f Improve efficiency of SoftwareDeployment updates
3552246 Fix incorrect behaviour of repeat function
80bc4fb Convert props form delimited params to lists
f95a805 Validate that python3 is ready for loguserdata
e3cc29c Improve validation in OS::Monasca::Notification
9c79ee4 Add interrupt points for convergence check-resource operations
b5a7d14 Add new resource l7rule
3e6edb2 Clean imports in code
1e03e62 Minor fix for senlin cluster update
73a1eed Check action status instead of cluster status for cluster creation
3ba521e Updated from global requirements
8fcebfa Fix building derived inputs from a derived config
6fa325e Provide 'and' function
8d390d6 Stop using mox.stubs in heat
2726c95 Refactor senlin node update logic
3ca7493 Add 'resources' to error msg path if res' condition invalid
20ccad0 Updated from global requirements
aeb15bf Provides 'not' condition function
4c4d790 Provides 'if' intrinsic function
4af3247 Add a Macro class to heat.engine.function
4552e08 Support condition for output
bbb1dfb Fix SoftwareDeployment when dealing with deleted configs
af62cba Add functional test coverage for files API
d41452f Use correct args to resolve senlin node attributes
59476f6 Support condition for resource
0ff37ff Don't raise error in custom guidelines on IOError
af09656 Check action status instead of node status for node creation
25fa722 Add action check function to senlin plugin
a9a45e5 Updated from global requirements
e154961 Include heat_integrationtests in setup.py install
084d0eb Convergence cancel update implementation
654b334 Fix problems left in api-ref
78d56b1 Convergence: fix input to check_stack_complete
1bb21c5 Delete RoleAssignment if user/group does not exist
68c015a Refactor validate_resource_definitions()
4c8294d Use param_schema and merge strategy for merging
35a2dd9 Refactor to use param_schemata with env merge
5b0fe81 Improve deep merge for parameters
59b2a55 Move merge_environment to environment_util module
36a0ad2 Add valid merge strategies
68944d2 Migrate stacks from legacy to convergence engine
cd04e9e api-ref - software config status codes
772c897 api-ref - template version and functions
623c5a5 api-ref - stack actions
50f3841 api-ref - events
2286eae api-ref - stack snapshots
81d92be api-ref - stack resources
14a7304 api-ref - services/stack-outputs doc
5a43527 api-ref - stack identity usage in find calls
84b1d89 api-ref - build/resource-type/versions
c3fd83a Updated from global requirements
f3103c6 Add OS::Heat::Value resource
3202da7 Get ready for os-api-ref sphinx theme change
959b569 api-ref doc for stack (5)
b65b38d Add new environment section for merge strategies
9a768ce Correct mistaken parameters of test_hacking.py in tests
5210589 Move NoActionRequired exception back where it belongs
c5ebe66 Begin move of UpdateReplace back to its rightful location
285802b Add a replace_on_change option to the SW Config input schema
60e90c0 Add reno note on volumes.backups_enabled option
cba1098 Override client() for RoleAssignment resources
77a1011 EncryptedVolumeType observe reality implement
6cbfdb9 Cinder::VolumeType observe reality implementation
772ef5e api-ref doc for stack (4)
652a1a8 Add v2 glance image props
a2a028b api-ref doc for stack (3)
d130a72 api-ref doc for stack (2)
fa39e4b api-ref doc for stack (1)
7792776 Split stack api-ref doc into three files
e7e13ca Handle case where the Nova AZ extension is disabled
7954bcf Add OS::Cinder::Quota resource
c283f8b Don't use config option sqlite_db
eb8b9b8 Parse JSON as JSON when converting to YAML
bd1ea9e Log missing clients as WARNING instead of ERROR
9811510 Nova::HostAggregate observe reality implement
1f88c67 Remove tenant_safe flag from rpc and db api
e8f6c36 Clean imports in code
bc3b84f A context cache for Resource objects
3ab0ede Always eager load the raw_template for a stack
d072f6e Add validating of section 'conditions'
fab4fe7 Load resources from DB for resource list
fff6518 Run heat_integrationtests as a tempest plugin
2af6c6f Do not use env var conf defaults
6d8f296 Use a variable for which conf file to write to
6b576ff Use tempest.conf when running under tempest
80b8ce1 Don't manipulate config for admin creds
00a1814 Register heat tempest plugin
d21be7d Depend on tempest in test-requirements.txt
a2f5b5c Perform str_replace trying to match longest string first
9fc7b1d Support maps as argument for repeat/for_each
b1da94e Add validate for external resources.
c385388 Add support for a resource level external_id
6f3b9b7 Updated from global requirements
168a779 Use is_admin_project from context
d019947 Updated from global requirements
3cf288b no need to run integration tests in upgrade
ed08e4f Put common implementation of HOT/CFN into new class
d66ea4c Move 'validate_section' to hot/template.py
dd9ede9 Validate the input/output configs in Software Config
e79727d Single definition of top-level SoftwareConfig keys
d12161c Catch NotSupported when cancelling a nested stack
c801b22 Update HOT template guide preface
b1617c8 Set properties to before_props before calling handle_update
96e9ff0 Fix devstack plugin
49bc52e Updated from global requirements
6c2e0c9 Fix resouce group resource removal policy name inconsistency with DB
8ee3e58 Fix api-ref doc for software deployment.
1243dc3 Fix software config api-ref doc
025c4fe Don't change properties in regenerate_info_schema
05007cf Unit tests: Use Properties objects instead of dicts
52a3e06 Don't load stack when getting files
372a237 Fix path_in_stack for scheduler hints
56fad61 Adds some infos for stack notification
ec26be4 Fix null param for _create_arguments() for volume resource
1872a1d Rename swift.py to container.py for swift container resource
432e240 Fix iteration in floatingip's add dependencies method
4787c32 Updated from global requirements
e9030c7 Add scenario test_server_signal
9af4a0a Release note, api-ref for event list nested_depth
8bd5847 Make the removed resources in resource group visible on REST
db90ea2 Network validation in Manila
e2704de Remove additional purge test
aa2f3d2 Check policy of resource type again
395cfbd Adopt tempest plugin config namespace
70c4ab3 Support 'conditions' section for templates
d87c8be Fix two typos
0dabb9f Remove deprecated v1 cinder api support
73f0b0b Updated from global requirements
d2ba2b0 Fix str_split function when string is None
70422e6 New common constraint 'Expiration'
1faf5cf Updated from global requirements
998d47a Updated from global requirements
61bda3a modify the home-page info with the developer documentation
587d0b4 Explicitly set heat.conf logging_exception_prefix
1266323 Cancel nested stack creation when sibling fails
1075d7e Allow stack create operations to be cancelled
97a3670 Use handle_update_cancel() to cancel nested stack updates
2245aa1 Don't pass value_specs when creating internal port
d0f72ac Add Python 3.5 classifier and venv
e61542f Add an integration for server using neutron
f4a2d8d Fix get_endpoint() call in is_using_neutron
abde6bf Increase default sighup_timeout
2e6ce70 Always use upper-constraints
75f46e9 Don't log ERROR for remote stack exceptions
299d1f5 Silence swiftclient logging
002f815 Retry neutron resource deletion if the physical resource exists
904bed0 Allow for retries after certain resource delete failures
74815da Fix is_using_neutron
2d61ac7 Move cinder api version tests
f6cf44c Supplement:use assertEqual() instead of assertDictEqual()
cd125f3 Use keystone session from context in client plugin
10030be Fallback to db for resource show
f38be35 Use assertEqual() instead of assertDictEqual()
c5a4dea Add reno note for DNS functionality
4cfc9a2 Add dns properties and attributes
5797d34 Add dns constraints
9a248ad Check for empty sections in environment
fe4f250 Don't check alarm state when signaled
f019fb0 Fix some map_replace issues
bf8031a Updated from global requirements
f1868d0 Unskip AutoscalingLoadBalancerv2Test
61836db Purge deleted stacks for specific project
ee4515e Replace while with if in resolve function
897177b Add new resource l7policy
ab57f54 Add reno for map_replace and fix docs nit
acbcb6e Use exception_filter from oslo_utils
b862945 Implement map_replace intrinsic function
6926f3c Updated from global requirements
a23928c Implement the correct total ordering for scheduler.Timeout
7b1f4e6 Use TaskRunner.as_task() for the create retry delay
bcd6542 Allow a grace period when cancelling a stack update
b12ec30 Use a queue instead of an event to send messages
796cea6 Raise the last exception thrown into DependencyTaskGroup
991d41f Scheduler: Add a progress callback to TaskRunner
1de87a9 Always call TaskRunner._sleep()
0951799 Unit tests: add a test resource that takes multiple steps
ecdaa8e Scheduler: Allow TaskRunner to be used as a task
cac2bf7 Allow individual resources to control the cancellation grace period
8e2c1db Updated from global requirements
a9a645a Add direct_use=False flag to constructor of novaclient
cac0dea Skip AutoscalingLoadBalancerv2Test
891298e Add version keyword argument to RAX glanceclient
f629fb5 Do not show HIDDEN props in res type template
9ce43a9 Add reno for yaql function
db51ae1 Fix validate method definitions
456fe5f Add __ne__ built-in function
483c505 Do not raise NotFound for resource_get_all_* queries
236ee7e Add new resource Security Group Rule
1163e46 Scheduler: Allow a per-task customisable grace period
2ffbd91 Catch exceptions when cancelling tasks in DependencyTaskGroup
40036af Add a Resource plugin API for cancelling actions
d01b4dc Don't persist_state of IN_PROGRESS stack again
b125b81 Remove remaining methods from db objects
8450750 Remove the db object delete method
b8a529a Only call session.refresh from within db_api functions
38db9f4 Remove unnecessary checks
59fc53a Use Fedora 24 base image
5289454 Use to_policy_values from context for policy
ebe5179 Fix doc of OS::Heat::AutoScalingGroup outputs and outputs_list
221c928 Only use client_plugin() if default_client_name is set
316b5b6 Add stack files retrieval API
706cc04 Propage errors in post test hook
ab71c79 Correct reraising of exception
7a1a65b Create an admin context to refresh template files
26b0dd2 Do not populate unused stack and watch rule objects
cf4acdf Remove unused LOG to keep code clean
6c601f3 Updated from global requirements
5c3bb70 Updated from global requirements
7f2f6fe HAProxy uses milliseconds for its timeout values.
36bf170 Improve validation for some functions
7f8e3ff Aodh::Alarm observe reality implementation
e95d912 Hidden StructuredDeployments and SoftwareDeployments
2d194eb Add networking-sfc port-pair resource plug-in
7cb7432 Allow admins to create public image by default
bc78253 To delete the keypair preparing for update replacement
150a013 Fail the test run if image download fails
d6e36c2 Improve validation during template.parse
fa33a1d Do not show HIDDEN props in res type show
d995aeb Fix empty values validation in nova server
25639d8 Correct doc about os-collect-config metadata polling
479cf14 sqlalchemy tests don't assume same session
459086f Convergence: Cancel message
906a0ed Convergence: Fix concurrent update resource delete
5465579 Add rolling update for SDG
8a4df57 Change namespace 'ceilometer' to 'aodh'
26bab91 Deprecate combination alarm
42fb929 Migrate to aodh for gnocchi alarms
beb86a2 Correct parameter when raise NotSupported exception
4f012ab Updated from global requirements
b47c002 Keep encrypted_param_names environment internal to heat
50e638b Fix another test race in test_update_restricted
fd1e9f7 Fix Broken Link in Contributing > Blueprints Doc
2c31974 Add key/value support for orchestrating images
dd093f1 Use oslo.context's from_environ for creating context
8479545 Use openstack commands for prepare_test_network.sh
0d33c45 Use latest HOT version in Resource.build_template_dict
68fa82c Move _RESOURCE_KEYS down to class level
dd45786 Add information about Resolve rule to docs
4a79f7c Migrate to aodh for OS::Ceilometer::Alarm
ebbff16 Use openstack command for prepare_test_env.sh
152b03b Add default release names for template versions
cefd3d0 Add a sleep after delete before purging
ce78ba1 Correct the usage of properties.get() with default value
ffda522 Config: no need to set default=None
6c4cd9e Use default client name for cinder resources
add4dc3 Replace raw_input with input to make PY3 compatible
dbf27c3 Revert "Skip AutoScalingSignalTest.test_signal_during_suspend"
ad2b579 Use LOG.exception() properly
6e4da4e Make sure to update image tags successful
558a8cd Correct message when extension is not available
491937c Add keystone_session property to context
0e5bae8 Updated from global requirements
668ceb6 Careful with OS::Nova::Server dependencies on subnets
9749835 Install Guide: Set bug project
1424a76 Wait for stack status instead of group status
faec3a0 Decouple hot and cfn for outputs
ea6a743 Remove duplicate code of software deployment resource
690b1a4 Add aodh client plugin
5c7bd7f Updated from global requirements
7ea3e68 Skip AutoScalingSignalTest.test_signal_during_suspend
920f661 Updated from global requirements
7c389dd Fix some spelling mistakes in heat as follows:
a3860b1 Wait for 404 on floatingip delete
744527f Deal with cinder-backup service absent
a5cda7a Added refs_map attribute to AutoScalingGroup
fb76364 Add constraint for Security Group
9d239cc Don't use stored context to reset stacks
4bf062c Fix non-uniqueness error message for image
e6ef39a Updated from global requirements
750d4e4 Minor reorg of sqlalchemy encrypt test functions
9e007ac Add context to stack lock function arguments
a65bd2b Replace model_query with direct query call
419c9ab del _session(), use context.session directly
4ed4367 Be consistent about context first argument in db api
e14fafc Fix service type for Magnum resources
1359887 Check immutable and update_allowed conflict in schema validation
82f3817 Use Zaqar signed URLs in software deployment
9d0878c Commented config for unit test sql logging
f5c32ad Added heat.resource_type custom constraint
4fdf72b Make template available to parameter constraint checking
4e0d1e0 Add in missing log translation hints
ccdb9c9 Show 'deletion_time' for stack-list/stack-show apis
9ed1288 Add launch-instance to install-guide
fefb0b1 Updated from global requirements
145a683 Deprecate lbaas v1 resources
2b41589 [api-ref] Correct stack-list api-ref
0c6236d Add period property to Monasca Notification resource
5676298 Remove deprecated auth_plugin config
87a37f5 Sync context with oslo.context
6196907 Fix typo in LBaaS support
6769253 Improve unit tests for stack-update-cancel
f1ea02f Improve translation properties
992e3b2 Use the correct action for failure reason
9101cd4 Add wait_sec for test_stack_update_from_failed
5d99936 Pass input_values when creating SoftwareDeployment resources
c85cae5 Fix test_update_restricted timeouts due to timestamp resolution
43b83b8 Remove heat.openstack.common.notifier supports
3b0f8ad Add integration tests for admin actions
ac86702 Authorize super admin actions on all projects
353178b Run orig jobs without convergence engine
54caa85 Set nested_depth when creating Stack from db
32ade7a Implement event list nested-depth
ed8a086 on-delete cascade rule for resource_data
406dd7f Fix env passed to test_replace
2a04ea4 Do a single query to fetch all event_list stacks
7bfbace Use Event versioned object for event_list formatting
1783de3 Updated from global requirements
dd272a2 Adds monasca client plugin config support in heat.conf
d9855df Fix tests on Neutron port behavior
2195998 Monasca: Don't pass keyword arguments of value None
13c338f Clean up tests setup
39cb8ef Updated from global requirements
9d9fd60 Fix broken links in developing_guides index
ac4df48 Fix comment/doc for 1.28 RPC version
dfbd237 Remove _show_resource in mistral
f1c7b6d Updated from global requirements
50b1182 Fix creating SDGroup with no properties
4c54183 Don't hard code subnet
8cc5b0c Enable convergence by default
94d6f34 Ignore notfound error when delete image tags
e57a293 Make sure glance image create success with tags
3a93b12 Add install-guide for heat
edfc99a Pass filters to iter_resources for nested
d9459c4 Fix syntax error in yaql hot spec example
59713c5 Pass keystone session to clients
34b372d Use generic auth plugins
5566e6f Get rid of gratuitous use of six.iterkeys()
37b3d1d Don't use default None for params in handle_update
490702f Downgrade some exception logs to INFO level
9a73e0b Network resolving in Manila when only subnet passed
3bdd2cb Convergence: Catch exceptions in restore_prev_rsrc
4866280 Convergence: Fix unit tests
f448693 Fix building query key for ceilometer alarm
a07dcce Migrate to nova api version 2.1
bfa7f85 Get rid of Parameters._validate_template_parameters()
2b24b1c Updated from global requirements
de99472 DB query to get all resources by the root stack
2347fd7 Updated from global requirements
1a224a3 Allow deletion_policy to be lowercase in HOT
0e30ace Reformat HOT version history
091ed70 Fix the definition of has_nested()
01cc407 Add refs attribute to AutoScalingGroup
02c7439 Imported Translations from Zanata
13f8527 [api-ref] Correct service-list api-ref
8a36f99 Updated from global requirements
e0e92b9 Move heat_keystoneclient to clients package
4f3bdcc Use get_auth_ref() rather than auth_ref property
ef4cf62 Move some functions to service_utils
c9ebf50 Updated from global requirements
e4fe6d2 Allow deletion policies to be versioned in HOT
cb565e3 Correct the docs on deletion_policy in the HOT spec
9cf021a Convergence: DB api to get all active resources of stack
f5e7a31 Convergence: Throttle to sync point updates
d898623 Improve validation of cinder volume resource
0b9d2cb Updated from global requirements
8a2f821 Updated from global requirements
74d3131 Keep Trace Back in Exception
90faf89 Fix nested identifier when not created
06a4ad7 Updated from global requirements
83966b7 Add `template_dir` to config
c3a83a8 [api-ref] Added template-function-list
d6be252 Correct the validation of server 'networks'
3b10ddc Deprecate Stack.resource_restart()
c789a98 Ignore NotFound exception in metadata_set
5b2bcd8 Updated from global requirements
fb7f838 Correct redundancies in Scheduler Hints docs
de96d03 Fix resource loading in resource filtering
60d9fb9 Correct type of HeatTemplate20161014 to cfn
c2208f1 Declare and use keyword args for Stack.get_all
fef94d0 De-duplicate raw_template.files
c67e601 Adds clarity to the default value of num_engine_workers
f5b64b3 Add to resource_schema returning description
42bfc8a Add to resource-type-list returning description
1d6cc2d Provides 'equals' intrinsic function
534dfe4 Don't support floating ip if only specify 'network'
5da09ea Allow creation of cache classes associated with a context
c62e1b3 Use a weakref for the data object context
0ef5d60 Don't load nested stack to build the identifier
56b95a0 Lazy-load stack tags
e416943 Avoid full stack load for identify_stack
b3c228d Stack list does direct stack object query
0f6d61e Simplify url_for in client_plugin
44862d9 Use keystoneauth1 instead of keystoneclient.auth
e585676 Fix GetAttThenSelect for convergence
5f1d3bb Apply ResourceGroup blacklist at create time
ea6ae8b string parameter type mismatch
4c4301f Add wait_secs to test_stack_update_from_failed_patch
222f0fc Updated from global requirements
af7f317 Revert "Don't use stored context to reset stacks"
ad97123 resource list filtering api-ref update
4635f66 template validate ignore errors api-ref update
516a543 Fixes resource filter to handle physical_resource_id properly
2ec5d94 Convergence: Set traversal to empty string on failure
4ebc89b Refactor resource update function to reduce complexity
697a33a Updated from global requirements
7267a36 Fixed variable shadowing in test_software_deployment
1d8a6a9 Let setup.py compile_catalog process all language files
43dde8b Convergence: show parameters while deleting stack
7fc8527 Mark monasca resources supported in release notes
4d6e3a9 Glance image tag support release notes
22d2149 Updated from global requirements
05ea885 Added refs_map attribute to resource groups
d4b096a Remove html_static_path from api-ref
d8fefed Fix Cloud Server image/flavor combination validation
832f15b doc: fix issue in template_guide/software_deployment
026cc94 Don't use stored context to reset stacks
c9751d4 migrate to upstream os-api-ref
022eaf8 Fix small nits for tests introduced in bug/1571975
75b13f7 Don't translate when resource_validate=False
b3de0a9 Updated from global requirements
a52b821 Adds default policy rule for resources limited to administrator
7b73474 Clarified servers property description for SoftwareDeploymentGroup
27dd19d Allow resources to delay polling
8f83305 Allow scheduler tasks to request longer wait periods
c92e5a2 Add devstack plugin
14b7600 Copy devstack code to heat tree
95ad071 Fix the documentation for HIDDEN support status
7c17582 Remove unnecessary usage of stack_name
66b6490 Set security_groups when create internal ports for nova server
0321d86 Correct filters for resource search
61b7606 RDO-Manager name change
3d17383 Migrate nova_instance to physical_resource_id
4181eda Revert "Add timeout for software deployments"
149447c Updated from global requirements
bcadd55 Lazy-load context information requiring Keystone calls
e7a3b38 Use original request context for logging
2cbcd6f Improve logging of unexpected exceptions
2c3def1 Fix api-ref generation errors
a3a0cec Add timeout for software deployments
2786593 Avoid passing templates/files over RPC
9a650a5 RPC API: Add a template_id parameter to stack_create/update
fdbb08c Make cinder resources available based on extensions
45d79cb Convergence: Un-skip functional test
6b8f1ae Fix heat-keystone-setup-domain
080ace0 Fixes cooldown logic throws ValueError
a9b5cc4 Makes monasca plugin as supported
ad52b42 Updated from global requirements
c64b2cd Break reference cycle in KeystoneClient plugins
f46c3b4 Add check for server existence on software deployment delete
afeee48 Remove usages of :linenos: in docs
b9a61b8 Add yaql function
6f361f7 Fix DBDeadlock error in stack update
530544b Add deployment ID to deploy signal events
8ac7fa0 Allow the server name limit to be configurable
a7b8378 Adds tag support for glance image resource plugin
9ccb094 Adding two parameters into Software configuration
cf49093 Eager fetch stack tags with a subqueryload
50f5142 Remove stack ObjectField from resource
ef47b4c Updated from global requirements
4200c6c Refactor confusing code in custom_guidelines.py
e78c287 Support neutron QoSDscpMarkingRule resource plugin
00d3677 Enable client plugin to support dynamic api version
a9f38e1 Cleanup magnum client test case
c310070 Use '--visibility' instead of '--is-public'
6e2d1a4 Exclude plugins from custom_guidelines.py
6f13be8 Update log levels
94480d4 Revert "Replace SD RPC polling by long RPC call"
4170566 Migrate API documentations into the Heat tree
8cb315a Check for missing param schema in encryption utility
59084fa Add --verbose-update-params option to heat-manage
0fb2e0f Make parameter decryption more robust
d7b1246 Reset env.encrypted_param_names on stack update
4b46151 Delete snaphots on deleting stack
23cc156 Unit tests: Don't use ResourceDefinition as cfn snippet
52925a9 Use ResourceDefinition API in resource_facade
f1751ae Don't treat ResourceDefinition as cfn template in resources
b3e5932 Deprecate the Resource.parsed_template() method
0496c3c Unit tests: Eliminate deprecated use of ResourceDefinition.Diff
e59c30a Don't use two different names for the same flag
8f98d34 Add --insecure in CURL if set True in client option
74db0b6 Updated from global requirements
9561c54 Removes duplicate code autoscale_complete
5e7d1e0 Make physical_network property optional
51d913a Check for worker_service initialization
829e80d Convergence: Refactor worker
d19c624 Make RPC call to abandon nested stack
633e745 Revert "Enable abandon option to nested resource"
bc7e503 use thread safe fnmatch
fe8f0cd Updated from global requirements
9f046cb Clarify the help text for error_wait_time
7f801df Break reference cycle between ResourceRegistry and ResourceInfo
ec5e5c5 Break reference cycle between Environment and ResourceRegistry
a78303b Don't access `_stored_properties_data`
85896cf Remove redundant properties construction
19d1c9a Add RESOLVE translation for some sahara resources
ade1772 Updated from global requirements
d815a06 Fix properties usage in ResourceChain update
fa253bb Added unit tests for get_template
c2c5301 Imported Translations from Zanata
b0ca694 Add environment retrieval API
4bd0f63 Remove tests for show attribute in cinder
9c1f87b Add senlin to README.rst (github main page)
fa67f34 Use to_dict() instead for cinder resources
84da9e5 Remove conditional import
7f07e97 Fix stack deleting problem in magnum stacks
7977f9f Add command to reset one stack status
b7b7102 Magnum::Bay observe reality implementation
afbbe07 Use messaging notifications transport instead of default
ee9ce1d Updated from global requirements
f89cfcc Use the ResourceDefinition.Diff API in resources
75b5678 Implement diffs of ResourceDefinitions
d76e825 Unit tests: use frozen_definition() in update tests
6d786e6 Reinstate deprecation warnings
dc28090 Remove _show_resource from barbican resources
a450444 Designate::Record observe reality implementation
36eeff1 Designate::Domain observe reality implementation
dfad3ad Change type of raised exception in translation
025f155 Updated from global requirements
5646811 Fix doc build if git is absent
3ed5948 Set enforce_type=True on config overrides in tests
4ee0e8d Updated from global requirements
e64283f Add attribute for extra specs to Nova::Flavor
8c0efbf Squash database patches
5d32fae Rename source_path in translation
45cf8b9 Remove some redundant resolve_* functions
2d18dc0 Use RESOLVE translation for lbaasv2 resources
905839a Use RESOLVE translation rules for vpnservice
e1091f7 Use RESOLVE rule for lbaasv1 resources
6d6bab7 Use RESOLVE translation for more neutron resources
eff0ce0 Use RESOLVE translation for more sahara resources
b0f97c3 Imported Translations from Zanata
8f630a8 Add fixtures into test-requirements
d0f0998 Wording fix to list index error message
10ba949 Update the Administrator Guide links with new ones
1df6d2a Support string index for list in get_param
a709637 Replace SD RPC polling by long RPC call
0d0ea75 Updated from global requirements
681f2e9 Updated from global requirements
e79f28d Fix unfortunate spelling error
802f42f Keystone::User: do not update if no changes
120a1e7 Added new property 'image' for bdm_v2 in Nova Server
f185892 Add information about ResourceGroup attributes
8fde8e7 Fix typo `after_porps` in resource
5fa84f2 Updated from global requirements
2009e57 Check for missing/unexpected data in encryption utility
2f46d24 Don't scale when action is not complete
480271d Don't try scaling when no change in size
7a0709a Nova::Flavor get_live_state implementation
be03185 Convergence: Ignore not found when releasing lock
2aed488 Remove the unused parameter in method _build_properties()
7933a8b Don't validate template resource parameter defaults in parent
72d3599 Refactor unit tests for encryption utility and add assertions
2897634 Avoid reference loops in DependencyTaskGroup
bea576f Sync integration tests requirements
d263687 Warn against API calls in plugin guide
950505d Revert "Check RBAC policy for nested stacks"
354f1bc Revert "Check RBAC policy for nested stacks"
184b09a Imported Translations from Zanata
ed47b50 Add volume_driver in OS::Magnum::BayModel
0c407b8 Add translation rule to delete ssh auth key from Magnum baymodel
e6c9076 Use a context manager to re-raise local exceptions in StackResource
db06ee4 Increase timeout of WaitCondition due to ConcurrentTransactions
8f370d6 Increase timeout of WaitCondition due to ConcurrentTransactions
145be13 Imported Translations from Zanata
0ab68f8 Add translation rule to delete ssh auth key from Magnum baymodel
a2a6fa7 Fix update issues with autoscaling group
ab8e7a2 Avoid cooldown when group size does not change
e767eb4 Raise explicit exception when deleting config which has been referenced
1ecf93c Mark resources UPDATE_COMPLETE when they request replacement
f1da4f0 Updated from global requirements
99a14f5 Add update_replace_value property to test resource
28184c8 Fix handle_delete of HostAggregate resource
537fdee Add validate for babican secret
678fa7d Imported Translations from Zanata
6bd7352 Fix update issues with autoscaling group
77a4a6d Improve guidelines of using devstack of heat
f0497e0 Add id and name properties for flavor resource
f9e3c97 Introduce 'immutable' of parameters
4307f87 Make encryption script log exception and continue
151e8b8 Stop engine service correctly
dd50ac6 Create integration tests requirements on the fly
c82b752 Remove property "ssh_authorized_key" from OS::Magnum::BayModel
07847b6 Removing some redundant words
7479630 Imported Translations from Zanata
45a7d1d Set OS_PROJECT_NAME in grenade script
7adce61 Add lbaas v2 scenario test
c13c944 Reset stack status after resources
ec0d321 oslo config clients_xxx enabled for all supported services
443f867 Fix race condition for WaitCondition with several signals
06d58ff Refactor BaseWaitConditionHandle._metadata_format_ok()
2494a20 Downgrade WaitCondition logs
71861f4 Handling concurrent transactions in metadata_set method
a0aee7e Imported Translations from Zanata
0e84651 Make sure to delete the credentials when stack deletion
018bbd6 Add a new HOT template version for Newton
4446b86 Don't create an "update task" inside a try block
f8861a0 Add validation check for barbican order
4ed57d8 Remove property "ssh_authorized_key" from OS::Magnum::BayModel
8554d06 Tidy up BarbicanClientPlugin
55713b9 Use domain env variables as defaults
6cae574 Add validation for mistral cron trigger
cbed623 Use region from config in functional tests
2d95f8c Restrict use of iteritems, iterkeys and itervalues
c4c33c2 Added constraint for mistral workflow
cb3183d Fix race condition for WaitCondition with several signals
82b7440 Handling concurrent transactions in metadata_set method
368491c Add retries to avoid dberror for user_creds_delete
8a6566d Imported Translations from Zanata
9597110 Added constraint for barbican order
23eb545 Imported Translations from Zanata
e00fce9 Made workflow name required in crontrigger
419da65 Remove unknown parameters in patched update
9b9584d Imported Translations from Zanata
8f3d827 Make sure to delete the credentials when stack deletion
6c25e83 Avoid cooldown when group size does not change
2ef91a7 hacking log warn
b828eae Imported Translations from Zanata
45722e6 Add retries to avoid dberror for user_creds_delete
90fc4fe Remove unknown parameters in patched update
a7403a9 Explicitly naming resources in "unsupported" warnings
42b165b Add length constraint for workflow tasks
38c7d18 Imported Translations from Zanata
c4fde70 Convergence: Fix rollback considered as failed concurrent update
dfff614 Fixes the sequence of release notes
e033549 Added missing dot
8399481 Update reno for stable/mitaka
ddbe642 Update .gitreview for stable/mitaka
7ccf4d0 Explicitly naming resources in "unsupported" warnings
0c8d914 Use EntityNotFound instead of SyncPointNotFound
f2bf265 Pass environment variables of proxy to tox
a12a0fc Use ClientPlugin.ignore_not_found as a context manager
Diffstat (except docs and test files)
-------------------------------------
.gitignore | 4 +-
.gitreview | 1 +
HACKING.rst | 9 +
README.rst | 2 +
api-ref/source/conf.py | 238 +
api-ref/source/index.rst | 24 +
api-ref/source/v1/build-info.inc | 45 +
api-ref/source/v1/events.inc | 214 +
api-ref/source/v1/general-info.inc | 13 +
api-ref/source/v1/index.rst | 35 +
api-ref/source/v1/parameters.yaml | 1618 ++++
api-ref/source/v1/resource-types.inc | 201 +
api-ref/source/v1/resources.inc | 298 +
api-ref/source/v1/samples/build-info-response.json | 8 +
.../source/v1/samples/config-create-request.json | 28 +
.../source/v1/samples/config-create-response.json | 32 +
.../source/v1/samples/config-show-response.json | 32 +
.../source/v1/samples/configs-list-response.json | 8 +
.../v1/samples/deployment-create-request.json | 8 +
.../v1/samples/deployment-create-response.json | 14 +
.../v1/samples/deployment-metadata-response.json | 130 +
.../v1/samples/deployment-show-response.json | 14 +
.../v1/samples/deployment-update-request.json | 10 +
.../v1/samples/deployment-update-response.json | 19 +
.../v1/samples/deployments-list-response.json | 21 +
api-ref/source/v1/samples/event-show-response.json | 33 +
.../source/v1/samples/events-find-response.json | 5 +
.../source/v1/samples/events-list-response.json | 50 +
.../v1/samples/resource-metadata-response.json | 6 +
.../v1/samples/resource-schema-response.json | 30 +
.../source/v1/samples/resource-show-response.json | 27 +
.../resource-type-template-hot-response.json | 57 +
.../samples/resource-type-template-response.json | 57 +
.../resource-types-list-advanced-response.json | 24 +
.../v1/samples/resource-types-list-response.json | 7 +
.../source/v1/samples/resources-list-response.json | 25 +
.../source/v1/samples/services-list-response.json | 30 +
.../source/v1/samples/stack-abandon-response.json | 73 +
.../stack-action-cancel-update-request.json | 3 +
.../v1/samples/stack-action-check-request.json | 3 +
.../v1/samples/stack-action-resume-request.json | 3 +
.../v1/samples/stack-action-suspend-request.json | 3 +
api-ref/source/v1/samples/stack-adopt-request.json | 33 +
.../source/v1/samples/stack-create-request.json | 32 +
.../source/v1/samples/stack-create-response.json | 11 +
.../samples/stack-environment-show-response.json | 9 +
.../source/v1/samples/stack-export-response.json | 60 +
.../v1/samples/stack-files-show-response.json | 3 +
.../v1/samples/stack-find-delete-response.json | 5 +
api-ref/source/v1/samples/stack-find-response.json | 5 +
.../v1/samples/stack-output-show-response.json | 8 +
.../v1/samples/stack-outputs-list-response.json | 8 +
.../source/v1/samples/stack-preview-response.json | 171 +
api-ref/source/v1/samples/stack-show-response.json | 33 +
.../source/v1/samples/stack-snapshot-request.json | 3 +
.../source/v1/samples/stack-snapshot-response.json | 8 +
.../samples/stack-snapshot-restore-response.json | 5 +
.../v1/samples/stack-snapshot-show-response.json | 47 +
.../v1/samples/stack-snapshots-list-response.json | 12 +
.../v1/samples/stack-update-preview-response.json | 67 +
.../source/v1/samples/stack-update-request.json | 28 +
.../source/v1/samples/stack-update-response.json | 5 +
.../source/v1/samples/stacks-list-response.json | 24 +
.../samples/template-functions-list-response.json | 44 +
.../source/v1/samples/template-show-response.json | 28 +
.../v1/samples/template-validate-request.json | 3 +
.../v1/samples/template-validate-response.json | 41 +
.../v1/samples/template-versions-response.json | 44 +
.../source/v1/samples/versions-list-response.json | 14 +
api-ref/source/v1/services.inc | 65 +
api-ref/source/v1/software-config.inc | 513 ++
api-ref/source/v1/stack-actions.inc | 203 +
api-ref/source/v1/stack-outputs.inc | 99 +
api-ref/source/v1/stack-snapshots.inc | 253 +
api-ref/source/v1/stack-templates.inc | 153 +
api-ref/source/v1/stacks.inc | 1015 +++
api-ref/source/v1/status.yaml | 62 +
api-ref/source/v1/versions.inc | 41 +
bin/heat-keystone-setup-domain | 18 +-
config-generator.conf | 2 +-
contrib/heat_docker/setup.cfg | 2 +-
contrib/rackspace/heat_keystoneclient_v2/client.py | 14 +-
contrib/rackspace/rackspace/clients.py | 2 +-
.../rackspace/rackspace/resources/auto_scale.py | 7 +-
.../rackspace/resources/cloud_loadbalancer.py | 11 +-
.../rackspace/rackspace/resources/cloud_server.py | 27 +-
contrib/rackspace/setup.cfg | 2 +-
devstack/README.rst | 15 +
devstack/files/apache-heat-api-cfn.template | 27 +
devstack/files/apache-heat-api-cloudwatch.template | 27 +
devstack/files/apache-heat-api.template | 27 +
devstack/files/apache-heat-pip-repo.template | 15 +
devstack/files/debs/heat | 1 +
devstack/lib/heat | 503 ++
devstack/plugin.sh | 54 +
devstack/settings | 10 +
devstack/upgrade/resources.sh | 13 +-
devstack/upgrade/upgrade.sh | 22 +-
etc/heat/environment.d/default.yaml | 7 +-
etc/heat/policy.json | 15 +-
etc/heat/templates/AWS_CloudWatch_Alarm.yaml | 26 +-
etc/heat/templates/AWS_RDS_DBInstance.yaml | 6 +-
heat/api/aws/ec2token.py | 3 -
heat/api/aws/exception.py | 1 -
heat/api/cfn/v1/stacks.py | 4 -
heat/api/cloudwatch/watch.py | 6 +-
heat/api/middleware/fault.py | 1 -
heat/api/openstack/v1/__init__.py | 15 +-
heat/api/openstack/v1/events.py | 32 +-
heat/api/openstack/v1/software_configs.py | 13 +-
heat/api/openstack/v1/stacks.py | 81 +-
heat/api/openstack/v1/util.py | 2 +-
heat/api/openstack/v1/views/stacks_view.py | 8 +-
heat/cloudinit/loguserdata.py | 14 +-
heat/cmd/manage.py | 59 +-
heat/common/auth_password.py | 19 +-
heat/common/config.py | 63 +-
heat/common/context.py | 275 +-
heat/common/endpoint_utils.py | 11 +-
heat/common/environment_format.py | 15 +-
heat/common/environment_util.py | 168 +
heat/common/exception.py | 34 +-
heat/common/heat_keystoneclient.py | 569 --
heat/common/i18n.py | 4 +-
heat/common/messaging.py | 54 +-
heat/common/netutils.py | 36 +
heat/common/param_utils.py | 10 +
heat/common/pluginutils.py | 24 +
heat/common/policy.py | 10 +-
heat/common/service_utils.py | 13 +
heat/common/template_format.py | 70 +-
heat/common/timeutils.py | 10 +
heat/db/api.py | 102 +-
heat/db/sqlalchemy/api.py | 708 +-
.../sqlalchemy/migrate_repo/versions/028_havana.py | 184 -
.../migrate_repo/versions/029_event_id_to_uuid.py | 24 -
.../migrate_repo/versions/030_remove_uuidutils.py | 32 -
.../migrate_repo/versions/031_stack_lock.py | 34 -
.../migrate_repo/versions/032_decrypt_method.py | 26 -
.../migrate_repo/versions/033_software_config.py | 69 -
.../versions/034_raw_template_files.py | 25 -
.../migrate_repo/versions/035_event_uuid_to_id.py | 147 -
.../versions/036_stack_domain_project.py | 24 -
.../versions/037_migrate_hot_template.py | 59 -
.../versions/038_software_config_json_config.py | 23 -
.../versions/039_user_creds_nullable.py | 22 -
.../040_software_deployment_no_signal_id.py | 21 -
.../versions/041_migrate_hot_template_resources.py | 70 -
.../042_software_deployment_domain_project.py | 24 -
.../versions/043_migrate_template_versions.py | 57 -
.../migrate_repo/versions/044_snapshots.py | 45 -
.../migrate_repo/versions/045_stack_backup.py | 35 -
.../migrate_repo/versions/046_properties_data.py | 25 -
.../versions/047_stack_nested_depth.py | 45 -
.../048_resource_id_server_default_none_psql.py | 24 -
.../versions/049_user_creds_region_name.py | 24 -
.../migrate_repo/versions/050_stack_tags.py | 24 -
.../migrate_repo/versions/051_service.py | 42 -
.../migrate_repo/versions/052_convergence_flag.py | 23 -
.../versions/053_stack_name_tenant_indexes.py | 27 -
.../migrate_repo/versions/054_stack_tags_table.py | 39 -
.../migrate_repo/versions/055_stack_convg_data.py | 90 -
.../versions/056_convergence_parameter_storage.py | 113 -
.../versions/057_resource_uuid_to_id.py | 262 -
.../versions/058_resource_engine_id.py | 23 -
.../migrate_repo/versions/059_sync_point.py | 47 -
.../versions/060_resource_convg_data.py | 42 -
.../versions/061_status_reason_longtext.py | 36 -
.../sqlalchemy/migrate_repo/versions/062_kilo.py | 362 +
.../migrate_repo/versions/062_parent_resource.py | 23 -
.../versions/072_raw_template_files.py | 40 +
.../073_resource_data_fk_ondelete_cascade.py | 44 +
heat/db/sqlalchemy/migration.py | 2 +-
heat/db/sqlalchemy/models.py | 78 +-
heat/db/sqlalchemy/utils.py | 10 +
heat/db/utils.py | 14 +-
heat/engine/api.py | 144 +-
heat/engine/attributes.py | 14 +-
heat/engine/cfn/functions.py | 278 +-
heat/engine/cfn/template.py | 214 +-
heat/engine/check_resource.py | 392 +
heat/engine/clients/__init__.py | 19 +-
heat/engine/clients/client_plugin.py | 202 +-
heat/engine/clients/os/aodh.py | 48 +
heat/engine/clients/os/barbican.py | 42 +-
heat/engine/clients/os/ceilometer.py | 19 +-
heat/engine/clients/os/cinder.py | 93 +-
heat/engine/clients/os/designate.py | 13 +-
heat/engine/clients/os/glance.py | 35 +-
heat/engine/clients/os/heat_plugin.py | 20 +-
heat/engine/clients/os/keystone.py | 194 -
heat/engine/clients/os/keystone/__init__.py | 132 +
.../clients/os/keystone/heat_keystoneclient.py | 569 ++
.../clients/os/keystone/keystone_constraints.py | 77 +
heat/engine/clients/os/magnum.py | 14 +-
heat/engine/clients/os/manila.py | 9 +-
heat/engine/clients/os/mistral.py | 22 +-
heat/engine/clients/os/monasca.py | 35 +-
heat/engine/clients/os/neutron/__init__.py | 64 +-
.../clients/os/neutron/neutron_constraints.py | 4 +
heat/engine/clients/os/nova.py | 28 +-
heat/engine/clients/os/sahara.py | 10 +-
heat/engine/clients/os/senlin.py | 18 +-
heat/engine/clients/os/swift.py | 10 +-
heat/engine/clients/os/trove.py | 14 +-
heat/engine/clients/os/zaqar.py | 23 +-
heat/engine/conditions.py | 79 +
heat/engine/constraint/common_constraints.py | 86 +-
heat/engine/constraint/heat_constraints.py | 45 +
heat/engine/constraints.py | 40 +-
heat/engine/dependencies.py | 6 +-
heat/engine/environment.py | 100 +-
heat/engine/event.py | 29 +-
heat/engine/function.py | 90 +-
heat/engine/hot/functions.py | 697 +-
heat/engine/hot/template.py | 378 +-
heat/engine/output.py | 51 +
heat/engine/parameters.py | 61 +-
heat/engine/properties.py | 54 +-
heat/engine/resource.py | 580 +-
heat/engine/resources/__init__.py | 4 +-
heat/engine/resources/alarm_base.py | 211 +
.../resources/aws/autoscaling/autoscaling_group.py | 124 +-
.../resources/aws/autoscaling/launch_config.py | 2 +-
heat/engine/resources/aws/ec2/instance.py | 18 +-
heat/engine/resources/aws/s3/s3.py | 4 +-
heat/engine/resources/openstack/aodh/__init__.py | 0
heat/engine/resources/openstack/aodh/alarm.py | 312 +
.../resources/openstack/aodh/gnocchi/__init__.py | 0
.../resources/openstack/aodh/gnocchi/alarm.py | 225 +
.../resources/openstack/barbican/container.py | 6 -
heat/engine/resources/openstack/barbican/order.py | 17 +-
heat/engine/resources/openstack/barbican/secret.py | 50 +-
.../resources/openstack/ceilometer/__init__.py | 0
.../engine/resources/openstack/ceilometer/alarm.py | 474 --
.../openstack/ceilometer/gnocchi/__init__.py | 0
.../openstack/ceilometer/gnocchi/alarm.py | 191 -
.../openstack/cinder/encrypted_volume_type.py | 29 +-
.../engine/resources/openstack/cinder/qos_specs.py | 95 +
heat/engine/resources/openstack/cinder/quota.py | 175 +
heat/engine/resources/openstack/cinder/volume.py | 112 +-
.../resources/openstack/cinder/volume_type.py | 50 +-
.../engine/resources/openstack/designate/domain.py | 8 +
.../engine/resources/openstack/designate/record.py | 9 +
heat/engine/resources/openstack/glance/image.py | 126 +-
.../resources/openstack/heat/autoscaling_group.py | 73 +-
.../resources/openstack/heat/cloud_config.py | 6 +-
.../engine/resources/openstack/heat/cloud_watch.py | 6 +-
.../resources/openstack/heat/ha_restarter.py | 5 +-
.../resources/openstack/heat/instance_group.py | 10 +-
heat/engine/resources/openstack/heat/multi_part.py | 6 +-
.../resources/openstack/heat/remote_stack.py | 17 +-
.../resources/openstack/heat/resource_chain.py | 19 +-
.../resources/openstack/heat/resource_group.py | 92 +-
.../resources/openstack/heat/scaling_policy.py | 84 +-
.../resources/openstack/heat/software_component.py | 19 +-
.../resources/openstack/heat/software_config.py | 70 +-
.../openstack/heat/software_deployment.py | 410 +-
.../resources/openstack/heat/structured_config.py | 18 +-
.../resources/openstack/heat/test_resource.py | 23 +-
heat/engine/resources/openstack/heat/value.py | 110 +
.../openstack/heat/wait_condition_handle.py | 21 +-
heat/engine/resources/openstack/keystone/group.py | 2 +-
.../engine/resources/openstack/keystone/project.py | 2 +-
.../openstack/keystone/role_assignments.py | 33 +-
heat/engine/resources/openstack/keystone/user.py | 16 +-
heat/engine/resources/openstack/magnum/bay.py | 14 +-
heat/engine/resources/openstack/magnum/baymodel.py | 57 +-
.../resources/openstack/manila/share_network.py | 44 +-
.../resources/openstack/mistral/cron_trigger.py | 21 +-
.../engine/resources/openstack/mistral/workflow.py | 21 +-
.../openstack/monasca/alarm_definition.py | 32 +-
.../resources/openstack/monasca/notification.py | 103 +-
.../resources/openstack/neutron/extraroute.py | 3 +-
.../resources/openstack/neutron/floatingip.py | 27 +-
.../openstack/neutron/lbaas/health_monitor.py | 6 +-
.../resources/openstack/neutron/lbaas/l7policy.py | 271 +
.../resources/openstack/neutron/lbaas/l7rule.py | 216 +
.../resources/openstack/neutron/lbaas/listener.py | 29 +-
.../openstack/neutron/lbaas/loadbalancer.py | 18 +-
.../resources/openstack/neutron/lbaas/pool.py | 23 +-
.../openstack/neutron/lbaas/pool_member.py | 17 +-
.../resources/openstack/neutron/loadbalancer.py | 61 +-
heat/engine/resources/openstack/neutron/net.py | 11 +
.../resources/openstack/neutron/network_gateway.py | 36 +-
heat/engine/resources/openstack/neutron/neutron.py | 19 +-
heat/engine/resources/openstack/neutron/port.py | 31 +-
.../resources/openstack/neutron/provider_net.py | 3 +-
heat/engine/resources/openstack/neutron/qos.py | 70 +-
.../resources/openstack/neutron/security_group.py | 9 +-
.../openstack/neutron/security_group_rule.py | 200 +
.../resources/openstack/neutron/sfc/__init__.py | 0
.../resources/openstack/neutron/sfc/port_pair.py | 127 +
.../resources/openstack/neutron/vpnservice.py | 25 +-
heat/engine/resources/openstack/nova/flavor.py | 52 +-
.../resources/openstack/nova/host_aggregate.py | 15 +-
heat/engine/resources/openstack/nova/keypair.py | 7 +
heat/engine/resources/openstack/nova/server.py | 112 +-
.../openstack/nova/server_network_mixin.py | 164 +-
heat/engine/resources/openstack/sahara/cluster.py | 48 +-
heat/engine/resources/openstack/sahara/image.py | 20 +-
.../engine/resources/openstack/sahara/templates.py | 127 +-
heat/engine/resources/openstack/senlin/cluster.py | 42 +-
heat/engine/resources/openstack/senlin/node.py | 78 +-
heat/engine/resources/openstack/senlin/policy.py | 2 +-
heat/engine/resources/openstack/swift/container.py | 297 +
heat/engine/resources/openstack/swift/swift.py | 297 -
.../resources/openstack/trove/os_database.py | 8 +-
heat/engine/resources/scheduler_hints.py | 16 +-
heat/engine/resources/signal_responder.py | 8 +
heat/engine/resources/stack_resource.py | 189 +-
heat/engine/resources/stack_user.py | 2 +-
heat/engine/resources/template_resource.py | 20 +-
heat/engine/resources/volume_base.py | 34 +-
heat/engine/resources/wait_condition.py | 66 +-
heat/engine/rsrc_defn.py | 173 +-
heat/engine/scheduler.py | 148 +-
heat/engine/service.py | 725 +-
heat/engine/service_software_config.py | 92 +-
heat/engine/service_stack_watch.py | 7 +-
heat/engine/software_config_io.py | 175 +
heat/engine/stack.py | 522 +-
heat/engine/stack_lock.py | 35 +-
heat/engine/support.py | 12 +-
heat/engine/sync_point.py | 23 +-
heat/engine/template.py | 184 +-
heat/engine/template_common.py | 205 +
heat/engine/template_files.py | 136 +
heat/engine/translation.py | 361 +-
heat/engine/update.py | 51 +-
heat/engine/watchrule.py | 3 +-
heat/engine/worker.py | 429 +-
heat/hacking/__init__.py | 0
heat/hacking/checks.py | 70 +
heat/locale/cs/LC_MESSAGES/heat-log-critical.po | 8 +-
heat/locale/de/LC_MESSAGES/heat-log-critical.po | 8 +-
heat/locale/de/LC_MESSAGES/heat.po | 2856 ++++++-
heat/locale/es/LC_MESSAGES/heat-log-critical.po | 8 +-
heat/locale/es/LC_MESSAGES/heat.po | 7995 ++++++++++++++++++
heat/locale/fr/LC_MESSAGES/heat-log-critical.po | 8 +-
heat/locale/fr/LC_MESSAGES/heat-log-error.po | 15 +-
heat/locale/fr/LC_MESSAGES/heat.po | 7965 ++++++++++++++++++
heat/locale/heat-log-critical.pot | 24 -
heat/locale/heat-log-error.pot | 302 -
heat/locale/heat-log-info.pot | 583 --
heat/locale/heat-log-warning.pot | 378 -
heat/locale/heat.pot | 8891 --------------------
heat/locale/it/LC_MESSAGES/heat-log-critical.po | 8 +-
heat/locale/it/LC_MESSAGES/heat.po | 7946 +++++++++++++++++
heat/locale/ja/LC_MESSAGES/heat-log-critical.po | 8 +-
heat/locale/ja/LC_MESSAGES/heat.po | 7629 +++++++++++++++++
heat/locale/ko_KR/LC_MESSAGES/heat-log-critical.po | 8 +-
heat/locale/ko_KR/LC_MESSAGES/heat-log-error.po | 243 +
heat/locale/ko_KR/LC_MESSAGES/heat-log-warning.po | 336 +
heat/locale/ko_KR/LC_MESSAGES/heat.po | 7428 ++++++++++++++++
heat/locale/pt/LC_MESSAGES/heat-log-critical.po | 8 +-
heat/locale/pt_BR/LC_MESSAGES/heat-log-critical.po | 8 +-
heat/locale/pt_BR/LC_MESSAGES/heat.po | 7836 +++++++++++++++++
heat/locale/ru/LC_MESSAGES/heat-log-critical.po | 8 +-
heat/locale/ru/LC_MESSAGES/heat.po | 976 ++-
heat/locale/tr_TR/LC_MESSAGES/heat-log-critical.po | 8 +-
heat/locale/zh_CN/LC_MESSAGES/heat-log-critical.po | 8 +-
heat/locale/zh_CN/LC_MESSAGES/heat.po | 838 +-
heat/locale/zh_TW/LC_MESSAGES/heat-log-critical.po | 8 +-
heat/locale/zh_TW/LC_MESSAGES/heat.po | 7140 ++++++++++++++++
heat/objects/base.py | 21 +
heat/objects/event.py | 9 +
heat/objects/raw_template.py | 41 +-
heat/objects/raw_template_files.py | 51 +
heat/objects/resource.py | 103 +-
heat/objects/resource_data.py | 7 +-
heat/objects/stack.py | 56 +-
heat/objects/stack_lock.py | 16 +-
heat/objects/user_creds.py | 4 +-
heat/objects/watch_data.py | 10 +-
heat/objects/watch_rule.py | 7 +-
heat/openstack/common/crypto/utils.py | 9 +-
heat/rpc/api.py | 14 +-
heat/rpc/client.py | 144 +-
heat/rpc/worker_client.py | 17 +
heat/scaling/cooldown.py | 59 +-
.../api/openstack_v1/test_views_stacks_view.py | 8 +-
.../openstack/ceilometer/test_ceilometer_alarm.py | 773 --
.../openstack/ceilometer/test_gnocchi_alarm.py | 365 -
.../cinder/test_volume_type_encryption.py | 44 +-
.../heat/test_instance_group_update_policy.py | 23 +-
.../openstack/heat/test_software_deployment.py | 414 +-
.../openstack/keystone/test_role_assignments.py | 127 +-
.../openstack/manila/test_security_service.py | 9 +-
.../openstack/monasca/test_alarm_definition.py | 25 +-
.../openstack/neutron/lbaas/test_health_monitor.py | 3 -
.../openstack/neutron/lbaas/test_loadbalancer.py | 7 +-
.../openstack/neutron/lbaas/test_pool_member.py | 1 +
.../openstack/neutron/test_neutron_firewall.py | 32 +-
.../openstack/neutron/test_neutron_floating_ip.py | 98 +-
.../openstack/neutron/test_neutron_loadbalancer.py | 40 +-
.../neutron/test_neutron_network_gateway.py | 84 +-
.../neutron/test_neutron_security_group.py | 28 +
.../neutron/test_neutron_security_group_rule.py | 98 +
.../openstack/neutron/test_neutron_subnetpool.py | 2 +-
.../openstack/neutron/test_neutron_vpnservice.py | 14 +-
.../openstack/neutron/test_sfc/test_port_pair.py | 169 +
.../functional/functional_base.py | 1 -
.../functional/test_admin_actions.py | 101 +
.../functional/test_autoscaling.py | 5 +-
.../functional/test_cancel_update.py | 63 +
.../functional/test_conditional_exposure.py | 89 +-
.../functional/test_conditions.py | 622 ++
.../functional/test_create_update.py | 3 +-
.../functional/test_create_update_neutron_port.py | 12 +-
.../functional/test_encryption_vol_type.py | 11 +-
.../functional/test_external_ref.py | 83 +
.../functional/test_nova_server_networks.py | 70 +-
.../functional/test_os_wait_condition.py | 107 +
.../functional/test_remote_stack.py | 10 +-
.../functional/test_replace_deprecated.py | 92 +
.../functional/test_resource_chain.py | 19 +
.../functional/test_resource_group.py | 4 +-
.../functional/test_resources_list.py | 43 +
.../functional/test_software_deployment_group.py | 142 +
.../functional/test_template_resource.py | 66 +
.../functional/test_update_restricted.py | 13 +-
.../templates/app_server_lbv2_neutron.yaml | 69 +
.../scenario/templates/test_aodh_alarm.yaml | 33 +
.../templates/test_autoscaling_lbv2_neutron.yaml | 116 +
.../scenario/templates/test_ceilometer_alarm.yaml | 33 -
.../scenario/templates/test_server_signal.yaml | 104 +
.../scenario/test_autoscaling_lb.py | 10 +-
.../scenario/test_autoscaling_lbv2.py | 65 +-
.../scenario/test_ceilometer_alarm.py | 57 -
.../scenario/test_server_cfn_init.py | 7 +-
.../scenario/test_server_signal.py | 74 +
.../scenario/test_server_software_config.py | 4 -
install-guide/source/conf.py | 299 +
install-guide/source/get_started.rst | 37 +
install-guide/source/index.rst | 20 +
install-guide/source/install-debian.rst | 46 +
install-guide/source/install-obs.rst | 430 +
install-guide/source/install-rdo.rst | 440 +
install-guide/source/install-ubuntu.rst | 436 +
install-guide/source/install.rst | 21 +
install-guide/source/launch-instance.rst | 138 +
install-guide/source/next-steps.rst | 12 +
install-guide/source/verify.rst | 36 +
.../add-template-dir-config-b96392a9e116a2d3.yaml | 6 +
.../bp-support-conditions-1a9f89748a08cd4f.yaml | 17 +
.../notes/cinder-backup-cb72e775681fb5a5.yaml | 10 +
...cinder-qos-specs-resource-ca5a237ebc114729.yaml | 6 +
.../cinder-quota-resource-f13211c04020cd0c.yaml | 5 +
...gurable-server-name-limit-947d9152fe9b43ee.yaml | 6 +
.../notes/dns-resolution-5afc1c57dfd05aff.yaml | 7 +
.../environment-merging-d623362fac1279f7.yaml | 11 +
.../event-list-nested-depth-80081a2a8eefee1a.yaml | 14 +
.../notes/external-resources-965d01d690d32bd2.yaml | 10 +
.../notes/glance-image-tag-6fa123ca30be01aa.yaml | 4 +
.../map-replace-function-26bf247c620f64bf.yaml | 7 +
.../notes/monasca-period-f150cdb134f1e036.yaml | 10 +
.../notes/monasca-supported-71c5373282c3b338.yaml | 5 +
.../notes/yaql-function-4895e39555c2841d.yaml | 5 +
releasenotes/source/index.rst | 3 +-
releasenotes/source/mitaka.rst | 6 +
requirements.txt | 66 +-
setup.cfg | 47 +-
test-requirements.txt | 18 +-
tools/custom_guidelines.py | 23 +-
tox.ini | 54 +-
699 files changed, 98766 insertions(+), 24858 deletions(-)
Requirements updates
--------------------
diff --git a/requirements.txt b/requirements.txt
index 80f689e..11ac45d 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -6 +6 @@ pbr>=1.6 # Apache-2.0
-Babel>=1.3 # BSD
+Babel>=2.3.4 # BSD
@@ -8 +8 @@ croniter>=0.3.4 # MIT License
-cryptography>=1.0 # BSD/Apache-2.0
+cryptography!=1.3.0,>=1.0 # BSD/Apache-2.0
@@ -12 +12,2 @@ greenlet>=0.3.2 # MIT
-keystonemiddleware!=4.1.0,>=4.0.0 # Apache-2.0
+keystoneauth1>=2.10.0 # Apache-2.0
+keystonemiddleware!=4.1.0,!=4.5.0,>=4.0.0 # Apache-2.0
@@ -14 +15 @@ lxml>=2.3 # BSD
-netaddr!=0.7.16,>=0.7.12 # BSD
+netaddr!=0.7.16,>=0.7.13 # BSD
@@ -16,4 +17,4 @@ oslo.cache>=1.5.0 # Apache-2.0
-oslo.config>=3.7.0 # Apache-2.0
-oslo.concurrency>=3.5.0 # Apache-2.0
-oslo.context>=0.2.0 # Apache-2.0
-oslo.db>=4.1.0 # Apache-2.0
+oslo.config>=3.14.0 # Apache-2.0
+oslo.concurrency>=3.8.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
@@ -22 +23 @@ oslo.log>=1.14.0 # Apache-2.0
-oslo.messaging>=4.0.0 # Apache-2.0
+oslo.messaging>=5.2.0 # Apache-2.0
@@ -24 +25 @@ oslo.middleware>=3.0.0 # Apache-2.0
-oslo.policy>=0.5.0 # Apache-2.0
+oslo.policy>=1.9.0 # Apache-2.0
@@ -27,4 +28,4 @@ oslo.serialization>=1.10.0 # Apache-2.0
-oslo.service>=1.0.0 # Apache-2.0
-oslo.utils>=3.5.0 # Apache-2.0
-osprofiler>=1.1.0 # Apache-2.0
-oslo.versionedobjects>=1.5.0 # Apache-2.0
+oslo.service>=1.10.0 # Apache-2.0
+oslo.utils>=3.16.0 # Apache-2.0
+osprofiler>=1.4.0 # Apache-2.0
+oslo.versionedobjects>=1.13.0 # Apache-2.0
@@ -33,3 +34,4 @@ pycrypto>=2.6 # Public Domain
-python-barbicanclient>=3.3.0 # Apache-2.0
-python-ceilometerclient>=2.2.1 # Apache-2.0
-python-cinderclient>=1.3.1 # Apache-2.0
+aodhclient>=0.5.0 # Apache-2.0
+python-barbicanclient>=4.0.0 # Apache-2.0
+python-ceilometerclient>=2.5.0 # Apache-2.0
+python-cinderclient!=1.7.0,!=1.7.1,>=1.6.0 # Apache-2.0
@@ -37,7 +39,8 @@ python-designateclient>=1.5.0 # Apache-2.0
-python-glanceclient>=2.0.0 # Apache-2.0
-python-heatclient>=0.6.0 # Apache-2.0
-python-keystoneclient!=1.8.0,!=2.1.0,>=1.6.0 # Apache-2.0
-python-magnumclient>=0.2.1 # Apache-2.0
-python-manilaclient>=1.3.0 # Apache-2.0
-python-mistralclient>=1.0.0 # Apache-2.0
-python-neutronclient!=4.1.0,>=2.6.0 # Apache-2.0
+python-glanceclient!=2.4.0,>=2.3.0 # Apache-2.0
+python-heatclient>=1.4.0 # Apache-2.0
+python-keystoneclient!=2.1.0,>=2.0.0 # Apache-2.0
+python-magnumclient>=2.0.0 # Apache-2.0
+python-manilaclient>=1.10.0 # Apache-2.0
+python-mistralclient>=2.0.0 # Apache-2.0
+python-monascaclient>=1.1.0 # Apache-2.0
+python-neutronclient>=5.1.0 # Apache-2.0
@@ -46 +49 @@ python-openstackclient>=2.1.0 # Apache-2.0
-python-saharaclient>=0.13.0 # Apache-2.0
+python-saharaclient>=0.18.0 # Apache-2.0
@@ -49,2 +52,2 @@ python-swiftclient>=2.2.0 # Apache-2.0
-python-troveclient!=2.1.0,>=1.2.0 # Apache-2.0
-python-zaqarclient>=0.3.0 # Apache-2.0
+python-troveclient>=2.2.0 # Apache-2.0
+python-zaqarclient>=1.0.0 # Apache-2.0
@@ -53 +56 @@ PyYAML>=3.1.0 # MIT
-requests!=2.9.0,>=2.8.1 # Apache-2.0
+requests>=2.10.0 # Apache-2.0
@@ -55,2 +58,2 @@ retrying!=1.3.0,>=1.2.3 # 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
+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
@@ -60 +63 @@ sqlalchemy-migrate>=0.9.6 # Apache-2.0
-stevedore>=1.5.0 # Apache-2.0
+stevedore>=1.16.0 # Apache-2.0
@@ -61,0 +65 @@ WebOb>=1.2.3 # MIT
+yaql>=1.1.0 # Apache 2.0 License
diff --git a/test-requirements.txt b/test-requirements.txt
index a20adba..d4e6029 100644
--- a/test-requirements.txt
+++ b/test-requirements.txt
@@ -7 +7 @@ hacking<0.11,>=0.10.0
-bandit>=0.17.3 # Apache-2.0
+bandit>=1.1.0 # Apache-2.0
@@ -8,0 +9 @@ coverage>=3.6 # Apache-2.0
+fixtures>=3.0.0 # Apache-2.0/BSD
@@ -10 +11 @@ kombu>=3.0.25 # BSD
-mock>=1.2 # BSD
+mock>=2.0 # BSD
@@ -12 +13,3 @@ mox3>=0.7.0 # Apache-2.0
-PyMySQL>=0.6.2 # MIT License
+PyMySQL!=0.7.7,>=0.6.2 # MIT License
+openstackdocstheme>=1.5.0 # Apache-2.0
+os-api-ref>=1.0.0 # Apache-2.0
@@ -15 +17,0 @@ oslotest>=1.10.0 # Apache-2.0
-paramiko>=1.16.0 # LGPL
@@ -18 +20 @@ psycopg2>=2.5 # LGPL/ZPL
-sphinx!=1.2.0,!=1.3b1,<1.3,>=1.1.2 # BSD
+sphinx!=1.3b1,<1.3,>=1.2.1 # BSD
@@ -23 +25,5 @@ testresources>=0.2.4 # Apache-2.0/BSD
-reno>=0.1.1 # Apache2
+reno>=1.8.0 # Apache2
+# Next are used in integration tests only
+os-collect-config # Apache-2.0
+paramiko>=2.0 # LGPLv2.1+
+tempest>=12.1.0 # Apache-2.0
1
0
06 Oct '16
We are amped to announce the release of:
designate-dashboard 3.0.0: Designate Horizon UI bits
This release is part of the newton release series.
For more details, please see below.
Changes in designate-dashboard 2.0.0.0rc1..3.0.0
------------------------------------------------
b3b56d4 Imported Translations from Zanata
472e7a9 Allow V1 Panels to be used
725380d Imported Translations from Zanata
183b279 Imported Translations from Zanata
c868c62 Imported Translations from Zanata
6d87667 Update .gitreview for stable/newton
54e46c9 API v2 Dashboard
5a0ce41 Allow SRV/MX records to have priority 0
7be9313 Remove token logging
1a05272 Update home-page info in the configuration file
713e772 Imported Translations from Zanata
e96fddb Updated from global requirements
3afaf1f Follow-up Ibddffc5f: Also allow PTR records pointing to the domain itself
2669ea5 Updated from global requirements
69caf63 SSHFP validation: Allow algorithm 4 - ED25519
2d17e1a Remove discover from test-requirements
c915a15 Updated from global requirements
e937d32 Updated from global requirements
4069460 Add option for records pointing to domain
a65f899 Updated from global requirements
4783fbf Imported Translations from Zanata
8fdef7b Updated from global requirements
a275499 Updated from global requirements
442dec6 Imported Translations from Zanata
135c0c8 Imported Translations from Zanata
b7d0c77 Imported Translations from Zanata
61b5a0c Imported Translations from Zanata
552968e Updated from global requirements
c93239b Updated from global requirements
38db436 Updated from global requirements
85b493d Updated from global requirements
b48e13b Imported Translations from Zanata
c6477f9 Imported Translations from Zanata
9266cb1 Updated from global requirements
576dc66 Fix package name in init.py
7eadcaf Imported Translations from Zanata
20d036d Updated from global requirements
7fbe18a Imported Translations from Zanata
2fdca52 Fix unit tests under Django 1.9
72d45d6 Add ADD_INSTALLED_APPS to 'enabled' file
76df49e Extract strings from django templates
03813a8 Imported Translations from Zanata
9aa1f9b Fix unit tests under Django 1.9
8cb1543 Extract strings from django templates
1ed7893 Add ADD_INSTALLED_APPS to 'enabled' file
202300b Imported Translations from Zanata
a829a1b Update .gitreview for stable/mitaka
Diffstat (except docs and test files)
-------------------------------------
.gitreview | 1 +
babel-django.cfg | 4 +
designatedashboard/__init__.py | 2 +-
designatedashboard/api/designate.py | 3 -
designatedashboard/api/rest/__init__.py | 16 +
designatedashboard/api/rest/passthrough.py | 114 +++++++
.../dashboards/project/dns_domains/forms.py | 12 +-
.../templates/dns_domains/domain_detail.html | 2 +-
.../dns_domains/templates/dns_domains/records.html | 2 +-
.../dashboards/project/dns_domains/views.py | 1 +
.../dashboards/project/ngdns/__init__.py | 1 +
.../project/ngdns/reverse_dns/__init__.py | 0
.../dashboards/project/ngdns/reverse_dns/panel.py | 25 ++
.../dashboards/project/ngdns/reverse_dns/urls.py | 22 ++
.../dashboards/project/ngdns/reverse_dns/views.py | 19 ++
.../dashboards/project/ngdns/zones/__init__.py | 0
.../dashboards/project/ngdns/zones/panel.py | 25 ++
.../dashboards/project/ngdns/zones/urls.py | 22 ++
.../dashboards/project/ngdns/zones/views.py | 19 ++
.../enabled/_1720_project_dns_panel.py | 2 +
.../enabled/_1721_dns_zones_panel.py | 40 +++
.../enabled/_1722_dns_reversedns_panel.py | 38 +++
designatedashboard/locale/cs/LC_MESSAGES/django.po | 341 ++++++++++++++++++++
designatedashboard/locale/de/LC_MESSAGES/django.po | 351 ++++++++++++++++++++
designatedashboard/locale/django.pot | 343 --------------------
.../locale/en_GB/LC_MESSAGES/django.po | 345 ++++++++++++++++++++
designatedashboard/locale/fr/LC_MESSAGES/django.po | 52 ++-
designatedashboard/locale/ja/LC_MESSAGES/django.po | 141 ++++++++-
.../locale/ko_KR/LC_MESSAGES/django.po | 350 ++++++++++++++++++++
.../locale/pt_BR/LC_MESSAGES/django.po | 345 ++++++++++++++++++++
designatedashboard/locale/ru/LC_MESSAGES/django.po | 23 +-
.../locale/tr_TR/LC_MESSAGES/django.po | 29 +-
.../locale/zh_CN/LC_MESSAGES/django.po | 352 +++++++++++++++++++++
.../designatedashboard.module.js | 78 +++++
.../designatedashboard/designatedashboard.scss | 0
.../actions/actions.module.js | 66 ++++
.../os-designate-floatingip/actions/set.service.js | 170 ++++++++++
.../actions/unset.service.js | 139 ++++++++
.../os-designate-floatingip/api.service.js | 121 +++++++
.../details/details.module.js | 66 ++++
.../os-designate-floatingip/details/drawer.html | 10 +
.../details/overview.controller.js | 46 +++
.../os-designate-floatingip/details/overview.html | 11 +
.../os-designate-floatingip.module.js | 154 +++++++++
.../actions/actions.module.js | 79 +++++
.../actions/common-forms.service.js | 165 ++++++++++
.../actions/create.service.js | 132 ++++++++
.../actions/delete.service.js | 182 +++++++++++
.../actions/update.service.js | 159 ++++++++++
.../os-designate-recordset/api.service.js | 136 ++++++++
.../details/details.module.js | 109 +++++++
.../os-designate-recordset/details/drawer.html | 10 +
.../details/overview.controller.js | 46 +++
.../os-designate-recordset/details/overview.html | 45 +++
.../details/zone-recordsets.controller.js | 39 +++
.../details/zone-recordsets.html | 8 +
.../os-designate-recordset.module.js | 238 ++++++++++++++
.../os-designate-zone/actions/actions.module.js | 76 +++++
.../actions/common-forms.service.js | 184 +++++++++++
.../os-designate-zone/actions/create.html | 1 +
.../os-designate-zone/actions/create.service.js | 126 ++++++++
.../os-designate-zone/actions/delete.service.js | 169 ++++++++++
.../os-designate-zone/actions/update.service.js | 147 +++++++++
.../resources/os-designate-zone/api.service.js | 152 +++++++++
.../os-designate-zone/details/details.module.js | 61 ++++
.../os-designate-zone/details/drawer.html | 10 +
.../details/overview.controller.js | 46 +++
.../os-designate-zone/details/overview.html | 58 ++++
.../os-designate-zone/os-designate-zone.module.js | 202 ++++++++++++
.../resources/resources.module.js | 36 +++
.../designatedashboard/resources/util.service.js | 107 +++++++
.../static/designatedashboard/reverse_dns.html | 4 +
.../static/designatedashboard/zones.html | 4 +
requirements.txt | 2 +-
setup.cfg | 2 +-
test-requirements.txt | 13 +-
83 files changed, 6334 insertions(+), 473 deletions(-)
Requirements updates
--------------------
diff --git a/requirements.txt b/requirements.txt
index bc3b7d3..d9f7cca 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -5 +5 @@ pbr>=1.6 # Apache-2.0
-Babel>=1.3 # BSD
+Babel>=2.3.4 # BSD
diff --git a/test-requirements.txt b/test-requirements.txt
index 145d831..5c7f88d 100644
--- a/test-requirements.txt
+++ b/test-requirements.txt
@@ -7,2 +7 @@ coverage>=3.6 # Apache-2.0
-discover # BSD
-mock>=1.2 # BSD
+mock>=2.0 # BSD
@@ -11,2 +10,2 @@ mox3>=0.7.0 # Apache-2.0
-oslo.config>=3.7.0 # Apache-2.0
-pylint==1.4.5 # GNU GPL v2
+oslo.config>=3.14.0 # Apache-2.0
+pylint==1.4.5 # GPLv2
@@ -16 +15 @@ unittest2 # BSD
-sphinx!=1.2.0,!=1.3b1,<1.3,>=1.1.2 # BSD
+sphinx!=1.3b1,<1.3,>=1.2.1 # BSD
@@ -21 +20 @@ openstack.nose-plugin>=0.7 # Apache-2.0
-django-nose>=1.2 # BSD
+django-nose>=1.4.4 # BSD
@@ -27 +26 @@ django-compressor>=2.0 # MIT
-django-openstack-auth>=2.0.0 # Apache-2.0
+django-openstack-auth>=2.4.0 # Apache-2.0
1
0
We are joyful to announce the release of:
freezer 3.0.0: The OpenStack Backup Restore and Disaster Recovery as a
Service Platform
This release is part of the newton release series.
For more details, please see below.
Changes in freezer 2.0.0.0rc1..3.0.0
------------------------------------
df4ff63 Improve abort mechanism to support same functionality as stable/mitaka
7a08c4a Use --config-file from oslo instead of --config
9e6c963 Remove deprecated code
fe6e049 Update .gitreview for stable/newton
83eff55 Fix Cinder Backups
7658243 Fixed nova backup and restore
4c1e7f8 Update message for job start/stop/abort
45fa458 change directory structure for unit tests
6c50cc3 Fix error: snaphost-->snapshot
78e16c6 Updated from global requirements
c4ea71a Enable parallel job execution for the scheduler to allow abort signals
6e77d80 TrivialFix: Remove logging import unused
80c631f Fix order of arguments in assertEqual
eef70d5 Require a backup name for backup/restore/admin
6f1b051 Remove tar option "--overwrite" when extracting archives
c332a2b can't output the debug log for freezer-scheduler
4277d4a Added Validation layer for freezer jobs
f1ab13c failed to start freezer-scheduler
20cafd2 Updated from global requirements
364e5e5 Fixed the use of --insecure cli option
db1c31a Fixed use os.path.join to concatenate default logging location
9c94d30 Freezer metadata part2
659de17 Fix typo in the file
9aeed12 Fix freezer-scheduler start_date and endtime
819a5c1 Fix restore exception handling
66d7a68 Fix restore nova for multiple networks
47ef07d Changes freezer-agent consistency switches to hyphens/dashes
26351b0 Fixing Freezer with config file but no trickle throws error
5c35892 Remove discover from test-requirements
6ea14d9 Updated from global requirements
4937b5a add cindernative-backup-id option when restore cinder
304e06d Change cinder backup to define full backup or incremental backup
1c9bba4 Fail on non-existing path to backup
ef5f496 Revise test_metadata_checksum
ee7c8ae Add high-level backup utilities to BaseFreezerTest
98c93e6 Fix checksum generation so that it handles binary data
f967745 Removed remnant of git conflict in README.rst
230d20a freezer client report "Unauthorized" error
43f9936 Correct reraising of exception
9d46c8e Fix log-config-append does not work when passed as config file
a89998d Remove white space between print and ()
2da929d Updated from global requirements
00db2b0 Fix Freezer Agent Logging
bf17542 Fix LVM mountpoint issues.
9aa34db Always collect freezer.log when tests fail
4d8a3ce Fix tar error handling arguments
b3bc12b Fix restore tar error handling
e0383a1 Add integration test to verify compression options
836f94c Fix devstack-dsvm failure reporting
7fa0e6a Fix bug with snapshot removal
196a93e Fix cStringIO usage
5c9acf9 Add Tempest tests to validate checksum usage
694c98e Fix tox.ini file
f16a2ee Fix messed up readme
3cdfd8f Fix exception propagation
8b8c766 First scenario test
75f2c9d Fix gnu tar error handling
5d1f445 New Better & Well Formatted Docs with Sphinx
b4d4c38 Improve Tempest tests
5adb7fa Fix Tempest tests acquiring credentials
62e2c2a Fix incompatibility with keystoneauth
2b07da3 Fixed freezer-agent is not using the correct log
f41b613 Fix the failure of loading the instance of MongoDbMode
9cddf83 Delete Invalid variable
c976514 Remove version from setup.cfg
b16f8b1 Switch to keystoneauth
87b4ab6 list backups stored in API
1bf9658 Adds checksum before backup and after restore for consistency check.
fb5329c Freezer metadata
137520e Restore cindernative-vol-id by increment
ab41b42 Fix chunk_size for tar engine
af5f2b1 Clean up README
1b83ba7 Refactor Freezer authentication with keystone
62bd85a Use tempest credentials rather than hardcoded values
e54c80e Use uuid instead of time as path for test data
04de157 Remove auto_snap
de0344b Allow freezer to use trickle installed system wide
8fd7908 Updated from global requirements
73750a0 Fix storage not swift to backup nova or cinder
c9254cd Update README with linux requirements for freezer
4ffc74e fix some rst syntax error of code block
9f8ec0b Add More Freezer Tempest Tests
b4450c0 Restore cinder native backup pass right params and call right api
285e292 Use volume_id and timestamp to generate container name
c8d08cf Add Freezer Tempest Tests
c62a9da Generate a full backup first time
305067a Change $USER to $STACK_USER
d468c38 Updating README.rst
428682e Fixing Freezer-Agent help
8bcf617 Fix glance client creation
8a9f378 Adding the freezer logo to the README
4b91ce6 Recreation swift client for each chunk during swift incremental restore
be17aa3 Allow the user to use percentage on lvm snapsize
367a225 Fix creation of jobs with stopped state
fd5d6ba Updated from global requirements
9efa12f Added --overwrite parameter for removing all files from restore directory. Default value --overwrite=False
0973cf7 Use correct type for freezer arguments
ecfa4f6 Fix typos
a6b771f Provides more details in the help of --restore-from-date option. Explains the behavior with an example.
7c0f5bc Rename mode default to fs
03fd939 Modify the vars display_name to 'name'
219fb2b Start to introduce tempest tests.
9d99a02 freezer_conf_d is created automatically
34d2168 enable output of metadata to a file
e1fa806 Modify the function configure_freezer_scheduler
Diffstat (except docs and test files)
-------------------------------------
.gitreview | 1 +
.pylintrc | 4 +-
CREDITS.rst | 7 +-
INSTALL.rst | 6 +-
README.rst | 903 +++++++++++++-------
devstack/gate_hook.sh | 13 +-
devstack/lib/freezer | 6 +-
devstack/settings | 7 +-
.../images/admin/Service_Architecture_02.png | Bin 0 -> 49928 bytes
.../images/admin/freezer_agent_backup_api.png | Bin 0 -> 34065 bytes
.../images/admin/freezer_scheduler_api_scale.png | Bin 0 -> 49841 bytes
freezer/apiclient/backups.py | 13 +-
freezer/apiclient/client.py | 23 +-
freezer/apiclient/exceptions.py | 4 +-
freezer/apiclient/sessions.py | 6 +-
freezer/common/config.py | 380 ++++++---
freezer/engine/engine.py | 268 ++++--
freezer/engine/exceptions.py | 19 +
freezer/engine/tar/tar_builders.py | 8 +-
freezer/engine/tar/tar_engine.py | 162 ++--
freezer/job.py | 270 ++++--
freezer/lib/pep3143daemon/daemon.py | 4 +-
freezer/main.py | 133 ++-
freezer/mode/cinder.py | 37 +
freezer/mode/default.py | 35 -
freezer/mode/fs.py | 35 +
freezer/mode/mongo.py | 12 +-
freezer/mode/mysql.py | 4 +-
freezer/mode/nova.py | 37 +
freezer/mode/sqlserver.py | 15 +-
freezer/openstack/backup.py | 63 +-
freezer/openstack/openstack.py | 81 --
freezer/openstack/osclients.py | 475 +++++++----
freezer/openstack/restore.py | 109 ++-
freezer/scheduler/arguments.py | 49 +-
freezer/scheduler/daemon.py | 93 +--
freezer/scheduler/freezer_scheduler.py | 51 +-
freezer/scheduler/scheduler_job.py | 176 ++--
freezer/scheduler/shell.py | 61 +-
freezer/scheduler/utils.py | 19 +
freezer/scheduler/win_daemon.py | 2 +-
freezer/snapshot/lvm.py | 200 ++---
freezer/snapshot/snapshot.py | 13 +-
freezer/snapshot/vss.py | 21 +-
freezer/storage/base.py | 486 +++++------
freezer/storage/exceptions.py | 19 +
freezer/storage/fslike.py | 114 +--
freezer/storage/local.py | 5 +-
freezer/storage/multiple.py | 90 +-
freezer/storage/physical.py | 112 +++
freezer/storage/ssh.py | 15 +-
freezer/storage/swift.py | 201 ++---
.../freezer_tempest_plugin/services/__init__.py | 0
.../unit/apiclient/test_apiclient_exceptions.py | 25 +
.../unit/apiclient/test_apiclient_registration.py | 111 +++
.../unit/apiclient/test_apiclient_sessions.py | 223 +++++
freezer/utils/bandwidth.py | 83 --
freezer/utils/checksum.py | 168 ++++
freezer/utils/config.py | 40 +-
freezer/utils/streaming.py | 18 +-
freezer/utils/utils.py | 121 ++-
freezer/utils/validator.py | 34 -
freezer/utils/winutils.py | 8 +-
freezer_logo.jpg | Bin 0 -> 50204 bytes
requirements.txt | 37 +-
setup.cfg | 5 +-
setup.py | 36 +-
specs/job-backup.conf.example | 2 +-
test-requirements.txt | 27 +-
.../unit/apiclient/test_apiclient_registration.py | 111 ---
tox.ini | 15 +-
167 files changed, 9233 insertions(+), 5064 deletions(-)
Requirements updates
--------------------
diff --git a/requirements.txt b/requirements.txt
index adeefc3..63992b1 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -1,3 +1,6 @@
-astroid<1.4.0 # breaks pylint 1.4.4
-setuptools>=16.0
-pbr>=1.6
+# The order of packages is significant, because pip processes them in the order
+# of appearance. Changing the order has an impact on the overall integration
+# process, which may cause wedges in the gate later.
+astroid<1.4.0 # LGPLv2.1 # breaks pylint 1.4.4
+setuptools!=24.0.0,>=16.0 # PSF/ZPL
+pbr>=1.6 # Apache-2.0
@@ -5,9 +8,9 @@ python-swiftclient>=2.2.0 # Apache-2.0
-python-keystoneclient>=1.6.0,!=1.8.0
-python-cinderclient>=1.3.1
-python-glanceclient>=1.2.0 # Apache-2.0
-python-novaclient>=2.29.0,!=2.33.0 # Apache-2.0
-python-openstackclient>=2.0.0 # Apache-2.0
-oslo.utils>=3.2.0
-oslo.i18n>=1.5.0 # Apache-2.0
-oslo.log>=1.14.0
-oslo.config>=3.2.0 # Apache-2.0
+python-cinderclient!=1.7.0,!=1.7.1,>=1.6.0 # Apache-2.0
+python-glanceclient!=2.4.0,>=2.3.0 # Apache-2.0
+python-novaclient!=2.33.0,>=2.29.0 # Apache-2.0
+python-openstackclient>=2.1.0 # Apache-2.0
+oslo.utils>=3.16.0 # Apache-2.0
+oslo.i18n>=2.1.0 # Apache-2.0
+oslo.log>=1.14.0 # Apache-2.0
+oslo.config>=3.14.0 # Apache-2.0
+keystoneauth1>=2.10.0 # Apache-2.0
@@ -15,3 +18,3 @@ oslo.config>=3.2.0 # Apache-2.0
-PyMySQL>=0.6.2 # MIT License
-pymongo>=3.0.2
-paramiko>=1.13.0
+PyMySQL!=0.7.7,>=0.6.2 # MIT License
+pymongo!=3.1,>=3.0.2 # Apache-2.0
+paramiko>=2.0 # LGPLv2.1+
@@ -21 +24,3 @@ six>=1.9.0 # MIT
-apscheduler
+apscheduler # MIT License
+
+psutil>=1.1.1,<2.0.0 # BSD
diff --git a/test-requirements.txt b/test-requirements.txt
index b830d53..d2ff1cf 100644
--- a/test-requirements.txt
+++ b/test-requirements.txt
@@ -1,11 +1,16 @@
-flake8>=2.2.4,<=2.4.1
-hacking>=0.10.2,<0.11
-coverage>=3.6
-discover
-mock>=1.2
-pylint==1.4.5 # GNU GPL v2
-python-subunit>=0.0.18
-sphinx>=1.1.2,!=1.2.0,!=1.3b1,<1.3 # BSD
-oslosphinx>=2.5.0,!=3.4.0 # Apache-2.0
-testrepository>=0.0.18
-testtools>=1.4.0
+# The order of packages is significant, because pip processes them in the order
+# of appearance. Changing the order has an impact on the overall integration
+# process, which may cause wedges in the gate later.
+flake8<2.6.0,>=2.5.4 # MIT
+hacking<0.11,>=0.10.2
+coverage>=3.6 # Apache-2.0
+mock>=2.0 # BSD
+pylint==1.4.5 # GPLv2
+python-subunit>=0.0.18 # Apache-2.0/BSD
+sphinx!=1.3b1,<1.3,>=1.2.1 # BSD
+oslosphinx!=3.4.0,>=2.5.0 # Apache-2.0
+testrepository>=0.0.18 # Apache-2.0/BSD
+testtools>=1.4.0 # MIT
+
+# Tempest Plugin
+tempest-lib>=0.14.0 # Apache-2.0
1
0
We are grateful to announce the release of:
horizon 10.0.0: OpenStack Dashboard
This release is part of the newton release series.
For more details, please see below.
10.0.0
^^^^^^
Angular actions now should return a promise that resolves with an
object structured in a way to indicate what the action did (or didn't
do).
JavaScript can now access the Keystone Token.
Many of Horizons XStatic packages were updated during this cycle.
A Details page for a resource type (e.g. Images) may now use the
Angular application-level registry to register views so developers may
easily create or extend details views. In this implementation these
views are presented as tabs within the Details page.
In an effort to standarize our HTML class naming conventions, we will
be updating various class names to use dashes, instead of underscore
or camelcasing, to match with Bootstrap's convention.
Horizon no longer requires Nova (or Glance) to function; it will run
as long as keystone is present (for instance, swift-only deployments).
The Images panel now may be configured to use either the legacy or
Angular code.
To aid in continued maintenance of Horizon as a themable and
customizable framework, the highly customized 'default' styles are
being dropped in favor of standard Bootstrap styles. The 'default'
theme will only house scss variable changes going forward.
Angular components now exist to provide simple-to- configure panels
and tables, based off of registry information about resources (e.g.
Instances).
Modal sizes now inherit from Bootstrap's theme variables.
We now automatically determine the static folder location for xstatic
packages being used by Horizon.
New Features
************
* An action-result service provides convenience methods for
construction of the result, and for parsing of a resolved object
* [blueprint admin-neutron-l3-agent
(https://blueprints.launchpad.net/horizon/+spec/admin-
neutron-l3-agent)] Add support for managing neutron L3 agent hosts.
The admin screen for system information now provides links / views
to see what routers reside on what hosts. In addition, the admin
view of routers now also provides a list of where the router is
hosted and the link to see what other routers are sharing the same
host.
* Horizon and Horizon Plugins can access the Keystone Token from
JavaScript so that they can make CORS calls directly to other
OpenStack Services. This can enable much more responsive UI.
* Added a new "ANGULAR FEATURES" dictionary to the settings. This
allows simple toggling of new AngularJS features.
* Added the Scheduler Hints tab to the new Launch Instance workflow
to allow adding scheduler hints to an instance at launch. In
addition to adding custom key-value pairs, the user can also choose
from properties in the glance metadata definitions catalog that have
the OS::Nova::Server resource type and scheduler_hints properties
target.
* Added settings support to the angular workflow service so each
step in a workflow can specify a boolean setting that must pass in
order for the step to be displayed.
* [blueprint manage-ips Add ability to manage floating IPs in
syspanel (https://blueprints.launchpad.net/horizon/+spec/manage-
ips)] Admin dashboard Floating IPs panel has been added to Horizon.
* [blueprint admin-views-filter-first
(https://blueprints.launchpad.net/horizon/+spec/admin-views-filter-
first)] This blueprint provides a configurable setting to allow
operators require admin users to provide a search criteria first
before loading data into admin views.
* [blueprint angular-schema-form
(https://blueprints.launchpad.net/horizon/+spec/angular-schema-
form)] Added the Angular Schema Form library to Horizon. This allows
developers to build angular forms and workflows from JSON. Read more
at http://schemaform.io/ (http://schemaform.io/)
* [blueprint angular-table-directive
(https://blueprints.launchpad.net/horizon/+spec/angular-table-
directive)] This blueprint provides a way for developers to
programatically declare an Angular table vs writing HTML markup. It
reduces the boilerplate HTML code. For a basic table, you need to
pass in the data and the column configuration into the *hz-dynamic-
table* directive.
* [blueprint angular-template-overrides
(https://blueprints.launchpad.net/horizon/+spec/angular-template-
overrides)] This blueprint provides a way for deployers to use a
theme to override HTML fragments used by Angular code in Horizon.
For example, to override the launch instance help panel when the
'material' theme is used, create
openstack_dashboard/themes/material/static/templates/framework
/widgets/help-panel/help-panel.html. All of the client side
templates are now compiled into a single JavaScript file that is
minified and is given as an additional file in the manifest.json
file.
* [blueprint cinder-consistency-groups
(https://blueprints.launchpad.net/horizon/+spec/cinder-consistency-
groups)] This feature adds 2 new tabs to the Project Volumes panel.
The first tab will display Consistency Groups, and the second tab
will display Consistency Group Snapshots. Consistency Groups (CG)
contain existing volumes, and allow the user to perform actions on
the volumes in one step. Actions include: create/update/delete CGs,
snapshot all volumes in a CG, clone all volumes in a CG, and create
a new CG and volumes from a CG snapshot. Policies associated with
Consistency Groups exist in the Cinder policy file, and by default,
all actions are disabled.
* [blueprint configurable-boot-sources
(https://blueprints.launchpad.net/horizon/+spec/configurable-boot-
sources)] Allows administrators to restrict which sources are
available to boot from in the Launch Instance modal by adding 4 new
settings to LAUNCH_INSTANCE_DEFAULTS (disable_image,
disable_instance_snapshot, disable_volume, disable_volume_snapshot).
* Create from a local file feature is added to both Angular and
Django Create Image workflows. It works either in a 'legacy' mode
which proxies an image upload through Django, or in a new 'direct'
mode, which in turn implements [blueprint horizon-glance-large-
image- upload
(https://blueprints.launchpad.net/horizon/+spec/horizon- glance-
large-image-upload)]. To use the direct mode
HORIZON_IMAGES_UPLOAD_MODE setting should be changed to 'direct'
value along with changing glance-api.conf cors.allowed_origin
parameter to the URL from which Horizon is served.
* Added ability to render angular row actions with additional
details that explain the purpose of the action. These are rendered
as tiles and are meant to depict the next steps a user might want to
take for a given resource.
* The port-details page has a new tab for managing Allowed Address
Pairs. This tab and its features will only be available when this
extension is active in Neutron. The Allowed Address Pairs tab will
enable creating, deleting, and listing address pairs for the current
port.
* Allows to restrict CIDR range for user private network
<https://blueprints.launchpad.net/horizon/+spec/restrict-private-
network-input>
* [blueprint Supports extra properties in project and user
(https://blueprints.launchpad.net/horizon/+spec/support-extra-prop-
for-project-and-user)] Support an ability to treat additional
information for project and user as an extra attribute.
* [blueprint navigation-improvements
(https://blueprints.launchpad.net/horizon/+spec/navigation-
improvements)] Breadcrumb navigation has been added across Horizon.
* Support a parameter to specify subnet or fixed IP address when
creating port.
* A directive (hz-details) provides the ability to intelligently
display a set of views (typically for a Details context).
* A generic Details display parses the location to determine the
resource type, and displays relevant details views for that type.
* A Descriptor concept allows convenient passing of information that
can globally identify an object, for use in generic views and
actions.
* Horizon now has a (non-navigational) route in Django so generic
details pages are deep-linked.
* A shared Django template is now available for use by any Angular
page.
* Adds complete support for Glance v2 so that Horizon no longer
depends on having a Glance v1 endpoint in the Keystone catalog. Also
provides code compatibility between Glance v1 and v2.
* Adds a new config value called IMAGES_ALLOW_LOCATION, which allows
users to set locations when creating or updating images. Depending
on the Glance version, the ability to set locations is controlled by
policies and/or configuration values.
* Nova and Glance are no longer required in order to run Horizon. As
long as keystone is present, Horizon will run correctly.
* the "ANGULAR_FEATURES" setting now allows for a key
"images_panel". If set to "True", then the Angular Images panel will
be used, while the Python version will be used if set to "False".
* Integration tests for Image features may also be toggled in
openstack_dashboard/test/integration_tests/horizon.conf using the
'panel_type' feature, either set to 'legacy' or 'angular' to match
the enabled panel type.
* Horizon support for network IP availability feature. Enable
Horizon admin network dashboard to be able to display IP
availability. Enables 2 columns in the admin network subnets table
to display the allocated IPs in a given subnet and unallocated free
IPs for each subnet in the network.
* Neutron network type for Geneve tunneling protocol is now
supported.
* Neutron provider network types for Midonet are now supported. To
enable them, specify these network types in
"supported_provider_types" in the configuration file.
* [blueprint operation-history-log
(https://blueprints.launchpad.net/horizon/+spec/operation-history-
log)] Added a feature to log operation history of users.
* Neutron provider network configuration now becomes more flexible
so that operators can configure various provider network parameters
including new network type, segmenatiton ID ranges and so on based
on neutron network back-ends they use.
* Added new setting INTEGRATION_TESTS_SUPPORT, default value is
*False*. This value is used when running *manage.py compress*
command, so by default all static assets and html classes used by
integration tests are removed from Horizon production build.
Integration tests gate job sets this variable to *True* and
recompresses static assets.
* The hz-resource-table directive takes in a Heat resource name
(e.g. 'OS::Nova::Server') and uses the Angular registry to provide
actions, columns, and summary views.
* The hz-resource-panel directive takes in a Heat resource name
(e.g. 'OS::Nova::Server') and displays an appropriate header and
allows content to be transcluded to build the panel page.
* Add a new setting OVERVIEW_DAYS_RANGE. It defines the default date
range in the Overview panel meters - either today minus N days (if
the value is integer N), or from the beginning of the current month
until today (if set to None). This setting is be used to limit the
amount of data fetched by default when rendering the Overview panel.
The default value is 1, which differs from the past behaviour, since
it caused serious lags on large deployments.
* Modal sizes now inherit their value from theme variables. Two
additional sizes are available now for use in Horizon, extra to the
standard 3 sizes of Bootstrap Modals, modal-xs and modal-xl.
* Added the "TOKEN_DELETE_DISABLED" setting, so that deployers can
customise the revocation of a users token on log out.
Known Issues
************
* If you set 'images_panel' to False for the ANGULAR_FEATURES option
(which is not the default) and configure Horizon to use Glance v2,
Ramdisk ID and Kernel ID don't show properly on the "Edit Image"
screen.
Upgrade Notes
*************
* Although it's not required, it's best to make your actions return
promises with the expected structure.
* The "TEMPLATE_*" settings have been replaced with a "TEMPLATE"
dict. This will likely cause issues when porting settings to this
version of Horizon. The TEMPLATE_DEBUG setting has been removed and
is tied to the DEBUG setting now. A detailed explanation of this
dict can be found at
https://docs.djangoproject.com/en/1.10/ref/settings/#templates
* The "is_authenticated()" and "is_anonymous()" functions in Django
OpenStack Auth's "User" class are properties when running under
Django 1.10, and no longer take a margin parameter.
* Horizon currently supports both Angular 1.3.x and Angular 1.4.x,
but will remove 1.3 support in the future. See Migrating from 1.3 to
1.4 (https://docs.angularjs.org/guide/migration#migrating-
from-1-3-to-1-4)
* The breadcrumb navigation inside the details pages now applies
across Horizon. A small change in the logic means that
"custom_breadcrumb" items in the context no longer need to specify
the panel name and link. See [blueprint navigation-improvements
(https://blueprints.launchpad.net/horizon/+spec/navigation-
improvements)]
* The final django TEMPLATE_LOADERS configuration will now be
generated from TEMPLATE_LOADERS, CACHED_TEMPLATE_LOADERS and
ADD_TEMPLATE_LOADERS settings. See the settings documentation for
more information.
* It is no longer necessary to include the version suffix into
OPENSTACK_KEYSTONE_URL setting. Thanks to a recent update of django-
openstack-auth library as of 2.3.0 release, Horizon will append the
proper version suffix to the URL based on the value stored inside
OPENSTACK_API_VERSIONS['identity'] setting.
* (optional) Use the common Angular template as the basis of any
Angular pages to minimize boilerplate code and to ensure that we use
similar features/framing.
* If the 'default' theme is still required for legacy overrides to
function, simply copy the styles in the 'default' theme into a pre-
existing theme or create a new custom theme.
* The "status_unknown" table row class has been replaced with the
default bootstrap "warning" class.
* Many Javascript files have moved to new locations in the
horizon/lib static folder. Previously the locations of some files
were hard- coded but now the locations are determined automatically
based on the xstatic package name.
Deprecation Notes
*****************
* HORIZON_IMAGES_ALLOW_UPLOAD setting is deprecated and should be
gradually replaced with HORIZON_IMAGES_UPLOAD_MODE setting.
* Router rules is a horizon extension provided by Big Switch
Networks. As part of the horizon-vendor-split work, we drop the
extension from upstream horizon. It is now available as a separate
plugin at https://github.com/bigswitch/horizon-bsn
* LBaaS v1 dashboard is now deprecated and will be removed in Ocata
release. LBaaS v1 feature was removed from neutron-lbaas in Ocata
and this functionality in Horizon is only for backward compatibility
so that operators can upgrade Horizon first. Note that the Dashboard
support for LBaaS v2 is provided as a Horizon plugin via neutron-
lbaas-dashboard project.
* All instances of HTML class 'd3_pie_chart_usage' to 'pie-chart-
usage' All instances of HTML class 'd3_pie_chart_distribution' to
'pie-chart-distribution'
* The 'default_ipv4_subnet_pool_label' and
'default_ipv6_subnet_pool_label' options were deprecated in the
Mitaka release and are no longer valid in the Newton release.
Starting with Mitaka you can create one default subnet pool per
address family through the Neutron API. These subnet pools will
automatically show up in the subnet pool list using the name of the
pool as label.
* Inline Edit functionality for Horizon tables is now deprecated and
will be removed in Horizon P (12.0) The functionality was removed
from the following tables. Admin Volume Types table, Admin Metadata
Definitions table, Identity Projects table and Identity Users table
* Fullscreen Modals have been deprecated in favor of modal-xl.
Currently, it is set to 95% of the viewable screen width.
Security Issues
***************
* Making Keystone Tokens available to JavaScript slightly increases
the risk of a Token being captured. If you don't need this
functionality, it can be disabled by setting the following option in
your local_settings: ENABLE_CLIENT_TOKEN = False
Bug Fixes
*********
* Hardcoded admin role is replaced with RBAC policy check in panels.
Now users access to the panels is defined by policies and not user
roles. The change affected the Admin dashboard and its panels
(Overview, Hypervisors, Instances and Metadata Definitions).
* LP-1585682 is fixed which grants Horizon the ability to properly
version Keystone webpath endpoints (URLs like
http://<hostip>/identity instead of http://<hostip>:5000).
* https://bugs.launchpad.net/horizon/+bug/1508571
Other Notes
***********
* XStatic-Angular updated from 1.3.7.0 to 1.4.10.1
* XStatic-Angular-FileUpload updated from 1.4.0.1 to 12.0.4.0
* XStatic-Bootstrap-SCSS updated from 3.2.0.0 to 3.3.7.0
* XStatic-Bootswatch updated from 3.3.5.3 to 3.3.6.0
* XStatic-Font-Awesome updated from 4.3.0.0 to 4.5.0.0
* XStatic-Jasmine updated from 2.1.2.0 to 2.4.1.1
* XStatic-MDI updated from 1.1.70.1 to 1.4.57.0
* XStatic-Rickshaw updated from 1.5.0.0 to 1.5.1.0
* XStatic-Smart-Table updated from 1.4.5.3 to 1.4.13.1
* Glance v2 doesn't support the copy-from feature, so this feature
is disabled in Horizon when using Glance v2.
Changes in horizon 9.0.0.0rc1..10.0.0
-------------------------------------
f9b676a Imported Translations from Zanata
3ce1714 Update UPPER_CONSTRAINTS_FILE for stable/newton
d9c214e Imported Translations from Zanata
79aa43b Imported Translations from Zanata
5869854 Fix Launch Instance without Cinder
5ed1b8d Imported Translations from Zanata
02ceefd Fix metadata removal
d27528e Fix compatibility issues with Django 1.10
a33ac87 Multiple integration test fixes
74c9c15 Imported Translations from Zanata
a3e058e Imported Translations from Zanata
aa83294 Fix the collection of integration tests artifacts
6c3f962 Imported Translations from Zanata
6512bf2 Fix getting the images list in Admin->Images
e066530 Imported Translations from Zanata
bba91f5 Imported Translations from Zanata
f55f1d8 Allow translator to control word order in delete confirm dialog
529313a Update .gitreview for stable/newton
4304971 Updated from global requirements
aaa3ad4 Imported Translations from Zanata
e15b61f Update admin filter first setting to a dict
2925562 Imported Translations from Zanata
bc1fb49 Server-side filtering for Identity
45dedbb Imported Translations from Zanata
c4ddce4 Do not embed unsafe content
cf0aac9 Support for Glance v2
bff4854 Imported Translations from Zanata
0751638 Fix typo in Keypair creation in Launch Instance panel
2c56563 Remove the lowercase case boolean type in heat param_type
7bc8558 Imported Translations from Zanata
c7df8a9 Allow magic search to be initialized by an event
c2eba7c standardize release note page ordering
9628598 Fix five typos
041af0f Replace table row 'status_unknown' class with 'warning' class
7ec991e Imported Translations from Zanata
5afc9a9 Add material theme icon for star outline
766b426 Add material mapping for filter icon
fbb98f6 Incorrect Test Data of Pool2
6fb02c5 Update action for namespaces table public/protected attributes
6a75fc2 Imported Translations from Zanata
a084444 Cleanup setProperties in image module
313bc69 Fix comment typo
76833dd Add Python 3.5 classifier
b056587 Enable Python 3.5 testing and fix tests
63ddedf Fix error detection in horizon test suite
b26a988 Update comment in _10_set_custom_theme.py.example
a0a8c07 Deprecate LBaaS v1 dashboard
cd609a6 Imported Translations from Zanata
deb4cc1 Add releasenotes for bug #1161144
ed3a382 Fix for typo in Horizon
9afd7d0 Modify use of assertTrue(A in B)
9d7b751 Implement admin_filter_first setting in Admin>Volumes
196be9a A follow up patch to #1570510
5627065 Escape backslash in the angular_escapes filter
b7557f2 Imported Translations from Zanata
325309d horizon documentation corrections
9db0f0c Hard-code stubbed novaclient api_version to 2.1
289a9c5 Imported Translations from Zanata
1d0b5de doc: Use "warning" directive instead of "important"
9fcc9a4 Fix document sphinx error and warnings
d8df8bf Add message for a result of update metadata
e8298d9 Check if volume type encryption is enabled before retrieving the data
a988f3c All Table Templates should support template overrides
1e7bd33 rename LaunchInstanceModal spec describe function
455a1ba Add rel note and example for TOKEN_DELETE_DISABLED
d599fde The neutron policy file is out of date. This patch updates it to match neutron master.
a465fe6 Server-side filtering for admin volumes
c38318d Revert "Escape blackslash in the angular_escapes filter"
1918ea3 [TrivialFix] Ignore node_modules while we run flake8 test
db032d6 fix table delete bug & collect table events
46f9989 remove unused quotas code
f1cce3a Implements filter_first in routers
bbd5d81 Documentation for translation in horizon
7e58cae Display username/project during password request
da109c4 Updated from global requirements
0defe84 Imported Translations from Zanata
4b3157a [Trivial]Fix the number that failed to delete in swift
2ac3d51 Add the new device owner flag for HA router interface
d580adb Escape blackslash in the angular_escapes filter
8e70469 FixedFilterAction.categorize: Make variable name generic and explain more in docs
9e2b2ba INSTANCE_LOG_LENGTH is missing from local_settings.py.example
8b46a83 Implements filter_first in networks
37cb18e Fix the parameter name in "allowed" function in "RestoreBackup" class
53bdad4 Ability to delete network items from their details page
f60ecd0 Correct documentation around upper-constraints changes
c64e132 Imported Translations from Zanata
ede580c Incorrect param name in api.nova.server_delete
f91d38b Fix unnecessary requests in angular image panel
8ec0ce0 Fix the issue workflow filter do not show all users
03ef147 Update create volume help text for angular workflow
7bf5ced Fix attribute email doesn't exist error in group panel
02b9e2e Fix intermittent integration test failures related to messages
c930706 Updated from global requirements
175519c Imported Translations from Zanata
238d273 Project Creation from within Create User should work
210d420 hz-field-directive handle no value property
9445d15 Fix various issues with compressed angular templates and plugins
5894e15 Add a parameter fixed ip when creating a port
c0d0c8c Add release note for package updates
1a0e284 Server-side filtering networks
2289190 Final changes to Angular Images before making default
e8e1bdd Fix the parameter name in "allowed" function in "DeleteBackup" class
0c8b7c7 Imported Translations from Zanata
c724777 Update create/edit image help text for angular workflow
7126d0d Use upper constraints for all jobs in tox.ini
f5e8d61 Update the xstatic release process
053d0a6 Implement file update (edit) in Swift UI
eac2099 Updated from global requirements
ab11eef Supports extra properties in project and user
11e3828 Imported Translations from Zanata
ece7915 Remove a misplaced double quote
115ff51 Updated from global requirements
88aaf89 Add filter action to Template Versions tables
07d33cf Prevent long names breaking table layouts
5c238e9 Add floating IP panel to admin dashboard
adabe6e Remove admin_filter_first from horizon module to avoid confusion
3480693 Re-work static_settings to clean up
241eda4 Removed inline_edit functionality for tables
f333ba1 Add ANGULAR_FEATURES toggle example
25ce4d7 Imported Translations from Zanata
db9aebb Update Plugin Registry
f85d2fd Fix the loss of JSON types when using multipart/form-data
2166e5a Support project column in admin view of NG images
79c2729 Updated from global requirements
3027c99 Syntactic sugar for setting multiple properties in registry
9c3f4ce Add unit tests to edit-image to improve coverage
4a9f988 Angular: Configuration of boot sources for launch instance
a86c7d9 Remove Orchestration Resource Types names restriction
d79a11e Show wait spinner after submit of wizard modal
da2e935 Fix AttributeError in context_selection.py
21b723e Fix typo
a0bd575 Hide nav in workflows if only one tab
d526315 Fix typo in keystone_data.py
5a39ad7 Update the home-page in setup.cfg
33ceb91 Enable Angular Image panel
93af461 [Django] Allow to upload the image directly to Glance service
ac404c4 Fix order of arguments in assertEqual
2807aa6 Remove router rules extension
1050755 Add ANGULAR_FEATURES setting dict
89ac0fc Imported Translations from Zanata
1342101 Restrict user private network cidr input
93b7edd Add more Nova API features for NG Instances
a9da538 Add Try/Exception block to Network Forms
15909be modify the home-page info with the developer documentation
d21fd86 Updated from global requirements
75427ad Pre-test hook for integration tests/deprecated
9814461 Imported Translations from Zanata
02594a7 Server-side filtering routers
cf0c3bb Error in cinder quota RESTful api
60a265a [NG] Enhance Create Image workflow with upload tracking
de1fa81 Imported Translations from Zanata
374e603 Use argparse instead of optparse
68f46ce Preview Page: Default Theme: Content Horizontally Scrolling
0e1279d [NG] Support local file upload in Create Image workflow
197b4b5 Add HTML lists to preview page
28c443f Do not send shared param when not allowed.
b814a0a Add Apple OS X ".DS_Store" to ".gitignore" file
cc76e4c Imported Translations from Zanata
21eed0b Remove openstack/common from the exclude list of flake8 in tox
a536153 add translation and cleanup resource-browser-item.html
0b05f52 allow hiding help-button for first ng workflow step
fc0b4e8 UX: System Information Overflow Fail
20bc6e1 Make 'switch' between legacy and Angular Images
79a86b3 UX: Add IPSec Policy Modal Hint List is hard to read
957d243 Updated from global requirements
d9ba751 Imported Translations from Zanata
bdbc683 Update Django 1.10 tox env
6f6f746 [Django 1.10] Fix urls.url wrong call
41e9d62 Remove embedded CSS
7580d15 Horizon Radio Buttons are now themeable.
8622e42 Allow global actions to execute
0e957dd Add Angular Schema Form
9ca0cc8 hz-images have transitional states defined
6ad2967 hz-resource-table handles transitional states
000c918 Imported Translations from Zanata
01720bd Horizon selects are now themable: DynamicTypedChoiceField
2e84d55 The sidebar caret should spin correctly.
d829313 Do not allow spaces as key pair name
1268606 Fix missing 'THEME' key
7339641 Allow listFunction extra params
5e00cc5 Revert "i18n: trim whitespaces in extracted messages"
a9fa029 [Django 1.10] Fix URL patterns again
27e9a03 Imported Translations from Zanata
299c661 Style: Update Image Metadata overflow fail Style: Host Aggregate: Update Metadata overflow fail
a2b7c32 Fix unit test indentation and the test itself
e3ef7ae Fix untranslated help text in Launch Instance window
deda07c Memoize policy service
163489b Horizon selects are now themable: Project Panels
97bd050 Default subnet dns added to create network
e5057c6 Correcting form_invalid get_context_data call
98002c8 Fix horizon-without-nova release note
f9ba1ec Imported Translations from Zanata
abf4ca6 Update devDependencies in package.json
26ee50f Updated from global requirements
b353fd4 Imported Translations from Zanata
65f0f74 hz-dynamic-table: Column level permissions
64ded59 Update Plugin Registry
6868cb7 Remove old style policy checks
12f9ef8 Remove array metadata when no items + fix case
7a88458 Move get_filters to parent Class
c2ec417 Resource Browser links now respect webroot
c701552 Imported Translations from Zanata
f730515 Remove 'default' theme styles
034f181 Ignore the test_report of integration test in .gitignore
989607e Stop memoizing on request argument in neutron api
dd3cf51 Remove extraneous TODOs from Identity code
9c05819 Modified columns names in Admin->Hypervisor
b507db7 Developer Registry Resource Browser
dafa021 Remove multi select option on Resource types table
88984bc Add missing fields to Router Details page
018e99d Allow horizon to function without nova
7e65af5 Embed support for external data sinks into api.glance
32daa8c Imported Translations from Zanata
b3658f7 No eslint errors in horizon.heattop.js
14f7b01 Fix for cinder api memoize issue
09b745a Imported Translations from Zanata
e759783 No more no-unneeded-ternary eslint errors
4f1b6c4 No more block-scoped-var eslint errors
6cc5ce1 No more no-extra-parens eslint errors
c3fd32b No more braces-style eslint errors
7cbd3b7 No more space-in-parens eslint errors
8f77a68 Allow ngdetails path to contain '/'
4577bf0 Cleanup the toastService in *.spec.js files
5752491 Updated from global requirements
fb4b08f fix magic search bug
0eb0bd2 [TrivialFix] Hide expand in angular table if we haven't setSummaryTemplateUrl
617042b Allow wiring of <hz-dynamic-table> into <transfer-table>
d6c0cdc Image uses hz-property for its drawer information
207513a NG Images Create Volume should use constant from images.module.js
8bbd310 [Django 1.10] Fix get_form uses kwargs
c386d05 Imported Translations from Zanata
0aacdbe cleanup for ng create volume workflow
ef9c96e Fix jasmine tests failing due to missing ng-file-upload dep
baca291 Pay attention to Nova disabled quotas defined in a config file
cf91124 Choose a server group when booting a VM with NG launch instance
8e55dd8 [TrivialFix]Remove the redundant required=True
ccdb7b4 Fix show/hide password when clicking password icon
31e5672 Angular direct service access.
3ff5826 Adding hz-resource-property/-list and filter/value retrieval
8f35c43 Imported Translations from Zanata
63b3a2a Delete the useless API of heat
cdddbcb Imported Translations from Zanata
b934b16 Material theme form errors - fix red text on red bg
8fca93a Documentation and other improvements for registry
3157f29 Updating MDI todos.
bb38c59 Revert "Router namespace not created in controller".
13339f2 Fixes issue where metadata is always removed on edit
31d6e2d Revert "Prevent creation of subnet via RBAC during new network creation"
454faaf Fix Django route for swift ui with folder path
1af2a96 Material: Progress Bars should allow text
fdc17c5 Containers/Swift has unneccesary padding
fca46ab Pre-populate the Angular template cache and allow template overrides
f081f5c Document additional release process for xstatic
04ece63 Imported Translations from Zanata
70f1a0c Imported Translations from Zanata
2ef4286 Maximum/Total value now included as variable in msgid (i18n)
96aa8e4 Remove unused LOG
2cdb6b4 Updated from global requirements
bc30e84 Imported Translations from Zanata
ea1641b Instance Size (flavor) column is sortable when it should not
7b95e2a Magic-Search isn't rendered unless config is ready
712204e Fix the issue that it cannot do a policy check correctly
0363b56 Imported Translations from Zanata
2680b01 Correct the description for "Update Group" form
fc02a02 Modify "Edit Flavor" action
f87b58f i18n: trim whitespaces in extracted messages from AngularJS templates
2485681 Correct reraising of exception
a01d61a Trivial fix to multi-domain description text
e3d42c1 Imported Translations from Zanata
a6990d4 Remove the wrong method from MigrateMaintenanceHost
146256f Modify hz-cell to use hz-field
7f69b0f [TrivialFix]Use the right indent for MigrateHostView
ae94c55 Imported Translations from Zanata
077d386 Imported Translations from Zanata
c135ffa Enable tox to run the subset test cases.
f5c41b6 Do not import local/enabled when to run test
7fdebb6 Use "isspace()" to make code more simple
028aecc Take shared subnets into account for quotas
5c5f35a Angular LI:Make sure we always get all limits
21d5f07 [TrivialFix] Use more appropriate variable name
916a8d7 Imported Translations from Zanata
6639943 Fix create container modal style
086b33a Fix handling of swift object name == pseudo-folder name
3999685 Fix constant redirect on missing container name
0540141 Updated from global requirements
eb60a8b Use absUrl, so WEBROOT isn't ignored on redirect
c6251d9 Metadata definitions table with pagination shows inconsistent data
20f0ec4 Imported Translations from Zanata
9a535a1 Improve security rule notification message
3b5f73b Fix Magic Search Width Problems
878e53d Preview Page: Material: Code Icon fix
96399aa Registry-based client/server-side faceted search
c8df615 Preview Page: Themable Checkbox should have different label
93bbec1 Preview Page: Form: Everything shouldn't say Legend
a1f1e86 Add themable selects to the theme preview page
13727c6 [Django 1.10] Remove old style URLS
97f89f9 Add Django 1.10 tox env
f16435b Imported Translations from Zanata
d643153 Data Table Actions need context
9d05c25 Fix typo 'occured' -> 'occurred'
f75db42 Implement Manage Attachments in Instances
77d7e26 Added correct cursor to components without the href attribute
baf271e Imported Translations from Zanata
b60275a Show name_or_id when router name is white space
5b865cf stop memoizing on request argument in cinder api
1f2f602 Do not allow "white space" as name field value
b2b801b Add warning when falling back to insecure key generation
53fccaa Place Create Image in global actions, not batch actions
da188a5 Correct IP Proto sec group rules help txt
eb3180f Returning a tuple instead of list in list_extensions
a05883d Addition of metadata for snapshot in VolumeSnapshot object
16d72cd Fix heat TemplateForm glance.image sizeformat error
797f823 Never import setting from openstack_dashboard
962abed Imported Translations from Zanata
9b0553d Second endpoint type default is not None
4724e10 Register Neutron Floating IP and Security Group names
4180e63 Allow metadata to be shown whether v1 or v2 glance data (NG)
fd14a9e Set an empty string for no volume type directly
e6cbcd3 Provide help-text capability for server-side filter choices
f6cf068 Fixes JS linting error
a865918 Add valuable exports to openstack RC file download
4570413 Add units in overview project page (limit summary)
3d3f99e Imported Translations from Zanata
5424cf2 Updated from global requirements
1676258 Changed auth_url in api/nova.py to point to keystone
488efd7 Implement admin_filter_first in Instances and Images Admin Views
0854bb9 Fix some spelling mistakes in horizon intermittantly should be intermittently finctionality should be functionality funcionalities should be functionalities
2004c89 Imported Translations from Zanata
81800f2 Line chart hover bubble unreadable
fe04af0 Fix dropdowns sometimes not opening in integration tests
39eaca6 Add "Cancel" button for "Add static route" form
42e3c68 Add Line Charts to the Theme Preview Page
03ede4c Modals should inherit from the theme
b450a03 Improved table deletion efficiency
2dd2aea Updated from global requirements
7e6ca1a Using registration for auto-generation of Image feature
3945b24 Adding Identity NGProjects API
0dba684 Use ng-file-upload to simplify JS API calls that upload files
4371f44 Imported Translations from Zanata
30e37aa Fix hz-dynamic-table formatting for magic-search and actions
f20b3b1 Add check whether nova is enable or not in aggregate panel
f464f4b Add a condition whether displaying the link jump to Encryption page
39937f9 [Trivial] Add required=False to router name in Create Router
bc00c2f Imported Translations from Zanata
06e1272 Relocated error message to associated field and corrected grammar
957258a Fix css class for cancel button on metadata modal
9230998 Modified modal error message to display properly when present
fffb269 Trivial: Remove unused 'horizon.app.core.images.events'
ab9a0fe Imported Translations from Zanata
3b5d976 Add Angular Project Volumes Panel
b1a2246 Add support for volume consistency group snapshots
ffceacd Update Horizon for Angular 1.4
e6c7c33 Modify warning message
abfaf12 Show instance lock/unlock actions based on the locked status
62b4e6f Escape angularjs templating in unsafe HTML
16a471f Clear confusing annotation in rest create_user
68ce548 Fix port validator
b862494 UX: Remove duplicated view title under Settings section
acf67e0 Change from client filter to server filter in metadata page
c1ff33a Branding: Detail Actions need Context
448ad46 Updated from global requirements
f85891a Register Image Names via .setNames()
96984f8 Fix coverage post job
01aa994 Adding resource panel and table features
af62790 Updating heat policy file
1d886b7 Define Magic Search Event Constants
eecb8bf Change default timeouts in integration tests
fe76b2f Refactoring of network details pages
d0ddd22 Horizon selects are now themable: Admin Panels
171dbf0 Modify exception message style according to i18n guidelines
7ddebc5 Imported Translations from Zanata
aa005fe Add Try/Exception block to Networks Table
ee16100 Update .gitignore for JetBrains(PyCharm) users
555503c Remove redundant conditional expression
4398017 Imported Translations from Zanata
144df75 make toggle buttons look consistent on ng modals
56fce18 Stop memoizing on request arguments in nova api
5c1f176 Table Column Sorting icons should inherit from theme
cb19b47 Updated from global requirements
1392c33 Add help text to some DeleteAction
2d09356 Fix wrong data type of subnet_availabilities_list
edfde8b ICMP type & code validation while adding Security Group rules
cc42e94 Live migration auto schedule new host
cb0d1ea admin permissions depends on OPENSTACK_KEYSTONE_ADMIN_ROLES
241cf1b Migrate swift ui to use hz-dynamic-table
6f17650 Hotfix the issue with too new Firefox version
71a7ac2 modified filter tab name for images shared by projects
6d8eb37 docs: Remove version from example
c5d3192 Docs: Do not mention POT files
963d842 Imported Translations from Zanata
2b67ae6 Horizon selects are now themable: Launch Instance
3befade Prevent creation of subnet via RBAC during new network creation
35eb25a Make sure we always get all limits
4328c72 Enhance policy rules to workflow actions
c0dce0f Make the date input box more neatly
a45b6b9 Imported Translations from Zanata
ca99225 Modified Instance Form Submit behavior.
1333729 Angular LI Required Icon isn't Brand Primary Color
feb0ad0 Exclude networks with no subnets angular
d63f93a Implement video capture for failed tests
0f16250 Imported Translations from Zanata
e077903 Improvements to hz-dynamic-table
3850196 Handle non ASCII tenant names gracefully when downloading RC file
4e71364 updating keystone policy file
d1134ad Updating nova policy file
873a761 In integration tests prevent getting volume size too early
df14d97 API for getting and updating quotas
ce8677e Validate minimum RAM for snapshot source
48ba05e Prevent duplicated ips on network topology
ac4d09e Menu icon doesn't show in Resource Usage page
0b807ac Add Network IP Availability Extension
b51aa1d Imported Translations from Zanata
2e6e528 Fix JS error when loading metadata modal
e1d54c1 Updated from global requirements
f56dc69 Make error message in modal a unified style
bf9ad60 Deprecate the OPENSTACK_TOKEN_HASH_ENABLED option
2679c38 Default theme lacks support for dropup menus
b3b8831 Add missing unit tests to NG launch instance
c80edb1 Do not run exception handlers if test was skipped.
6735645 Theme Preview Page should include form-inline
ff32f86 Updated from global requirements
fe98059 Relax hz-table parent requirement
e17935b getIdsOfType now returns all ids if type undefined
c704623 Add Try/Exception to Extension Supported call in Ports
9468222 Flavors row level actions integration tests
313126a Navigational Breadcrumb should have contextual class
47d9c33 Horizon selects are now themable: Identity Panels
db23d09 Allowing non-ASCII characters for Security Group names
bf7c590 Output JS Karma test coverage reports to ./cover/
1d60ffd Added safety check to initActions so unregistered types pass
75e9136 Remove redundant conditional expression
6e555e8 Pure project admin can't view Projects page
d4a8023 Set some useful default values with the new launch wizard.
20c17d2 Horizon selects are now themable: Volumes
c3da75a Delegate tearDown logic to addCleanup method
3aa3cc9 Adding generic table extensibility
a459726 Fix untranslated strings and adding icon to OK button
26359bd Use Magic-Search for Security Groups step in Launch Instance
180bcf2 Correcting detail-row logic to not disrupt styling
b2d7322 Panel static finder
5da5fd3 Reduce the default date range on Overview panel to 1 day
a70a787 python 3.4 support for urlparse
0ee8895 Add router L3 agent info to info page
b4e01a7 Imported Translations from Zanata
b28f736 Updated from global requirements
ce5fb26 Remove admin role name 'admin' hardcode
0c91293 Pass page_url instead of whole request to render
0c5c575 Add support for detail actions
bf4f7e8 Updating package.json / npm packages
df5b5fb add 'x' dismiss button to simpleModal
5ca5ecc Hide 'Back' and 'Next' button if the number of step is 1
5a9c4b0 Add feature to log operations of users to Horizon
408e358 Move out integration tests scaffolds from Horizon production code
caa5e91 Fix Keystone version suffix when Keystone webpath is present
2481d2b Remove memoize that holds connections open
5934d83 Improve system info page
24b8528 Update the links of django docs to dev version
5fb8b29 Make the volume transfer name field required
cd03154 Images uses generic/extensible details views
14f40d6 Use 'label' rather than 'button' for buttons in Edit Image
70056d0 Updated from global requirements
eafec8e Temporarily disable the most problematic integration tests
1644a0e Add scrolling to the projector selector
388708b Updates horizon's copy of the cinder policy file
c1e7afe Adding warning to Launch Instance when no availability zones
eb0ecb3 Fix small typo
8a6667c Updated from global requirements
57962fb fixed row update of vpn table
315958a Use upper-constraints in tox test environments
a0088d1 Fix the issue that delete actions are unclickable
f3825a5 Fix project name refresh in project menu bar
4aef84b Support update volume type public status
926a451 Use 'trimmed' for blocktrans with multi-line contents
82e4089 Use 'Delete Instance' rather than 'Terminate' in legacy topology
4b870b1 Django compressor cannot find custom theme templates
6ec5dd3 Updated from global requirements
193756f Add module ngFileUpload as a dependency to main horizon.app module
75d30cb Don't attempt to list the "folder" contents of Swift objects
f0a11af Disabling warnings of 'quote-props'
bb1547c Add *args, **kwargs to ModalBackdropMixin's init method
1d7e388 Whitelist 'rm' in pep8 tox environment
18b351b Angular pages will reload if collapse/expand sidebar
dbd9076 Fix doc build warnings and errors
1689596 Preview Page: Modal location is off
c3278a2 table-detail (Angular) tables correct problem with row striping
0f4f613 Improve field name in User Detail
9402eb0 Fix untranslated strings in ng-instance
0ee3b7d Remove unnecessary help-panel in import keypair modal
ee98b44 UX: Misaligned OpenStack Logo
b743fef Trivial: Change message level from warning to info
11968c8 Generic details display framework
e33cbd6 Don’t error if dhcp_agent_scheduler not enabled
340e67c Add policy checks in images panels
f517259 Add recursive deletion to Swift UI
25010e1 [TrivialFix]Remove duplicated OS::Nova::Flavor registration
e620120 Imported Translations from Zanata
f58f3e0 Updated from global requirements
bf10711 Add OS::Nova::Hypervisor display name registration
914a07a Refactor Orchectration Stacks menu
25b1aa8 Adding admin lookup of routers per l3 agent
a337b89 Angular Table Directive cleanup
466a40e Magic Search inline doc cleanup
7515f1e allow hiding ng help-button for workflow steps
3536c71 Use correct casing on jQuery.
2ff54b5 Added tests for edit image description and name
fb4c13e Imported Translations from Zanata
6ccd9fb Adding Create Image Action to angular images panel
802ec1f Change Metadata Display widget to case insensitive
6ad36e0 Fix existing metadata display in metadata widget
dd80909 Adding old topology to compliment new
15ac226 Ensure horizon configurations could be customized
c6bfe2d In integration tests wait 1 second after changing the password
a7da1da Tutorials related to class Meta should use new style
cba0d4d Add release notes for hz-dynamic-table directive
e6e0a47 Fix key import in angular Launch Instance
654dfb7 Update tox.ini for pot files not in tree
334f9d3 Modify default sort in flavor table in ng-instance
0d5ce2e Updated from global requirements
1c0d8ce Simplify "Instance Count" verbiage
cada006 Added 'help_url' example to local_settings.py
0d4c041 Trival: correct the 'View Credentials' icon
0054743 Fix translation test
f54e28c Moved table action tutorial under tutorials
adc9ab1 Cleaning up lint warnings for Image work
2e35583 Remove deprecated default_*_subnet_pool options
f8cb496 Add semantic markup to Project Overview page
2e98d71 Fix file upload not setting content-type correctly
d5b24d7 Use breadcrumb nav across Horizon
df1cbab Adjust width so as not to be hidden by "help element”
6192bfd Images tables uses action promises
00b842e Horizon selects are now themable: Table Actions
e2f4651 [Trivial] Wrong policy for Heat resource type details
94fd248 Heat Template Versions panel
86cf509 Updated from global requirements
c140149 Add allowed address pair extension UI for neutron ports.
3b195c0 Removing unnecessary Angular Image files
83fc104 Imported Translations from Zanata
7da5ba6 Added tests for Identity Groups
eac7e3a Remove unnecessary default-sort/ default-sort-reverse from hz-table
bc2826e Choose a server group when booting a VM
5fdc140 Edit Extra Spec Value Fail
e56aca8 Removed vestigial Magic-Search bar
27938b1 Added integration tests for Admin > System > Defaults Panel
7bc53a7 rename link "Download key pair" to "Re-generate key pair"
d0dd62d [trivial] Add comma symbol to avoid misunderstanding
037d1c0 removing httplib2 test dependency
7b49a2c Add support for default dns for subnet
fd569da Further Theming fixes for Launch Instances
5347015 Updated from global requirements
3e65e33 Improve Volume selection handling in LI
8caf61a Instance Detail Console Error is not consistent
ea6d708 Remove broken "link" type action
8b76b5f Initial Clean Up Old Styles in _debt.scss
fb33003 Angular Table Directive
421cdbc Tutorial for extending a workflow
0ec6dd5 Define row in cell_getter before check cell status
3963f03 No lock required for reading secret key
58553ba Add Charts to Preview Page
3e02f8d Imported Translations from Zanata
bee35b5 Wait for user menu items to become visible before clicking them
f0fb0a3 Imported Translations from Zanata
3881095 Fix js error when updating associations of metadata
4619696 Attach test logs individually for each test
8d32b0a Security group add/delete rules integration tests
b9d8162 Fix incorrect breadcrumb on Admin > Details
e86b1e4 Move magic-search bar out of the smart-table structure
79fcc65 Fix pre_test_hook fail and sidebar menu fail
32e8561 Improve Router integration tests coverage
7b43577 Fix the issue help_text is not translated in User Setting
69d44ce display error message below form element
0f1823f Remove unnecessary files on Create Network
9e506d1 Many dropdown actions are white text on white background
2b80998 Add filter function on resource type table
a67d75f Enhances tox to not rely on run_tests
eda58de Added test for check stacks creation and deletion functionality
f623281 Provide integration test for managing a project's members
d2b3cf9 Added test remove protected image
8741de4 [doc] fix syntax error in "Installing Horizon"
5d60039 Fix tests broken by novaclient 4.0.0 release
5d81611 Check that row is defined when wait cell status
c407aa1 Imported Translations from Zanata
e390773 Removed "Disable user" from dropdown menu for self
17176d0 Template loaders defined before local settings
db604ac Remove redundant line to open login page
4153382 Allow delete servers in error state
2327e9c Improve error message of when Conflict error occur in ng-swift
fb804ac Fix workflow bug in "Create Network" dialog
85b7725 Fix RST formatting errors
1372e7e Imported Translations from Zanata
4277f75 Updated from global requirements
af0d4da Added a warning message if User Name is empty
4254165 Support scheduler hints when launching instance
84032cb Added tests for check RC files from API Access page
5b06cda Adding Edit Image Action to angular images panel
65eb9e9 Fix explicit waiting if instance has error status
755d07c Fix longtime tests
0039ac0 Add download button for volume transfer creds
eb2c632 Sync segmentation ID ranges with Neutron
ed7c766 Add Geneve support
a968f9a Add network types used by midonet
27854cc Create Subnet missing cancel button
d44eebe Added update image metadata test
a4f3615 Add test for volumes attach/detach
8896835 Angular vs. Django Table Danger Button Inconsistency
718628f Updated from global requirements
a4d58e7 Upgraded eslint-config-openstack to 1.2.4
b5673ec Net topology: Show console link only when useful
8da92fb Update JS dev dependencies
33b000a Fix doc build if git is absent
0d84df7 Change Registry Label for Server to Instance
dbd4731 Use Chrome for JS unit tests
b6e466f Set description field as required for nova-network
38a97f1 Added router set/clear gateway test.
5b118a2 Add test for check router create, edit, delete from Admin page
5fc69c9 Make neutron provider network configuration more flexible
3bf6e50 Default SESSION_ENGINE is not Local memory storage
e4216cb Documentation on translation support in horizon plugins
d76fb60 Reduced the left padding value on alert message
0032f3f Guard against instance row being displayed slowly in i9n tests
ad18ae7 Add event broadcast to table row expansion
fd92d8e Fix remaining Django 1.9 test failures
3b1d156 Add help text to image creation fields in Horizon
ac63c15 Fix batch action buttons state loosening
7661db1 Fix Selenium Tests
d6afbac Fix time in Nova test data
b360c6f [TrivialFix] Rename run_tests.py to run_tests.sh
cde3892 Imported Translations from Zanata
fdf0bf6 Fix babel msgids to include tag attributes and entities
6bb41cd Added test for check launch volume as instance functionality
67caa07 Remove the DeleteInstance action unused name and classes
ea92e73 Allow local/enabled panels to order relative to enabled panels
7f6942f Update the Administrator guide link with new one
8266e5d Tests for instance filtering are added
f65ff0f Pass environment data to update stack action
b05d3cf Add strip() to filter string in instances
80e52c1 Fix new Swift UI to work with Ceph backend
36ead14 Prevent transfer tables expanding out of modal
8e9b609 Refactor of BaseTestCase
0b3d811 Fix CheckBoxMixin:is_marked behavior
6a880bd Fix some trivial errors in plugin.rst
e63b5d8 Make i9n tests correctly recognize the deletion of a last row in a table
9697a9f bump eslint version to 1.10.3
0c118e4 Remove PYTHONHASHSEED=0 from tox
ff30c68 Use InAnyOrder for role creation mocks
d2692ef NG launch instance: Clear fileInput value on text change
d7e7148 Set mandatory fields
31e7091 Tests for images filtering are added
bf32b9e Added test for check instances pagination functionality
3f4eeaa Imported Translations from Zanata
8ea75ad Fix typos in Horizon files
10e6bf5 Fixing updating user with no default project
9399680 Fix the issue which redirect to Not Found page
dd4d1fb Imported Translations from Zanata
04c43e7 Imported Translations from Zanata
b54965d Duplicate help message in metadata tab
19b6a65 Fix opening multiple Launch Instance during jQuery table polling
52128cc Separate subnets tests from networks tests file
d3dd5e0 Make no response notification(msg) level to INFO
8ad7d1f Imported Translations from Zanata
ff3232a Disable all actions while performing action
243394a Added test for image create from local file
0a6d9d5 "Clear Selection" is unlocalzed
15e83c6 Update URLs to Django 1.8+ style
d649151 Using LOG.warning replace LOG.warn
2694d45 Imported Translations from Zanata
e05a8fe Hide project switch menu when project is disabled
38df986 Follow up on detail title fix
09148f6 Cleaning up eslint warnings in the openstack-service-api directory
d51bcdc Fix opening multiple Launch Instance during jQuery table polling
2143bb6 Imported Translations from Zanata
efef226 Removes some redundant words
32510d8 Fixing updating user with no default project
ac78a48 Image create "Copy Data" checkbox wrong label
7f1a831 Imported Translations from Zanata
f9df264 Fixes truncated string in details overview table.
fc7f1fd minor ng launch instance cleanup - remove unused css styles
46d3457 No unit test coverage for code related to Flavors
60722aa Do not cache templates in DEBUG mode
96fedc1 Provide an integration test for dynamic themes
184b67d Imported Translations from Zanata
acba376 Imported Translations from Zanata
f645d85 Fix the link of Django logging directive
f1036b4 Imported Translations from Zanata
f291170 ng Launch Instance wizard, constant cleanup
be5f5aa Keep row 'data-display' attr up to date after inline editing a cell
7c71e21 Imported Translations from Zanata
f07f296 Imported Translations from Zanata
74fe0ac Cleaning code to remove eslint warnings from Launch Instance
2d6e0fb Fix bad/inefficient API call for JS getImage()
48193a5 Doc page not displaying command-line with appropriate styling
b96874b Update reno for stable/mitaka
5d0391f Update .gitreview for stable/mitaka
723bf09 Minor ng containers cleanup
1976cb9 Add trace to integration gate scripts
143f453 Delete repeated column 'enabled' in users table
f65592d Add "data_required=True" check into heat rest api
83a2d36 Bootstrap Theme Preview links to sections don't work Edit
b1f7fc4 Bypass get_domain call to keystone api
222774b Auto-detect in i9n tests which row action to bind to
3ec7f0b More documentation on writing i9n tests
7f550c5 Fix themable checkbox error state
c259d66 Horizon support for Heat template versions
33b5439 Port list check is missing for LBaaS Add Member
6212128 Added tests for check change volume functionality
08e6a98 Added test for check Edit Consumer of QoS Spec functionality
07d748e Branding: Table Action dropdown hovers theme issue
f195fea Fix issue with some modals are missing backdrop
b6b685a Fixing test cases
935c483 Fixing the deprecated library function.
574228c Use JQuery promise/deferred objects to track AJAX
dfcb6f3 fix-legend-overflow
c7c86ed Optimize "open" method with context manager
1546981 Change the super argument to use the current class
701d75f Prevent 'Detach Interface' action if an interface is not attached
2c9b5b3 Refactor DataTable filtering functions into mixin
Diffstat (except docs and test files)
-------------------------------------
.eslintignore | 2 +-
.eslintrc | 8 +-
.gitignore | 4 +
.gitreview | 1 +
horizon/base.py | 28 +-
horizon/conf/default.py | 5 +-
horizon/contrib/staticfiles/__init__.py | 0
horizon/contrib/staticfiles/finders.py | 39 +
horizon/exceptions.py | 2 +-
horizon/forms/__init__.py | 9 +
horizon/forms/base.py | 2 +-
horizon/forms/fields.py | 158 +-
horizon/forms/views.py | 22 +-
horizon/karma.conf.js | 18 +-
horizon/locale/ca/LC_MESSAGES/django.po | 23 +-
horizon/locale/cs/LC_MESSAGES/django.po | 176 +-
horizon/locale/cs/LC_MESSAGES/djangojs.po | 94 +-
horizon/locale/de/LC_MESSAGES/django.po | 126 +-
horizon/locale/de/LC_MESSAGES/djangojs.po | 143 +-
horizon/locale/django.pot | 530 -
horizon/locale/djangojs.pot | 614 -
horizon/locale/en_AU/LC_MESSAGES/django.po | 154 +-
horizon/locale/en_AU/LC_MESSAGES/djangojs.po | 220 +-
horizon/locale/en_GB/LC_MESSAGES/django.po | 120 +-
horizon/locale/en_GB/LC_MESSAGES/djangojs.po | 170 +-
horizon/locale/es/LC_MESSAGES/django.po | 160 +-
horizon/locale/es/LC_MESSAGES/djangojs.po | 78 +-
horizon/locale/es_MX/LC_MESSAGES/django.po | 33 +-
horizon/locale/fi_FI/LC_MESSAGES/django.po | 22 +-
horizon/locale/fil/LC_MESSAGES/django.po | 6 +-
horizon/locale/fr/LC_MESSAGES/django.po | 143 +-
horizon/locale/fr/LC_MESSAGES/djangojs.po | 99 +-
horizon/locale/hi/LC_MESSAGES/django.po | 23 +-
horizon/locale/hi/LC_MESSAGES/djangojs.po | 186 -
horizon/locale/hu/LC_MESSAGES/django.po | 6 +-
horizon/locale/id/LC_MESSAGES/django.po | 152 +-
horizon/locale/id/LC_MESSAGES/djangojs.po | 566 +
horizon/locale/it/LC_MESSAGES/django.po | 107 +-
horizon/locale/it/LC_MESSAGES/djangojs.po | 92 +-
horizon/locale/ja/LC_MESSAGES/django.po | 116 +-
horizon/locale/ja/LC_MESSAGES/djangojs.po | 151 +-
horizon/locale/ko_KR/LC_MESSAGES/django.po | 149 +-
horizon/locale/ko_KR/LC_MESSAGES/djangojs.po | 164 +-
horizon/locale/nl_NL/LC_MESSAGES/django.po | 36 +-
horizon/locale/nl_NL/LC_MESSAGES/djangojs.po | 13 +-
horizon/locale/pa_IN/LC_MESSAGES/django.po | 33 +-
horizon/locale/pa_IN/LC_MESSAGES/djangojs.po | 10 +-
horizon/locale/pl_PL/LC_MESSAGES/django.po | 34 +-
horizon/locale/pl_PL/LC_MESSAGES/djangojs.po | 13 +-
horizon/locale/pt/LC_MESSAGES/django.po | 33 +-
horizon/locale/pt_BR/LC_MESSAGES/django.po | 126 +-
horizon/locale/pt_BR/LC_MESSAGES/djangojs.po | 75 +-
horizon/locale/ru/LC_MESSAGES/django.po | 153 +-
horizon/locale/ru/LC_MESSAGES/djangojs.po | 136 +-
horizon/locale/sl_SI/LC_MESSAGES/django.po | 16 +-
horizon/locale/sr/LC_MESSAGES/django.po | 14 +-
horizon/locale/sr/LC_MESSAGES/djangojs.po | 169 -
horizon/locale/tr_TR/LC_MESSAGES/django.po | 85 +-
horizon/locale/tr_TR/LC_MESSAGES/djangojs.po | 27 +-
horizon/locale/zh_CN/LC_MESSAGES/django.po | 173 +-
horizon/locale/zh_CN/LC_MESSAGES/djangojs.po | 161 +-
horizon/locale/zh_TW/LC_MESSAGES/django.po | 129 +-
horizon/locale/zh_TW/LC_MESSAGES/djangojs.po | 53 +-
horizon/middleware.py | 194 -
horizon/middleware/__init__.py | 19 +
horizon/middleware/base.py | 203 +
horizon/middleware/operation_log.py | 162 +
horizon/site_urls.py | 25 +-
horizon/static/auth/login/login.spec.js | 8 +-
.../static/framework/conf/permissions.service.js | 158 +
.../framework/conf/permissions.service.spec.js | 119 +
.../conf/resource-type-registry.service.js | 720 +-
.../conf/resource-type-registry.service.spec.js | 268 +-
horizon/static/framework/framework.module.js | 35 +-
horizon/static/framework/framework.module.spec.js | 4 +-
.../util/actions/action-result.service.js | 150 +
.../util/actions/action-result.service.spec.js | 93 +
.../framework/util/actions/actions.module.js | 21 +
horizon/static/framework/util/filters/filters.js | 20 +-
.../static/framework/util/filters/filters.spec.js | 17 +-
.../filters/helpers.borrowed-from-underscore.js | 93 +
horizon/static/framework/util/http/http.js | 48 +-
horizon/static/framework/util/http/http.spec.js | 107 +-
horizon/static/framework/util/i18n/i18n.js | 4 +-
.../promise-toggle/hz-promise-toggle.directive.js | 6 +-
.../util/tech-debt/helper-functions.service.js | 2 +-
horizon/static/framework/util/util.module.js | 2 +
horizon/static/framework/util/uuid/uuid.js | 45 +
horizon/static/framework/util/uuid/uuid.spec.js | 70 +
.../util/validators/hz-password-match.directive.js | 2 +-
.../framework/widgets/action-list/action-list.scss | 5 +
.../widgets/action-list/action.directive.js | 4 -
.../action-list/actions-detail.template.html | 13 +
.../widgets/action-list/actions-link.template.html | 3 -
.../widgets/action-list/actions.controller.js | 26 +-
.../widgets/action-list/actions.detail.mock.html | 2 +
.../widgets/action-list/actions.directive.js | 67 +-
.../widgets/action-list/actions.directive.spec.js | 73 +-
.../widgets/action-list/actions.service.js | 47 +-
.../static/framework/widgets/action-list/link.html | 7 -
.../framework/widgets/action-list/split-link.html | 12 -
.../widgets/charts/pie-chart.directive.js | 20 +-
.../static/framework/widgets/charts/pie-chart.html | 2 +-
.../framework/widgets/charts/pie-chart.spec.js | 2 +-
.../framework/widgets/details/details.directive.js | 75 +
.../static/framework/widgets/details/details.html | 13 +
.../framework/widgets/details/details.module.js | 29 +
.../details/routed-details-view.controller.js | 78 +
.../details/routed-details-view.controller.spec.js | 112 +
.../widgets/details/routed-details-view.html | 28 +
.../framework/widgets/form/builders.provider.js | 66 +
.../widgets/form/builders.provider.spec.js | 64 +
horizon/static/framework/widgets/form/decorator.js | 162 +
.../framework/widgets/form/decorator.spec.js | 60 +
.../framework/widgets/form/fields/array.html | 39 +
.../framework/widgets/form/fields/checkbox.html | 18 +
.../framework/widgets/form/fields/checkboxes.html | 22 +
.../framework/widgets/form/fields/default.html | 55 +
.../framework/widgets/form/fields/fieldset.html | 4 +
.../static/framework/widgets/form/fields/help.html | 1 +
.../widgets/form/fields/radio-buttons.html | 23 +
.../widgets/form/fields/radios-inline.html | 19 +
.../framework/widgets/form/fields/radios.html | 19 +
.../framework/widgets/form/fields/section.html | 1 +
.../framework/widgets/form/fields/select.html | 16 +
.../framework/widgets/form/fields/submit.html | 15 +
.../framework/widgets/form/fields/tabarray.html | 70 +
.../static/framework/widgets/form/fields/tabs.html | 41 +
.../framework/widgets/form/fields/textarea.html | 39 +
.../static/framework/widgets/form/form.module.js | 25 +
.../widgets/form/modal-form.controller.js | 64 +
.../widgets/form/modal-form.controller.spec.js | 71 +
.../static/framework/widgets/form/modal-form.html | 51 +
.../framework/widgets/form/modal-form.service.js | 72 +
.../widgets/form/modal-form.service.spec.js | 74 +
.../widgets/help-panel/help-panel.directive.js | 12 +-
.../help-panel/help-panel.directive.spec.js | 6 +-
.../framework/widgets/help-panel/help-panel.html | 11 +-
.../widgets/load-edit/load-edit.directive.js | 17 +
.../widgets/load-edit/load-edit.directive.spec.js | 12 +-
.../magic-search/hz-magic-search-bar.directive.js | 101 +-
.../widgets/magic-search/hz-magic-search-bar.html | 15 +-
.../magic-search/hz-magic-search-bar.spec.js | 57 +-
.../hz-magic-search-context.directive.js | 145 +
.../magic-search/magic-search.controller.js | 46 +-
.../magic-search/magic-search.controller.spec.js | 88 +-
.../widgets/magic-search/magic-search.html | 28 +-
.../widgets/magic-search/magic-search.module.js | 18 +-
.../widgets/magic-search/magic-search.scss | 100 +-
.../magic-search/st-magic-search.directive.js | 76 +-
.../magic-search/st-magic-search.directive.spec.js | 110 +-
.../widgets/metadata/tree/metadata-tree-item.html | 14 +-
.../widgets/metadata/tree/metadata-tree.html | 4 +-
.../framework/widgets/metadata/tree/tree.module.js | 1 +
.../framework/widgets/metadata/tree/tree.scss | 28 +-
.../widgets/metadata/tree/tree.service.js | 27 +-
.../framework/widgets/metadata/tree/tree.spec.js | 3 +-
.../modal-wait-spinner.service.js | 2 +-
.../widgets/modal/delete-modal.service.js | 8 +-
.../framework/widgets/modal/simple-modal.html | 5 +-
.../widgets/panel/hz-resource-panel.controller.js | 34 +
.../panel/hz-resource-panel.controller.spec.js | 57 +
.../widgets/panel/hz-resource-panel.directive.js | 57 +
.../framework/widgets/panel/hz-resource-panel.html | 4 +
.../static/framework/widgets/panel/panel.module.js | 22 +
.../widgets/property/hz-field.directive.js | 161 +
.../hz-resource-property-list.directive.js | 88 +
.../property/hz-resource-property-list.html | 12 +
.../property/hz-resource-property.controller.js | 39 +
.../property/hz-resource-property.directive.js | 63 +
.../widgets/property/hz-resource-property.html | 5 +
.../framework/widgets/property/property.module.js | 28 +
.../framework/widgets/table/hz-cell.directive.js | 128 +
.../widgets/table/hz-detail-row.directive.js | 100 +
.../framework/widgets/table/hz-detail-row.html | 18 +
.../widgets/table/hz-dynamic-table.controller.js | 90 +
.../widgets/table/hz-dynamic-table.directive.js | 136 +
.../table/hz-dynamic-table.directive.spec.js | 82 +
.../framework/widgets/table/hz-dynamic-table.html | 109 +
.../framework/widgets/table/hz-dynamic-table.scss | 23 +
.../widgets/table/hz-dynamic-table.spec.js | 290 +
.../widgets/table/hz-expand-detail.directive.js | 18 +-
.../widgets/table/hz-resource-table.controller.js | 207 +
.../table/hz-resource-table.controller.spec.js | 221 +
.../widgets/table/hz-resource-table.directive.js | 77 +
.../framework/widgets/table/hz-resource-table.html | 11 +
.../widgets/table/hz-select-all.directive.js | 12 +-
.../framework/widgets/table/hz-table.directive.js | 28 +-
.../framework/widgets/table/table.controller.js | 27 +-
.../static/framework/widgets/table/table.mock.html | 2 +-
.../static/framework/widgets/table/table.module.js | 7 +-
horizon/static/framework/widgets/table/table.scss | 62 +-
.../static/framework/widgets/table/table.spec.js | 7 +
.../widgets/transfer-table/filter-available.js | 112 +
.../transfer-table/filter-available.spec.js | 89 +
.../transfer-table/transfer-table.controller.js | 41 +-
.../transfer-table/transfer-table.directive.js | 24 +-
horizon/static/framework/widgets/widgets.module.js | 20 +
horizon/static/framework/widgets/widgets.scss | 1 +
.../framework/widgets/wizard/wizard.controller.js | 21 +-
.../static/framework/widgets/wizard/wizard.html | 31 +-
.../static/framework/widgets/wizard/wizard.spec.js | 28 +-
horizon/static/horizon/js/horizon.communication.js | 53 +-
horizon/static/horizon/js/horizon.d3barchart.js | 2 +-
horizon/static/horizon/js/horizon.d3linechart.js | 169 +-
horizon/static/horizon/js/horizon.d3piechart.js | 14 +-
horizon/static/horizon/js/horizon.firewalls.js | 8 +-
.../horizon/js/horizon.flatnetworktopology.js | 619 +
horizon/static/horizon/js/horizon.forms.js | 152 +-
horizon/static/horizon/js/horizon.heattop.js | 10 +
horizon/static/horizon/js/horizon.instances.js | 22 +-
horizon/static/horizon/js/horizon.membership.js | 12 +-
horizon/static/horizon/js/horizon.modals.js | 154 +-
.../static/horizon/js/horizon.networktopology.js | 142 +-
.../horizon/js/horizon.networktopologycommon.js | 149 +
horizon/static/horizon/js/horizon.quota.js | 27 +-
horizon/static/horizon/js/horizon.selenium.js | 18 +-
horizon/static/horizon/js/horizon.tables.js | 186 +-
.../horizon/js/horizon.tables_inline_edit.js | 25 +-
horizon/static/horizon/js/horizon.tabs.js | 13 +-
horizon/static/horizon/js/horizon.templates.js | 10 +-
horizon/static/horizon/js/horizon.users.js | 5 +-
horizon/static/horizon/js/horizon.volumes.js | 7 +-
horizon/tables/__init__.py | 1 +
horizon/tables/actions.py | 61 +-
horizon/tables/base.py | 97 +-
horizon/tables/views.py | 133 +-
horizon/tabs/base.py | 7 +-
horizon/templates/auth/_description.html | 2 +-
horizon/templates/auth/_login_form.html | 2 +-
horizon/templates/bootstrap/breadcrumb.html | 15 +
horizon/templates/bootstrap/progress_bar.html | 11 +-
horizon/templates/horizon/_sidebar.html | 6 +-
.../templates/horizon/client_side/_confirm.html | 14 +
.../templates/horizon/client_side/_loading.html | 4 +-
horizon/templates/horizon/client_side/_modal.html | 2 +-
.../templates/horizon/client_side/_progress.html | 19 +
.../templates/horizon/client_side/templates.html | 4 +-
.../templates/horizon/common/_breadcrumb_nav.html | 26 -
horizon/templates/horizon/common/_data_table.html | 6 +-
.../horizon/common/_data_table_action.html | 11 +-
.../common/_data_table_row_actions_dropdown.html | 2 +-
.../horizon/common/_data_table_table_actions.html | 12 +-
horizon/templates/horizon/common/_detail.html | 5 +-
.../templates/horizon/common/_detail_header.html | 16 +
horizon/templates/horizon/common/_form_errors.html | 4 +-
horizon/templates/horizon/common/_form_field.html | 37 +-
.../horizon/common/_form_field_decorator.html | 6 +
.../horizon/common/_horizontal_field.html | 20 +-
.../templates/horizon/common/_limit_summary.html | 32 +-
.../templates/horizon/common/_usage_summary.html | 4 +-
horizon/templates/horizon/common/_workflow.html | 33 +-
.../horizon/common/fields/_themable_checkbox.html | 15 +-
.../common/fields/_themable_radiobutton.html | 17 +
.../horizon/common/fields/_themable_select.html | 61 +
horizon/templates/horizon/jasmine/jasmine.html | 16 +-
horizon/templatetags/angular.py | 124 +
horizon/templatetags/bootstrap.py | 2 +-
horizon/templatetags/breadcrumb_nav.py | 47 +-
horizon/templatetags/horizon.py | 7 +-
horizon/test/firefox_binary.py | 44 +-
horizon/test/settings.py | 51 +-
horizon/test/test_dashboards/cats/kittens/urls.py | 6 +-
horizon/test/test_dashboards/cats/tigers/urls.py | 6 +-
horizon/test/test_dashboards/dogs/puppies/urls.py | 6 +-
horizon/test/urls.py | 10 +-
horizon/test/webdriver.py | 85 +-
horizon/themes.py | 26 +-
horizon/utils/babel_extract_angular.py | 35 +-
horizon/utils/escape.py | 31 +
horizon/utils/memoized.py | 68 +
horizon/utils/secret_key.py | 25 +-
horizon/utils/validators.py | 14 +
horizon/workflows/base.py | 47 +-
horizon/workflows/views.py | 8 +-
openstack_dashboard/api/cinder.py | 134 +-
openstack_dashboard/api/glance.py | 251 +-
openstack_dashboard/api/heat.py | 16 +-
openstack_dashboard/api/keystone.py | 78 +-
openstack_dashboard/api/network.py | 23 +-
openstack_dashboard/api/network_base.py | 6 +-
openstack_dashboard/api/neutron.py | 105 +-
openstack_dashboard/api/nova.py | 123 +-
openstack_dashboard/api/rest/cinder.py | 79 +
openstack_dashboard/api/rest/config.py | 12 +-
openstack_dashboard/api/rest/glance.py | 85 +-
openstack_dashboard/api/rest/heat.py | 2 +-
openstack_dashboard/api/rest/json_encoder.py | 2 +-
openstack_dashboard/api/rest/keystone.py | 7 +-
openstack_dashboard/api/rest/neutron.py | 61 +
openstack_dashboard/api/rest/nova.py | 314 +-
openstack_dashboard/api/rest/swift.py | 44 +-
openstack_dashboard/api/rest/urls.py | 1 -
openstack_dashboard/api/rest/utils.py | 28 +-
openstack_dashboard/api/swift.py | 16 +-
openstack_dashboard/conf/cinder_policy.json | 174 +-
openstack_dashboard/conf/heat_policy.json | 54 +-
openstack_dashboard/conf/keystone_policy.json | 72 +-
openstack_dashboard/conf/neutron_policy.json | 186 +-
openstack_dashboard/conf/nova_policy.json | 602 +-
.../contrib/developer/resource_browser/__init__.py | 0
.../contrib/developer/resource_browser/panel.py | 22 +
.../contrib/developer/resource_browser/urls.py | 20 +
.../contrib/developer/resource_browser/views.py | 19 +
.../static/dashboard/developer/developer.module.js | 3 +-
.../rb-resource-panel.controller.js | 56 +
.../rb-resource-panel.directive.js | 47 +
.../rb-resource-panel/rb-resource-panel.html | 4 +
.../resource-browser-item.controller.js | 222 +
.../resource-browser-item.directive.js | 47 +
.../resource-browser/resource-browser-item.html | 188 +
.../resource-browser.controller.js | 41 +
.../resource-browser/resource-browser.directive.js | 47 +
.../resource-browser/resource-browser.html | 7 +
.../resource-browser/resource-browser.module.js | 46 +
.../resource-browser.module.spec.js | 25 +
.../developer/resource-browser/resources.html | 1 +
.../theme-preview/theme-preview.directive.js | 126 +-
.../developer/theme-preview/theme-preview.html | 560 +-
.../developer/theme-preview/theme-preview.scss | 18 +-
.../contrib/developer/theme_preview/urls.py | 6 +-
.../dashboards/admin/aggregates/panel.py | 6 +-
.../dashboards/admin/aggregates/tables.py | 6 +-
.../dashboards/admin/aggregates/urls.py | 6 +-
openstack_dashboard/dashboards/admin/dashboard.py | 17 +-
.../dashboards/admin/defaults/tables.py | 5 +
.../dashboards/admin/defaults/urls.py | 7 +-
.../dashboards/admin/flavors/tables.py | 8 +-
.../dashboards/admin/flavors/urls.py | 6 +-
.../dashboards/admin/flavors/workflows.py | 24 +-
.../dashboards/admin/floating_ips/__init__.py | 0
.../dashboards/admin/floating_ips/forms.py | 64 +
.../dashboards/admin/floating_ips/panel.py | 30 +
.../dashboards/admin/floating_ips/tables.py | 91 +
.../templates/floating_ips/_allocate.html | 9 +
.../templates/floating_ips/allocate.html | 7 +
.../templates/floating_ips/detail.html | 48 +
.../floating_ips/templates/floating_ips/index.html | 7 +
.../dashboards/admin/floating_ips/urls.py | 26 +
.../dashboards/admin/floating_ips/views.py | 189 +
.../dashboards/admin/hypervisors/compute/forms.py | 4 +-
.../dashboards/admin/hypervisors/compute/tables.py | 25 +-
.../dashboards/admin/hypervisors/compute/urls.py | 6 +-
.../dashboards/admin/hypervisors/compute/views.py | 46 +-
.../dashboards/admin/hypervisors/panel.py | 1 +
.../dashboards/admin/hypervisors/tables.py | 12 +-
.../hypervisors/templates/hypervisors/detail.html | 5 +-
.../hypervisors/templates/hypervisors/index.html | 6 +-
.../dashboards/admin/hypervisors/urls.py | 6 +-
.../dashboards/admin/hypervisors/views.py | 5 +-
.../dashboards/admin/images/tables.py | 7 +-
.../dashboards/admin/images/urls.py | 28 +-
.../dashboards/admin/images/views.py | 30 +-
.../dashboards/admin/info/tables.py | 49 +-
openstack_dashboard/dashboards/admin/info/tabs.py | 25 +-
.../info/templates/info/_cell_endpoints_v2.html | 9 +
.../info/templates/info/_cell_endpoints_v3.html | 6 +
.../admin/info/templates/info/index.html | 2 +-
openstack_dashboard/dashboards/admin/info/urls.py | 7 +-
.../dashboards/admin/instances/forms.py | 15 +-
.../dashboards/admin/instances/panel.py | 1 +
.../dashboards/admin/instances/tables.py | 16 +-
.../dashboards/admin/instances/urls.py | 14 +-
.../dashboards/admin/instances/views.py | 30 +-
.../dashboards/admin/metadata_defs/constants.py | 2 +
.../dashboards/admin/metadata_defs/forms.py | 30 +-
.../dashboards/admin/metadata_defs/panel.py | 2 +
.../dashboards/admin/metadata_defs/tables.py | 47 +-
.../templates/metadata_defs/_update.html | 18 +
.../templates/metadata_defs/resource_types.html | 4 +-
.../templates/metadata_defs/update.html | 7 +
.../dashboards/admin/metadata_defs/urls.py | 7 +-
.../dashboards/admin/metadata_defs/views.py | 45 +-
.../dashboards/admin/metering/forms.py | 5 +-
.../admin/metering/templates/metering/stats.html | 12 +-
.../dashboards/admin/metering/urls.py | 7 +-
.../dashboards/admin/networks/agents/forms.py | 2 +-
.../dashboards/admin/networks/agents/tables.py | 7 +-
.../dashboards/admin/networks/agents/tabs.py | 45 +
.../dashboards/admin/networks/forms.py | 209 +-
.../admin/networks/ports/extensions/__init__.py | 0
.../extensions/allowed_address_pairs/__init__.py | 0
.../extensions/allowed_address_pairs/forms.py | 21 +
.../extensions/allowed_address_pairs/views.py | 25 +
.../dashboards/admin/networks/ports/forms.py | 146 +-
.../dashboards/admin/networks/ports/tables.py | 14 +-
.../dashboards/admin/networks/ports/tabs.py | 4 +-
.../dashboards/admin/networks/ports/urls.py | 14 +-
.../dashboards/admin/networks/ports/views.py | 6 +-
.../dashboards/admin/networks/subnets/tables.py | 85 +-
.../dashboards/admin/networks/subnets/urls.py | 9 +-
.../dashboards/admin/networks/subnets/views.py | 11 +-
.../dashboards/admin/networks/subnets/workflows.py | 24 +
.../dashboards/admin/networks/tables.py | 27 +-
.../dashboards/admin/networks/urls.py | 14 +-
.../dashboards/admin/networks/views.py | 150 +-
.../dashboards/admin/ngflavors/urls.py | 6 +-
.../dashboards/admin/overview/panel.py | 2 +
.../dashboards/admin/overview/urls.py | 6 +-
.../dashboards/admin/routers/ports/urls.py | 7 +-
.../dashboards/admin/routers/tables.py | 16 +-
.../dashboards/admin/routers/tabs.py | 5 +-
.../dashboards/admin/routers/urls.py | 9 +-
.../dashboards/admin/routers/views.py | 67 +-
.../admin/flavors/table/flavors-table.html | 127 +-
.../dashboards/admin/volumes/snapshots/forms.py | 2 +-
.../dashboards/admin/volumes/snapshots/tables.py | 4 +-
.../dashboards/admin/volumes/snapshots/urls.py | 6 +-
.../dashboards/admin/volumes/tabs.py | 85 +-
.../volumes/snapshots/_update_status.html | 2 +-
.../volumes/volume_types/_create_qos_spec.html | 2 +-
.../volumes/volume_types/_create_volume_type.html | 2 +-
.../volume_types/_edit_qos_spec_consumer.html | 2 +-
.../volumes/volume_types/_update_volume_type.html | 2 +-
.../volume_encryption_type_detail.html | 6 +-
.../templates/volumes/volumes/_manage_volume.html | 2 +-
.../templates/volumes/volumes/_migrate_volume.html | 2 +-
.../volumes/volumes/_unmanage_volume.html | 2 +-
.../templates/volumes/volumes/_update_status.html | 2 +-
.../dashboards/admin/volumes/urls.py | 6 +-
.../admin/volumes/volume_types/extras/urls.py | 8 +-
.../admin/volumes/volume_types/extras/views.py | 7 +
.../dashboards/admin/volumes/volume_types/forms.py | 40 +-
.../admin/volumes/volume_types/qos_specs/urls.py | 8 +-
.../admin/volumes/volume_types/tables.py | 59 +-
.../dashboards/admin/volumes/volume_types/urls.py | 7 +-
.../dashboards/admin/volumes/volume_types/views.py | 1 +
.../dashboards/admin/volumes/volumes/forms.py | 13 +-
.../dashboards/admin/volumes/volumes/tables.py | 24 +-
.../dashboards/admin/volumes/volumes/urls.py | 8 +-
.../dashboards/identity/domains/tables.py | 2 +-
.../dashboards/identity/domains/urls.py | 6 +-
.../dashboards/identity/domains/workflows.py | 9 +-
.../dashboards/identity/groups/tables.py | 24 +-
.../identity/groups/templates/groups/_update.html | 2 +-
.../dashboards/identity/groups/urls.py | 6 +-
.../dashboards/identity/groups/views.py | 5 +-
.../identity/identity_providers/protocols/forms.py | 2 +-
.../identity_providers/protocols/tables.py | 4 -
.../identity/identity_providers/protocols/urls.py | 7 +-
.../dashboards/identity/identity_providers/urls.py | 7 +-
.../dashboards/identity/mappings/urls.py | 7 +-
.../dashboards/identity/ngusers/panel.py | 5 -
.../dashboards/identity/ngusers/urls.py | 6 +-
.../dashboards/identity/projects/tables.py | 81 +-
.../templates/projects/_detail_overview.html | 6 +
.../projects/templates/projects/detail.html | 5 +-
.../dashboards/identity/projects/urls.py | 6 +-
.../dashboards/identity/projects/views.py | 21 +-
.../dashboards/identity/projects/workflows.py | 61 +-
.../dashboards/identity/roles/tables.py | 10 +-
.../dashboards/identity/roles/urls.py | 7 +-
.../dashboards/identity/roles/views.py | 4 +-
.../identity/users/table/table.controller.js | 2 +-
.../identity/users/table/table.controller.spec.js | 1 +
.../dashboard/identity/users/table/table.html | 2 -
.../dashboards/identity/users/forms.py | 52 +-
.../dashboards/identity/users/tables.py | 92 +-
.../users/templates/users/_detail_overview.html | 10 +-
.../identity/users/templates/users/detail.html | 5 +-
.../dashboards/identity/users/urls.py | 10 +-
.../dashboards/identity/users/views.py | 18 +-
.../access_and_security/api_access/tables.py | 5 +-
.../project/access_and_security/api_access/urls.py | 6 +-
.../access_and_security/api_access/views.py | 12 +-
.../access_and_security/floating_ips/forms.py | 2 +-
.../access_and_security/floating_ips/tables.py | 41 +-
.../access_and_security/floating_ips/urls.py | 8 +-
.../access_and_security/floating_ips/workflows.py | 11 +-
.../project/access_and_security/keypairs/forms.py | 5 +-
.../project/access_and_security/keypairs/urls.py | 6 +-
.../project/access_and_security/keypairs/views.py | 2 +
.../access_and_security/security_groups/forms.py | 42 +-
.../access_and_security/security_groups/tables.py | 40 +-
.../access_and_security/security_groups/urls.py | 6 +-
.../api_access/openrc.sh.template | 5 +-
.../api_access/openrc_v2.sh.template | 6 +-
.../access_and_security/keypairs/detail.html | 8 +-
.../access_and_security/keypairs/download.html | 4 +-
.../security_groups/detail.html | 6 +-
.../dashboards/project/access_and_security/urls.py | 6 +-
.../dashboards/project/containers/forms.py | 4 +-
.../templates/containers/_container_loader.html | 4 +-
.../containers/templates/containers/ngindex.html | 8 +
.../dashboards/project/containers/urls.py | 13 +-
.../dashboards/project/firewalls/forms.py | 26 +-
.../dashboards/project/firewalls/tables.py | 3 +-
.../templates/firewalls/_update_rule_help.html | 6 +-
.../dashboards/project/firewalls/urls.py | 7 +-
.../dashboards/project/firewalls/views.py | 4 -
.../dashboards/project/firewalls/workflows.py | 14 +-
.../dashboards/project/images/images/forms.py | 128 +-
.../dashboards/project/images/images/tables.py | 24 +-
.../dashboards/project/images/images/urls.py | 26 +-
.../dashboards/project/images/images/views.py | 10 +
.../dashboards/project/images/snapshots/urls.py | 6 +-
.../images/templates/images/images/_create.html | 16 +-
.../dashboards/project/images/urls.py | 21 +-
.../dashboards/project/images/utils.py | 5 +-
.../dashboards/project/images/views.py | 11 +
.../dashboards/project/instances/forms.py | 149 +-
.../dashboards/project/instances/tables.py | 127 +-
.../dashboards/project/instances/tabs.py | 2 +-
.../templates/instances/_attach_volume.html | 7 +
.../templates/instances/_detach_volume.html | 7 +
.../templates/instances/_detail_console.html | 6 +-
.../templates/instances/_detail_overview.html | 2 +-
.../templates/instances/_flavors_and_quotas.html | 10 +-
.../templates/instances/attach_volume.html | 11 +
.../templates/instances/detach_volume.html | 11 +
.../dashboards/project/instances/urls.py | 24 +-
.../dashboards/project/instances/utils.py | 28 +
.../dashboards/project/instances/views.py | 91 +-
.../project/instances/workflows/create_instance.py | 83 +-
.../project/instances/workflows/resize_instance.py | 11 +-
.../dashboards/project/loadbalancers/forms.py | 36 +-
.../dashboards/project/loadbalancers/panel.py | 5 +
.../dashboards/project/loadbalancers/tables.py | 8 +-
.../templates/loadbalancers/_create_pool_help.html | 23 +-
.../templates/loadbalancers/_create_vip_help.html | 9 +-
.../dashboards/project/loadbalancers/urls.py | 7 +-
.../dashboards/project/loadbalancers/views.py | 6 +-
.../dashboards/project/loadbalancers/workflows.py | 96 +-
.../dashboards/project/network_topology/tabs.py | 42 +
.../templates/network_topology/_actions_list.html | 53 +
.../templates/network_topology/_graph_view.html | 23 +
.../templates/network_topology/_svg_element.html | 102 +
.../templates/network_topology/_topology_view.html | 20 +
.../client_side/_balloon_container.html | 9 +-
.../templates/network_topology/index.html | 39 +-
.../dashboards/project/network_topology/urls.py | 7 +-
.../dashboards/project/network_topology/utils.py | 50 +
.../dashboards/project/network_topology/views.py | 68 +-
.../dashboards/project/networks/forms.py | 17 +-
.../project/networks/ports/extensions/__init__.py | 0
.../extensions/allowed_address_pairs/__init__.py | 0
.../extensions/allowed_address_pairs/forms.py | 75 +
.../extensions/allowed_address_pairs/tables.py | 96 +
.../ports/extensions/allowed_address_pairs/tabs.py | 51 +
.../extensions/allowed_address_pairs/views.py | 47 +
.../dashboards/project/networks/ports/forms.py | 59 +-
.../dashboards/project/networks/ports/tables.py | 7 +-
.../dashboards/project/networks/ports/tabs.py | 28 +-
.../dashboards/project/networks/ports/urls.py | 15 +-
.../dashboards/project/networks/ports/views.py | 6 +-
.../dashboards/project/networks/subnets/tables.py | 15 +-
.../dashboards/project/networks/subnets/tabs.py | 25 +
.../dashboards/project/networks/subnets/urls.py | 10 +-
.../dashboards/project/networks/subnets/views.py | 23 +-
.../project/networks/subnets/workflows.py | 18 +-
.../dashboards/project/networks/tables.py | 30 +-
.../dashboards/project/networks/tabs.py | 70 +
.../networks/templates/networks/_create.html | 19 -
.../templates/networks/_detail_overview.html | 20 +-
.../networks/templates/networks/create.html | 16 -
.../networks/templates/networks/detail.html | 21 +-
.../templates/networks/ports/_add_addresspair.html | 9 +
.../templates/networks/ports/_detail_overview.html | 2 +-
.../templates/networks/ports/add_addresspair.html | 7 +
.../networks/subnets/_detail_overview.html | 33 +-
.../dashboards/project/networks/urls.py | 15 +-
.../dashboards/project/networks/views.py | 69 +-
.../dashboards/project/networks/workflows.py | 79 +-
.../dashboards/project/ngdetails/__init__.py | 0
.../dashboards/project/ngdetails/panel.py | 25 +
.../dashboards/project/ngdetails/urls.py | 22 +
.../dashboards/project/ngdetails/views.py | 19 +
.../dashboards/project/ngimages/__init__.py | 0
.../dashboards/project/ngimages/panel.py | 23 -
.../project/ngimages/templates/ngimages/index.html | 15 -
.../dashboards/project/ngimages/urls.py | 24 -
.../dashboards/project/ngimages/views.py | 19 -
.../dashboards/project/ngvolumes/__init__.py | 0
.../dashboards/project/ngvolumes/panel.py | 23 +
.../dashboards/project/ngvolumes/urls.py | 22 +
.../dashboards/project/ngvolumes/views.py | 19 +
.../dashboards/project/overview/panel.py | 1 +
.../dashboards/project/overview/urls.py | 7 +-
.../routers/extensions/extraroutes/views.py | 4 +-
.../routers/extensions/routerrules/__init__.py | 0
.../routers/extensions/routerrules/forms.py | 97 -
.../routers/extensions/routerrules/rulemanager.py | 103 -
.../routers/extensions/routerrules/tables.py | 79 -
.../project/routers/extensions/routerrules/tabs.py | 227 -
.../routers/extensions/routerrules/views.py | 59 -
.../dashboards/project/routers/forms.py | 62 +-
.../dashboards/project/routers/ports/forms.py | 4 +-
.../dashboards/project/routers/ports/urls.py | 7 +-
.../dashboards/project/routers/tables.py | 21 +-
.../dashboards/project/routers/tabs.py | 11 +-
.../templates/routers/_detail_overview.html | 39 +
.../routers/extensions/routerrules/_create.html | 23 -
.../routers/extensions/routerrules/create.html | 7 -
.../routers/extensions/routerrules/grid.html | 147 -
.../dashboards/project/routers/urls.py | 11 +-
.../dashboards/project/routers/views.py | 5 +-
.../dashboards/project/stacks/forms.py | 26 +-
.../project/stacks/resource_types/panel.py | 1 +
.../project/stacks/resource_types/tables.py | 18 +-
.../project/stacks/resource_types/tabs.py | 6 -
.../project/stacks/resource_types/urls.py | 6 +-
.../dashboards/project/stacks/tables.py | 20 +-
.../dashboards/project/stacks/tabs.py | 29 +-
.../project/stacks/template_versions/__init__.py | 0
.../project/stacks/template_versions/panel.py | 23 +
.../project/stacks/template_versions/tables.py | 51 +
.../project/stacks/template_versions/tabs.py | 51 +
.../stacks.template_versions/_details.html | 3 +
.../templates/stacks.template_versions/index.html | 7 +
.../project/stacks/template_versions/urls.py | 24 +
.../project/stacks/template_versions/views.py | 61 +
.../stacks/templates/stacks/_preview_details.html | 2 +-
.../dashboards/project/stacks/urls.py | 6 +-
.../dashboard/project/containers/_containers.scss | 9 +
.../project/containers/containers-model.service.js | 155 +-
.../containers/containers-model.service.spec.js | 186 +-
.../project/containers/containers.controller.js | 12 +-
.../dashboard/project/containers/containers.html | 4 +-
.../project/containers/containers.module.js | 5 +
.../project/containers/create-container-modal.html | 23 +-
.../project/containers/create-folder-modal.html | 28 +-
.../project/containers/delete-objects-modal.html | 39 +
.../containers/delete-objects.controller.js | 64 +
.../containers/delete-objects.controller.spec.js | 110 +
.../project/containers/edit-object-controller.js | 48 +
.../containers/edit-object-controller.spec.js | 55 +
.../project/containers/edit-object-modal.html | 40 +
.../project/containers/file-change-directive.js | 25 +
.../project/containers/object-details-modal.html | 12 +-
.../containers/object-name-exists.directive.js | 74 +
.../object-name-exists.directive.spec.js | 69 +
.../containers/objects-batch-actions.service.js | 198 +
.../objects-batch-actions.service.spec.js | 245 +
.../containers/objects-row-actions.service.js | 198 +-
.../containers/objects-row-actions.service.spec.js | 137 +-
.../project/containers/objects.controller.js | 207 +-
.../project/containers/objects.controller.spec.js | 252 +-
.../dashboard/project/containers/objects.html | 106 +-
.../project/containers/select-container.html | 13 +-
.../project/containers/upload-object-controller.js | 20 +-
.../containers/upload-object-controller.spec.js | 27 +-
.../project/containers/upload-object-modal.html | 42 +-
.../dashboard/project/images/images.module.js | 46 -
.../dashboard/project/images/images.module.spec.js | 44 -
.../static/dashboard/project/project.module.js | 4 +-
.../configuration/configuration.controller.js | 1 +
.../configuration/configuration.html | 12 +-
.../launch-instance/details/details.controller.js | 2 +-
.../workflow/launch-instance/details/details.html | 21 +-
.../launch-instance/flavor/flavor.controller.js | 33 +-
.../workflow/launch-instance/flavor/flavor.html | 229 +-
.../workflow/launch-instance/flavor/flavor.spec.js | 2 +-
.../flavor/select-flavor-table.directive.js | 155 -
.../flavor/select-flavor-table.html | 131 -
.../keypair/create-keypair.controller.js | 8 +-
.../launch-instance/keypair/create-keypair.html | 2 +-
.../keypair/import-keypair.controller.js | 11 +-
.../keypair/import-keypair.controller.spec.js | 11 +-
.../launch-instance/keypair/import-keypair.html | 6 +-
.../launch-instance/keypair/keypair-details.html | 4 +-
.../launch-instance/keypair/keypair.controller.js | 41 +-
.../keypair/keypair.controller.spec.js | 22 +-
.../workflow/launch-instance/keypair/keypair.html | 114 +-
.../launch-instance-modal.service.spec.js | 2 +-
.../launch-instance-model.service.js | 251 +-
.../launch-instance-model.service.spec.js | 546 +-
.../launch-instance-workflow.service.js | 23 +-
.../launch-instance-workflow.service.spec.js | 33 +-
.../launch-instance/launch-instance.module.js | 23 +-
.../launch-instance/metadata/metadata.html | 2 +-
.../workflow/launch-instance/network/network.html | 181 +-
.../launch-instance/networkports/ports.html | 22 +-
.../scheduler-hints/scheduler-hints.controller.js | 49 +
.../scheduler-hints/scheduler-hints.help.html | 3 +
.../scheduler-hints/scheduler-hints.html | 12 +
.../scheduler-hints/scheduler-hints.spec.js | 56 +
.../security-groups/security-group-details.html | 2 +-
.../security-groups/security-groups.controller.js | 18 +-
.../security-groups/security-groups.help.html | 2 +-
.../security-groups/security-groups.html | 26 +-
.../server-groups/server-group-details.html | 13 +
.../server-groups/server-groups.controller.js | 68 +
.../server-groups/server-groups.help.html | 11 +
.../server-groups/server-groups.html | 73 +
.../server-groups/server-groups.spec.js | 74 +
.../launch-instance/source/source-details.html | 43 +-
.../launch-instance/source/source.controller.js | 148 +-
.../source/source.controller.spec.js | 62 +-
.../launch-instance/source/source.help.html | 15 +-
.../workflow/launch-instance/source/source.html | 378 +-
.../dashboards/project/volumes/backups/forms.py | 14 +-
.../dashboards/project/volumes/backups/tables.py | 11 +-
.../dashboards/project/volumes/backups/urls.py | 10 +-
.../project/volumes/cg_snapshots/__init__.py | 0
.../project/volumes/cg_snapshots/forms.py | 76 +
.../project/volumes/cg_snapshots/tables.py | 116 +
.../project/volumes/cg_snapshots/tabs.py | 34 +
.../project/volumes/cg_snapshots/urls.py | 24 +
.../project/volumes/cg_snapshots/views.py | 138 +
.../dashboards/project/volumes/cgroups/forms.py | 170 +
.../dashboards/project/volumes/cgroups/tables.py | 94 +-
.../dashboards/project/volumes/cgroups/urls.py | 18 +-
.../dashboards/project/volumes/cgroups/views.py | 157 +-
.../project/volumes/cgroups/workflows.py | 124 +-
.../dashboards/project/volumes/snapshots/tables.py | 11 +-
.../dashboards/project/volumes/snapshots/urls.py | 6 +-
.../dashboards/project/volumes/tabs.py | 40 +-
.../volumes/templates/volumes/_volume_limits.html | 63 +
.../templates/volumes/cg_snapshots/_create.html | 9 +
.../volumes/cg_snapshots/_detail_overview.html | 46 +
.../templates/volumes/cg_snapshots/_update.html | 7 +
.../templates/volumes/cg_snapshots/create.html | 7 +
.../templates/volumes/cg_snapshots/update.html | 7 +
.../templates/volumes/cgroups/_clone_cgroup.html | 9 +
.../volumes/cgroups/_create_snapshot.html | 10 +
.../volumes/templates/volumes/cgroups/_delete.html | 5 +-
.../templates/volumes/cgroups/_remove_vols.html | 7 +
.../volumes/cgroups/_snapshot_limits.html | 42 +
.../templates/volumes/cgroups/clone_cgroup.html | 7 +
.../templates/volumes/cgroups/create_snapshot.html | 7 +
.../templates/volumes/cgroups/remove_vols.html | 7 +
.../volumes/templates/volumes/volumes/_attach.html | 2 -
.../volumes/volumes/_detail_overview.html | 8 +-
.../volumes/templates/volumes/volumes/_limits.html | 8 +-
.../volumes/templates/volumes/volumes/_retype.html | 6 +-
.../templates/volumes/volumes/_show_transfer.html | 6 +-
.../volumes/volumes/_upload_to_image.html | 6 +-
.../volumes/volumes/encryption_detail.html | 6 +-
.../dashboards/project/volumes/test.py | 13 +-
.../dashboards/project/volumes/urls.py | 29 +-
.../dashboards/project/volumes/volumes/forms.py | 54 +-
.../dashboards/project/volumes/volumes/tables.py | 39 +-
.../dashboards/project/volumes/volumes/urls.py | 11 +-
.../dashboards/project/volumes/volumes/views.py | 39 +-
.../dashboards/project/vpn/tables.py | 97 +-
.../vpn/templates/vpn/_add_ike_policy_help.html | 20 +
.../vpn/templates/vpn/_add_ipsec_policy_help.html | 19 +
.../vpn/templates/vpn/_add_vpn_service_help.html | 7 +
openstack_dashboard/dashboards/project/vpn/urls.py | 7 +-
.../dashboards/project/vpn/workflows.py | 62 +-
.../dashboards/settings/password/forms.py | 2 +-
.../dashboards/settings/password/urls.py | 7 +-
.../dashboards/settings/password/views.py | 1 -
.../dashboards/settings/user/forms.py | 15 +-
.../dashboards/settings/user/urls.py | 7 +-
.../dashboards/settings/user/views.py | 1 -
openstack_dashboard/django_pyscss_fix/__init__.py | 2 +-
.../enabled/_1041_project_ng_volumes_panel.py | 30 +
.../enabled/_1050_project_images_panel.py | 14 +
.../enabled/_1051_project_ng_images_panel.py | 30 -
.../enabled/_1070_project_ng_details_panel.py | 30 +
.../_1640_project_template_versions_panel.py | 10 +
.../enabled/_2111_admin_floating_ips_panel.py | 10 +
.../enabled/_9020_resource_browser.py | 20 +
openstack_dashboard/karma.conf.js | 16 +-
.../_10_set_custom_theme.py.example | 2 +-
.../_11_toggle_angular_features.py.example | 1 +
.../local/local_settings.py.example | 168 +-
.../locale/as/LC_MESSAGES/django.po | 361 +-
.../locale/bn_IN/LC_MESSAGES/django.po | 355 +-
.../locale/brx/LC_MESSAGES/django.po | 353 +-
.../locale/cs/LC_MESSAGES/django.po | 3526 +++--
.../locale/cs/LC_MESSAGES/djangojs.po | 1388 +-
.../locale/de/LC_MESSAGES/django.po | 2220 +--
.../locale/de/LC_MESSAGES/djangojs.po | 1135 +-
openstack_dashboard/locale/django.pot | 15287 -------------------
openstack_dashboard/locale/djangojs.pot | 2993 ----
.../locale/en_AU/LC_MESSAGES/django.po | 2656 +++-
.../locale/en_AU/LC_MESSAGES/djangojs.po | 2130 ++-
.../locale/en_GB/LC_MESSAGES/django.po | 2057 ++-
.../locale/en_GB/LC_MESSAGES/djangojs.po | 1305 +-
.../locale/es/LC_MESSAGES/django.po | 1589 +-
.../locale/es/LC_MESSAGES/djangojs.po | 213 +-
.../locale/fr/LC_MESSAGES/django.po | 1228 +-
.../locale/fr/LC_MESSAGES/djangojs.po | 651 +-
.../locale/gu/LC_MESSAGES/django.po | 354 +-
.../locale/hi/LC_MESSAGES/django.po | 292 +-
.../locale/id/LC_MESSAGES/django.po | 8970 +++++++++++
.../locale/id/LC_MESSAGES/djangojs.po | 3289 ++++
.../locale/it/LC_MESSAGES/django.po | 1774 ++-
.../locale/it/LC_MESSAGES/djangojs.po | 1301 +-
.../locale/ja/LC_MESSAGES/django.po | 2154 +--
.../locale/ja/LC_MESSAGES/djangojs.po | 1121 +-
.../locale/kn/LC_MESSAGES/django.po | 369 +-
.../locale/ko_KR/LC_MESSAGES/django.po | 2658 ++--
.../locale/ko_KR/LC_MESSAGES/djangojs.po | 1181 +-
.../locale/kok/LC_MESSAGES/django.po | 351 +-
.../locale/ks/LC_MESSAGES/django.po | 355 +-
.../locale/mai/LC_MESSAGES/django.po | 356 +-
.../locale/mni/LC_MESSAGES/django.po | 365 +-
.../locale/mr/LC_MESSAGES/django.po | 355 +-
.../locale/ne/LC_MESSAGES/django.po | 349 +-
.../locale/nl_NL/LC_MESSAGES/django.po | 206 +-
.../locale/pa_IN/LC_MESSAGES/django.po | 368 +-
.../locale/pl_PL/LC_MESSAGES/django.po | 709 +-
.../locale/pl_PL/LC_MESSAGES/djangojs.po | 829 -
.../locale/pt_BR/LC_MESSAGES/django.po | 1315 +-
.../locale/pt_BR/LC_MESSAGES/djangojs.po | 470 +-
.../locale/ru/LC_MESSAGES/django.po | 2243 ++-
.../locale/ru/LC_MESSAGES/djangojs.po | 1642 +-
.../locale/sr/LC_MESSAGES/django.po | 181 +-
.../locale/ta/LC_MESSAGES/django.po | 366 +-
.../locale/tr_TR/LC_MESSAGES/django.po | 707 +-
.../locale/tr_TR/LC_MESSAGES/djangojs.po | 1017 --
.../locale/ur/LC_MESSAGES/django.po | 365 +-
.../locale/zh_CN/LC_MESSAGES/django.po | 3434 +++--
.../locale/zh_CN/LC_MESSAGES/djangojs.po | 1394 +-
.../locale/zh_TW/LC_MESSAGES/django.po | 1525 +-
.../locale/zh_TW/LC_MESSAGES/djangojs.po | 1212 +-
.../management/commands/make_web_conf.py | 163 +-
.../management/commands/migrate_settings.py | 12 +-
openstack_dashboard/policy.py | 1 +
openstack_dashboard/settings.py | 179 +-
openstack_dashboard/static/app/app.module.js | 16 +-
.../static/app/core/conf/conf.module.js | 138 +
openstack_dashboard/static/app/core/core.module.js | 87 +-
.../static/app/core/images/_images.scss | 8 -
.../app/core/images/actions/actions.module.js | 32 +-
.../app/core/images/actions/actions.module.spec.js | 50 +
.../core/images/actions/create-volume.service.js | 32 +-
.../images/actions/create-volume.service.spec.js | 6 +-
.../core/images/actions/create.action.service.js | 133 +
.../images/actions/create.action.service.spec.js | 255 +
.../core/images/actions/create.workflow.service.js | 58 +
.../images/actions/create.workflow.service.spec.js | 56 +
.../core/images/actions/delete-image.service.js | 30 +-
.../images/actions/delete-image.service.spec.js | 45 +-
.../app/core/images/actions/edit.action.service.js | 159 +
.../images/actions/edit.action.service.spec.js | 190 +
.../core/images/actions/edit.workflow.service.js | 57 +
.../images/actions/edit.workflow.service.spec.js | 54 +
.../core/images/actions/launch-instance.service.js | 11 +-
.../images/actions/launch-instance.service.spec.js | 1 -
.../actions/update-metadata.action.service.js | 33 +-
.../actions/update-metadata.action.service.spec.js | 9 -
.../static/app/core/images/admin-panel.html | 5 +
.../core/images/detail/image-detail.controller.js | 69 -
.../images/detail/image-detail.controller.spec.js | 88 -
.../app/core/images/detail/image-detail.html | 82 -
.../app/core/images/details/details.module.js | 52 +
.../static/app/core/images/details/drawer.html | 21 +
.../app/core/images/details/overview.controller.js | 62 +
.../images/details/overview.controller.spec.js | 55 +
.../static/app/core/images/details/overview.html | 44 +
.../app/core/images/filters/image-status.filter.js | 49 -
.../images/filters/image-status.filter.spec.js | 40 -
.../app/core/images/filters/image-type.filter.js | 46 -
.../core/images/filters/image-type.filter.spec.js | 48 -
.../core/images/filters/image-visibility.filter.js | 16 +-
.../images/filters/image-visibility.filter.spec.js | 14 +-
.../static/app/core/images/images.module.js | 314 +-
.../static/app/core/images/images.module.spec.js | 88 +-
.../static/app/core/images/images.service.js | 135 +
.../static/app/core/images/images.service.spec.js | 115 +
.../static/app/core/images/panel.html | 4 +
.../steps/create-image/create-image.controller.js | 177 +
.../create-image/create-image.controller.spec.js | 246 +
.../steps/create-image/create-image.help.html | 26 +
.../images/steps/create-image/create-image.html | 263 +
.../create-volume/create-volume.controller.js | 28 +-
.../create-volume/create-volume.controller.spec.js | 53 +-
.../steps/create-volume/create-volume.help.html | 22 +-
.../images/steps/create-volume/create-volume.html | 134 +-
.../steps/edit-image/edit-image.controller.js | 105 +
.../steps/edit-image/edit-image.controller.spec.js | 153 +
.../images/steps/edit-image/edit-image.help.html | 16 +
.../core/images/steps/edit-image/edit-image.html | 150 +
.../update-metadata/update-metadata.controller.js | 100 +
.../update-metadata.controller.spec.js | 154 +
.../update-metadata/update-metadata.help.html | 16 +
.../steps/update-metadata/update-metadata.html | 6 +
.../static/app/core/images/summary.controller.js | 55 +
.../app/core/images/summary.controller.spec.js | 49 +
.../static/app/core/images/table/images-table.html | 159 -
.../app/core/images/table/images.controller.js | 130 -
.../core/images/table/images.controller.spec.js | 149 -
.../core/images/workflows/create-volume.service.js | 6 +-
.../app/core/metadata/modal/modal.controller.js | 22 +-
.../core/metadata/modal/modal.controller.spec.js | 38 +-
.../static/app/core/metadata/modal/modal.html | 8 +-
.../cinder-extensions.service.js | 6 +-
.../core/openstack-service-api/cinder.service.js | 100 +-
.../openstack-service-api/cinder.service.spec.js | 27 +
.../core/openstack-service-api/common-test.mock.js | 12 +-
.../openstack-service-api/extensions.service.js | 4 +-
.../core/openstack-service-api/glance.service.js | 87 +-
.../openstack-service-api/glance.service.spec.js | 148 +-
.../app/core/openstack-service-api/heat.service.js | 17 +-
.../keypair-download.service.js | 3 +
.../core/openstack-service-api/keystone.service.js | 36 +-
.../openstack-service-api/keystone.service.spec.js | 41 +
.../core/openstack-service-api/network.service.js | 23 +-
.../neutron-extensions.service.js | 6 +-
.../neutron-extensions.service.spec.js | 16 +-
.../core/openstack-service-api/neutron.service.js | 76 +-
.../openstack-service-api/neutron.service.spec.js | 21 +
.../nova-extensions.service.js | 6 +-
.../app/core/openstack-service-api/nova.service.js | 435 +-
.../openstack-service-api/nova.service.spec.js | 201 +
.../openstack-service-api.module.js | 2 +-
.../core/openstack-service-api/policy.service.js | 52 +-
.../openstack-service-api/policy.service.spec.js | 67 +-
.../security-group.service.js | 8 +-
.../service-catalog.service.js | 14 +-
.../core/openstack-service-api/settings.service.js | 16 +-
.../core/openstack-service-api/swift.service.js | 145 +-
.../openstack-service-api/swift.service.spec.js | 39 +-
.../openstack-service-api/user-session.service.js | 6 +-
.../static/app/core/workflow/decorator.service.js | 21 +-
.../app/core/workflow/decorator.service.spec.js | 11 +-
.../static/app/core/workflow/workflow.module.js | 2 -
.../static/app/core/workflow/workflow.service.js | 12 +-
.../static/app/redirect.controller.js | 2 +-
.../static/app/redirect.controller.spec.js | 3 +-
.../static/app/resources/resources.module.js | 88 +
.../static/dashboard/scss/_bootstrap_helpers.scss | 37 +
.../static/dashboard/scss/_debt.scss | 77 +-
.../static/dashboard/scss/_layout.scss | 6 +-
.../static/dashboard/scss/_mixins.scss | 15 +
.../static/dashboard/scss/_util.scss | 2 +-
.../static/dashboard/scss/_variables.scss | 17 +-
.../dashboard/scss/components/_breadcrumbs.scss | 9 +
.../static/dashboard/scss/components/_charts.scss | 1 -
.../dashboard/scss/components/_checkboxes.scss | 4 +-
.../dashboard/scss/components/_dl_lists.scss | 7 +
.../dashboard/scss/components/_dropdowns.scss | 85 +
.../static/dashboard/scss/components/_forms.scss | 18 +-
.../dashboard/scss/components/_help_panel.scss | 4 +-
.../static/dashboard/scss/components/_icons.scss | 9 +
.../static/dashboard/scss/components/_loader.scss | 13 +
.../dashboard/scss/components/_messages.scss | 11 +-
.../static/dashboard/scss/components/_modals.scss | 60 +-
.../static/dashboard/scss/components/_navbar.scss | 11 +
.../scss/components/_network_topology.scss | 6 +-
.../scss/components/_network_topology_svg.scss | 148 +
.../dashboard/scss/components/_pending_bar.scss | 18 -
.../dashboard/scss/components/_pie_charts.scss | 44 +-
.../dashboard/scss/components/_progress_bars.scss | 60 +
.../static/dashboard/scss/components/_quota.scss | 8 +-
.../dashboard/scss/components/_radiobuttons.scss | 36 +
.../static/dashboard/scss/components/_selects.scss | 80 +
.../static/dashboard/scss/components/_sidebar.scss | 2 +-
.../dashboard/scss/components/_table_actions.scss | 73 -
.../static/dashboard/scss/components/_tables.scss | 56 +-
.../static/dashboard/scss/horizon.scss | 14 +-
openstack_dashboard/static_settings.py | 161 -
openstack_dashboard/templates/403.html | 7 +-
openstack_dashboard/templates/_stylesheets.html | 2 +-
openstack_dashboard/templates/angular.html | 16 +
.../templates/angular/angular_templates.html | 5 +
.../templates/angular/angular_templates.js | 11 +
openstack_dashboard/templates/base.html | 10 +-
.../templates/context_selection/_project_list.html | 2 -
.../templates/context_selection/_region_list.html | 4 +-
openstack_dashboard/templates/horizon/_conf.html | 10 +-
.../templates/horizon/_scripts.html | 35 +-
.../templatetags/context_selection.py | 23 +-
openstack_dashboard/test/error_pages_urls.py | 8 +-
openstack_dashboard/test/helpers.py | 78 +-
.../pages/admin/system/defaultspage.py | 110 +
.../pages/admin/system/flavorspage.py | 99 +-
.../pages/admin/system/hostaggregatespage.py | 2 +-
.../pages/admin/system/instancespage.py | 18 +
.../pages/admin/system/routerspage.py | 41 +
.../pages/admin/system/volumes/volumetypespage.py | 19 +
.../pages/identity/projectspage.py | 39 +-
.../compute/access_and_security/apiaccesspage.py | 72 +
.../compute/access_and_security/floatingipspage.py | 4 +-
.../compute/access_and_security/keypairspage.py | 13 +-
.../compute/access_and_security/managerulespage.py | 74 +
.../access_and_security/securitygroupspage.py | 11 +
.../pages/project/compute/imagespage.py | 134 +-
.../pages/project/compute/instancespage.py | 47 +-
.../project/compute/volumes/volumesnapshotspage.py | 11 +-
.../pages/project/compute/volumes/volumespage.py | 133 +-
.../pages/project/network/networkoverviewpage.py | 38 +
.../pages/project/network/networkspage.py | 9 +-
.../pages/project/network/routerinterfacespage.py | 101 +
.../pages/project/network/routeroverviewpage.py | 42 +
.../pages/project/network/routerspage.py | 80 +-
.../pages/project/orchestration/stackspage.py | 99 +
.../pages/settings/changepasswordpage.py | 7 +
openstack_dashboard/test/settings.py | 69 +-
openstack_dashboard/test/test_data/cinder_data.py | 27 +-
openstack_dashboard/test/test_data/exceptions.py | 4 +
openstack_dashboard/test/test_data/glance_data.py | 116 +-
openstack_dashboard/test/test_data/heat_data.py | 35 +
.../test/test_data/keystone_data.py | 21 +-
openstack_dashboard/test/test_data/neutron_data.py | 41 +-
openstack_dashboard/test/test_data/nova_data.py | 72 +-
openstack_dashboard/test/test_data/swift_data.py | 22 +-
.../test/test_panels/another_panel/urls.py | 6 +-
.../test/test_panels/nonloading_panel/urls.py | 6 +-
.../test/test_panels/plugin_panel/urls.py | 6 +-
.../test/test_panels/second_panel/urls.py | 6 +-
openstack_dashboard/test/urls.py | 18 +-
openstack_dashboard/themes/default/_styles.scss | 2 -
openstack_dashboard/themes/default/_variables.scss | 856 +-
.../themes/default/bootstrap/_styles.scss | 7 -
.../themes/default/bootstrap/_variables.scss | 853 --
.../default/bootstrap/components/_dropdowns.scss | 46 -
.../default/bootstrap/components/_forms.scss | 10 -
.../default/bootstrap/components/_navbar.scss | 29 -
.../themes/default/bootstrap/components/_navs.scss | 10 -
.../themes/default/bootstrap/components/_type.scss | 5 -
.../themes/default/horizon/_styles.scss | 51 -
.../themes/default/horizon/_variables.scss | 13 -
.../horizon/components/_breadcrumb_header.scss | 10 -
.../horizon/components/_context_selection.scss | 49 -
.../themes/default/horizon/components/_login.scss | 3 -
.../default/horizon/components/_messages.scss | 29 -
.../themes/default/horizon/components/_navbar.scss | 3 -
.../default/horizon/components/_pie_charts.scss | 12 -
.../themes/default/horizon/components/_quota.scss | 6 -
.../default/horizon/components/_selects.scss | 3 +
.../default/horizon/components/_sidebar.scss | 107 -
.../default/horizon/components/_table_actions.scss | 3 -
.../themes/default/horizon/components/_tables.scss | 28 -
.../themes/material/static/bootstrap/_styles.scss | 2 +-
.../themes/material/static/horizon/_icons.scss | 12 +-
.../themes/material/static/horizon/_styles.scss | 19 +-
.../static/horizon/components/_checkboxes.scss | 1 -
.../static/horizon/components/_dropdowns.scss | 9 +
.../static/horizon/components/_help_panel.scss | 25 +-
.../static/horizon/components/_magic_search.scss | 8 +-
.../static/horizon/components/_progress_bars.scss | 3 +
.../static/horizon/components/_radiobuttons.scss | 30 +
.../static/horizon/components/_selects.scss | 74 +
.../material/static/horizon/components/_trees.scss | 8 +
.../material/templates/horizon/_sidebar.html | 6 +-
.../templates/horizon/client_side/_confirm.html | 22 +
openstack_dashboard/urls.py | 24 +-
openstack_dashboard/usage/base.py | 32 +-
openstack_dashboard/usage/quotas.py | 62 +-
openstack_dashboard/usage/views.py | 1 +
openstack_dashboard/utils/identity.py | 25 -
openstack_dashboard/utils/settings.py | 178 +-
package.json | 24 +-
.../notes/action-results-303c282165b60f47.yaml | 12 +
.../admin-neutron-l3-agents-dd6274467572906b.yaml | 8 +
.../notes/angular-direct-1b156f152590ab93.yaml | 17 +
.../notes/angular-features-d677356f161322d6.yaml | 4 +
.../bp-add-scheduler-hints-77600faec041e134.yaml | 10 +
.../bp-admin-manage-fips-5aa409d3502b031a.yaml | 4 +
...-admin-views-filter-first-5b0d8a02b1271135.yaml | 7 +
.../bp-angular-schema-form-bbe1aedf644b53db.yaml | 7 +
...p-angular-table-directive-1b593f2ad28c2845.yaml | 8 +
...ngular-template-overrides-9f05ffd61367245a.yaml | 11 +
.../notes/bp-cache-templates-4ab00dcda195a03a.yaml | 2 +-
...cinder-consistency-groups-7cc98fda0ff3bb7a.yaml | 13 +
...configurable-boot-sources-4ba89f3b2a927801.yaml | 8 +
releasenotes/notes/bp-dj110-438f26c21f283c46.yaml | 10 +
...glance-large-image-upload-c987dc86bab38761.yaml | 16 +
.../bp-horizon-vendor-split-4451bc1988485957.yaml | 6 +
.../notes/bp-next-steps-4c7064e52d5abcf5.yaml | 6 +
...d-address-pairs-extension-a05c3a864f494b0c.yaml | 6 +
...ict-private-network-input-5e5bd5978b273c62.yaml | 3 +
...prop-for-project-and-user-e8a4578c395a8ade.yaml | 7 +
...pdate-dependencies-newton-3bd257faa37d3dda.yaml | 18 +
.../navigation-improvements-ab101299eb1a8d54.yaml | 10 +
.../notes/bug-123741-4be1aa90b9d44e40.yaml | 6 +
...4-cached-template-loaders-3536f35e11099eba.yaml | 5 +
.../notes/bug-1585682-abd815f290e494d3.yaml | 11 +
.../notes/bug-1588663-6fab83e9d89b20d2.yaml | 4 +
...recate-lbaas-v1-dashboard-1f9c48d7c6997b1f.yaml | 9 +
.../notes/generic-details-4f78452b14005e5b.yaml | 26 +
releasenotes/notes/glance-v2-ba86ba34611f95ce.yaml | 16 +
...bal-class-name-convention-71ff68913c39b800.yaml | 9 +
.../horizon-without-nova-3cd0a84109ed2187.yaml | 9 +
.../notes/hz-select-fixes-c9bfe6a53e0daa20.yaml | 2 +-
.../notes/image-panel-switch-38e9d3716451f9e3.yaml | 13 +
.../notes/ip-availability-be217ba59cc02b40.yaml | 8 +
.../network-type-geneve-71eed4104699754e.yaml | 3 +
.../network-type-midonet-6c78bdfe1e3186a0.yaml | 5 +
.../operation-history-log-64354f66614cb1dd.yaml | 5 +
.../provider-net-config-713f0672c8e49888.yaml | 6 +
...subnet-pool-label-options-9aeaa816ad6cc2f8.yaml | 8 +
.../remove-default-styles-1d8ba7ad46a51381.yaml | 13 +
...scaffolds-from-production-6e52eb1da2a4bc9e.yaml | 8 +
.../notes/remove-inline-edit-63f92054238378d3.yaml | 7 +
.../resource-directives-44629f1116545141.yaml | 14 +
...tting-OVERVIEW_DAYS_RANGE-9b87e8b077952a32.yaml | 11 +
.../table-row-warning-class-2fdb3434440d0c22.yaml | 4 +
.../notes/theme-modal-sizes-924e5835efe9bb79.yaml | 13 +
.../token-delete-disabled-bb50c3cddd315ee6.yaml | 4 +
.../xstatic-settings-cleanup-8de0e2ba00fd43ec.yaml | 11 +
releasenotes/source/index.rst | 3 +-
releasenotes/source/mitaka.rst | 6 +
requirements.txt | 41 +-
setup.cfg | 21 +-
test-requirements.txt | 9 +-
tools/gate/integration/devstack_exports.sh | 6 -
tools/gate/integration/devstack_gate_rc | 4 +
tools/gate/integration/post_test_hook.sh | 22 +-
tools/gate/integration/pre_test_hook.sh | 20 +-
tox.ini | 167 +-
1234 files changed, 88538 insertions(+), 58662 deletions(-)
Requirements updates
--------------------
diff --git a/requirements.txt b/requirements.txt
index a0fa350..2d5a929 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -12 +12 @@ pbr>=1.6 # Apache-2.0
-Babel>=1.3 # BSD
+Babel>=2.3.4 # BSD
@@ -15 +15 @@ Pint>=0.5 # BSD
-django-babel>=0.4.0 # BSD
+django-babel>=0.5.1 # BSD
@@ -17 +17 @@ django-compressor>=2.0 # MIT
-django-openstack-auth>=2.0.0 # Apache-2.0
+django-openstack-auth>=2.4.0 # Apache-2.0
@@ -19,5 +19,4 @@ django-pyscss>=2.0.2 # BSD License (2 clause)
-httplib2>=0.7.5 # MIT
-iso8601>=0.1.9 # MIT
-netaddr!=0.7.16,>=0.7.12 # BSD
-oslo.concurrency>=3.5.0 # Apache-2.0
-oslo.config>=3.7.0 # Apache-2.0
+iso8601>=0.1.11 # MIT
+netaddr!=0.7.16,>=0.7.13 # BSD
+oslo.concurrency>=3.8.0 # Apache-2.0
+oslo.config>=3.14.0 # Apache-2.0
@@ -25 +24 @@ oslo.i18n>=2.1.0 # Apache-2.0
-oslo.policy>=0.5.0 # Apache-2.0
+oslo.policy>=1.9.0 # Apache-2.0
@@ -27,8 +26,8 @@ oslo.serialization>=1.10.0 # Apache-2.0
-oslo.utils>=3.5.0 # Apache-2.0
-pyScss>=1.3.4 # MIT License
-python-ceilometerclient>=2.2.1 # Apache-2.0
-python-cinderclient>=1.3.1 # Apache-2.0
-python-glanceclient>=2.0.0 # Apache-2.0
-python-heatclient>=0.6.0 # Apache-2.0
-python-keystoneclient!=1.8.0,!=2.1.0,>=1.6.0 # Apache-2.0
-python-neutronclient!=4.1.0,>=2.6.0 # Apache-2.0
+oslo.utils>=3.16.0 # Apache-2.0
+pyScss!=1.3.5,>=1.3.4 # MIT License
+python-ceilometerclient>=2.5.0 # Apache-2.0
+python-cinderclient!=1.7.0,!=1.7.1,>=1.6.0 # Apache-2.0
+python-glanceclient!=2.4.0,>=2.3.0 # Apache-2.0
+python-heatclient>=1.4.0 # Apache-2.0
+python-keystoneclient!=2.1.0,>=2.0.0 # Apache-2.0
+python-neutronclient>=5.1.0 # Apache-2.0
@@ -42,0 +42 @@ XStatic-Angular-Bootstrap>=0.11.0.2 # MIT License
+XStatic-Angular-FileUpload>=12.0.4.0 # MIT License
@@ -44,0 +45 @@ XStatic-Angular-lrdragndrop>=1.0.2.2 # MIT License
+XStatic-Angular-Schema-Form>=0.8.13.0 # MIT
@@ -58 +59,2 @@ XStatic-JSEncrypt>=2.0.0.2 # MIT License
-XStatic-mdi==1.1.70.1 # SIL OPEN FONT LICENSE Version 1.1
+XStatic-mdi>=1.4.57.0 # SIL OPEN FONT LICENSE Version 1.1
+XStatic-objectpath>=1.2.1.0 # MIT
@@ -61 +63 @@ XStatic-roboto-fontface>=0.4.3.2 # Apache 2.0 License
-XStatic-smart-table>=1.4.5.3 # MIT License
+XStatic-smart-table!=1.4.13.0,>=1.4.5.3 # MIT License
@@ -63,0 +66 @@ XStatic-term.js>=0.0.4 # MIT License
+XStatic-tv4>=1.2.7.0 # MIT
diff --git a/test-requirements.txt b/test-requirements.txt
index d89482b..2096135 100644
--- a/test-requirements.txt
+++ b/test-requirements.txt
@@ -13,2 +13,2 @@ coverage>=3.6 # Apache-2.0
-django-nose>=1.2 # BSD
-mock>=1.2 # BSD
+django-nose>=1.4.4 # BSD
+mock>=2.0 # BSD
@@ -23 +23,2 @@ oslosphinx!=3.4.0,>=2.5.0 # Apache-2.0
-reno>=0.1.1 # Apache2
+reno>=1.8.0 # Apache2
+requests>=2.10.0 # Apache-2.0
@@ -25 +26 @@ selenium>=2.50.1 # Apache-2.0
-sphinx!=1.2.0,!=1.3b1,<1.3,>=1.1.2 # BSD
+sphinx!=1.3b1,<1.3,>=1.2.1 # BSD
1
0
We are enthusiastic to announce the release of:
mistral 3.0.0: Mistral Project
This release is part of the newton release series.
For more details, please see below.
3.0.0
^^^^^
New Features
************
* Mistral now support usage of alternative RPC layer, that calls
RabbitMQ directly instead of using Oslo.
* Tasks support new flag 'safe-rerun'. If it is set to 'true', a
task would be re-run if executor dies during execution.
* Mistral now supports authentication with KeyCloak server using
OpenId Connect protocol.
* Magnum action are now supported.
* Mistral API server can be configured to handle https requests.
* Role base access control was added.
* Murano actions are now supported.
* Tacker actions are now supported.
* Now user can provide custom message for fail/pause/success
transition. e.g. - fail(msg='error in task'): <% condition if any %>
* New API for validating ad-hoc actions was added.
Upgrade Notes
*************
* During an upgrade to Newton, operators or administrators need to
run "python tools/sync_db.py" to populate database with Magnum
action definitions.
Bug Fixes
*********
* Fix for YaqlEvaluationException in std.create_instance workflow.
Changes in mistral 2.0.0.0rc1..3.0.0
------------------------------------
d9e734f Remove environment data from task inbound context
be41847 Add tests to check deletion of delayed calls on WF execution delete
2d44cb0 Disable Client Caching
310f03a Delete all necessary delayed calls on WF stop
e95594f Update UPPER_CONSTRAINTS_FILE for stable/newton
229ea1d Fix for timeouting actions on run-action
2ab055b Avoid storing workflow input in task inbound context
63e849c Add __ne__ built-in function
0febff9 Remove context.spawn
a761ca5 Fix for raising excepton from kombu
db340d4 Fixed task in_bound context when retrying
2715d0f Enable changing of rpc driver from devstack
4b64132 Take os_actions_endpoint_type into use
238f398 Update .gitreview for stable/newton
097c68f Remove workflow spec, input and params from workflow context
23ff560 Add a smarter delay between workflow completion checks
9d06a61 Optimize the logic that check if 'join' task is allowed to start
a0f6c7a Copy cached WF spec stored by definition id into WF execution cache
3455dd6 Add functional tests for event engine functions
09e2358 Added unit tests for Workbook and Workflow filtering
b193719 Delete unnecessary comma
0940282 Fix mistral API docs Fixing v2.rst to refer to new module paths, and adding the cron trigger param to POST v2/cron_triggers/ documentation.
4e1e358 Add event trigger REST API
6982483 Using count() instead of all() for getting incompleted tasks
ab0c547 Fix for raising exception directly to kombu
33e0ee5 Updated from global requirements
1e2ecac Fix delayed calls DB migration
ec349f0 standardize release note page ordering
e525db7 Fixed http links in CONRIBUTING.rst
4ebe9b1 Optimize finder functions for task executions
1b0f0cd Change execution mechanism for 'join' tasks
ec630e1 Fixed an incorrect migration revision number in a comment
cbc0a99 cast to str for allowable types
a58236e Raise NotImplementedError instead of NotImplemented
dbdf4fc Optionally include the output when retrieving all executions
43acabd Add __ne__ built-in function
3958a82 Fix getting URLs / and /v2
c73edcb Add event configuration for event trigger
471ce2d Add 'uuid' YAQL function
2e497b3 Sync tools/tox_install.sh
10ee876 Updated from global requirements
9a60c02 Fix for 'Cannot authenticate without an auth_url'
347aabc Add client caching for OpenStack actions
c54b7c9 Add setuptools to requirements.txt
a96c895 Task publish does not overwrite variable in context Edit
2706b25 Updated from global requirements
3661bc0 Clean imports in code
72a34e8 TrivialFix: Remove logging import unused
1fe7b49 Add a note to the documentation about std.fail
0ba0eae Some minor code optimization in post_test_hook.sh
b89bc39 Updated from global requirements
10425c9 Fix for not working 'run-action' on kombu driver
e88c8e3 Updated from global requirements
bb92ee9 Fix documentation
81a9abc Clean imports in code
c527425 Use more specific asserts in tests
4ecca57 Use upper constraints for all jobs in tox.ini
9c5faa3 Updated from global requirements
9d5fcba Updated the configuration guide.
8302d85 Add a DB migration for named locks
c0118b6 Implement named transactional lock (semaphore)
2e80dd6 Updated from global requirements
bf1cb90 Closes-Bug: 1607348
56d0b35 Optimize task defer() method
c459aee Optimize direct workflow controller
0062699 Updated from global requirements
b18e5cb Updated from global requirements
e97d614 Fix task post completion scheduling
f10d431 Fix _possible_route() method to account for not completed tasks
a390f5c Add 'wait-before' policy test with two chained tasks
3025845 Fix task 'defer'
eebe77b Filtering support for actions
4e6d811 Increase size of 'task_executions_v2.unique_key' column
099d444 Add 'join after join' test
4bdda3b Slightly improve workflow trace logging
8bdef0f Fix workflow and join completion logic
6ea305c Towards non-locking model: remove pessimistic locks
f2445ac Fix specification caching mechanism
297fe92 Towards non-locking model: make 'with-items' work w/o locks
4f028ca Make mistral work with amqp and zmq backends
9f23624 Towards non-locking model: adapt 'join' tasks to work w/o locks
8e221dd Add unique keys for non locking model
cbda943 Updated from global requirements
3558980 Fix GET /executions/<id> to init 'output' attribute explicitly
13b835d Fix past migration scripts discrepancies
eec41b8 fix for get action executions fails with "has no property 'type"
6a35188 Updated Doc for SSL configuration
81f1682 Use actual session for ironic-inspector action population
4adc3cf Added support for SSL connection in mistra-api server
2cdec1c Towards non-locking model: decouple WF completion check via scheduler
e464f4c Towards non-locking model: use insert_or_ignore() for delayed calls
1f210a4 Towards non-locking model: add insert_or_ignore() on DB API
277b08a Fix the use of both adhoc actions and "with-items" in workflows
d9c9df2 Towards non-locking model: removing env update from WF controller
ebfb3c4 Updated from global requirements
6872dd8 DB migration to three execution tables and increase some columns
d25d31d Updated from global requirements
b93e491 Add state info for synchronous actions run from CLI
abe5ef9 Towards non-locking model: fix obvious workflow controller issues
0c8ad1a Towards non-locking model: Add 'unique_key' for delayed calls
b8c0ba8 Add _get_fake_client to ironic-inspector actions
b8c7dd7 Add target parameters to REST API
fb2fa02 Update docs and add release not for safe-rerun flag
09c0886 Invalidate workflow spec cache on workflow definition updates
5d51dfc Removing unnecessary workflow specification parsing
c7aa89e Splitting executions into different tables
95016cb Added releasenote for https support
82ab51b Add cancelled state to executions
3deec2f Enable user to use transport_url in kombu driver
b2aabd2 Fixed trivial issue in exception message
b13ae1a Updated from global requirements
639e204 Fix DSLv2 example according to Mistral Neuton
727d633 Updated from global requirements
c1dec4f Use 'rpc_response_timeout' in kombu driver
e4640dd Use Paginate query even if 'limit'or 'marker' is not set
0463e78 Remove task result for collection REST requests
c3e776e Allow to use both name and id to update action definitions
d844aad Remove some inconsistency in DB api
a55a1c5 Get rid of oslo_db warning about "id" not being in "sort_keys"
2f3d897 Add event engine service
0bc0fd0 Error handling test: error in 'publish' for a task with 'on-error'
34232f0 Added 'pip install -r requirements.txt' instruction
2197126 Executor fails actions if they are redelivered
4bcf17a Move the remainder of REST resources to resources.py
7f5335d Move REST resources action, action execution and task to resources.py
175775f Add the new endpoint /v2/tasks/<id>/workflow_executions
0d8a3a8 Allow to use both name and id to access action definitions
6a69d36 Pass 'safe-rerun' param to RPC layer
16c3b59 Initialize RPC-related flag when starting API
e403344 Update in installation package list in installation guide
d2dba58 Add param 'safe-rerun' to task
138b885 Create MistralContext from rpc context in kombu engine
54bbe3d Add db models for event trigger
80e925b Updated from global requirements
f962038 Fix SPAG errors in Quickstart and Main Features docs
2d5ceaf Fix some trivial SPAG errors in docs
606059a Rename package mistral.engine.rpc to mistral.engine.rpc_backend
1dbb3f2 Fixing filtering in task controller
89645ce Add Python 3.5 classifier and venv
e473a09 Updated from global requirements
400c622 Fix for YaqlEvaluationException in std.create_instance workflow.
a85fb71 Updated from global requirements
4919a0a Add tests for Kombu driver
43c404d Release note for KeyCloak OIDC support
021caf8 Add KeyCloak OpenID Connect server-side authentication
d29a6dc Add authentication options for KeyCloak OIDC
87a75cb Add proper handling for implicit task completion
633eb0f Add proper error handling for task continuation
eda639f Add error handling tests: invalid workflow input, error in first task
56dc39c Add more tests for error handling
201d36a Fix utility print_executions method
f058eb3 Log warn openstack action generation failures
b0523c0 Fix Magnum action _get_fake_class
62b1fd4 Fix Murano action _get_fake_class
26f2d35 Stylistic cleanups to lazy loading patch
9c63a24 Add configuration option for endpoint type
843df14 Add filters to all collections listing functions (tags included)
9eee201 Lazy load client classes
95e6b34 Integrating new RPC layer with Mistral
fc6d712 Make RPC implementation configurable
2cdd95a Adding OsloRPC server and client
72dcdfb Add support for custom YAQL functions
967a8c0 Remove obsolete config option "use_mistral_rpc"
7e9c04e Add tacker actions in mistral
909241c Update Expiration Policy Documentation
f454824 New RPC layer implementation
7b773bb Don't create actions when attempting to update one that doesn't exist
9d00052 Updated from global requirements
7387543 Add zake into dependencies
37a828b Add action context to all action executions
a7b8f49 Fix SSHActionsTestsV2 failure
fcd4862 Updated mapping.json file
024d938 Support recursive ad-hoc action definitions
31d6f8f Updated from global requirements
7e01ef2 Updated from global requirements
fbab974 Updated from global requirements
998f515 Use client credentials to retrieve service list
716776a Remove std.mistral_http action from tests
d094dc2 Doc updated for oslo_policy configuration
4732ed8 Updated from global requirements
dda6773 Remove .mailmap file
d7fc222 Fix mysql driver installation section in readme
0e51d26 Fix API inconsistencies with GET /v2/workflows
4672690 Fixed fake clients of glance and designate
23becb2 Fixed get_actions_list script to get glance actions
17fab41 Fixed get_actions_list script to get designate actions
16c5ca2 Example Mistral docker container broke due to oslo.policy update
48db3eb Refactored tempest tests
e512df9 Release note for magnum actions support
09ee417 Fix postgresql test failure
e7e2a80 Add configuration for Mistral tempest testing
a9f52d7 Added doc string for enforce method
8d53a25 Release note for murano actions support
7980734 Add magnum certificates and mservices actions
40a4b12 Release note for role base access control
11e443e Added role base authentication support
10fa247 Added murano actions
4314ea9 Add magnum bays actions
45ac6d0 Enable osprofiler to measure performance
e15fba5 Rename the to_string method to to_json to clarify it's purpose
e97e3ac Support JSON data in JSON API type
b0a2fc6 Add Magnum actions
9921b8c Updated from global requirements
6a22bca Removing redundant wf_ex_id parameter for rerun across the code
0233356 Add explicit preconditions for methods of Action, Task and Workflow
70adb45 Add a test that verifies an old bug with join
e2c89f7 Refactoring workflow handler
c496775 Fix invalid type usage for join
d2af0df mistral actions for designate v1 api's not working
e700a49 Updated from global requirements
927bc19 Remove AUTHORS file
6e6af39 Remove AUTHORS file from git tracking
7e793d2 Add missing argument in exception string
a8f7a05 Updated from global requirements
09c4151 Use LOG.exception when logging exceptions
67b2584 Release notes for fail/pause/success transition message
979d0e9 Updated from global requirements
6b8f153 Fail/Success/Pause transition message
3641b46 Remove unnecessary database transaction from Scheduler
d48b796 Update .mailmap
816bfd9 Refactor Mistral Engine
6a72d2c Updated from global requirements
385789d Updated from global requirements
7b6d766 Fixes the Mistral Docker image
2e4a3cc Updated from global requirements
5af4407 Return 'Unknown error' when error output is empty
18c6178 Fix client in TroveActions
a50dcfc Add Python 3.4 to the classifiers
e697cc7 Remove unnecessary executable permissions
575aac2 Updated from global requirements
3582107 Add baremetal.wait_for_finish action to mapping
7712cc3 Update get_arg_list_as_str to skip func params
752df74 Updated from global requirements
af5975e Enforcing upper constraints for tox test jobs
b9dafd1 Fix get task list on YAQL error in with-items
594b3e2 Add API to validate ad-hoc action
2cf2fc5 Updated from global requirements
2eb1e1e Updated from global requirements
9cbfa93 Replace keystone CLI with openstack CLI
42ca859 Add Designate apis as mistral actions
87aeb0a Remove oslo.messaging hack since it's broken with 5.0.0 version
32b0121 Fix the yaql github repository
50210a7 Updated from global requirements
627145b Updated from global requirements
2b517d8 Fix mistral installation in devstack
96e6d7e Refactoring exception hierarchy
18f1715 Updated from global requirements
cc32c82 Fixing engine facade hierarchy
c93405f Fixed issue related to docker image creation
a1891fd Updated from global requirements
1216ae6 Rename base API test class
1586c3e Disable cron trigger thread for API unit tests
49d04cf Disabled ssl warnings while runing tempest tests
22769b7 Add extra checks for the existance of executor_callback
bb078af Updated from global requirements
11c26cf Updated from global requirements
6bb6046 Added script to create docker image
5976655 Switch to auto-generated cron trigger names in unit tests
99edd17 tempest: fix dir_path
b549137 Leave more relevant comment in engine race condition test
39e2b4a Add utility methods to test action executions more conveniently
8821dee Fixing failing functional tests for Cinder and Heat actions
29732bf Update OpenStack actions mapping
06f385e Updated from global requirements
3a2af38 Unblock skipped test
73d1105 Replace self._await(lamdba: ..) constructs with more readable calls
ca66caa Add auth_enabled=False to a cron trigger test
fcfb271 Updated from global requirements
fdefc80 Updated from global requirements
9f34b17 Updated from global requirements
60a8d96 Unblock skipped tests in test_action_defaults.py
6aac269 Updated from global requirements
d04dd4d Fixing issue with different versions of oslo_messaging
4a88302 Getting rid of task result proxies in workflow context
6c6484e Fix typos in Mistral files
7e0ffb7 Hacking log for warning
ad07ba0 Fixing engine transaction model and error handling
9a1a157 Refactor workflow controller and fix a bug in _fail_workflow()
3e9aa8b Fixing a bug in DB API method that acquires entity lock
a4c4ead Also package mistral_tempest_tests
fdb24bd module docs are not being generated
554e14e Update reno for stable/mitaka
236a7f2 Run mistral services as separate processes
Diffstat (except docs and test files)
-------------------------------------
.gitignore | 4 +
.gitreview | 1 +
.mailmap | 19 -
AUTHORS | 43 -
CONTRIBUTING.rst | 10 +-
Dockerfile | 37 -
README.rst | 4 +
devstack/plugin.sh | 31 +-
devstack/settings | 12 +-
etc/event_definitions.yml.sample | 6 +
etc/policy.json | 64 ++
etc/wf_trace_logging.conf.sample | 21 +-
etc/wf_trace_logging.conf.sample.rotating | 21 +-
mistral/actions/generator_factory.py | 2 +-
mistral/actions/openstack/action_generator/base.py | 3 +-
mistral/actions/openstack/actions.py | 345 ++++--
mistral/actions/openstack/base.py | 78 +-
mistral/actions/openstack/mapping.json | 433 +++++--
mistral/actions/std_actions.py | 37 +-
mistral/api/access_control.py | 59 +-
mistral/api/app.py | 24 +-
mistral/api/controllers/resource.py | 2 +-
mistral/api/controllers/v2/action.py | 208 ++--
mistral/api/controllers/v2/action_execution.py | 328 ++++--
mistral/api/controllers/v2/cron_trigger.py | 166 ++-
mistral/api/controllers/v2/environment.py | 138 ++-
mistral/api/controllers/v2/event_trigger.py | 143 +++
mistral/api/controllers/v2/execution.py | 230 ++--
mistral/api/controllers/v2/member.py | 74 +-
mistral/api/controllers/v2/resources.py | 595 ++++++++++
mistral/api/controllers/v2/root.py | 2 +
mistral/api/controllers/v2/service.py | 36 +-
mistral/api/controllers/v2/task.py | 347 ++++--
mistral/api/controllers/v2/types.py | 8 +-
mistral/api/controllers/v2/workbook.py | 134 ++-
mistral/api/controllers/v2/workflow.py | 197 ++--
mistral/api/service.py | 55 +
mistral/cmd/launch.py | 137 +--
mistral/config.py | 335 ++++--
mistral/context.py | 178 ++-
mistral/db/sqlalchemy/base.py | 17 +-
.../006_add_processed_to_delayed_calls_v2.py | 2 +-
.../versions/012_add_event_triggers_v2_table.py | 67 ++
.../013_split_execution_table_increase_names.py | 246 ++++
.../versions/014_fix_past_scripts_discrepancies.py | 74 ++
.../015_add_unique_keys_for_non_locking_model.py | 51 +
.../016_increase_size_of_task_unique_key.py | 33 +
.../versions/017_add_named_lock_table.py | 41 +
.../018_increate_task_execution_unique_key_size.py | 33 +
.../versions/019_change_scheduler_schema.py | 59 +
mistral/db/sqlalchemy/model_base.py | 3 +
mistral/db/sqlalchemy/types.py | 13 +
mistral/db/v2/api.py | 157 ++-
mistral/db/v2/sqlalchemy/api.py | 916 ++++++++-------
mistral/db/v2/sqlalchemy/filters.py | 63 +
mistral/db/v2/sqlalchemy/models.py | 315 +++--
mistral/engine/action_handler.py | 319 +-----
mistral/engine/actions.py | 557 +++++++++
mistral/engine/base.py | 83 +-
mistral/engine/default_engine.py | 448 +-------
mistral/engine/default_executor.py | 71 +-
mistral/engine/dispatcher.py | 101 ++
mistral/engine/policies.py | 95 +-
mistral/engine/rpc.py | 536 ---------
mistral/engine/rpc_backend/__init__.py | 0
mistral/engine/rpc_backend/base.py | 77 ++
mistral/engine/rpc_backend/kombu/__init__.py | 0
mistral/engine/rpc_backend/kombu/base.py | 115 ++
.../engine/rpc_backend/kombu/examples/__init__.py | 0
.../engine/rpc_backend/kombu/examples/client.py | 42 +
.../engine/rpc_backend/kombu/examples/server.py | 51 +
mistral/engine/rpc_backend/kombu/kombu_client.py | 192 ++++
mistral/engine/rpc_backend/kombu/kombu_server.py | 180 +++
mistral/engine/rpc_backend/oslo/__init__.py | 0
mistral/engine/rpc_backend/oslo/oslo_client.py | 48 +
mistral/engine/rpc_backend/oslo/oslo_server.py | 56 +
mistral/engine/rpc_backend/rpc.py | 645 +++++++++++
mistral/engine/task_handler.py | 648 ++++-------
mistral/engine/tasks.py | 543 +++++++++
mistral/engine/utils.py | 14 +-
mistral/engine/workflow_handler.py | 249 ++--
mistral/engine/workflows.py | 479 ++++++++
mistral/exceptions.py | 128 ++-
mistral/expressions.py | 2 +-
mistral/hacking/checks.py | 176 ++-
mistral/messaging.py | 117 ++
mistral/resources/workflows/create_instance.yaml | 6 +-
mistral/services/action_manager.py | 48 +-
mistral/services/actions.py | 64 +-
mistral/services/event_engine.py | 377 ++++++
mistral/services/executions.py | 95 --
mistral/services/periodic.py | 89 +-
mistral/services/scheduler.py | 96 +-
mistral/services/security.py | 1 +
mistral/services/triggers.py | 73 ++
mistral/services/workbooks.py | 43 +-
mistral/services/workflows.py | 8 +-
.../resources/openstack/action_collection_wb.yaml | 12 +-
.../actions/openstack/test_openstack_actions.py | 174 ++-
.../unit/engine/rpc_backend/kombu/__init__.py | 0
.../unit/engine/rpc_backend/kombu/fake_kombu.py | 44 +
.../engine/rpc_backend/kombu/test_kombu_client.py | 192 ++++
.../engine/rpc_backend/kombu/test_kombu_server.py | 262 +++++
.../unit/engine/test_direct_workflow_rerun.py | 325 ++++--
.../engine/test_direct_workflow_with_cycles.py | 37 +-
.../test_execution_fields_size_limitation.py | 114 +-
.../unit/engine/test_reverse_workflow_rerun.py | 17 +-
.../services/test_expired_executions_policy.py | 56 +-
mistral/utils/__init__.py | 32 +-
mistral/utils/filter_utils.py | 91 ++
mistral/utils/inspect_utils.py | 13 +-
mistral/utils/openstack/keystone.py | 96 +-
mistral/utils/profiler.py | 54 +
mistral/utils/rest_utils.py | 146 ++-
mistral/utils/rpc_utils.py | 111 ++
mistral/utils/serializers.py | 20 +-
mistral/utils/yaql_utils.py | 61 +-
mistral/workbook/base.py | 2 +-
mistral/workbook/parser.py | 92 +-
mistral/workbook/v2/task_defaults.py | 16 +-
mistral/workbook/v2/tasks.py | 30 +-
mistral/workbook/v2/workflows.py | 50 +-
mistral/workflow/base.py | 190 ++--
mistral/workflow/commands.py | 63 +-
mistral/workflow/data_flow.py | 268 +++--
mistral/workflow/direct_workflow.py | 310 +++--
mistral/workflow/lookup_utils.py | 109 ++
mistral/workflow/reverse_workflow.py | 36 +-
mistral/workflow/states.py | 30 +-
mistral/workflow/utils.py | 140 +--
mistral/workflow/with_items.py | 41 +-
.../services/v2/mistral_client.py | 164 +++
.../actions/v2/test_multi_vim_authentication.py | 67 ++
.../engine/actions/v2/test_openstack_actions.py | 2 +-
.../scenario/engine/actions/v2/test_ssh_actions.py | 16 +-
.../alternative-rpc-layer-21ca7f6171c8f628.yaml | 6 +
.../keycloak-auth-support-74131b49e2071762.yaml | 4 +
.../magnum-actions-support-b131fa942b937fa5.yaml | 7 +
.../mistral-api-server-https-716a6d741893dd23.yaml | 3 +
...l-customize-authorization-d6b9a965f3056f09.yaml | 3 +
.../mistral-murano-actions-2250f745aaf8536a.yaml | 3 +
.../tacket-actions-support-2b4cee2644313cb3.yaml | 3 +
.../notes/transition-message-8dc4dd99240bd0f7.yaml | 5 +
...e-ad-hoc-action-api-added-6d7eaaedbe8129a7.yaml | 3 +
...e-YaqlEvaluationException-e22afff26a193c4f.yaml | 3 +
releasenotes/source/index.rst | 3 +-
releasenotes/source/mitaka.rst | 6 +
requirements.txt | 61 +-
setup.cfg | 21 +
test-requirements.txt | 9 +-
tools/config/config-generator.mistral.conf | 4 +-
tools/docker/DOCKER_README.rst | 60 +
tools/docker/Dockerfile | 22 +
tools/docker/Dockerfile_script.sh | 47 +
tools/docker/build.sh | 9 +
tools/docker/start_mistral_rabbit_mysql.sh | 39 +
tools/get_action_list.py | 41 +-
tools/sync_db.py | 9 +
tools/tox_install.sh | 56 +
tox.ini | 9 +-
270 files changed, 21382 insertions(+), 7290 deletions(-)
Requirements updates
--------------------
diff --git a/requirements.txt b/requirements.txt
index e97203b..3a9683e 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -5,2 +5,2 @@
-alembic>=0.8.0 # MIT
-Babel>=1.3 # BSD
+alembic>=0.8.4 # MIT
+Babel>=2.3.4 # BSD
@@ -7,0 +8 @@ croniter>=0.3.4 # MIT License
+cachetools>=1.1.0 # MIT License
@@ -10,2 +11,2 @@ jsonschema!=2.5.0,<3.0.0,>=2.0.0 # MIT
-keystonemiddleware!=4.1.0,>=4.0.0 # Apache-2.0
-mock>=1.2 # BSD
+keystonemiddleware!=4.1.0,!=4.5.0,>=4.0.0 # Apache-2.0
+mock>=2.0 # BSD
@@ -13,4 +14,4 @@ networkx>=1.10 # BSD
-oslo.concurrency>=3.5.0 # Apache-2.0
-oslo.config>=3.7.0 # Apache-2.0
-oslo.db>=4.1.0 # Apache-2.0
-oslo.messaging>=4.0.0 # Apache-2.0
+oslo.concurrency>=3.8.0 # Apache-2.0
+oslo.config>=3.14.0 # Apache-2.0
+oslo.db!=4.13.1,!=4.13.2,>=4.10.0 # Apache-2.0
+oslo.messaging>=5.2.0 # Apache-2.0
@@ -18 +19,2 @@ oslo.middleware>=3.0.0 # Apache-2.0
-oslo.utils>=3.5.0 # Apache-2.0
+oslo.policy>=1.9.0 # Apache-2.0
+oslo.utils>=3.16.0 # Apache-2.0
@@ -21,2 +23,3 @@ oslo.serialization>=1.10.0 # Apache-2.0
-oslo.service>=1.0.0 # Apache-2.0
-paramiko>=1.16.0 # LGPL
+oslo.service>=1.10.0 # Apache-2.0
+osprofiler>=1.4.0 # Apache-2.0
+paramiko>=2.0 # LGPLv2.1+
@@ -24,9 +27,12 @@ pbr>=1.6 # Apache-2.0
-pecan>=1.0.0 # BSD
-python-barbicanclient>=3.3.0 # Apache-2.0
-python-ceilometerclient>=2.2.1 # Apache-2.0
-python-cinderclient>=1.3.1 # Apache-2.0
-python-glanceclient>=2.0.0 # Apache-2.0
-python-heatclient>=0.6.0 # Apache-2.0
-python-keystoneclient!=1.8.0,!=2.1.0,>=1.6.0 # Apache-2.0
-python-mistralclient>=1.0.0 # Apache-2.0
-python-neutronclient!=4.1.0,>=2.6.0 # Apache-2.0
+pecan!=1.0.2,!=1.0.3,!=1.0.4,>=1.0.0 # BSD
+python-barbicanclient>=4.0.0 # Apache-2.0
+python-ceilometerclient>=2.5.0 # Apache-2.0
+python-cinderclient!=1.7.0,!=1.7.1,>=1.6.0 # Apache-2.0
+python-designateclient>=1.5.0 # Apache-2.0
+python-glanceclient!=2.4.0,>=2.3.0 # Apache-2.0
+python-heatclient>=1.4.0 # Apache-2.0
+python-keystoneclient!=2.1.0,>=2.0.0 # Apache-2.0
+python-mistralclient>=2.0.0 # Apache-2.0
+python-magnumclient>=2.0.0 # Apache-2.0
+python-muranoclient>=0.8.2 # Apache-2.0
+python-neutronclient>=5.1.0 # Apache-2.0
@@ -35,4 +41,5 @@ python-swiftclient>=2.2.0 # Apache-2.0
-python-troveclient!=2.1.0,>=1.2.0 # Apache-2.0
-python-ironicclient>=1.1.0 # Apache-2.0
-python-ironic-inspector-client>=1.3.0 # Apache-2.0
-python-zaqarclient>=0.3.0 # Apache-2.0
+python-tackerclient>=0.6.0 # Apache-2.0
+python-troveclient>=2.2.0 # Apache-2.0
+python-ironicclient>=1.6.0 # Apache-2.0
+python-ironic-inspector-client>=1.5.0 # Apache-2.0
+python-zaqarclient>=1.0.0 # Apache-2.0
@@ -40 +47 @@ PyYAML>=3.1.0 # MIT
-requests!=2.9.0,>=2.8.1 # Apache-2.0
+requests>=2.10.0 # Apache-2.0
@@ -41,0 +49 @@ retrying!=1.3.0,>=1.2.3 # Apache-2.0
+setuptools!=24.0.0,>=16.0 # PSF/ZPL
@@ -44 +52 @@ SQLAlchemy<1.1.0,>=1.0.10 # MIT
-stevedore>=1.5.0 # Apache-2.0
+stevedore>=1.16.0 # Apache-2.0
@@ -47,0 +56 @@ tooz>=1.28.0 # Apache-2.0
+zake>=0.1.6 # Apache-2.0
diff --git a/test-requirements.txt b/test-requirements.txt
index 7b63966..0671158 100644
--- a/test-requirements.txt
+++ b/test-requirements.txt
@@ -5 +5 @@ coverage>=3.6 # Apache-2.0
-fixtures>=1.3.1 # Apache-2.0/BSD
+fixtures>=3.0.0 # Apache-2.0/BSD
@@ -11,2 +11,3 @@ pyflakes==0.8.1 # MIT
-pylint==1.4.5 # GNU GPL v2
-sphinx!=1.2.0,!=1.3b1,<1.3,>=1.1.2 # BSD
+pylint==1.4.5 # GPLv2
+requests-mock>=1.0 # Apache-2.0
+sphinx!=1.3b1,<1.3,>=1.2.1 # BSD
@@ -18 +19 @@ unittest2 # BSD
-reno>=0.1.1 # Apache2
+reno>=1.8.0 # Apache2
1
0
We are tickled pink to announce the release of:
manila 3.0.0: Shared Storage for OpenStack
This release is part of the newton release series.
For more details, please see below.
3.0.0
^^^^^
A new Container driver is added. It uses docker container as a share
server.
Add a new EMC Unity plugin in manila which allows user to create
NFS/CIFS share with a EMC Unity backend.
Add support for CIFS protocol in Manila HNAS driver.
Add Hitachi HSP driver.
Refactored GPFS driver to support NFS Ganesha through Spectrum Scale
CES framework.
Added new parameters to Share Migration experimental API and more
combinations of share protocols and access types support to the Data
Service.
Manila scheduler checks "thin_provisioning" in extra specs of the
share type and decides whether to use the logic for thin or thick. If
"thin_provisioning" not given in extra specs, default use thin.
New Features
************
* Add update_access support to HPE 3PAR driver.
* HPE 3PAR driver now supports configuring multiple pools per
backend.
* Driver may return "access_key", an access credential, for client
identities granted share access.
* Added "access_key" to the JSON response of "access_list" API.
* Added support for driver-assisted share migration to ZFSonLinux
driver.
* Add list, show, and reset-status admin APIs for snapshot
instances.
* User ID is added to the JSON response of the /shares APIs.
* Store network gateway value in DB.
* Gateway is added to the JSON response of the /share-networks API.
* Store network MTU value into DB to make it possible for drivers
with share server support to support different values than 1500.
* user_id and project_id fields are added to the JSON response of
/snapshots APIs.
* For cephfs_native driver, added read-only shares support.
* Enhanced "cephfs_native" driver's update_access() to,
* remove undesired rules existing in the backend during recovery
mode.
* return "access_keys" of ceph auth IDs that are allowed access.
* The Container driver allows using a docker container as a share
server. This allows for very fast share server startup.
* The Container driver supports CIFS protocol.
* NetApp cMode driver - configured VLAN will be deleted on Vserver
removal
* Add DriverFilter and GoodnessWeigher to manila's scheduler. These
can use two new properties provided by backends, 'filter_function'
and 'goodness_function', which can be used to filter and weigh
qualified backends, respectively.
* Add a new Unity plugin in manila which allows user to create
NFS/CIFS share with a EMC Unity backend. This plugin performs the
operations on Unity by REST API.
* Added support for CIFS shares in Hitachi HNAS driver. It supports
user access type, where a permission for a user or a group can be
added/removed. Also, accepts 'read write' and 'read only' as access
level.
* Renamed all HDS mentions on HNAS driver to Hitachi and moved
driver to another folder.
* Add read-write functionality for HPE 3PAR shares from snapshots.
* Added new Hitachi HSP driver, that supports manage/unmanage and
shrinking of shares, along with all the minimum driver features.
Does not support snapshots.
* Huawei driver now supports replication. It reports a replication
type 'dr'(Disaster Recovery), so "replication_type=dr" can be used
in the share type extra specs to schedule shares to the Huawei
driver when configured for replication.
* The huawei driver now supports turning off snapshot support.
* Huawei driver supports setting the backend 'sectorsize' while
creating shares and administrators can use this capability via the
share types extra-spec 'huawei_sectorsize:sectorsize' or via the XML
configuration file.
* Add support for reporting pool disk type in Huawei driver.
*huawei_disk_type* extra-spec in the share type. Valid values for
this extra-spec are 'ssd', 'sas', 'nl_sas' or 'mix'.
* Add support for hybrid aggregates to the NetApp cDOT drivers.
* Added support of 'manage share' feature to ZFSonLinux driver.
* Manage share snapshot on array in huawei driver.
* Added support of 'manage snapshot' feature to ZFSonLinux driver.
* Share can be managed with replication_type extra-spec in the
share_type
* Add support for snapshot manage/unmanage to the NetApp cDOT
driver.
* Administrators can now change a share's type during a migration.
* Added port binding support for neutron networks with multiple
segments.
* The NetApp cDOT driver operating in "driver_handles_share_servers
= True" mode applies the Maximum Transmission Unit (MTU) from the
network provider where available when creating Logical Interfaces
(LIFs) for newly created share servers.
* NetApp cDOT driver now supports a scoped extra-spec
"netapp:split_clone_on_create" to be used in share types when
creating shares (NetApp FlexClone) from snapshots. If this extra-
spec is not included, or set to "false", the cDOT driver will
perform the clone-split only if/when the parent snapshot is being
deleted.
* NFS Versions can be configured when using the NetApp cDOT driver
with driver mode "driver_handles_share_servers = True".
* Added neutron driver for port bind actions.
* Share Migration now has parameters to force share migration
procedure to maintain the share writable, preserve its metadata and
be non-disruptive when migrating.
* Added CIFS protocol support to Data Service, along with respective
'user' access type support, through the
'data_node_access_admin_user' configuration option.
* Added possibility to include options to mount commands issued by
the Data Service through the 'data_node_mount_options' configuration
option.
* Administrators can now change share's share network during a
migration.
* Added possibility of having files hash verified during migration.
* Added share backend drivers for NexentaStor4 and NexentaStor5
appliances.
* Oracle ZFSSA driver now supports share manage/unmanage feature,
where a ZFSSA share can be brought under Manila's management, or can
be released from Manila's management.
Known Issues
************
* The Container driver has the following known issues:
* Only basic driver operations are supported: create/delete share,
update access and extend share.
* EMC Unity does not support the same IP in different VLANs.
* When snapshot support is turned on in the Huawei driver,
replication cannot be used.
* Managing a share with replication_type can only be possible if the
share does not already have replicas.
Upgrade Notes
*************
* HPE 3PAR driver no longer uses hpe3par_share_ip_address option in
configuration. With pool support, configuration just requires
hpe3par_fpg option or optionally supply share IP address(es) along
with hpe3par_fpg.
* To add DriverFilter and GoodnessWeigher to an active deployment,
their references must be added to the filters and weighers sections
on entry_points.txt.
* HNAS driver vendor changed from HDS to Hitachi.
* New HNAS driver location.
* New HNAS config options hitachi_hnas_ip, hitachi_hnas_user,
hitachi_hnas_password, hitachi_hnas_evs_id, hitachi_hnas_evs_ip,
hitachi_hnas_file_system_name, hitachi_hnas_ssh_private_key,
hitachi_hnas_cluster_admin_ip0, hitachi_hnas_stalled_job_timeout,
hitachi_hnas_driver_helper and
hitachi_hnas_allow_cifs_snapshot_while_mounted.
* Added a new config option is_gpfs_node which will determine if
manila share service is running on GPFS node or not. Added mmnfs
commands in the root wrap share.filters. Removed scp and ssh
commands from root wrap share.filters.
* Added new configuration option "netapp_enabled_share_protocols" to
configure NFS versions with the NetApp cDOT driver operating in
driver mode "driver_handles_share_servers = True". If this option is
not specified, new share servers (NetApp vServers) will be created
supporting NFS Version 3 and NFS Version 4.0.
* Remove the "AllocType" configuration from huawei driver
configuration file. If "thin_provisioning" not given, default create
new share by "thin" type.
* Ensure that /etc/manila/api-paste.ini is up-to-date with
etc/manila /api-paste.ini, in particular that [filter:sizelimit]
section has paste.filter_factory =
oslo_middleware.sizelimit:RequestBodySizeLimiter.factory
Deprecation Notes
*****************
* HNAS driver location was deprecated.
* All HNAS driver config options were deprecated hds_hnas_ip,
hds_hnas_user, hds_hnas_password, hds_hnas_evs_id, hds_hnas_evs_ip,
hds_hnas_file_system_name, hds_hnas_ssh_private_key,
hds_hnas_cluster_admin_ip0, hds_hnas_stalled_job_timeout,
hds_hnas_driver_helper and
hds_hnas_allow_cifs_snapshot_while_mounted.
* Deprecated knfs_export_options configuration parameter as export
options are now configured in extra specs of share types.
* Renamed Share Migration 'force_host_copy' parameter to
'force_host_assisted_migration', to better represent the parameter's
functionality in API version 2.22.
* API version 2.22 is now required for all Share Migration APIs.
* Removed manila RequestBodySizeLimiter shims and deprecation log
messages since it has been deprecated since equivalent
oslo.middleware library object was added in kilo.
Security Issues
***************
* http_proxy_to_wsgi is taken into use instead of the deprecated ssl
middleware. This makes it easier for deployers to have Manila
running behind a proxy that terminates TLS connections. This
middleware addition adds the enable_proxy_headers_parsing option to
the oslo_middleware section which needs to be set in the
configuration file in order to enable middleware to do its work.
* Ensure we don't grant read access to 'Everyone' by default when
creating CIFS shares and the Windows SMB backend is used.
Bug Fixes
*********
* Fixed Hitachi HNAS driver not cleaning up data in backend when
failing to create a share from snapshot.
* Added missing default filter function on Hitachi HSP driver.
* Changed share replica deletion logic in the NetApp cDOT driver to
disregard invalid replication relationships from among those
recorded by the driver to clean up.
* HPE3PAR driver fix to allow delete of a share that does not exist
on the backend.
* Fixed issue with NetApp cDOT share server cleanup when LIF
creation fails while setting up a new vServer.
* Fixed the generation of options in the correct option groups.
Using the config generator ("tox -e genconfig"), [cinder], [nova]
and [neutron] options are now generated in the right groups instead
of [default].
* For a delete snapshot request, if backend reports that snapshot is
busy then the state of snapshot is changed to 'error_deleting'.
* HPE3PAR Driver fix to reduce the fsquota when a share is deleted
for shared fstores.
* In cephfs_native driver, fixed client eviction call during access
denial.
* User_id and project_id DB fields are extended to also support LDAP
setups.
* Capacity filter and weigher scheduler logic was modified to
account for back ends that can support thin and thick provisioning
for shares. Over subscription calculation is triggered with the
presence of the "thin_provisioning" extra-spec in the share type of
the share being created.
* Hitachi HNAS driver now reports "dedupe" capability and it can be
used in extra-specs to choose a HNAS file system that has dedupe
enabled when creating a manila share on HNAS.
* EMC VNX driver supports interface ports configuration now. The
ports of Data Mover that can be used by share server interfaces are
configurable.
* Any errors that may occur during 'managing' a share into manila
will result in the share's size being set to 1, aside from
transitioning the status to 'manage_error'.
* Improve max_over_subscription_ratio enforcement by providing a
reasonable estimate of backend provisioned-capacity when drivers
cannot supply it.
* Consistency Group APIs return share_server_id information
correctly to administrators.
* When using a consistency group snapshot to create another
consistency group, share server and network information is persisted
from the source consistency group to the new consistency group.
* Crash when using unconfined filesystems in HDS HNAS driver using
SSH backend.
* HDS HNAS Driver no longer mounts unmounted filesystems
automatically.
* Fix exception in update_access not found in Huawei driver.
* Fixed Hitachi HNAS driver allowing a share to be managed twice
through a malformed export location parameter.
* Check the Cephx ID used when granting access to a CephFS share to
make sure it's not the same as the one Manila uses to communicate
with the Ceph backend.
* The NetApp cDOT driver's autosupport reporting now works on Python
2.7.12 and later.
* Fixed race-condition in generic driver while updating network
routes in host.
* GlusterFS drivers now handle the volume option XML schema of
GlusterFS >= 3.7.14.
* Fixed error when allowing access to a managed share in HDS HNAS
driver.
* Fixed error when attempting to create a new share from a snapshot
taken from a managed share in HDS HNAS driver.
* Fixed ID inconsistencies in log when handling managed shares in
HDS HNAS driver.
* Huawei driver now properly handles access for all IP addresses
(0.0.0.0/0).
* Makes docker containers actually mount logical volumes.
* Retrying to manage shares in "manage_error" status works as
expected.
* Snapshot manage and unmange operations are disabled for shares
with replicas.
* Fixed access_allow and access_deny displaying incorrect error
message during migration of a share.
* Fixed access rule concurrency in migration that was preventing new
rules from being added to the migrated share.
* Fixed share migration error using Data Service when there are only
empty files.
* Fixed HSP driver not supporting adding rules that exist in backend
for managed shares.
* Fixed HSP driver not supporting deleting share if it has rules in
backend that are not in Manila.
* force-delete API requests for snapshots are now propagated to the
manila-share service and will not fail even if share drivers cannot
remove the snapshots on the storage backend.
Changes in manila 2.0.0..3.0.0
------------------------------
9d6823b Add cleanup to create from snap in Manila HNAS driver
eaf153d [ZFSonLinux] Fix share migration using remote host
fb44a0a Put all imports from manila.i18n in one line
b29a0e5 Fix access rules for managed shares in HSP driver
053acc8 Improve Share Migration tempest tests
10487a1 Fix allow/deny error message and race in migration
0a40a64 Fix for LV mounting issue in docker containers
f240f77 Fix flaky Neutron port binding unit tests
696a7bb Fix useless statements in unit tests
13f97a4 [docs] Update dev docs for ZFSonLinux share driver
e24e6e7 [ZFSonLinux] Add test coverage for share migration
91b1d2c NetApp cDOT driver autosupport broken
d0e2380 huawei driver default create thin type share
acdf032 HPE 3PAR: file share support of AD in devref
ee1d534 Updated from global requirements
58be1ef glusterfs: handle new cli XML format
af7739a Add provisioned_capacity_gb estimation
8118e24 Fix typo in response status code
6b1fed7 standardize release note page ordering
3e96712 Fix race condition updating routes
e8d2b34 share-size not set to 1 with 'manage_error' state
24a1609 Config logABug feature for Manila api-ref
8cc148f NetApp cDOT: Avoid cleaning up 'invalid' mirrors
a5c2297 [ZFSonLinux] Fix share migration support
7fded23 Update to tempest 12.2.0
8328ebd Add multi-segment support
105e55c Add binding_profile option for backends
1fd7e88 Nexenta: adding share drivers for NexentaStor
b9c15c7 Updated from global requirements
a357983 Windows SMB: implement 'update_access' method
d6fb9e5 Windows SMB: remove redundant operations
754750a [Dummy driver] Add share migration support
976e2d5 [ZFSonLinux] Add share migration support
6dad166 Add share type change to Share Migration
0bbf54f HPE 3PAR driver pool support
9639e72 Share migration Newton improvements
9edb93d Unity: Use job for NFS share creation
f111470 Correct reraising of exception
b831976 Windows SMB: avoid default read share access
f16e389 Change assertTrue(isinstance()) by optimal assert
c7fe51e Fix Share Migration improper behavior for drivers
12f95b1 Fix Manila HNAS driver managing a share twice
c51e8b6 Fix test bugs for replication CI
88898b5 Implement replication support in huawei driver
088747c Fix connectivity problem in Scenario job
e562d21 Updated from global requirements
317a919 [CI FIX] Fix 'ip route' matching multiple subnets
84551bf Clean imports in code
0ca6707 Clarify grenade failure message
c567647 Updated from global requirements
5e85232 Add documentation for EMC Unity Driver for Manila
7578ad2 Remove enable_v1_api and enable_v2_api config opts
5e0c233 3PAR: Add update_access support
0d4f2ee add access_key to share_access_map
9814b50 Add missing filter function in HSP driver
8210bf5 Get ready for os-api-ref sphinx theme change
e4ddb09 Fix fallback share migration with empty files
c314c3f Rename and move HNAS driver
8033052 Updated from global requirements
78e10bc Add neutron driver for binding
5c95e5c Fix sample config generation for cinder, nova and neutron opts
2a7d480 Add Hitachi HSP driver
641c74c manila_tempest_tests: fix exception messages
ddf960a Container driver
3337462 Tox Upper Constraints - strip out reinstalls for remaining jobs
2d4e30b NetApp cDOT: Apply network MTU to VLAN ports
fda0b07 Fix typo in glusterfs driver comment
ff4a33a [dev-docs] Changed small case letters to capital
e3afcd7 Add MTU information in DB and API
dfbe3ea In-tree Install Guide
1c1107d Updated from global requirements
08ffd6b cephfs_native: enhance update_access()
c2bf461 TrivialFix: Change LOG.warn to LOG.warning
5ea4911 Fix the broken UT of huawei driver for py34/35
9a178f5 Add dedupe report in HNAS driver
0f596c5 cephfs_native: add read-only share support
1e8e33f Updated from global requirements
a91fa6e Refactor GPFS driver for NFS ganesha support
d42b3f8 NetApp cDOT driver configurable clone split
ead0512 NetApp cDOT multi-SVM driver configurable NFS versions
dfb9e58 Add support for CIFS shares in HNAS driver
c17d23a Fix KeyError on err in unit test
d878826 Fix concurrent usage of update_access method for share instances
bcd2855 NetApp cDOT vserver deletion fails if no lifs present
88fb70f Fix ZFSonLinux driver prerequisites setup
e305b11 Updated from global requirements
18e3fcd HPE3PAR make share from snapshot writable
bd21193 Check for usage of same Cephx ID as manila service
4c2a69c Fix share migration test with snapshot support
0fa609e [Tempest] Fix concurrency in "test_show_share_server" test
839ba23 [ZFSonLinux] Fix replicated snapshot deletion error
d5e8b8d Fix race condition in tempest test
b75ab85 Replaces httplib with requests lib in Quobyte RPC layer
86383ff Add EMC Unity Driver for Manila
8a487bf Add snapshot instances admin APIs
26de94a TrivialFix: Fix a wrong order bug in resource_cleanup()
d953bae [ZFSonLinux] Add 'manage snapshot' feature support
aa1268d Minor optimization and formatting corrections in Quobyte driver
72650b5 Add retry in VNX driver when DB lock error happened
cd07802 Remove "host" from driver private data
4c4ee90 NetApp: Report hybrid aggregates in share stats
8da0cb6 share/access: allow maintenance mode to be triggered
3e86e3d Migrate API reference into tree
d0e31ca Fix devref README and remove Makefile
7145891 Add dummy driver
55fd2ec Correct Quobyte driver capacity reporting
4d4104c Updated from global requirements
fed9412 Huawei: Support reporting disk type of pool
2d957f3 Documentation changes for thin/thick provisioning
83c93c7 Check 'thin_provisioning' in extra specs
443b61f HPE3PAR: Fix filestore quota decrement
6f506a8 HPE3PAR: Handle exceptions on deleted shares
e8e8fb1 Fix pep8 job
a4625e7 Add reno notes about http_proxy_to_wsgi middleware
f10776d Add DriverFilter and GoodnessWeigher to manila
8208841 Use http_proxy_to_wsgi instead of ssl middleware
d2b2cc8 Use constraints for coverage job
6e87a84 Do not put real hostname and IP address to manila config sample
829052d Add tox job for db revision creation
55b0444 Add interface port configuration in EMC VNX driver
9679578 Huawei: Add share sectorsize config in Huawei driver
aa6a0e2 Huawei driver support access of all IPs
0b59a91 update min tox version to 2.0
c3a8df1 Updated from global requirements
bb01fe9 [Tempest] Handle errored shares correctly using recreation logic
b06e111 [Tempest] Create heavy scenario resources in parallel
916c1cf Update tempest to newer commit version
b043767 Add share manage/unmanage of Oracle ZFSSA driver
1b8a2e0 Delete duplicated broken tempest test
2d6d4c6 Add lvm driver options to sample config
64f3df1 Updated from global requirements
f284db4 [ZFSonLinux] Add 'manage share' feature support
c7d4d6d Fix snapshot manage Tempest test
4bac8b6 Manage / unmanage snapshot in NetApp cDOT drivers
d98222a Add gateway in network_info and share network API
58d4d92 Fixed a spelling mistake of "seperate" to "separate"
cad4854 Add share_size config option
34fcf4a Config: no need to set default=None
c9e1a1a Use upper-constraints in tox installs
76251ee Updated from global requirements
fdfd070 Update quota usages correctly in manage share operation
33ebd27 Change user_id and project_id to 255 length
eb784f1 Add user_id and project_id to snapshot APIs
e49d39c [Tempest] Fix negative replication test
49695bd [Tempest] Remove noqa filters
d3885af Updated from global requirements
aeea2b3 Cleanup unused DB APIs
a74d4e4 glusterfs: Implement update_access() method
bde7105 ganesha: implement update_access
d130343 Huawei: Add manage share snapshot in Huawei driver
a1f33c9 Delete VLAN on delete_vserver in Netapp cmode
cd698f2 Use is_valid_ipv4 and is_valid_ipv6 from oslo.utils
48ba5fc Updated from global requirements
467321b Do not supply logging arguments as tuple.
05dcc06 cephfs_native: Fix client eviction
adc958f Pass context down to ViewBuilder method
94cf349 Add more dir exceptions to pep8 tox job
e2aecad [Tempest] Bump tempest version
82a571c [Tempest] Stop using deprecated Tempest opts
797bbcb [Tempest] Add valuable tags to tests
e96e7cb [Tempest] HotFix for broken CI jobs
e9dfa37 Updated from global requirements
c2e4967 Fix issue with testtool testrunner
e603ef0 HPE3PAR driver doesn't decrease fstore capacity
f78503d Updated from global requirements
33f4e3d Fix badly formatted release note
14446ef Use oslo IntOpt function instead of explicit check
3a4c777 Document instructions for documentation
739925a Adding info to use venv of tox for reno
3e561a1 Polish hook decorator
375b14d Updated from global requirements
db2a5a7 Updated from global requirements
081fc48 Fix HDS HNAS errors caused by incorrect IDs
548975e Huawei: Fix exception in update_access not found
528ee09 Hacking check for str in exception breaks in py34
2b7a755 Add hacking rule for assertEqual(None, *)
be01b39 Squash E042 and E043 bashate warnings
c8916d1 Removed the invalid link from Manila Dev Guide
b85248b Use assertTrue rather than assertEqual(True, ...)
67f1f03 Replace assertEqual(None, *) with assertIsNone in tests
ad52b3e Updated from global requirements
348fde0 Remove retry logic from manage API
e4e6190 Fix tox errors and warnings in the devref
07b1779 [Doc] Update quick start guide to Mitaka release
b22fcd1 Updated from global requirements
8b1de88 HDS_HNAS: Fix improper error message
c272dee HDS_HNAS: Remove unused parameter
4c3c7e5 Fix context warning spam of scheduler and share logs
70bf53b Updated from global requirements
724d8df Fix docs for REST API history and Scheduler
f52d032 Fix Manila RequestContext.to_dict() AttributeError
544ff9c Add wraps function to decorator
896acf4 Fix context decorator usage in DB API
545a3f7 Add hint how to configure fake_driver in manila-share
c8ff803 Test: make enforce_type=True in CONF.set_override
51ba6e1 Remove NetAppCmodeClient.delete_network_interface
cffb855 Updated from global requirements
4334a06 Add user_id echo in manila show/create/manage API
1e58d5c Bump Tempest version
e03d3d2 Remove deprecated manila RequestBodySizeLimiter
cb1a690 Fixed references for scheduler drivers in doc
118d440 Fix share server info in CGs created from CGs
aaf6086 Skip over quota tests if quota tests disabled
69eaebc Delete Snapshot: status wrongly set when busy
06eac60 Updated from global requirements
0d6de50 Fix HNAS error with unconfined filesystems
8de817d Developer Reference: Adopt the openstackdocstheme
7ca05d5 Fix IPv6 standalone network plugin test
affc78e cephfs_native: doc fixes
fef3c1e Added docs for commit message tags
aac9359 Fix docstring for policy.enforce method
b711e9e Updated from global requirements
d8bc030 Fix tempest.conf generation
a8747d1 [Trivial] replace logging with oslo.log
7999280 Add Grenade support to Manila
acf85ca NetApp: DR look up config via host name
95dd3dc [Devstack] Set proper driver mode for ZFSonLinux driver
b564d91 use thread safe fnmatch
1ed4efb Updated from global requirements
d706a59 Make devstack functions support grenade
1a66175 Fix microversion usage in share manage functional tests
53364e0 Handle manage/unmanage for replicated shares
4c7d9c4 Fix HNAS driver exception messages
f63fe25 Updated from global requirements
f14808a Add doc for Share Replication
143decf Fix Share status when driver migrates
fd9b5c0 Fix doc build if git is absent
7383279 Remove unused tenant_id variable
6d2efea [Fix CI] Bump Tempest version
1c2ec9b Detect addition of executable files
0877510 Updated from global requirements
9b55b6d Add release notes usage and documentation
1807485 Deprecate manila-all command
4f26ecd update hacking checks for manila
692bd3e Fix creation of Neutron network in Devstack
a909f23 Fix manage tempest test validation
db5c9f6 Update HPE 3PAR devref docs
f56d2fd NetApp cDOT driver should honor reserved percentage
466aef9 Remove Devstack workaround for Neutron
72ab144 Remove unused logging import and LOG global
cbb316b cephfs_native: Change backend snapshot dir's name
06cc17b Remove openstack-common.conf
5121ee2 update dev env doc for Fedora releases
3564881 Fix force-delete on snapshot resource
91ebe5b Increase Cinder oversubscription ratio in CI
67dd3f1 Use install_package when preparing LVM driver installation
165b03e Fix Manage API synchronous call
5b92331 Generic driver: ignore VolumeNotFound in deleting
973711b Removing some redundant words
a5b5c05 Add common capabilities matrix to devref
665f352 Add caution to test-requirements
c01b5bb Increase logging for driver initialization
8f7df3f Capitalize global var for clients
ad6cdb6 Fix typos
560f13d Update ZFSonLinux share driver docs
07c7e67 Update reno for stable/mitaka
bcb0f31 Add hacking check to ensure not to use xrange()
Diffstat (except docs and test files)
-------------------------------------
.gitignore | 4 +
HACKING.rst | 22 +-
api-ref/source/availability-zones.inc | 48 +
api-ref/source/conf.py | 341 +++
api-ref/source/consistency-group-snapshots.inc | 398 +++
api-ref/source/consistency-groups.inc | 355 +++
api-ref/source/extensions.inc | 42 +
api-ref/source/index.rst | 37 +
api-ref/source/limits.inc | 77 +
api-ref/source/os-share-manage.inc | 126 +
api-ref/source/parameters.yaml | 2943 ++++++++++++++++++++
api-ref/source/quota-sets.inc | 173 ++
.../samples/availability-zones-list-response.json | 10 +
.../samples/consistency-group-create-request.json | 10 +
.../samples/consistency-group-create-response.json | 26 +
.../consistency-group-force_delete-request.json | 3 +
.../consistency-group-list-detail-response.json | 32 +
.../samples/consistency-group-list-response.json | 32 +
.../consistency-group-member-list-response.json | 24 +
.../consistency-group-reset_status-request.json | 5 +
.../samples/consistency-group-show-response.json | 27 +
.../consistency-group-snapshot-create-request.json | 7 +
...consistency-group-snapshot-create-response.json | 21 +
...stency-group-snapshot-force_delete-request.json | 3 +
...stency-group-snapshot-list-detail-response.json | 42 +
.../consistency-group-snapshot-list-response.json | 32 +
...stency-group-snapshot-reset_status-request.json | 5 +
.../consistency-group-snapshot-show-response.json | 21 +
.../consistency-group-snapshot-update-request.json | 5 +
...consistency-group-snapshot-update-response.json | 21 +
.../samples/consistency-group-update-request.json | 5 +
.../samples/consistency-group-update-response.json | 26 +
.../samples/export-location-list-response.json | 18 +
.../samples/export-location-show-response.json | 11 +
.../source/samples/extensions-list-response.json | 102 +
api-ref/source/samples/limits-response.json | 17 +
.../samples/pools-list-detailed-response.json | 27 +
api-ref/source/samples/pools-list-response.json | 22 +
api-ref/source/samples/quota-show-response.json | 10 +
api-ref/source/samples/quota-update-request.json | 7 +
api-ref/source/samples/quota-update-response.json | 9 +
.../samples/security-service-create-request.json | 10 +
.../samples/security-service-create-response.json | 17 +
.../samples/security-service-show-response.json | 17 +
.../samples/security-service-update-request.json | 8 +
.../samples/security-service-update-response.json | 17 +
.../security-services-list-detailed-response.json | 36 +
...y-services-list-for-share-network-response.json | 40 +
.../samples/security-services-list-response.json | 16 +
.../source/samples/service-disable-request.json | 4 +
.../source/samples/service-disable-response.json | 5 +
api-ref/source/samples/service-enable-request.json | 4 +
.../source/samples/service-enable-response.json | 5 +
api-ref/source/samples/services-list-response.json | 22 +
.../services-list-with-filters-response.json | 13 +
.../samples/share-actions-extend-request.json | 5 +
.../share-actions-force-delete-request.json | 3 +
.../share-actions-grant-access-request.json | 7 +
.../share-actions-grant-access-response.json | 12 +
.../share-actions-list-access-rules-request.json | 3 +
.../share-actions-list-access-rules-response.json | 20 +
.../samples/share-actions-reset-state-request.json | 5 +
.../share-actions-revoke-access-request.json | 5 +
.../samples/share-actions-shrink-request.json | 5 +
.../samples/share-actions-unmanage-request.json | 3 +
api-ref/source/samples/share-create-request.json | 17 +
api-ref/source/samples/share-create-response.json | 44 +
...hare-instance-actions-force-delete-request.json | 3 +
...share-instance-actions-reset-state-request.json | 5 +
.../samples/share-instances-list-response.json | 34 +
api-ref/source/samples/share-manage-request.json | 15 +
api-ref/source/samples/share-manage-response.json | 40 +
...share-network-add-security-service-request.json | 5 +
...hare-network-add-security-service-response.json | 17 +
.../samples/share-network-create-request.json | 8 +
.../samples/share-network-create-response.json | 17 +
...re-network-remove-security-service-request.json | 5 +
...e-network-remove-security-service-response.json | 17 +
.../samples/share-network-show-response.json | 17 +
.../samples/share-network-update-request.json | 5 +
.../samples/share-network-update-response.json | 17 +
.../share-networks-list-detailed-response.json | 49 +
.../samples/share-networks-list-response.json | 16 +
.../share-server-show-details-response.json | 12 +
.../source/samples/share-server-show-response.json | 22 +
.../samples/share-servers-list-response.json | 13 +
.../source/samples/share-set-metadata-request.json | 5 +
.../samples/share-set-metadata-response.json | 9 +
.../samples/share-show-instance-response.json | 18 +
.../samples/share-show-metadata-response.json | 6 +
api-ref/source/samples/share-show-response.json | 44 +
.../source/samples/share-type-create-request.json | 10 +
.../source/samples/share-type-create-response.json | 26 +
.../samples/share-type-grant-access-request.json | 5 +
.../samples/share-type-revoke-access-request.json | 5 +
api-ref/source/samples/share-type-set-request.json | 5 +
.../source/samples/share-type-set-response.json | 5 +
.../samples/share-types-default-list-response.json | 20 +
.../share-types-extra-specs-list-response.json | 6 +
.../samples/share-types-list-access-response.json | 12 +
.../source/samples/share-types-list-response.json | 54 +
.../samples/share-update-metadata-request.json | 7 +
.../samples/share-update-metadata-response.json | 7 +
api-ref/source/samples/share-update-request.json | 6 +
api-ref/source/samples/share-update-response.json | 41 +
.../samples/shares-list-detailed-response.json | 84 +
api-ref/source/samples/shares-list-response.json | 32 +
.../snapshot-actions-force-delete-request.json | 3 +
.../snapshot-actions-reset-state-request.json | 5 +
.../samples/snapshot-actions-unmanage-request.json | 3 +
.../source/samples/snapshot-create-request.json | 8 +
.../source/samples/snapshot-create-response.json | 23 +
.../source/samples/snapshot-manage-request.json | 12 +
.../source/samples/snapshot-manage-response.json | 24 +
api-ref/source/samples/snapshot-show-response.json | 23 +
.../source/samples/snapshot-update-request.json | 6 +
.../source/samples/snapshot-update-response.json | 23 +
.../samples/snapshots-list-detailed-response.json | 46 +
.../source/samples/snapshots-list-response.json | 32 +
.../samples/versions-get-version-response.json | 28 +
.../source/samples/versions-index-response.json | 52 +
api-ref/source/scheduler-stats.inc | 102 +
api-ref/source/security-services.inc | 296 ++
api-ref/source/services.inc | 140 +
api-ref/source/share-actions.inc | 328 +++
api-ref/source/share-export-locations.inc | 87 +
api-ref/source/share-instance-export-locations.inc | 88 +
api-ref/source/share-instances.inc | 157 ++
api-ref/source/share-metadata.inc | 144 +
api-ref/source/share-migration.inc | 103 +
api-ref/source/share-networks.inc | 398 +++
api-ref/source/share-servers.inc | 141 +
api-ref/source/share-types.inc | 423 +++
api-ref/source/shares.inc | 509 ++++
api-ref/source/snapshots.inc | 424 +++
api-ref/source/versions.inc | 111 +
contrib/ci/common.sh | 61 +-
contrib/ci/post_test_hook.sh | 107 +-
contrib/ci/pre_test_hook.sh | 70 +-
devstack/plugin.sh | 289 +-
devstack/settings | 21 +
devstack/upgrade/from-mitaka/upgrade-manila | 17 +
devstack/upgrade/resources.sh | 356 +++
devstack/upgrade/settings | 23 +
devstack/upgrade/shutdown.sh | 22 +
devstack/upgrade/upgrade.sh | 73 +
.../share_back_ends_feature_support_mapping.rst | 172 +-
etc/manila/api-paste.ini | 18 +-
etc/manila/policy.json | 5 +
etc/manila/rootwrap.d/share.filters | 37 +-
etc/oslo-config-generator/manila.conf | 1 +
.../controller-node-common-configuration.rst | 71 +
.../common/controller-node-prerequisites.rst | 208 ++
.../common/dhss-false-mode-configuration.rst | 98 +
.../source/common/dhss-false-mode-intro.rst | 7 +
.../source/common/dhss-true-mode-configuration.rst | 84 +
.../source/common/dhss-true-mode-intro.rst | 15 +
.../common/share-node-common-configuration.rst | 77 +
.../common/share-node-share-server-modes.rst | 36 +
install-guide/source/conf.py | 306 ++
install-guide/source/figures/hwreqs.graffle | Bin 0 -> 4026 bytes
install-guide/source/figures/hwreqs.png | Bin 0 -> 90834 bytes
install-guide/source/figures/hwreqs.svg | 3 +
.../get-started-with-shared-file-systems.rst | 39 +
install-guide/source/index.rst | 46 +
install-guide/source/install-controller-debian.rst | 56 +
install-guide/source/install-controller-node.rst | 22 +
install-guide/source/install-controller-obs.rst | 47 +
install-guide/source/install-controller-rdo.rst | 57 +
install-guide/source/install-controller-ubuntu.rst | 64 +
install-guide/source/install-share-debian.rst | 91 +
install-guide/source/install-share-node.rst | 21 +
install-guide/source/install-share-obs.rst | 90 +
install-guide/source/install-share-rdo.rst | 103 +
install-guide/source/install-share-ubuntu.rst | 99 +
install-guide/source/next-steps.rst | 14 +
install-guide/source/post-install.rst | 196 ++
install-guide/source/verify.rst | 29 +
manila/api/__init__.py | 14 -
manila/api/common.py | 5 +-
manila/api/extensions.py | 4 +-
manila/api/middleware/fault.py | 3 +-
manila/api/middleware/sizelimit.py | 35 -
manila/api/openstack/__init__.py | 3 +-
manila/api/openstack/api_version_request.py | 15 +-
manila/api/openstack/rest_api_version_history.rst | 34 +-
manila/api/openstack/wsgi.py | 7 +-
manila/api/sizelimit.py | 33 -
manila/api/v1/security_service.py | 3 +-
manila/api/v1/share_manage.py | 2 +-
manila/api/v1/share_networks.py | 17 +-
manila/api/v1/share_unmanage.py | 4 +
manila/api/v1/shares.py | 89 +-
manila/api/v2/cgsnapshots.py | 3 +-
manila/api/v2/consistency_groups.py | 11 +-
manila/api/v2/router.py | 8 +
manila/api/v2/share_replicas.py | 2 -
manila/api/v2/share_snapshot_instances.py | 86 +
manila/api/v2/share_snapshots.py | 8 +-
manila/api/v2/shares.py | 160 +-
manila/api/views/consistency_groups.py | 2 +-
manila/api/views/export_locations.py | 3 +-
manila/api/views/share_accesses.py | 61 +
manila/api/views/share_instance.py | 13 +-
manila/api/views/share_migration.py | 32 +
manila/api/views/share_networks.py | 24 +-
manila/api/views/share_snapshot_instances.py | 63 +
manila/api/views/share_snapshots.py | 19 +-
manila/api/views/shares.py | 27 +-
manila/api/views/types.py | 6 +-
manila/cmd/all.py | 6 +
manila/cmd/api.py | 0
manila/cmd/data.py | 0
manila/cmd/manage.py | 2 +-
manila/cmd/scheduler.py | 0
manila/cmd/share.py | 0
manila/common/client_auth.py | 5 +-
manila/common/config.py | 14 +-
manila/common/constants.py | 5 +-
manila/compute/nova.py | 14 +-
manila/consistency_group/api.py | 8 +-
manila/context.py | 40 +-
manila/data/helper.py | 168 +-
manila/data/manager.py | 90 +-
manila/data/rpcapi.py | 7 +-
manila/data/utils.py | 86 +-
manila/db/api.py | 104 +-
.../221a83cfd85b_change_user_project_id_length.py | 62 +
...48a7beae3117_move_share_type_id_to_instances.py | 83 +
...1_add_mtu_network_allocations_share_networks.py | 40 +
.../versions/63809d875e32_add_access_key.py | 36 +
...8723178_remove_host_from_driver_private_data.py | 108 +
...9e1_add_gateway_to_network_allocations_table.py | 40 +
manila/db/sqlalchemy/api.py | 297 +-
manila/db/sqlalchemy/models.py | 40 +-
manila/exception.py | 46 +-
manila/hacking/checks.py | 131 +-
manila/network/__init__.py | 11 +
manila/network/linux/interface.py | 4 +-
manila/network/linux/ip_lib.py | 6 +-
manila/network/neutron/api.py | 5 +-
manila/network/neutron/constants.py | 5 +
manila/network/neutron/neutron_network_plugin.py | 248 +-
manila/network/nova_network_plugin.py | 4 +
manila/network/standalone_network_plugin.py | 11 +
manila/opts.py | 27 +-
manila/policy.py | 11 +-
manila/scheduler/evaluator/__init__.py | 0
manila/scheduler/evaluator/evaluator.py | 297 ++
manila/scheduler/filters/base.py | 4 +-
manila/scheduler/filters/capabilities.py | 4 +-
manila/scheduler/filters/capacity.py | 18 +-
manila/scheduler/filters/driver.py | 122 +
manila/scheduler/filters/ignore_attempted_hosts.py | 4 +-
manila/scheduler/filters/share_replication.py | 10 +-
manila/scheduler/host_manager.py | 128 +-
manila/scheduler/manager.py | 35 +-
manila/scheduler/rpcapi.py | 32 +-
manila/scheduler/utils.py | 113 +
manila/scheduler/weighers/capacity.py | 10 +-
manila/scheduler/weighers/goodness.py | 124 +
manila/service.py | 5 +-
manila/share/access.py | 82 +-
manila/share/api.py | 439 ++-
manila/share/driver.py | 1091 +++++---
manila/share/drivers/cephfs/cephfs_native.py | 90 +-
manila/share/drivers/container/__init__.py | 0
manila/share/drivers/container/container_helper.py | 100 +
manila/share/drivers/container/driver.py | 300 ++
manila/share/drivers/container/protocol_helper.py | 143 +
manila/share/drivers/container/storage_helper.py | 90 +
manila/share/drivers/emc/driver.py | 18 +-
manila/share/drivers/emc/plugins/unity/__init__.py | 0
manila/share/drivers/emc/plugins/unity/client.py | 274 ++
.../share/drivers/emc/plugins/unity/connection.py | 633 +++++
manila/share/drivers/emc/plugins/unity/utils.py | 34 +
manila/share/drivers/emc/plugins/vnx/connection.py | 65 +-
manila/share/drivers/emc/plugins/vnx/constants.py | 3 +
.../drivers/emc/plugins/vnx/object_manager.py | 12 +-
manila/share/drivers/emc/plugins/vnx/utils.py | 23 +
manila/share/drivers/ganesha/__init__.py | 37 +-
manila/share/drivers/ganesha/manager.py | 4 -
manila/share/drivers/ganesha/utils.py | 54 +
manila/share/drivers/generic.py | 12 +-
manila/share/drivers/glusterfs/__init__.py | 157 +-
manila/share/drivers/glusterfs/common.py | 31 +-
manila/share/drivers/glusterfs/glusterfs_native.py | 88 +-
manila/share/drivers/glusterfs/layout.py | 63 +-
manila/share/drivers/glusterfs/layout_directory.py | 3 +-
manila/share/drivers/glusterfs/layout_volume.py | 9 +-
manila/share/drivers/hdfs/hdfs_native.py | 2 +-
manila/share/drivers/helpers.py | 3 +-
manila/share/drivers/hitachi/hds_hnas.py | 643 -----
manila/share/drivers/hitachi/hnas/__init__.py | 0
manila/share/drivers/hitachi/hnas/driver.py | 837 ++++++
manila/share/drivers/hitachi/hnas/ssh.py | 681 +++++
manila/share/drivers/hitachi/hsp/__init__.py | 0
manila/share/drivers/hitachi/hsp/driver.py | 366 +++
manila/share/drivers/hitachi/hsp/rest.py | 209 ++
manila/share/drivers/hitachi/ssh.py | 573 ----
manila/share/drivers/hpe/hpe_3par_driver.py | 420 ++-
manila/share/drivers/hpe/hpe_3par_mediator.py | 554 +++-
manila/share/drivers/huawei/base.py | 25 +
manila/share/drivers/huawei/constants.py | 44 +
manila/share/drivers/huawei/huawei_nas.py | 89 +-
manila/share/drivers/huawei/v3/connection.py | 306 +-
manila/share/drivers/huawei/v3/helper.py | 158 +-
manila/share/drivers/huawei/v3/replication.py | 248 ++
manila/share/drivers/huawei/v3/rpcapi.py | 46 +
manila/share/drivers/huawei/v3/smartx.py | 46 +-
manila/share/drivers/ibm/ganesha_utils.py | 332 ---
manila/share/drivers/ibm/gpfs.py | 346 ++-
manila/share/drivers/lvm.py | 5 +-
.../netapp/dataontap/client/client_cmode.py | 324 ++-
.../netapp/dataontap/cluster_mode/data_motion.py | 39 +-
.../netapp/dataontap/cluster_mode/drv_multi_svm.py | 8 +-
.../dataontap/cluster_mode/drv_single_svm.py | 6 +
.../netapp/dataontap/cluster_mode/lib_base.py | 116 +-
.../netapp/dataontap/cluster_mode/lib_multi_svm.py | 73 +-
.../netapp/dataontap/protocols/cifs_cmode.py | 5 -
manila/share/drivers/netapp/options.py | 6 +
manila/share/drivers/nexenta/__init__.py | 0
manila/share/drivers/nexenta/ns4/__init__.py | 0
manila/share/drivers/nexenta/ns4/jsonrpc.py | 92 +
manila/share/drivers/nexenta/ns4/nexenta_nas.py | 134 +
.../drivers/nexenta/ns4/nexenta_nfs_helper.py | 227 ++
manila/share/drivers/nexenta/ns5/__init__.py | 0
manila/share/drivers/nexenta/ns5/jsonrpc.py | 145 +
manila/share/drivers/nexenta/ns5/nexenta_nas.py | 422 +++
manila/share/drivers/nexenta/options.py | 79 +
manila/share/drivers/nexenta/utils.py | 54 +
manila/share/drivers/quobyte/jsonrpc.py | 204 +-
manila/share/drivers/quobyte/quobyte.py | 34 +-
manila/share/drivers/service_instance.py | 14 +-
manila/share/drivers/tegile/tegile.py | 4 +-
manila/share/drivers/windows/windows_smb_driver.py | 21 -
manila/share/drivers/windows/windows_smb_helper.py | 191 +-
manila/share/drivers/zfsonlinux/driver.py | 420 ++-
manila/share/drivers/zfsonlinux/utils.py | 79 +-
manila/share/drivers/zfssa/restclient.py | 4 +-
manila/share/drivers/zfssa/zfssarest.py | 27 +-
manila/share/drivers/zfssa/zfssashare.py | 163 +-
manila/share/drivers_private_data.py | 6 +-
manila/share/manager.py | 836 ++++--
manila/share/migration.py | 33 +-
manila/share/rpcapi.py | 107 +-
manila/share/utils.py | 10 +-
manila/test.py | 2 +-
.../migrations/alembic/migrations_data_checks.py | 475 ++++
.../network/test_standalone_network_plugin.py | 22 +-
.../share/drivers/cephfs/test_cephfs_native.py | 141 +-
.../drivers/container/test_container_helper.py | 110 +
.../drivers/container/test_protocol_helper.py | 295 ++
.../share/drivers/container/test_storage_helper.py | 113 +
.../drivers/emc/plugins/isilon/test_isilon.py | 6 +-
.../drivers/emc/plugins/isilon/test_isilon_api.py | 2 +-
.../share/drivers/emc/plugins/unity/__init__.py | 20 +
.../drivers/emc/plugins/unity/fake_exceptions.py | 66 +
.../drivers/emc/plugins/unity/mocked_manila.yaml | 235 ++
.../drivers/emc/plugins/unity/mocked_unity.yaml | 974 +++++++
.../share/drivers/emc/plugins/unity/res_mock.py | 337 +++
.../share/drivers/emc/plugins/unity/test_client.py | 168 ++
.../drivers/emc/plugins/unity/test_connection.py | 617 ++++
.../share/drivers/emc/plugins/unity/test_utils.py | 50 +
.../drivers/emc/plugins/vnx/test_connection.py | 78 +-
.../drivers/emc/plugins/vnx/test_object_manager.py | 55 +-
.../share/drivers/emc/plugins/vnx/test_utils.py | 44 +
.../drivers/glusterfs/test_glusterfs_native.py | 179 +-
.../share/drivers/glusterfs/test_layout_volume.py | 2 +-
.../share/drivers/hitachi/hnas/test_driver.py | 781 ++++++
.../share/drivers/hpe/test_hpe_3par_constants.py | 90 +-
.../share/drivers/hpe/test_hpe_3par_driver.py | 478 +++-
.../share/drivers/hpe/test_hpe_3par_mediator.py | 918 ++++--
.../share/drivers/netapp/dataontap/client/fakes.py | 189 +-
.../netapp/dataontap/client/test_client_cmode.py | 569 +++-
.../dataontap/cluster_mode/test_data_motion.py | 54 +-
.../netapp/dataontap/cluster_mode/test_lib_base.py | 350 ++-
.../dataontap/cluster_mode/test_lib_multi_svm.py | 74 +-
.../netapp/dataontap/protocols/test_cifs_cmode.py | 7 -
.../share/drivers/nexenta/ns4/test_jsonrpc.py | 38 +
.../share/drivers/nexenta/ns4/test_nexenta_nas.py | 606 ++++
.../share/drivers/nexenta/ns5/test_jsonrpc.py | 129 +
.../share/drivers/nexenta/ns5/test_nexenta_nas.py | 378 +++
.../share/drivers/windows/test_service_instance.py | 4 +-
.../drivers/windows/test_windows_smb_driver.py | 40 -
.../drivers/windows/test_windows_smb_helper.py | 268 +-
manila/utils.py | 5 +-
manila/volume/cinder.py | 16 +-
manila/wsgi.py | 4 +-
.../services/share/json/shares_client.py | 7 +-
.../services/share/v2/json/shares_client.py | 145 +-
.../api/admin/test_consistency_group_actions.py | 42 +-
.../api/admin/test_consistency_groups_negative.py | 33 +-
.../api/admin/test_export_locations_negative.py | 57 +-
.../api/admin/test_share_snapshot_instances.py | 121 +
.../test_share_snapshot_instances_negative.py | 88 +
.../api/admin/test_share_types_extra_specs.py | 14 +-
.../admin/test_share_types_extra_specs_negative.py | 256 +-
.../api/admin/test_snapshot_manage_negative.py | 4 +-
.../api/test_security_services_mapping_negative.py | 36 +-
openstack-common.conf | 15 -
.../3par-add-update-access-68fc12ffc099f480.yaml | 3 +
.../notes/3par-pool-support-fb43b368214c9eda.yaml | 9 +
...instead-of-ssl-middleware-df533a2c2d9c3a61.yaml | 8 +
...s-key-to-share-access-map-2fda4c06a750e24e.yaml | 5 +
...nup-create-from-snap-hnas-0e0431f1fc861a4e.yaml | 4 +
...p-default-filter-function-0af60a819faabfec.yaml | 3 +
...port-in-zfsonlinux-driver-88e6da5692b50810.yaml | 3 +
...pshot-instances-admin-api-959a1121aa407629.yaml | 3 +
.../notes/add-user-id-echo-8f42db469b27ff14.yaml | 3 +
.../add_gateway_into_db-1f3cd3f392ae81cf.yaml | 4 +
.../notes/add_mtu_info_db-3c1d6dc02f40d5a6.yaml | 4 +
...oject_id_to_snapshot_APIs-157614b4b8d01e15.yaml | 4 +
...-replica-deletion-in-cDOT-7e4502fb50b69507.yaml | 5 +
...-fix-hpe3par-delete-share-0daf75193f318c41.yaml | 3 +
...hen-interfaces-dont-exist-4d00fe9dafadc252.yaml | 4 +
...3303-fix-config-generator-18b9f9be40d7eee6.yaml | 5 +
.../notes/bug_1564623_change-e286060a27b02f64.yaml | 4 +
.../notes/bug_1582931-1437eae20fa544d1.yaml | 4 +
...d-readonly-shares-support-067ccab0217ab5f5.yaml | 4 +
...nce-update-access-support-e1a1258084c997ca.yaml | 7 +
.../cephfs-native-fix-evict-c45fd2de8f520757.yaml | 3 +
...hange_user_project_length-93cc8d1c32926e75.yaml | 3 +
.../check-thin-provisioning-4bb702535f6b10b6.yaml | 7 +
.../notes/container-driver-5d972cc40e314663.yaml | 14 +
...edupe-support-hnas-driver-017d2f2a93a8b487.yaml | 5 +
...te_vlan_on_vserver_delete-a7acd145c0b8236d.yaml | 3 +
.../notes/driver-filter-91e2c60c9d1a48dd.yaml | 10 +
.../emc-unity-manila-support-d4f5a410501cfdae.yaml | 11 +
...rface_ports_configuration-00d454b3003ef981.yaml | 5 +
.../error-share-set-size-ff5d4f4ac2d56755.yaml | 5 +
...mate-provisioned-capacity-34f0d2d7c6c56621.yaml | 5 +
...ix-consistency-groups-api-dd9b5b99138e22eb.yaml | 7 +
.../fix-hds-hnas-unconfined-09b79f3bdb24a83c.yaml | 5 +
.../fix-huawei-exception-a09b73234ksd94kd.yaml | 3 +
.../fix-managing-twice-hnas-4956a7653d27e320.yaml | 4 +
.../fix_cephx_validation-cba4df77f9f45c6e.yaml | 5 +
...d-netapp-cdot-autosupport-3fabd8ac2e407f70.yaml | 5 +
.../generic-route-racing-adf92d212f1ab4de.yaml | 4 +
...-volume-option-xml-schema-dad06253453c572c.yaml | 4 +
...-driver-cifs-user-support-3f1a8b894fe3e9bb.yaml | 8 +
.../notes/hnas-driver-rename-7ef74fe720f7e04b.yaml | 20 +
.../hnas_allow_managed_fix-4ec7794e2035d3f2.yaml | 9 +
...pe3par-rw-snapshot-shares-f7c33b4bf528bf00.yaml | 3 +
.../notes/hsp-driver-e00aff5bc89d4b54.yaml | 7 +
...huawei-driver-replication-8ed62c8d26ad5060.yaml | 10 +
...-driver-sectorsize-config-da776132ba6da2a7.yaml | 5 +
...wei-pool-disktype-support-0a52ba5d44da55f9.yaml | 5 +
...wei-support-access-all-ip-4994c10ff75ac683.yaml | 3 +
...es-in-netapp-cdot-drivers-e7c90fb62426c281.yaml | 4 +
.../ibm-gpfs-ces-support-3498e35d9fea1b55.yaml | 14 +
...ounting-inside-containers-af8f84d1fab256d1.yaml | 3 +
...hare-in-zfsonlinux-driver-e80921081206f75b.yaml | 3 +
...snapshot-in-huawei-driver-007b2c763fbdf480.yaml | 3 +
...shot-in-zfsonlinux-driver-6478d8d5b3c6a97f.yaml | 3 +
...unmanage-replicated-share-fa90ce34372b6df5.yaml | 12 +
...hot-in-netapp-cdot-driver-5cb4b1619c39625a.yaml | 5 +
.../migration-access-fix-71a0f52ea7a152a3.yaml | 7 +
.../migration-empty-files-01d1a3caa2e9705e.yaml | 4 +
.../migration-share-type-98e3d3c4c6f47bd9.yaml | 3 +
.../multi-segment-support-fa171a8e3201d54e.yaml | 3 +
...mtu-from-network-provider-d12179a2374cdda0.yaml | 6 +
...-cdot-clone-split-control-a68b5fc80f1fc368.yaml | 7 +
...ot-configure-nfs-versions-83e3f319c4592c39.yaml | 10 +
.../neutron-binding-driver-43f01565051b031b.yaml | 3 +
...on-migration-improvements-cf9d3d6e37e19c94.yaml | 29 +
.../nexenta-manila-drivers-cbd0b376a076ec50.yaml | 3 +
...ocType-from-huawei-driver-8b279802f36efb00.yaml | 8 +
...e-deprecated-size-limiter-9d7c8ab69cf85aea.yaml | 10 +
.../rules-for-managed-share-f28a26ffc980f6fb.yaml | 6 +
.../snapshot-force-delete-4432bebfb5a0bbc9.yaml | 5 +
...ws-smb-fix-default-access-d4b9eee899e400a0.yaml | 5 +
...add-share-manage-unmanage-9bd6d2e25cc86c35.yaml | 5 +
releasenotes/source/index.rst | 3 +-
releasenotes/source/mitaka.rst | 6 +
requirements.txt | 41 +-
setup.cfg | 3 +
test-requirements.txt | 23 +-
tools/check_exec.py | 42 +
tools/check_logging.sh | 28 +
tox.ini | 31 +-
667 files changed, 50999 insertions(+), 11577 deletions(-)
Requirements updates
--------------------
diff --git a/requirements.txt b/requirements.txt
index 0a98c3e..a2939e1 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -8,2 +8,2 @@ pbr>=1.6 # Apache-2.0
-alembic>=0.8.0 # MIT
-Babel>=1.3 # BSD
+alembic>=0.8.4 # MIT
+Babel>=2.3.4 # BSD
@@ -14,3 +14,3 @@ netaddr!=0.7.16,>=0.7.12 # BSD
-oslo.config>=3.7.0 # Apache-2.0
-oslo.context>=0.2.0 # Apache-2.0
-oslo.db>=4.1.0 # 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
@@ -19 +19 @@ oslo.log>=1.14.0 # Apache-2.0
-oslo.messaging>=4.0.0 # Apache-2.0
+oslo.messaging>=5.2.0 # Apache-2.0
@@ -21,2 +21,2 @@ oslo.middleware>=3.0.0 # Apache-2.0
-oslo.policy>=0.5.0 # Apache-2.0
-oslo.rootwrap>=2.0.0 # Apache-2.0
+oslo.policy>=1.9.0 # Apache-2.0
+oslo.rootwrap>=5.0.0 # Apache-2.0
@@ -24,4 +24,4 @@ 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.concurrency>=3.5.0 # Apache-2.0
-paramiko>=1.16.0 # LGPL
+oslo.service>=1.10.0 # Apache-2.0
+oslo.utils>=3.16.0 # Apache-2.0
+oslo.concurrency>=3.8.0 # Apache-2.0
+paramiko>=2.0 # LGPLv2.1+
@@ -30,4 +30,5 @@ PasteDeploy>=1.5.0 # MIT
-python-neutronclient!=4.1.0,>=2.6.0 # Apache-2.0
-keystoneauth1>=2.1.0 # Apache-2.0
-keystonemiddleware!=4.1.0,>=4.0.0 # Apache-2.0
-requests!=2.9.0,>=2.8.1 # Apache-2.0
+pyparsing>=2.0.1 # MIT
+python-neutronclient>=5.1.0 # Apache-2.0
+keystoneauth1>=2.10.0 # Apache-2.0
+keystonemiddleware!=4.1.0,!=4.5.0,>=4.0.0 # Apache-2.0
+requests>=2.10.0 # Apache-2.0
@@ -35,2 +36,2 @@ retrying!=1.3.0,>=1.2.3 # 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
+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
@@ -39,2 +40,2 @@ SQLAlchemy<1.1.0,>=1.0.10 # MIT
-stevedore>=1.5.0 # Apache-2.0
-python-cinderclient>=1.3.1 # Apache-2.0
+stevedore>=1.16.0 # Apache-2.0
+python-cinderclient!=1.7.0,!=1.7.1,>=1.6.0 # Apache-2.0
diff --git a/test-requirements.txt b/test-requirements.txt
index 46306c9..bc17d0d 100644
--- a/test-requirements.txt
+++ b/test-requirements.txt
@@ -11,4 +11,3 @@ ddt>=1.0.1 # MIT
-fixtures>=1.3.1 # Apache-2.0/BSD
-mock>=1.2 # BSD
-iso8601>=0.1.9 # MIT
-PyMySQL>=0.6.2 # MIT License
+fixtures>=3.0.0 # Apache-2.0/BSD
+mock>=2.0 # BSD
+iso8601>=0.1.11 # MIT
@@ -16,0 +16,6 @@ oslosphinx!=3.4.0,>=2.5.0 # Apache-2.0
+openstackdocstheme>=1.5.0 # Apache-2.0
+
+# Do not remove 'PyMySQL' and 'psycopg2' dependencies. They are used
+# by oslo_db lib for running MySQL and PostgreSQL DB migration tests.
+# See http://docs.openstack.org/developer/oslo.db/contributing.html#how-to-run-un…
+PyMySQL!=0.7.7,>=0.6.2 # MIT License
@@ -17,0 +23 @@ psycopg2>=2.5 # LGPL/ZPL
+
@@ -19,3 +25,4 @@ python-subunit>=0.0.18 # Apache-2.0/BSD
-requests-mock>=0.7.0 # Apache-2.0
-sphinx!=1.2.0,!=1.3b1,<1.3,>=1.1.2 # BSD
-os-testr>=0.4.1 # Apache-2.0
+requests-mock>=1.0 # Apache-2.0
+sphinx!=1.3b1,<1.3,>=1.2.1 # BSD
+os-api-ref>=1.0.0 # Apache-2.0
+os-testr>=0.7.0 # Apache-2.0
@@ -25 +32 @@ testtools>=1.4.0 # MIT
-reno>=0.1.1 # Apache2
+reno>=1.8.0 # Apache2
1
0
We are chuffed to announce the release of:
glance 13.0.0: OpenStack Image Service
This release is part of the newton release series.
For more details, please see below.
13.0.0
^^^^^^
* Add "vhdx" to list of supported disk format.
* Glance API "minor" version bumped to 2.4.
* Deprecate the "show_multiple_locations" configuration option in
favor of the existing Role Based Access Control (RBAC) for Image
locations which uses "policy.json" file to define the appropriate
rules.
* The Images (Glance) version 1 API has been DEPRECATED. Please see
deprecations section for more information.
* Improved configuration option descriptions and handling.
* Adding locations to a non-active or non-queued image is no longer
allowed.
* Glance no longer returns a 500 when 4 byte unicode characters are
passed to the metadefs API.
* Deprecated "sign-the-hash" approach for image signing. Old
run_tests and related scripts have been removed.
* Database downgrades have been removed from the Glance source tree.
* The "s3" store driver has been removed.
* Sample configuration file shipped with Glance source now has
reordered store drivers configuration options for future consistent
ordering.
* Expired tasks are now deleted.
New Features
************
* The identifier "vhdx" has been added to the list of supported disk
formats in Glance. The respective configuration option has been
updated and the default list shows "vhdx" as a supported format.
Upgrade Notes
*************
* Added additional metadata for CPU thread pinning policies to
'compute-cpu-pinning.json'. Use the "glance_manage" tool to upgrade.
* The "disk_format" config option enables "vhdx" as supported by
default.
* The "default" policy in "policy.json" now uses the admin role
rather than any role. This is to make the policy file restrictive
rather than permissive and tighten security.
* Glance API **CURRENT** "minor" version is now "2.4".
* To partially fix an important image locations bug 1587985, an
API impacting change has been merged into Glance.
* This will result into a non-backward compatible experience
before and after **Newton** release, for users using "add" feature
to image locations.
* Some backend store names were inconsistent between glance and
glance_store. This meant that operators of the VMware datastore or
file system store were required to use store names in "glance-
api.conf" that did not correspond to any valid identifier in
glance_store. As this situation encouraged misconfiguration and
operator unhappiness, we have made the store names consistent in the
Newton release. What this means for you:
* This change applies only to operators who are using multiple
image locations
* This change applies only to operators using the VMware datastore
or filesystem stores
* This change applies only to the "store_type_preference" option
* *VMware datastore operators*: The old name, now **DEPRECATED**,
was "vmware_datastore". The **new** name, used in both glance and
glance_store, is "vmware"
* *File system store operators*: the old name, now **DEPRECATED**,
was "filesystem". The **new** name, used in both glance and
glance_store, is "file"
* This change is backward compatible, that is, the old names will
be recognized by the code during the deprecation period. Support
for the deprecated names will be removed in the **Pike** release
* We strongly encourage operators to modify their "glance-
api.conf" files immediately to use the **new** names
* Some additional points about "show_multiple_locations"
configuration option deprecation.
* Maintaining two different ways to configure, enable and/or
disable a feature is painful for developers and operators, so the
less granular means of controlling this feature will be eliminated
in the **Ocata** release.
* For the Newton release, this option will still be honored.
However, it is important to update "policy.json" file for glance-
api nodes. In particular, please consider updating the policies
"delete_image_location", "get_image_location" and
"set_image_location" as per your requirements. As this is an
advanced option and prone to expose some risks, please check the
policies to ensure security and privacy of your cloud.
* Future releases will ignore this option and just follow the
policy rules. It is recommended that this option is disabled for
public endpoints and is used only internally for service-to-
service communication.
* As mentioned above, the same recommendation applies to the
policy- based configuration for exposing multiple image locations.
* The image signature verification feature has been updated to
follow the "sign-the-data" approach, which uses a signature of the
image data directly. The prior deprecated "sign-the-hash" approach,
which uses a signature of an MD5 hash of the image data, has been
removed.
* The "db_downgrade" command has been removed from the "glance-
manage" utility and all database downgrade scripts have been
removed. In accord with OpenStack policy, Glance cannot be
downgraded any more. Operators are advised to make a full database
backup of their production data before attempting any upgrade.
* The latest release of glance_store library does not have the
support for the "s3" driver. All code references of the same have
been removed from the library. As this release of Glance uses the
updated glance_store library, you will find the "s3" driver support
removed from Glance too. For example the Glance image location
strategy modules no longer offer the "s3" driver support.
Deprecation Notes
*****************
* With the deprecation of the Images (Glance) version 1 API in the
Newton release, it is subject to removal on or after the Pike
release. The configuration options specific to the Images (Glance)
v1 API have also been deprecated and are subject to removal. An
indirectly related configuration option enable_v2_api has been
deprecated too as it becomes redundant once the Images (Glance) v1
API is removed. Appropriate warning messages have been setup for the
deprecated configuration options and when the Images (Glance) v1 API
is enabled (being used). Operators are advised to deploy the Images
(Glance) v2 API. The standard OpenStack deprecation policy will be
followed for the removals.
Critical Issues
***************
* Attempting to set image locations to an image *not* in "active" or
"queued" status will now result in a HTTP Conflict (HTTP status code
409) to the user.
* Until now, no image status checks were in place while **adding**
a location on it. In some circumstances, this may result in a bad
user experience. It may also cause problems for a security team
evaluating the condition of an image in "deactivated" status.
* **Adding** locations is disallowed on the following image
statuses - "saving", "deactivated", "deleted", "pending_delete",
"killed".
* Note that there are race conditions associated with adding a
location to an image in the "active", "queued", "saving", or
"deactivated" status. Because these are non-terminal image
statuses, it is possible that when a user attempts to add a
location, a status transition could occur that might block the
**add** (or might appear to allow an add that should not be
allowed).
* For example, a user is not allowed to add a location to an image
in "saving" status. Suppose a user decides to add a location
anyway. It is possible that before the user's request is
processed, the transmission of data being saved is completed and
the image transitioned into "active" status, in which case the
user's add location request will succeed. To the user, however,
this success will appear anomalous because in most cases, an
attempt to add a location to an image in "saving" status will
fail.
* We mention this so that you can be aware of this situation in
your own testing.
Security Issues
***************
* All "qemu-img info" calls are now run under resource limitations
that limit the CPU time and address space usage of the process
running the command to 2 seconds and 1 GB respectively. This
addresses the bug https://bugs.launchpad.net/glance/+bug/1449062
Current usage of "qemu-img" is limited to Glance tasks, which by
default (since the Mitaka release) are only available to admin
users. We continue to recommend that tasks only be exposed to
trusted users
* The initial implementation of the image signature verification
feature in Glance was insecure, because it relied on an MD5 hash of
the image data. More details can be found in bug 1516031. This
"sign-the-hash" approach was deprecated in Mitaka, and has been
removed in Newton. Related CVE-2015-8234.
Bug Fixes
*********
* Here is a list of other important bugs that have been fixed (or
partially fixed) along with their descriptions.
* bug 1617258: Image signature base64 needs to wrap lines
* bug 1612341: Add cpu thread pinning flavor metadef
* bug 1609571: version negotiation api middleware was NOT up to
date to include v2.3
* bug 1602081: Glance needs to use oslo.context's policy dict
* bug 1599169: glance-replicator size raises object of type
'NoneType' has no len() exception when no args provided
* bug 1599192: glance-replicator needs to display human-readable
size
* bug 1585917: member-create will raise 500 error if member-id is
greater than 255 characters
* bug 1598985: glance-replicator compare output should show image
name in addition to image id for missing images
* bug 1533949: Glance tasks missing configuration item
"conversion_format"
* bug 1593177: The default policy needs to be admin for safer
default deployment scenarios
* bug 1584076: Swift ACLs disappears on v1 Glance images
* bug 1591004: Unable to download image with no checksum when
cache is enabled
* bug 1584415: Listing images with the created_at and updated_at
filters fails if an operator is not specified
* bug 1590608: Services should use http_proxy_to_wsgi middleware
from oslo.middleware library
* bug 1584350: etc/glance-registry.conf sample file has redundant
store section
* bug 1543937: db-purge fails for very large number
* bug 1580848: There's no exception when import task is created
without properties
* bug 1585584: Glare v0.1 is unable to create public artifact
draft
* bug 1582304: Allow tests to run when http proxy is set
* bug 1570789: Metadefs API returns 500 error when 4 byte unicode
character is passed
* bug 1532243: glance fails silently if a task flow can not be
loaded
* bug 1568894: glance_store options missing in glance-
scrubber.conf and glance-cache.conf sample files
* bug 1568723: secure_proxy_ssl_header not in sample configuration
files
* bug 1535231: md-meta with case insensitive string has problem
during creating
* bug 1555275: Tags set changes on delete
* bug 1558683: Versions endpoint does not support X-Forwarded-
Proto
* bug 1557495: Possible race conditions during status change
Other Notes
***********
* The glance configuration options have been improved with detailed
help texts, defaults for sample configuration files, explicit
choices of values for operators to choose from, and a strict range
defined with "min" and "max" boundaries.
* It must be noted that the configuration options that take
integer values now have a strict range defined with "min" and/or
"max" boundaries where appropriate.
* This renders the configuration options incapable of taking
certain values that may have been accepted before but were
actually invalid.
* For example, configuration options specifying counts, where a
negative value was undefined, would have still accepted the
supplied negative value. Such options will no longer accept
negative values.
* Options where a negative value was previously defined (for
example, -1 to mean unlimited) will remain unaffected by this
change.
* Values which do not comply with the new restrictions will
prevent the service from starting. The logs will contain a message
indicating the problematic configuration option and the reason why
the supplied value has been rejected.
* The sample configuration files autogenerated using the oslo-
config- generator tool now give consistent ordering of the store
drivers configurations.
* Some operators have reported issues with reordering observed in
the sample configurations shipped with Glance release tarballs.
This reordering may result into a incorrect "diff" of the
configurations used downstream vs. newly introduced upstream.
* Latest release of "glance_store" library (used in the **Newton**
release of Glance) will include fix for the "glance_store" bug
1619487.
* Until now every run of the oslo-config-generator resulted in
random ordering of the store drivers configuration. After
**Newton** release this order will remain consistent.
* The store drivers configuration order in the sample or
autogenerated files should be expected to be alphabetical as -
"cinder", "filesystem", "http", "rbd", "sheepdog", "swift",
"vmware".
* Note the code name for the "ceph" driver is "rbd".
* Note the ordering of the options within a store is not
alphabetical.
* Expired tasks are now deleted in Glance. As with other Glance
resources, this is a "soft" deletion, that is, a deleted task is
marked as "deleted" in the database so that the task will not appear
in API responses, but the information associated with the task
persists in the database.
* Glance and Nova contain nearly identical digital signature
modules. In order to better maintain and evolve this code and to
eliminate the possibility that the modules diverge, we have replaced
the digital signature module in Glance with the new "cursive"
library.
* The "cursive" library is an OpenStack project which implements
OpenStack-specific verification of digital signatures.
* In Newton, the majority of the signature verification code was
removed from Glance. "cursive" has been added to Glance as a
dependency and will be installed by default.
* Glance uses the "cursive" library's functionality to verify
digital signatures. To familiarize yourself with this new
dependency and see the list of transitive dependencies visit
http://git.openstack.org/cgit/openstack/cursive
Changes in glance 12.0.0.0rc1..13.0.0
-------------------------------------
c7578a8 Correct releasenote for Ib900bbc05cb9ccd90c6f56ccb4bf2006e30cdc80
122a144 Fixing inconsistency in Glance store names.
6cba6b1 Adding constraints around qemu-img calls
e32be7e Imported Translations from Zanata
912d1fb Update UPPER_CONSTRAINTS_FILE for stable/newton
793ce3b Update .gitreview for stable/newton
cc869ec Complete and update Newton release notes
5c198ce Updated from global requirements
e8e0abd Fix cursive named arguments
72affb4 Fix nits from commit that introduces cursive
a2b329c Bump up Glance API minor version to 2.4
25b492c Fix a small markup typo
80006b4 Keep consistent order for regenerated configs
11cfe49 Regenerate config files for Newton
ab9811b Improving help text for common-config opts
71aca20 Improving help text for data access API option
afb18df Improving help text for Glance common-config opts
2f803d3 Remove DB downgrade
0fbeac7 Release note for glance config opts.
1f5dedd Improve help text of glance config opts
7c7dd62 Attempt to not set location on non active or queued image
6d88709 Improving help text for WSGI server conf opts.
5afb5d3 Use cursive for signature verification
8f39f7b Updated from global requirements
5085b29 Improving help text for metadefs config option
898c087 Improve the help text for registry client opts
34be9d9 Improving help text for send_identity_headers opt
743e7b0 Remove unused requirements
3ff3deb Remove "Services which consume this" section
dbfc121 Deprecate `show_multiple_locations` option
5663196 Image signature base64 don't wrap lines
63e6dbb Deprecate the Images (Glance) v1 API
5662371 Improving help text of v1/v2 API & Registry opts
c8e4e80 Improve help text of scrubber daemon option
45ab304 Improving help text for RPC opt
3d68577 Improving help text for image conversion_format
b887fa4 Updated from global requirements
7acf08d Updated from global requirements
ae7e9fc TrivialFix: Remove cfg import unused
91f37fd Improving help text for store_type_preference opt.
7c73e64 Improving help text for Notifier opts
e291143 Removing deprecated variable aliases from oslo_messaging
9522d77 Improve help text of scrubber opts
d01fabe Correct link to image properties
cbb4b90 Improve help text of quota opts
b158de3 Improve help text of registry server opts
89e4edc Get ready for os-api-ref sphinx theme change
ec51162 Add registry_client_opts to glance-cache.conf.sample
aba79f0 Updated from global requirements
411418b Add CPU thread pinning to metadata defs
5caf1c7 Stop stack tracing on 404s
dffbb61 Don't use config option sqlite_db
2590b47 Index to generate doc page for refreshing-configs
7df813b Add guideline to refresh config files shipped with source
269f258 Add example for diff between assert true and equal
d0f4316 Updated from global requirements
66335ba Remove references of s3 store driver
8c3560b Add test class to versions tests
e736517 change the example URLs in dev-docs for Glance
b59a6bd Updated from global requirements
ceddda8 Updated from global requirements
b7460f1 Updated from global requirements
5829139 Fix use of etc. in metadefs docs.
60a490d Improving help text for location_strategy opt.
53379a7 Use more specific asserts in unit tests
215ec1e Add a requirements guidelines to docs
7da4675 api-ref: correct versions response example
f2930b9 Updated from global requirements
0d1daf4 Version negotiation api middleware to include v2.3
36f3755 Add release notes for newton-1
1ad6cb6 Remove deprecated test utility
5baa5e6 Some migrations tests incorrectly ref S3 for Swift
1d949ab Remove extraneous ws in architecture docs
b5f31ee Refresh some config files based on bug fixes
4016d11 Generate and include sample config as part of docs
45003b0 Wrap text in sample configuration files at 80
71d09f0 Improving help text for proprty utils opts.
d0153c6 Updated from global requirements
d66d0c3 Improving help text for swift_store_utils opts
a83653e cache_manage: fix a print bug in exit main
de98965 replicator: dump: Display more info
08a320b replicator: livecopy: Display more info
dc541c2 Updated from global requirements
db04a37 Add ova to container format doc to rally plugin
fc0b47b Add 'vhdx' disk format.
21c7981 Add 'ova' as a container_format in dev-docs
ea010a2 Update sqlalchemy-migrate url
276b40b Improving help text for taskflow executor opts.
f9adca0 Minor tweak to release note documentation
b2e3ed9 Replace OpenStack LLC with OpenStack Foundation
8161bde api-ref: Replace image-update response example
5745827 api-ref: Refresh images schemas
e81229b Correcting description of image_update API method.
5fc0537 Making Forbidden Exception action oriented
99dd153 Updated from global requirements
80a9f57 Make docs copyright consistent
c8ecd93 Add LOG.warning to Disallowed minor changes
c028c2d WADL to RST migration (part 2 - images)
46a7146 Updated from global requirements
280a027 Improving help text for context middleware opts
e0c03c6 Add __ne__ built-in function
14ccf59 Replace "LOG.warn(_" with "LOG.(_LW"
da230ab Updated from global requirements
06af212 Cleanup i18n marker functions to match Oslo usage
ca501cb Use oslo.context features
2b4e921 glance-replicator: size: Handle no args better
368f7db WADL to RST migration (part 2 - metadefs)
f9613c7 Remove unused LOG to keep code clean
7aa6458 Nitpick spell change
690249b Correct reraising of exception
3a15da1 Perform a cleanup of configuring.rst
d04d312 Fix duplicated osprofile config for registry
76fa534 replicator: size: Display human-readable size
9eed745 Return 400 when name is more than 255 characters
9c03d6b glance-replicator: compare: Show image name in msg
aff592d Use MultiStrOpt instead of ListOpt for args
07d0f02 Updated from global requirements
d573b6f Improving help text for public_endpoint
e78ff4a Add image signature verification metadefs
7533f1c Add signed images documentation
6db15ef Glance tasks lost configuration item conversion_format
d330e5a Update to Glance Contributor's docs
011235f WADL to RST migration (part 2 - tasks)
ed08411 Updated from global requirements
71c33b3 Updated from global requirements
ee1b6dc WADL to RST migration (part 1)
4f61f95 Add documentation about generating release notes
969309f Change default policy to admin
d719b3a Fix bug Swift ACL which disappears on Glance v1 images
bf53c1b Do not set header if checksum doesn't exist
1a86665 Updated from global requirements
bb89dd9 Fixes the use of dates when listing images
c8659f9 Use olso_log and delay string interpolation while logging
b54d3d1 Add in missing log hints
b0d0b1d Use http-proxy-to-wsgi middleware from oslo.middleware
551018a Updated from global requirements
8932a71 Imported Translations from Zanata
38563b0 Add a soft delete functionality for tasks.
1b09730 Update man pages to current version and dates
85375d4 Incorrect title for Outbound Peak
d6a8df5 Updated from global requirements
a0bddc9 Remove redundant store config from registry sample
f510bb2 Remove TODOs from deprecated "sign-the-hash"
13a17a8 Updated from global requirements
e067242 Fix import of profiler options
9338e5c Add check to limit maximum value of max_rows
6c7dea2 Updated from global requirements
bf6a928 Updated from global requirements
ecf8aea Remove verbose option from glance tests
bcf3722 Raise exception when import without properties
9a98274 Excluded the 'visibility' from protected artifact fields
790b015 Use OSprofiler options consolidated in lib itself
4ad190b Remove unnecessary executable permissions
2912031 Updated from global requirements
208c96a Normalize the options use singele quotes
e137c39 Updated from global requirements
adf0d59 Updated from global requirements
6f71b25 Allow tests to run when http proxy is set
a9c2e11 Correct some misspelt words in glance
f5c1087 Clarify language used in glanceapi future section
96cece9 Images APIs: The Future
0f8c0c3 Remove old `run_tests` script
13ea7f7 Updated from global requirements
bc0c03f Remove unnecessary executable privilge of unit test file
b2b95f5 Updated from global requirements
5aa52f1 Functional test comparing wrong items
90126a5 Contribution doc change for spec-lite
9c9a40f Updated from global requirements
a37cc47 Improve help text of image cache opts
5ab6310 Remove deprecated "sign-the-hash" approach
c5304cb Imported Translations from Zanata
3c194e6 Updated from global requirements
6e10f1b Return BadRequest for 4 byte unicode characters
38158e5 Log when task is not configured properly
50b0252 Corrected section underline
1109f82 Give helpful error in tests if strace is missing
1bea843 Adding detailed alt text to images for accessibility
67d7f55 Changed the spelling of opsrofiler to osprofiler.
af0a9bf Fix doc build if git is absent
143df03 Increase max wait time, avoid racy failure in gate
bded216 Updated from global requirements
36936f8 Add store opts to scrubber and cache sample conf
c41729e Add wsgi options to the sample options
62f66e1 Removed one extra enter key
f248c0e use os-testr instead of testr
37cf9d5 Updated from global requirements
385ffab Modified message of exception and log
09a4482 Given space in between two words.
a31b963 Use messaging notifications transport instead of default
b39a9c0 Updated from global requirements
54153d7 Update the Administrator guide links with new ones
f79666f Imported Translations from Zanata
6163fe1 Use roles attribute from oslo context
8de4491 Updated from global requirements
ff67543 Fix doc-strings warnings and errors
8d73de6 Add 'Documentation' section to 'Contributing' docs
02ef2ab Imported Translations from Zanata
b9de463 Fix typos in Glance files
768f168 Imported Translations from Zanata
3710436 Fix db purge type validation
1cb2bda Imported Translations from Zanata
def8cfd Copy the size of the tag set
ab05625 Imported Translations from Zanata
513d717 Handle SSL termination proxies for version list
d4aaa1b Imported Translations from Zanata
869e551 Imported Translations from Zanata
35f134e Imported Translations from Zanata
2222f1b Fixed typos in two comments
94d616f Update reno for stable/mitaka
040d5fa Update .gitreview for stable/mitaka
8708273 Fix possible race conditions during status change
adfc7e5 fix docstring warnings and errors
b9e7106 Fix link to <configuring> document
21f36f7 Update the configuration doc
Diffstat (except docs and test files)
-------------------------------------
.gitreview | 1 +
CONTRIBUTING.rst | 7 +-
HACKING.rst | 4 +-
api-ref/source/conf.py | 249 ++
api-ref/source/index.rst | 27 +
api-ref/source/v1/images-images-v1.inc | 344 ++
api-ref/source/v1/images-sharing-v1.inc | 150 +
api-ref/source/v1/index.rst | 26 +
api-ref/source/v1/parameters.yaml | 249 ++
.../v1/samples/image-member-add-request.json | 4 +
.../v1/samples/image-members-add-request.json | 12 +
.../samples/image-memberships-list-response.json | 11 +
.../source/v1/samples/image-update-response.json | 25 +
.../v1/samples/images-create-reserve-response.json | 22 +
.../samples/images-create-with-data-response.json | 22 +
.../v1/samples/images-list-details-response.json | 30 +
.../source/v1/samples/images-list-response.json | 15 +
.../v1/samples/shared-images-list-response.json | 15 +
api-ref/source/v2/images-data.inc | 132 +
api-ref/source/v2/images-images-v2.inc | 645 +++
api-ref/source/v2/images-parameters.yaml | 587 +++
api-ref/source/v2/images-schemas.inc | 138 +
api-ref/source/v2/images-sharing-v2.inc | 360 ++
api-ref/source/v2/images-tags.inc | 52 +
api-ref/source/v2/index.rst | 31 +
api-ref/source/v2/metadefs-index.rst | 64 +
api-ref/source/v2/metadefs-namespaces-objects.inc | 280 ++
.../source/v2/metadefs-namespaces-properties.inc | 306 ++
api-ref/source/v2/metadefs-namespaces-tags.inc | 300 ++
api-ref/source/v2/metadefs-namespaces.inc | 337 ++
api-ref/source/v2/metadefs-parameters.yaml | 527 +++
api-ref/source/v2/metadefs-resourcetypes.inc | 169 +
api-ref/source/v2/metadefs-schemas.inc | 326 ++
.../source/v2/samples/image-create-request.json | 6 +
.../source/v2/samples/image-create-response.json | 22 +
.../samples/image-details-deactivate-response.json | 21 +
.../v2/samples/image-member-create-request.json | 3 +
.../v2/samples/image-member-create-response.json | 8 +
.../v2/samples/image-member-details-response.json | 8 +
.../v2/samples/image-member-update-request.json | 3 +
.../v2/samples/image-member-update-response.json | 8 +
.../v2/samples/image-members-list-response.json | 21 +
api-ref/source/v2/samples/image-show-response.json | 21 +
.../source/v2/samples/image-update-request.json | 15 +
.../source/v2/samples/image-update-response.json | 24 +
.../source/v2/samples/images-list-response.json | 48 +
.../metadef-namespace-create-request-simple.json | 7 +
.../samples/metadef-namespace-create-request.json | 39 +
.../metadef-namespace-create-response-simple.json | 12 +
.../samples/metadef-namespace-create-response.json | 41 +
.../metadef-namespace-details-response.json | 40 +
...metadef-namespace-details-with-rt-response.json | 40 +
.../samples/metadef-namespace-update-request.json | 7 +
.../samples/metadef-namespace-update-response.json | 12 +
.../samples/metadef-namespaces-list-response.json | 96 +
.../v2/samples/metadef-object-create-request.json | 24 +
.../v2/samples/metadef-object-create-response.json | 28 +
.../samples/metadef-object-details-response.json | 28 +
.../v2/samples/metadef-object-update-request.json | 12 +
.../v2/samples/metadef-object-update-response.json | 16 +
.../v2/samples/metadef-objects-list-response.json | 112 +
.../samples/metadef-properties-list-response.json | 86 +
.../samples/metadef-property-create-request.json | 15 +
.../samples/metadef-property-create-response.json | 15 +
.../samples/metadef-property-details-response.json | 15 +
.../samples/metadef-property-update-request.json | 15 +
.../samples/metadef-property-update-response.json | 15 +
...etadef-resource-type-assoc-create-response.json | 7 +
.../metadef-resource-type-create-request.json | 5 +
.../metadef-resource-types-list-response.json | 29 +
.../v2/samples/metadef-tag-create-response.json | 5 +
.../v2/samples/metadef-tag-details-response.json | 5 +
.../v2/samples/metadef-tag-update-request.json | 3 +
.../v2/samples/metadef-tag-update-response.json | 5 +
.../v2/samples/metadef-tags-create-request.json | 13 +
.../v2/samples/metadef-tags-create-response.json | 13 +
.../v2/samples/metadef-tags-list-response.json | 13 +
.../schemas-image-member-show-response.json | 35 +
.../schemas-image-members-list-response.json | 52 +
.../v2/samples/schemas-image-show-response.json | 234 ++
.../v2/samples/schemas-images-list-response.json | 265 ++
.../schemas-metadef-namespace-show-response.json | 234 ++
.../schemas-metadef-namespaces-list-response.json | 265 ++
.../schemas-metadef-object-show-response.json | 164 +
.../schemas-metadef-objects-list-response.json | 195 +
.../schemas-metadef-properties-list-response.json | 152 +
.../schemas-metadef-property-show-response.json | 122 +
...ef-resource-type-association-show-response.json | 36 +
...f-resource-type-associations-list-response.json | 67 +
.../samples/schemas-metadef-tag-show-response.json | 25 +
.../schemas-metadef-tags-list-response.json | 56 +
.../v2/samples/schemas-task-show-response.json | 72 +
.../v2/samples/schemas-tasks-list-response.json | 71 +
api-ref/source/v2/samples/task-create-request.json | 11 +
.../source/v2/samples/task-create-response.json | 20 +
.../v2/samples/task-show-failure-response.json | 21 +
.../v2/samples/task-show-processing-response.json | 20 +
.../v2/samples/task-show-success-response.json | 23 +
api-ref/source/v2/samples/tasks-list-response.json | 26 +
api-ref/source/v2/tasks-parameters.yaml | 195 +
api-ref/source/v2/tasks-schemas.inc | 72 +
api-ref/source/v2/tasks.inc | 198 +
api-ref/source/versions/index.rst | 22 +
.../versions/samples/image-versions-response.json | 64 +
api-ref/source/versions/versions.inc | 56 +
etc/glance-api-paste.ini | 19 +-
etc/glance-api.conf | 4231 ++++++++++++++++----
etc/glance-cache.conf | 2297 ++++++++++-
etc/glance-glare.conf | 2390 ++++++++---
etc/glance-manage.conf | 150 +-
etc/glance-registry.conf | 2137 ++++++----
etc/glance-scrubber.conf | 2434 +++++++++--
etc/metadefs/compute-cpu-pinning.json | 14 +-
etc/metadefs/compute-quota.json | 4 +-
etc/metadefs/compute-vmware-flavor.json | 2 +-
etc/metadefs/compute-vmware-quota-flavor.json | 2 +-
etc/metadefs/compute-watchdog.json | 2 +-
etc/metadefs/image-signature-verification.json | 50 +
etc/oslo-config-generator/glance-api.conf | 2 +
etc/oslo-config-generator/glance-cache.conf | 2 +
etc/oslo-config-generator/glance-glare.conf | 1 +
etc/oslo-config-generator/glance-manage.conf | 1 +
etc/oslo-config-generator/glance-registry.conf | 2 +-
etc/oslo-config-generator/glance-scrubber.conf | 2 +
etc/policy.json | 2 +-
glance/api/glare/versions.py | 31 +-
glance/api/middleware/cache.py | 5 +-
glance/api/middleware/context.py | 111 +-
glance/api/middleware/version_negotiation.py | 2 +
glance/api/policy.py | 17 +-
glance/api/v1/images.py | 67 +-
glance/api/v1/members.py | 31 +-
glance/api/v2/image_actions.py | 10 +-
glance/api/v2/image_data.py | 11 +-
glance/api/v2/image_members.py | 22 +-
glance/api/v2/images.py | 17 +-
glance/api/v2/metadef_namespaces.py | 12 +-
glance/api/v2/metadef_objects.py | 14 +-
glance/api/v2/metadef_properties.py | 8 +
glance/api/v2/metadef_tags.py | 19 +-
glance/api/v3/router.py | 2 -
glance/api/versions.py | 52 +-
glance/async/flows/base_import.py | 31 +-
glance/async/flows/convert.py | 65 +-
glance/async/flows/introspect.py | 11 +-
glance/async/flows/ovf_process.py | 29 +-
glance/async/taskflow_executor.py | 45 +-
glance/async/utils.py | 10 +
glance/cmd/api.py | 0
glance/cmd/cache_manage.py | 2 +-
glance/cmd/cache_prefetcher.py | 0
glance/cmd/glare.py | 0
glance/cmd/manage.py | 45 +-
glance/cmd/registry.py | 0
glance/cmd/replicator.py | 54 +-
glance/cmd/scrubber.py | 0
glance/common/auth.py | 4 -
glance/common/client.py | 2 +-
glance/common/config.py | 691 +++-
glance/common/exception.py | 16 +-
glance/common/location_strategy/__init__.py | 31 +-
glance/common/location_strategy/store_type.py | 67 +-
glance/common/property_utils.py | 65 +-
glance/common/rpc.py | 52 +-
glance/common/semver_db.py | 6 +-
glance/common/signature_utils.py | 512 ---
glance/common/store_utils.py | 2 +-
glance/common/swift_store_utils.py | 57 +-
glance/common/utils.py | 56 +-
glance/common/wsgi.py | 307 +-
glance/context.py | 10 +-
glance/contrib/plugins/image_artifact/v1/image.py | 5 +-
glance/db/simple/api.py | 25 +-
glance/db/sqlalchemy/api.py | 64 +-
glance/db/sqlalchemy/metadata.py | 25 +-
glance/db/sqlalchemy/metadef_api/namespace.py | 4 +-
glance/db/sqlalchemy/metadef_api/resource_type.py | 2 +-
glance/db/sqlalchemy/metadef_api/tag.py | 4 +-
glance/db/sqlalchemy/migrate_repo/README | 2 +-
glance/db/sqlalchemy/migrate_repo/schema.py | 2 +-
.../migrate_repo/versions/001_add_images_table.py | 9 +-
.../versions/002_add_image_properties_table.py | 9 +-
.../migrate_repo/versions/003_add_disk_format.py | 44 -
.../migrate_repo/versions/003_sqlite_downgrade.sql | 54 -
.../migrate_repo/versions/004_add_checksum.py | 10 -
.../migrate_repo/versions/005_size_big_integer.py | 30 -
.../migrate_repo/versions/006_key_to_name.py | 69 +-
.../migrate_repo/versions/006_mysql_downgrade.sql | 11 -
.../migrate_repo/versions/006_sqlite_downgrade.sql | 43 -
.../migrate_repo/versions/007_add_owner.py | 23 +-
.../versions/008_add_image_members_table.py | 21 +-
.../versions/009_add_mindisk_and_minram.py | 24 +-
.../migrate_repo/versions/010_default_update_at.py | 37 -
.../011_make_mindisk_and_minram_notnull.py | 7 -
.../migrate_repo/versions/011_sqlite_downgrade.sql | 58 -
.../migrate_repo/versions/012_id_to_uuid.py | 230 --
.../migrate_repo/versions/013_add_protected.py | 7 -
.../migrate_repo/versions/013_sqlite_downgrade.sql | 62 -
.../versions/014_add_image_tags_table.py | 7 -
.../versions/015_quote_swift_credentials.py | 4 -
.../versions/016_add_status_image_member.py | 7 -
.../migrate_repo/versions/016_sqlite_downgrade.sql | 43 -
.../017_quote_encrypted_swift_credentials.py | 6 -
.../versions/018_add_image_locations_table.py | 7 -
.../versions/019_migrate_image_locations.py | 14 -
.../versions/020_drop_images_table_location.py | 9 -
.../versions/021_set_engine_mysql_innodb.py | 4 -
.../versions/022_image_member_index.py | 35 -
.../migrate_repo/versions/023_placeholder.py | 4 -
.../migrate_repo/versions/024_placeholder.py | 4 -
.../migrate_repo/versions/025_placeholder.py | 4 -
.../026_add_location_storage_information.py | 11 -
.../migrate_repo/versions/027_checksum_index.py | 10 -
.../migrate_repo/versions/028_owner_index.py | 10 -
.../029_location_meta_data_pickle_to_string.py | 29 +-
.../migrate_repo/versions/030_add_tasks_table.py | 9 +-
.../versions/031_remove_duplicated_locations.py | 6 -
.../versions/032_add_task_info_table.py | 29 +-
.../versions/033_add_location_status.py | 11 -
.../migrate_repo/versions/034_add_virtual_size.py | 8 -
.../versions/035_add_metadef_tables.py | 14 +-
.../versions/036_rename_metadef_schema_columns.py | 9 -
.../versions/037_add_changes_to_satisfy_models.py | 43 +-
.../migrate_repo/versions/037_sqlite_downgrade.sql | 147 -
.../versions/038_add_metadef_tags_table.py | 9 +-
.../039_add_changes_to_satisfy_models_metadef.py | 172 +-
...nges_to_reinstall_unique_metadef_constraints.py | 162 -
.../versions/044_update_metadef_os_nova_server.py | 5 -
glance/domain/__init__.py | 3 +
glance/glare/domain/__init__.py | 8 +-
glance/glare/location.py | 6 +-
glance/image_cache/__init__.py | 124 +-
glance/image_cache/drivers/sqlite.py | 19 +-
glance/locale/de/LC_MESSAGES/glance.po | 1042 +----
glance/locale/en_GB/LC_MESSAGES/glance-log-info.po | 16 +-
glance/locale/es/LC_MESSAGES/glance-log-error.po | 12 +-
glance/locale/es/LC_MESSAGES/glance-log-info.po | 16 +-
glance/locale/es/LC_MESSAGES/glance-log-warning.po | 12 +-
glance/locale/es/LC_MESSAGES/glance.po | 738 +---
glance/locale/fr/LC_MESSAGES/glance.po | 687 +---
glance/locale/glance-log-error.pot | 408 --
glance/locale/glance-log-info.pot | 381 --
glance/locale/glance-log-warning.pot | 303 --
glance/locale/glance.pot | 3553 ----------------
glance/locale/it/LC_MESSAGES/glance.po | 776 +---
glance/locale/ja/LC_MESSAGES/glance.po | 862 ++--
.../locale/ko_KR/LC_MESSAGES/glance-log-error.po | 355 ++
glance/locale/ko_KR/LC_MESSAGES/glance-log-info.po | 306 ++
.../locale/ko_KR/LC_MESSAGES/glance-log-warning.po | 269 ++
glance/locale/ko_KR/LC_MESSAGES/glance.po | 684 +---
glance/locale/pt_BR/LC_MESSAGES/glance-log-info.po | 16 +-
.../locale/pt_BR/LC_MESSAGES/glance-log-warning.po | 12 +-
glance/locale/pt_BR/LC_MESSAGES/glance.po | 741 +---
glance/locale/ru/LC_MESSAGES/glance.po | 654 +--
.../locale/tr_TR/LC_MESSAGES/glance-log-error.po | 12 +-
glance/locale/tr_TR/LC_MESSAGES/glance-log-info.po | 16 +-
.../locale/tr_TR/LC_MESSAGES/glance-log-warning.po | 12 +-
glance/locale/tr_TR/LC_MESSAGES/glance.po | 492 +--
glance/locale/zh_CN/LC_MESSAGES/glance.po | 620 +--
glance/locale/zh_TW/LC_MESSAGES/glance.po | 570 +--
glance/location.py | 55 +-
glance/notifier.py | 66 +-
glance/opts.py | 17 +-
glance/quota/__init__.py | 6 +
glance/registry/__init__.py | 22 +-
glance/registry/api/v1/images.py | 65 +-
glance/registry/api/v1/members.py | 12 +-
glance/registry/client/__init__.py | 161 +-
glance/registry/client/v1/api.py | 43 +-
glance/registry/client/v1/client.py | 8 +
glance/scrubber.py | 203 +-
.../functional/test_bin_glance_cache_manage.py | 1 -
.../integration/legacy_functional/test_v1_api.py | 2 +-
.../unit/common/scripts/test_scripts_utils.py | 4 -
rally-jobs/plugins/plugin_sample.py | 4 +-
...u-thread-pinning-metadata-09b1866b875c4647.yaml | 4 +
...processlimits-to-qemu-img-c215f5d90f741d8a.yaml | 12 +
.../notes/add-vhdx-format-2be99354ad320cca.yaml | 11 +
.../notes/bug-1593177-8ef35458d29ec93c.yaml | 6 +
.../notes/bump-api-2-4-efa266aef0928e04.yaml | 13 +
.../consistent-store-names-57374b9505d530d0.yaml | 32 +
...te-show-multiple-location-9890a1e961def2f6.yaml | 32 +
.../notes/deprecate-v1-api-6c7dbefb90fd8772.yaml | 19 +
.../improved-config-options-221c58a8c37602ba.yaml | 30 +
...ocation-add-status-checks-b70db66100bc96b7.yaml | 38 +
.../notes/newton-1-release-065334d464f78fc5.yaml | 20 +
.../notes/newton-bugs-06ed3727b973c271.yaml | 61 +
.../remove-db-downgrade-0d1cc45b97605775.yaml | 11 +
.../notes/remove-s3-driver-639c60b71761eb6f.yaml | 12 +
...-store-config-opts-newton-3a6575b5908c0e0f.yaml | 31 +
.../notes/soft_delete-tasks-43ea983695faa565.yaml | 10 +
.../notes/use-cursive-c6b15d94845232da.yaml | 22 +
releasenotes/source/index.rst | 3 +-
releasenotes/source/mitaka.rst | 6 +
requirements.txt | 41 +-
test-requirements.txt | 19 +-
tools/colorizer.py | 330 --
tools/install_venv.py | 73 -
tools/install_venv_common.py | 172 -
tools/migrate_image_owners.py | 115 -
tools/with_venv.sh | 7 -
tox.ini | 20 +-
387 files changed, 27404 insertions(+), 19173 deletions(-)
Requirements updates
--------------------
diff --git a/requirements.txt b/requirements.txt
index c30953f..fb6b1a2 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -11,2 +11,2 @@ PasteDeploy>=1.5.0 # MIT
-Routes!=2.0,!=2.1,>=1.12.3;python_version=='2.7' # MIT
-Routes!=2.0,>=1.12.3;python_version!='2.7' # MIT
+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
@@ -17,7 +17,7 @@ pycrypto>=2.6 # Public Domain
-oslo.config>=3.7.0 # Apache-2.0
-oslo.concurrency>=3.5.0 # Apache-2.0
-oslo.context>=0.2.0 # Apache-2.0
-oslo.service>=1.0.0 # Apache-2.0
-oslo.utils>=3.5.0 # Apache-2.0
-stevedore>=1.5.0 # Apache-2.0
-futurist>=0.11.0 # Apache-2.0
+oslo.config>=3.14.0 # Apache-2.0
+oslo.concurrency>=3.8.0 # Apache-2.0
+oslo.context>=2.9.0 # Apache-2.0
+oslo.service>=1.10.0 # Apache-2.0
+oslo.utils>=3.16.0 # Apache-2.0
+stevedore>=1.16.0 # Apache-2.0
+futurist!=0.15.0,>=0.11.0 # Apache-2.0
@@ -25,2 +25,2 @@ taskflow>=1.26.0 # Apache-2.0
-keystoneauth1>=2.1.0 # Apache-2.0
-keystonemiddleware!=4.1.0,>=4.0.0 # Apache-2.0
+keystoneauth1>=2.10.0 # Apache-2.0
+keystonemiddleware!=4.1.0,!=4.5.0,>=4.0.0 # Apache-2.0
@@ -34 +34 @@ jsonschema!=2.5.0,<3.0.0,>=2.0.0 # MIT
-python-keystoneclient!=1.8.0,!=2.1.0,>=1.6.0 # Apache-2.0
+python-keystoneclient!=2.1.0,>=2.0.0 # Apache-2.0
@@ -39 +39 @@ six>=1.9.0 # MIT
-oslo.db>=4.1.0 # Apache-2.0
+oslo.db!=4.13.1,!=4.13.2,>=4.10.0 # Apache-2.0
@@ -42 +42 @@ oslo.log>=1.14.0 # Apache-2.0
-oslo.messaging>=4.0.0 # Apache-2.0
+oslo.messaging>=5.2.0 # Apache-2.0
@@ -44,2 +44 @@ oslo.middleware>=3.0.0 # Apache-2.0
-oslo.policy>=0.5.0 # Apache-2.0
-oslo.serialization>=1.10.0 # Apache-2.0
+oslo.policy>=1.9.0 # Apache-2.0
@@ -48 +47 @@ retrying!=1.3.0,>=1.2.3 # Apache-2.0
-osprofiler>=1.1.0 # Apache-2.0
+osprofiler>=1.4.0 # Apache-2.0
@@ -51 +50 @@ osprofiler>=1.1.0 # Apache-2.0
-glance-store>=0.13.0 # Apache-2.0
+glance-store>=0.18.0 # Apache-2.0
@@ -57,2 +55,0 @@ semantic-version>=2.3.1 # BSD
-castellan>=0.3.1 # Apache-2.0
-cryptography>=1.0 # BSD/Apache-2.0
@@ -59,0 +57,2 @@ debtcollector>=1.2.0 # Apache-2.0
+cryptography!=1.3.0,>=1.0 # BSD/Apache-2.0
+cursive>=0.1.1 # Apache-2.0
@@ -62 +61 @@ debtcollector>=1.2.0 # Apache-2.0
-iso8601>=0.1.9 # MIT
+iso8601>=0.1.11 # MIT
diff --git a/test-requirements.txt b/test-requirements.txt
index a8ba7ad..15deb57 100644
--- a/test-requirements.txt
+++ b/test-requirements.txt
@@ -9 +9 @@ hacking<0.11,>=0.10.0
-Babel>=1.3 # BSD
+Babel>=2.3.4 # BSD
@@ -12 +12 @@ Babel>=1.3 # BSD
-bandit>=0.17.3 # Apache-2.0
+bandit>=1.1.0 # Apache-2.0
@@ -14 +14 @@ coverage>=3.6 # Apache-2.0
-fixtures>=1.3.1 # Apache-2.0/BSD
+fixtures>=3.0.0 # Apache-2.0/BSD
@@ -16,3 +16,3 @@ mox3>=0.7.0 # Apache-2.0
-mock>=1.2 # BSD
-sphinx!=1.2.0,!=1.3b1,<1.3,>=1.1.2 # BSD
-requests!=2.9.0,>=2.8.1 # Apache-2.0
+mock>=2.0 # BSD
+sphinx!=1.3b1,<1.3,>=1.2.1 # BSD
+requests>=2.10.0 # Apache-2.0
@@ -24,0 +25,2 @@ oslotest>=1.10.0 # Apache-2.0
+os-testr>=0.7.0 # Apache-2.0
+
@@ -26 +28 @@ oslotest>=1.10.0 # Apache-2.0
-PyMySQL>=0.6.2 # MIT License
+PyMySQL!=0.7.7,>=0.6.2 # MIT License
@@ -33,0 +36 @@ python-swiftclient>=2.2.0 # Apache-2.0
+os-api-ref>=1.0.0 # Apache-2.0
@@ -35 +38 @@ oslosphinx!=3.4.0,>=2.5.0 # Apache-2.0
-reno>=0.1.1 # Apache2
+reno>=1.8.0 # Apache2
1
0