OpenStack-announce
Threads by month
- ----- 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
March 2016
- 8 participants
- 76 discussions
We are jazzed to announce the release of:
tacker 0.2.0: OpenStack servicevm/device manager
This is the first release of tacker. This release is part of the
liberty release series.
For more details, please see below.
Changes in tacker 9a3ba5b0d655d2aecfb66a1adc2095063ebf9bec..0.2.0
-----------------------------------------------------------------
7ae2388 Fixes port still in use for monitoring workflow
45fa9af Add unit test cases for monitoring framework
d4a39e9 Move oslosphinx from test to main requirements
d766d30 Remove check for service_type in openwrt mgmt driver
7651179 Cleanup tox doc8 errors and other format cleanups
91930fb Adds devref for vnfd parameterization support
09070c6 Register boot_wait option at VNFM plugin level
492eba6 Cleanup Tacker docs and introduce tox doc test
409bd85 Fix the source repositories to OpenStack
6d18059 Update .gitreview for new namespace
ce56fce Add unit tests for heat infra driver
dc5024e Preserve network interfaces order of vnfd template
5c71fda API Documentation for Monitoring Framework
dd54d64 Fix for deleting VM when VNF is deleted
e8a6296 Fixes management IP info missing for VDUs
fce1308 Add service_type to device dict
0e91cd1 HTTP ping monitor driver for Monitoring Framework
1afd26a Implement Monitoring Framework
6fb8c22 Cleanup requirements file
cc677f3 Add config-openwrt-with-firewall file to samples
f97662f Use value_specs for port_security_enabled flag
019785e Modify the datatype of 'value' column
caee775 Fixes vnf create failure even if all parameters are supplied
d6c7961 Fixes VNF state being stuck in PENDING_CREATE
16de257 Handle vnf response appropriately for MANO API
04e08a3 Sample VNFD parameterized templates and param values
c6af29a IP Address parameterization support
b707036 Add tacker create vnf test
f8bc9cc Implementation of Tacker NFV MANO API
2c4e277 Fix post gate hook to use correct path
577e464 Fixes devstack script for CentOS
5b4bab6 Support user_data property
871d52b Update tacker README
1e6206c Add tacker devstack-gate functional post test hooks
978fc62 Change ignore-errors to ignore_errors
a29878f Add tacker functional tests
fd980b6 Remove unused code and docs
ad80b4f Move NOOP Infra driver from tests folder to tacker/vm
415a51f Moves NOOP driver from tests folder to tacker/vm/mgmt_drivers
e6e9885 Fixes typo and message formatting
56cdd92 Add Tacker development process policy document
c009875 Configure tacker to run functional tests
e67a9e0 Support Tacker service in master branch
8587d0d Parameterization support added for VNFD templates
d88ab88 Remove unused tacker agent code
0b422aa Update Tacker README.rst with new project scope and pointers
8a052c0 Name and description are always copied from template
701612f Tacker support on physical host
09151e1 Add devstack hook for tacker
7b5de1e Errors during the vnf-create configuration process are not logged
8dd4988 Error during VNF create returns internal error
938ceff delete_wait() has typos that cause it not to wait
c57103f Check instance exists when attach or detach interface
c9d2408 Refactor tacker.conf
542a526 Fix delete device bug
a3be099 README.rst should contain tacker related information
9e203b9 Disable import exception for tacker.i18n
99ca429 Cleanup Tacker devref from Neutron related docs
786efb3 Change admin_state_up to True when create port
1f2cb05 configure after respawn
40746a7 copy description when respawn
96d5349 add description to vnf
7dba4d8 config service when vm is ready
df76d02 monitor: monitor with correct vnf id
9c8ccc6 get_vnfs: don't return internally used record
f32bd4b monitor:respawn heat: make device status active->dead->active
bebf828 support config update for multiple vdus
55ec101 mgmt driver for openwrt
af4cf6c vnf-update: update attributes
87b8d0f teach service type to vnfd and vnf
64a2ae4 make pending create deletable
f87c953 tacker/vm/drivers/heat/heat.py: make multiple vdu work
cc7f5ef tacker/vm/monitor.py: log format error
85273fb monitor, respawn: keep vnf id when respawning new vnf
41c6e00 infra_driver:heat: fill name and description when appropriate
076dde3 monitor: implement boot_wait
edebfa6 failure policy: make respawn workable
d6d7032 glue monitoring code and failure policy code
5301817 glue monitor policy and implement failure policy
96e082a device, vnf: attributes wasn't supported properly
0082268 support provider net for monitoring
bfea4c3 fill mgmt_url
fcea281 device, vnf: add name column
75ddd54 heat driver: teach config drive
2037aa0 vnfd: placement policy with availability zone
adf5138 heat driver: teach vnfd sample
de7fcbe Add Heath check class
052ac3e heat infra driver
ff26d55 extensions/servicevm.py: default value for service context
c393bad db: increase device attribute size
77d5ac3 tacker/db/vm/vm_db.py: type: kwargs -> attributes
cad2406 disable service api
4898161 nova driver authentication
7c26c22 mgmt_driver invocation:
20b3442 update: etc/tacker/tacker.conf
1af4216 typo: abstractmetho
0eb6636 Revert "drop service instance rest resources and drop related codes"
8c84c75 Revert "drop agent related code which isn't used at this point"
175ad56 update requirement.txt
6a63cb7 update tacker.conf for keystone
e29e918 XML_NS_V20 -> XML_NS_V10
259e128 api-paste.ini: use new keystone library
75b4574 db update:
d5d412d add proxy_db.py
59122b4 add mgmt drivers(work in progress)
04ae125 s/oslo.config/oslo_config/
ac4f4b1 fix: config file path
4f21355 fix exceptions
b73f7ed api update: device_driver -> infra_driver, mgmt_address -> mgmt_url
2bfd8d7 add attach-interface and detach-interface action to device
ac91ef1 API: add constants for key of template attributes
234a13a plugins/common/constants.py: drop unnecessary constants
5653403 drop unnecessary constants and rename quantum -> tacker
3a6367e context: add auth token to context
54f088c Enable hacking check H401
c6aa8b5 Enable hacking check H104
df73a7c Bump hacking to version 0.9.2
04fe8be Workflow documentation is now in infra-manual
9e289c5 Work toward Python 3.4 support and testing
313d8da drop agent related code which isn't used at this point
885387a drop service instance rest resources and drop related codes
d23b6ce scheduler for hosting device
cc37eea agent for rpc proxy
7b3b013 mgmt driver for rpc and rpc proxy
4de5186 device driver for nova
215d2c9 servicevm plugin
d0c4f8a tacker/tests/unit/services/vm/test_servicevm_extension.py: added
e2d3a06 data model for servicevm
f906b03 extension for servicevm api
d854044 driver_manager: library for loading drivers
e07b4c9 mgmt_driver: base class and noop driver
5c955aa device_driver: base class and noop driver
f8faccb add tacker/db/models_v1.py
bddc116 update configuration files for tacker TODO: import python-tackerclient once pypi repository
91ce488 upate files under etc for tacker
e940f1e move server command under tacker/cmd dir
b36e864 rename neutron/{extensions, plugins, services} to tacker/{extensions, plugins, services}
54d23ac rename various files of neutron/*.py to tacker/*.py
70be577 rename neutron/api to tacker/api
ea44fc8 rename neutron/common to tacker/common
e78ae22 rename neutron/locale to tacker/locale
b307e8a rename neutron/db to tacker/db
6125f5f rename neutron/tests to tacker/tests
9b8bc39 rename neutron/openstack/ to tacker
28bd56f rename neutron/agent to tacker
380dcf4 remove unnecessary neutron_plugin_base_v2.py quota.py
5d67048 remove unnecessary files under neutron/notifiers
3d51034 remove unnecessary neutron files under neutron/api/rpc
2a4b74f remove unnecessary files under neutron/db
aa337ef remove unnecessary files under neutron/scheduler
a7b1f96 remove unnecessary neutron files under neutron/extensions
d915ab5 remove unnecessary neutron files under neutron/debug
cf446f9 remove unnecessary neutron files under neutron/locale
872cab4 remove unnecessary neutron files under neutron/services/
b560735 remove unnecessary neutron files under neutron/{cmd, common}
d0fd540 remove unnecessary neutron files under neutron/agent
34b7393 remove unnecessary neutron files under neutron/plugins
ff34dae remove unnecessary neutron files under neutron/tests
a310e46 tox.ini: disable unit tests for now until its stabilization
8aff295 import neutron master of cba140daccd7c4f715263cda422d5cec27af069d
1
0
The Octavia team is happy to announce the 0.8.0 release of Octavia.
octavia 0.8.0: OpenStack Octavia Scalable Load Balancer as a Service
This release is for the mitaka release series.
With source available at:
http://git.openstack.org/cgit/openstack/octavia
With package available at:
https://pypi.python.org/pypi/octavia
Release notes:
http://docs.openstack.org/releasenotes/octavia/
Please report issues through launchpad:
http://bugs.launchpad.net/octavia
For more details, please see the 0.8.0 section below.
Octavia is the reference implementation for Load Balancing as a
Service (LBaaS) in the OpenStack Mitaka release.
Thank you to the OpenStack community for all of your support.
Michael
0.8.0
^^^^^
New Features
************
* Adds support for Layer 7 switching and shared pools features to
Octavia. This supports the equivalent feature added to Neutron LBaaS
v2.
* Layer 7 policies allow a tenant / user to define actions the
load balancer may take other than routing requests to the default
pool.
* Layer 7 rules control the logic behind whether a given Layer 7
policy is followed.
* Works for HTTP and TERMINATED_HTTPS listeners.
* Shared pools allow listeners or Layer 7 REDIRECT_TO_POOL
policies to share back-end pools.
* Glance image containing the latest Amphora image can now be
referenced using a Glance tag. To use the feature, set amp_image_tag
in [controller_worker]. Note that amp_image_id should be unset for
the new feature to take into effect.
* Active/Standby support for Octavia.
* When enabled in the configuration file, Octavia will boot an
active and standby amphora for each load balancer.
* Session persistence is maintained between the active and standby
amphora.
* Amphora failover is supported when active/standby is enabled.
Should the master or backup amphora fail, the health manager will
rebuild it.
Upgrade Notes
*************
* Upgrade requires a database migration.
* Shared-pools introduces a new "load_balancer_id" column into the
"pools" table.
* "pools.load_balancer_id" column is populated from "listeners"
data using ETL in the migration.
* Two new tables are created to handle Layer 7 switching. These
are "l7policy" and "l7rule".
* amp_image_id option is deprecated and will be removed in one of
the next releases. Operators are adviced to migrate to the new
amp_image_tag option.
* Upgrade requires a database migration.
* Adds tables for active/standby.
* Updates load balancer, listener, and amphora tables.
Changes in octavia 0.5.2..0.8.0
-------------------------------
NOTE: Skipping requirement commits...
ecfca34 Fix admin-state-up
7edd2ae Add VHD support in DIB
8e2c766 Updating unit testing
8d0b162 Add hacking check to ensure not use xrange()
f828a9b Single-Create Documentation
89335a3 Change render_unsets default to False
57cdae6 Add unit tests for L7 data model additions
52cb3b0 Fix L7Policy update regression
571d874 Fix session_persistence deletion bug
26d850c Use consistent type checking of project_id in API
37c99a5 Use rfc3986 module for URL validations
f4da51c Add CA Cert file config option to validate against SSL endpoints
a9fde42 Remove an unused configuration option
de41db2 Replace deprecated LOG.warn with LOG.warning
79f48e7 Add missing unit tests for L7 repo classes
f6b527b Add unit tests for L7Policy API
cb4df2f Add missing unit tests for L7Rule API
df5f907 Fix default_pool_id type in l7policy API
ad3423a Add maximum number of l7rules per l7policy
c3bd87a Adds release notes for Active/Standby
8161b88 Update doc to make it consistent with the actual api
d013927 Add pre_test_hook to run gate jobs
81c73bd Make SSH bind to management net only
0fac4f2 Better L7Policy API validations
5844f94 Remove swift related content in the sample local.conf
c5c5082 Use "--pub-key" instead of "--pub_key"
61a9894 Add bandit baseline to tox
62cb739 Adds the Cascade Deelete REST API doc
fb53fe2 glance: support relying on tags to extract image id
feb7a37 Add release notes for L7 and shared pools
4a1acaf Get Me A Load Balancer Controller
c7d6146 Get me a Load Balancer API
c22bacc Cascading LB delete
06f50c0 Barbican Cert Manager fails to correctly parse intermediates
ae82d21 Block deletion of pool in use by L7Policies
7ca43d2 Improved LoadBalancer Delete
428fee9 Use unique SNI identifier when building data model
f0cc350 Fix LB/Listener status updates for HM/Member
07a608f Implements: blueprint anti-affinity server group
42c12d7 Remove old SSH specific config options from sample config
71c98e7 Fix health monitor URL in API documentation
90c465e Add a request timeout to the REST API driver
fb7e835 Change HMAC compare to use constant_time_compare
4b45a10 Add listener stats API
6cd2ca5 Add L7 documentation
2fabcab Add L7 jinja template updates
fbc4a0a Add L7 controller worker flows and tasks
e4bdb86 Add L7 api - rules
efeb204 Add L7 api - policies
240560b Update repos for L7 rules / validations
da57069 Update repos for L7 policy / methods
038cd18 Add L7 database structures
1b992d1 Assign peer_port on listener creation
24ef5c9 Fix model update flows
2c50fd6 Trivial: cleanup unused conf and log variables
07b8c19 Reduce devstack build time by properly using pip caches
044535c Remove unused `paramiko`
0e0b77b Update flake8 exclude
cc32f27 Fix improper egress security rule deletion
05b3f7d Fixed make sure to get IPv4 value by awk in sample local.sh file
c1aeec1 project_id should not be UUIDType in API validation
c31781b Stop using non-existent method of Mock
92046a4 Update data model conversion to be more complete
2e23ede Fix LB status updates
d1c41e8 Improve test case test_upload_certificate_md5
042dfd4 Fix amphora failover after health monitor start
ab83f5c Fix deleted amphora expiration check
2a0a094 Delete SSH amphora driver
15fdc0e Fix hacking rule of assert_equal_or_not_none
3879917 Stop logging amphora cert generation in debug
3cb4738 Fixes an intermittent load balancer delete failure
460db13 Octavia: API docs Entity Status Fix
025ec00 Allow user-data on amphora creation
4193191 Reverts a workaround that is impacting amp updates
c887461 Adding "region and endpoint_type" parameters to barbican_acl.py
6e51606 Do not use __builtin__ in python3
22097dc Adds a parameter to specify endpoint type
c7d8f12 Fix / and /v1 API uris
12828aa Use netifaces constants correctly in testing
0e78993 Remove dead code around certificate handling
cc48f6e Revert "Fix for ssl context wrapper spam", add warning filter
02528f5 Fixes Octavia flows that are not reverting
4a460b3 Remove out-dated README file
be8fa11 Default api_handler to queue_producer
c3e97b7 Shared pools support
c7f88bb Updates the failover flow for active/standby
2c2be96 Fix for ssl context wrapper spam
2966629 Fix event_queue entry in setup.cfg from EventStreamer break
a2f02d3 Add SubjectAltName and KeyUsage for localcertgen
206f573 Fix misspellings
b688c55 Use uppercase 'S' in word "OpenStack"
2d87bdb Replace depcrecated Nova networks with Nova interfaces
2409316 Add endpoint override conf option for neutron and nova
63111ac Fixes Octavia Amphora RHEL based images
9bf1d0a Amphora Create now fails when amphora goes into ERROR status
e09563d Fix minor typo in warning message
ea6fb75 Optimizations for tempest tests
54e8113 Fixes intermittend udp heartbeat test failure
4c96356 Add service name conf option for neutron and nova
6d7bb98 Let drivers decide to use region or not
65ab10a Use signing digest defined in config to sign CSR
158bb0d Make sample web server close connections
87c0cf4 Add APP_COOKIE session persistence type
259538d Change the length of name in the algorithm
ae9dc12 Fix typo in migration README.rst
c84021a Implementing EventStreamer
1e29270 Fix a typo in the comment
d5f48e6 Disable amphora health monitoring on amp delete
1f5031f Remove unused logging import
226eaa5 Fix database_tasks log formating
9fc9eea Make Barbican the default certificate manager
32ebac9 Make pool.lb_algorithm field larger
2564f40 Case-sensitive string checking for Enum fields
caecc4f Fix updating session persistence of a pool in DB
8c3e2e1 Disable default haproxy process in amphora image
080f610 Fix a problem of memebrs not deleted from pool
90dc020 Add debug testenv in tox
39aa0f8 Fixed revert of update LB
436ae33 Remove OpenSSL from cert_parser
fc5f1d3 Replace deprecated library function os.popen() with subprocess
7e2b178 Fix some inconsistency in docstrings
8e24232 Setup health manager networking for devstack
e035cc0 Fix minor inconsistency in models code
e0dff5a Move docstrings to the first line of the function definition
5dedb6c Assign load_balancer in _port_to_vip()
835566e Test: make enforce_type=True in CONF.set_override
4a6e5a3 Make Consumer an oslo_service
cd5a50a Fixes gate failure 'update_stats' called 0 times
12b1e57 Fix sysctl settings for amphora image
f340cdc Use keystoneauth to prevent logging sensitive data
230c9b8 Database repository delete to use one()
ce21995 Make Octavia devstack pass env settings to sudo pip install
1d0b76e Expose project_id in octavia api
e260341 Rename tenant_id in the network models to project_id
608d0a3 Optimize Taskflow storage (remove some requires parameter)
52351a5 Refactor BarbicanAuth to allow for configurable auth method
8e31a1d Allow choice of upstart or sysvinit
969f811 Rename tenant_id to project_id
4c9e5aa Fix db error when running python34 Unit tests
d80256e Add missing unit tests for cw/tasks/network_tasks
13dec23 Add nopreempt support for active/standby
8c741ba Add reno for release notes management
80865ff Add backport keepalived
6ef2cbb Un-pin the amphora-agent version
58cda71 Amphora Flows and Drivers for Active Standby
d2072ae Anchor support to Octavia
19c7f93 Add cert tracking and rotating in Housekeeping
900e8a5 Fix api_server agent test that broke due to a dep change
3d1f10b Unify constants usage in flows tests
e60244b Fix a test order issue with oslo_config fixture
5a9835c Stop nova driver delete failure on already deleted
b7f1dbc Fixes interface_file jinja misconfiguration
2c2baa9 Add unit tests for cmd/house_keeping
21058fa REST Amp Agent: Handle interfaces file too
d5e0811 Add Guru Meditation Report feature
48cc768 Get rid of unused dependencies in requirements.txt
6e66ba5 Get rid of unused dependencies in test-requirements.txt
b985826 pyasn1 and pyasn1-modules modules no more needed
0d0853f Make amphora ssh access configurable
a36f8f2 Fix a problem building spare amphora
f9cfd2c New local certificate generator uses local time
88a62cf Use assertIs(Not)None instead of assert(Not)Equal
76e1e02 Removes the use of mutables as default args
456a07f Update HACKING.rst to reflect real syntax checks
1b20470 Fix log message formatting that cause log errors
e2453a0 Consumer start log appears at appropriate time
4d12d47 Update Octavia’s Operator API Docs
5b4e4d8 chmod +x on local.sh to allow it to be executed by stack.sh
afbade3 Launch consumer without calling oslo messaging wait
604ea75 Swap out pyOpenSSL for cryptography in LocalCertGenerator
bbe1c9c Use oslo_config PortOpt type for port options
f7a540b Set Hacking rules to check some tests assert
cf12ba9 Stop checking if listener exists when uploading cert
734d61c Change assertTrue(isinstance()) by optimal assert
a0cc839 Use oslo_config IPOpt support
ef04c7c Revert "Add Pillow to docs-requirements.txt"
241c2bb Revert "Bypass listener check on cert deploy during create"
e54a68c Bypass listener check on cert deploy during create
58899d9 REST Amp Agent: Compare lower case MAC Addresses
963491a Fixes TLS processing in the rest driver
6ff8907 Adds cert_manager option to octavia.conf
dd561d1 Fix argument order for assertEqual
7525101 Use assertTrue instead of assertEqual(True, ***)
319c523 Use assertIn and assertNotIn
f931d7c Mock module import standardisation
887012f Add environment varible to skip amp image build
0ac47cf Fixing help string for octavia.conf option
4ffa5b6 Fixes missing testresource dependency
cf79c70 Minor restructuring of documentation tree
cf19171 Add .eggs/ to .gitignore
811f7a5 Adding init.d script
6f7c635 Change amphora_id to compute_id in compute drivers
93f84e0 Unify constants usage in taskflow flows
c287c9f Improve logging in octavia.controller
3d91ce4 Improve logging in octavia.common
c656da7 Improve logging in octavia.amphorae
eccb447 Improve logging in octavia.api
76437fd Improve logging in octavia.network
6f16648 Improve logging in octavia.cmd
e7eaba1 Improve logging in octavia.certificates
dd1e3c0 Replace wrong Nova references to Compute ones
d41599e Add Pillow to docs-requirements.txt
fc2e5b9 Update some release related texts
44f7131 Remove oslo-incubator files
33ca8f3 Unify constants usage final instalment
01abc3f Allow drivers to be overridden for devstack
0c80a3b Get noop drivers to function within flows
Diffstat (except docs and test files)
-------------------------------------
.gitignore | 4 +
HACKING.rst | 18 +-
README.rst | 13 +
devstack/plugin.sh | 47 +-
devstack/samples/local.conf | 21 +-
devstack/samples/local.sh | 7 +-
devstack/samples/webserver.sh | 5 +-
devstack/settings | 6 +
diskimage-create/README.rst | 2 +-
diskimage-create/diskimage-create.sh | 31 +-
elements/amphora-agent-ubuntu/README.rst | 3 +
elements/amphora-agent-ubuntu/element-deps | 1 +
.../install.d/75-run_setup_install | 13 +
.../source-repository-amphora-agent | 2 +
elements/amphora-agent-ubuntu/svc-map | 2 +
.../amphora-agent/install.d/75-run_setup_install | 2 +-
.../configure.d/20-haproxy-tune-kernel | 47 -
.../post-install.d/20-disable-default-haproxy | 6 +
.../post-install.d/20-haproxy-tune-kernel | 31 +
.../configure.d/20-haproxy-tune-kernel | 47 -
.../post-install.d/20-disable-default-haproxy | 7 +
.../post-install.d/20-haproxy-tune-kernel | 31 +
elements/keepalived-octavia-ubuntu/README.rst | 3 +
elements/keepalived-octavia-ubuntu/element-deps | 2 +
.../package-installs.json | 3 +
.../pre-install.d/00-backports | 7 +
elements/keepalived-octavia-ubuntu/svc-map | 2 +
elements/keepalived-octavia/README.rst | 3 +
elements/keepalived-octavia/element-deps | 2 +
elements/keepalived-octavia/package-installs.json | 3 +
.../post-install.d/20-enable-keepalived | 6 +
elements/keepalived-octavia/svc-map | 2 +
elements/no-resolvconf/README.rst | 9 +
.../finalise.d/99-disable-resolv-conf | 7 +
elements/rebind-sshd/README.rst | 8 +
.../finalise.d/98-rebind-sshd-after-dhcp | 11 +
elements/vrrp-octavia/README.rst | 3 -
elements/vrrp-octavia/element-deps | 1 -
elements/vrrp-octavia/install.d/77-vrrp | 9 -
.../vrrp-octavia/source-repository-vrrp-octavia | 2 -
elements/vrrp-octavia/svc-map | 2 -
etc/initd/amphora-agent | 67 +
etc/octavia.conf | 154 +-
octavia/amphorae/backends/agent/agent_jinja_cfg.py | 3 +
.../backends/agent/api_server/amphora_info.py | 26 +
.../backends/agent/api_server/keepalived.py | 115 ++
.../amphorae/backends/agent/api_server/listener.py | 125 +-
octavia/amphorae/backends/agent/api_server/plug.py | 4 +-
.../amphorae/backends/agent/api_server/server.py | 28 +-
.../agent/api_server/templates/haproxy.conf.j2 | 54 -
.../agent/api_server/templates/keepalived.conf.j2 | 67 +
.../templates/keepalived_check_script.conf.j2 | 26 +
.../agent/api_server/templates/sysvinit.conf.j2 | 217 +++
.../agent/api_server/templates/upstart.conf.j2 | 56 +
octavia/amphorae/backends/agent/api_server/util.py | 61 +-
.../agent/templates/amphora_agent_conf.template | 4 +
.../backends/health_daemon/status_message.py | 9 +-
octavia/amphorae/backends/utils/haproxy_query.py | 12 +-
octavia/amphorae/drivers/base.py | 0
octavia/amphorae/drivers/driver_base.py | 55 +
octavia/amphorae/drivers/haproxy/exceptions.py | 14 +-
octavia/amphorae/drivers/haproxy/jinja/__init__.py | 0
.../amphorae/drivers/haproxy/jinja/jinja_cfg.py | 270 ---
.../drivers/haproxy/jinja/templates/__init__.py | 0
.../haproxy/jinja/templates/haproxy_base.template | 33 -
.../jinja/templates/haproxy_listener.template | 27 -
.../jinja/templates/haproxy_loadbalancer.template | 29 -
.../jinja/templates/haproxy_proxies.template | 95 -
.../amphorae/drivers/haproxy/rest_api_driver.py | 110 +-
octavia/amphorae/drivers/haproxy/ssh_driver.py | 310 ---
octavia/amphorae/drivers/health/heartbeat_udp.py | 7 +-
octavia/amphorae/drivers/keepalived/__init__.py | 0
.../amphorae/drivers/keepalived/jinja/__init__.py | 0
.../amphorae/drivers/keepalived/jinja/jinja_cfg.py | 97 +
.../drivers/keepalived/jinja/templates/__init__.py | 0
.../jinja/templates/keepalived_base.template | 56 +
.../drivers/keepalived/vrrp_rest_driver.py | 92 +
octavia/amphorae/drivers/noop_driver/driver.py | 25 +-
octavia/api/app.py | 2 +-
octavia/api/root_controller.py | 3 +-
octavia/api/v1/controllers/__init__.py | 5 +-
octavia/api/v1/controllers/base.py | 64 +-
octavia/api/v1/controllers/health_monitor.py | 183 +-
octavia/api/v1/controllers/l7policy.py | 185 ++
octavia/api/v1/controllers/l7rule.py | 169 ++
octavia/api/v1/controllers/listener.py | 183 +-
octavia/api/v1/controllers/listener_statistics.py | 57 +
octavia/api/v1/controllers/load_balancer.py | 171 +-
octavia/api/v1/controllers/member.py | 165 +-
octavia/api/v1/controllers/pool.py | 235 ++-
octavia/api/v1/handlers/abstract_handler.py | 2 +
.../v1/handlers/controller_simulator/handler.py | 224 ++-
octavia/api/v1/handlers/queue/producer.py | 36 +
octavia/api/v1/hooks.py | 16 +-
octavia/api/v1/types/base.py | 28 +-
octavia/api/v1/types/health_monitor.py | 10 +-
octavia/api/v1/types/l7policy.py | 84 +
octavia/api/v1/types/l7rule.py | 57 +
octavia/api/v1/types/listener.py | 44 +-
octavia/api/v1/types/listener_statistics.py | 25 +
octavia/api/v1/types/load_balancer.py | 26 +-
octavia/api/v1/types/member.py | 2 +
octavia/api/v1/types/pool.py | 55 +-
octavia/certificates/common/auth/__init__.py | 0
octavia/certificates/common/auth/barbican_acl.py | 50 +
octavia/certificates/common/barbican.py | 34 +-
octavia/certificates/common/cert.py | 2 +-
octavia/certificates/generator/anchor.py | 68 +
octavia/certificates/generator/barbican.py | 111 --
octavia/certificates/generator/local.py | 192 +-
octavia/certificates/manager/barbican.py | 61 +-
octavia/certificates/manager/cert_mgr.py | 13 +-
octavia/certificates/manager/local.py | 167 --
octavia/cmd/agent.py | 7 +-
octavia/cmd/api.py | 7 +-
octavia/cmd/haproxy_vrrp_check.py | 64 +
octavia/cmd/health_manager.py | 13 +-
octavia/cmd/house_keeping.py | 34 +-
octavia/cmd/octavia_worker.py | 18 +-
octavia/common/clients.py | 86 +-
octavia/common/config.py | 253 ++-
octavia/common/constants.py | 150 +-
octavia/common/context.py | 5 +-
octavia/common/data_models.py | 338 +++-
octavia/common/exceptions.py | 72 +-
octavia/common/jinja/__init__.py | 0
octavia/common/jinja/haproxy/__init__.py | 0
octavia/common/jinja/haproxy/jinja_cfg.py | 334 ++++
octavia/common/jinja/haproxy/templates/__init__.py | 0
octavia/common/jinja/haproxy/templates/base.j2 | 35 +
.../common/jinja/haproxy/templates/haproxy.cfg.j2 | 41 +
octavia/common/jinja/haproxy/templates/macros.j2 | 204 ++
octavia/common/jinja/templates/__init__.py | 0
.../templates/user_data_config_drive.template | 34 +
octavia/common/jinja/user_data_jinja_cfg.py | 41 +
octavia/common/keystone.py | 9 +-
octavia/common/service.py | 2 -
octavia/common/tls_utils/cert_parser.py | 82 +-
octavia/common/utils.py | 8 +-
octavia/common/validate.py | 200 ++
octavia/compute/compute_base.py | 38 +-
octavia/compute/drivers/noop_driver/driver.py | 114 +-
octavia/compute/drivers/nova_driver.py | 149 +-
octavia/controller/healthmanager/health_manager.py | 10 +-
octavia/controller/healthmanager/update_db.py | 262 +++
.../healthmanager/update_health_mixin.py | 179 --
.../controller/healthmanager/update_serializer.py | 47 +
.../controller/healthmanager/update_stats_mixin.py | 69 -
octavia/controller/housekeeping/house_keeping.py | 36 +-
octavia/controller/queue/consumer.py | 31 +-
octavia/controller/queue/endpoint.py | 52 +-
octavia/controller/queue/event_queue.py | 71 +
octavia/controller/worker/controller_worker.py | 456 +++--
octavia/controller/worker/flows/amphora_flows.py | 386 +++-
.../worker/flows/health_monitor_flows.py | 28 +-
octavia/controller/worker/flows/l7policy_flows.py | 73 +
octavia/controller/worker/flows/l7rule_flows.py | 73 +
octavia/controller/worker/flows/listener_flows.py | 61 +-
.../controller/worker/flows/load_balancer_flows.py | 253 ++-
octavia/controller/worker/flows/member_flows.py | 30 +-
octavia/controller/worker/flows/pool_flows.py | 41 +-
.../worker/tasks/amphora_driver_tasks.py | 160 +-
octavia/controller/worker/tasks/cert_task.py | 5 +-
octavia/controller/worker/tasks/compute_tasks.py | 145 +-
.../controller/worker/tasks/controller_tasks.py | 45 +-
octavia/controller/worker/tasks/database_tasks.py | 678 +++++--
octavia/controller/worker/tasks/model_tasks.py | 3 +-
octavia/controller/worker/tasks/network_tasks.py | 68 +-
octavia/db/base_models.py | 87 +-
octavia/db/migration/alembic_migrations/README.rst | 2 +-
...09101b9b_add_server_group_id_to_loadbalancer.py | 38 +
...c1d83044c_keepalived_configuration_datamodel.py | 85 +
.../versions/29ff921a6eb_shared_pools.py | 76 +
.../43287cd10fef_make_pool_lb_algorithm_larger.py | 43 +
.../versions/458c9ee2a011_l7_policies_and_rules.py | 149 ++
..._add_cert_expiration__infor_in_amphora_table.py | 37 +
.../6abb04f24c5_tenant_id_to_project_id.py | 40 +
octavia/db/models.py | 200 +-
octavia/db/prepare.py | 142 ++
octavia/db/repositories.py | 412 +++-
octavia/hacking/checks.py | 127 +-
octavia/network/data_models.py | 12 +-
octavia/network/drivers/neutron/README | 3 -
.../drivers/neutron/allowed_address_pairs.py | 116 +-
octavia/network/drivers/neutron/base.py | 21 +-
octavia/network/drivers/neutron/utils.py | 10 +-
octavia/network/drivers/noop_driver/driver.py | 45 +-
octavia/openstack/__init__.py | 0
octavia/openstack/common/__init__.py | 0
octavia/openstack/common/_i18n.py | 45 -
octavia/openstack/common/cache/__init__.py | 0
octavia/openstack/common/cache/backends.py | 250 ---
octavia/openstack/common/cache/cache.py | 92 -
octavia/opts.py | 1 +
.../backend/agent/api_server/test_server.py | 169 +-
.../agent/api_server/test_server_sysvinit.py | 709 +++++++
.../functional/api/v1/test_listener_statistics.py | 37 +
.../backends/agent/api_server/test_keepalived.py | 48 +
.../backends/agent/api_server/test_listener.py | 62 +-
.../backends/agent/api_server/test_plug.py | 35 +
.../backends/agent/api_server/test_utils.py | 37 +
.../backends/agent/test_agent_jinja_cfg.py | 126 +-
.../backends/health_daemon/test_envelope.py | 4 +-
.../backends/health_daemon/test_health_daemon.py | 8 +-
.../backends/health_daemon/test_health_sender.py | 6 +-
.../amphorae/drivers/haproxy/jinja/__init__.py | 0
.../drivers/haproxy/jinja/test_jinja_cfg.py | 300 ---
.../drivers/haproxy/test_rest_api_driver.py | 158 +-
.../amphorae/drivers/haproxy/test_ssh_driver.py | 331 ----
.../amphorae/drivers/health/test_heartbeat_udp.py | 55 +-
.../unit/amphorae/drivers/keepalived/__init__.py | 0
.../amphorae/drivers/keepalived/jinja/__init__.py | 0
.../drivers/keepalived/jinja/test_jinja_cfg.py | 105 +
.../drivers/keepalived/test_vrrp_rest_driver.py | 64 +
.../test_noop_amphoraloadbalancer_driver.py | 29 +-
.../unit/api/v1/handlers/queue/test_producer.py | 63 +-
.../unit/api/v1/types/test_health_monitors.py | 9 +-
.../unit/certificates/common/auth/__init__.py | 0
.../certificates/common/auth/test_barbican_acl.py | 61 +
.../unit/certificates/common/test_barbican.py | 58 +-
.../unit/certificates/generator/test_anchor.py | 48 +
.../unit/certificates/generator/test_barbican.py | 74 -
.../unit/certificates/generator/test_local.py | 186 +-
.../unit/certificates/manager/test_barbican.py | 114 +-
.../unit/common/jinja/haproxy/test_jinja_cfg.py | 407 ++++
.../unit/common/jinja/test_user_data_jinja_cfg.py | 55 +
.../unit/common/sample_configs/sample_configs.py | 418 +++-
.../unit/common/tls_utils/test_cert_parser.py | 31 +-
.../compute/drivers/test_compute_noop_driver.py | 32 +-
.../healthmanager/test_health_manager.py | 8 +-
.../controller/healthmanager/test_health_mixin.py | 361 ----
.../controller/healthmanager/test_update_db.py | 504 +++++
.../healthmanager/test_update_serializer.py | 39 +
.../healthmanager/test_update_stats_mixin.py | 72 -
.../controller/housekeeping/test_house_keeping.py | 82 +-
.../controller/worker/flows/test_amphora_flows.py | 323 +++-
.../worker/flows/test_health_monitor_flows.py | 34 +-
.../controller/worker/flows/test_l7policy_flows.py | 67 +
.../controller/worker/flows/test_l7rule_flows.py | 67 +
.../controller/worker/flows/test_listener_flows.py | 54 +-
.../worker/flows/test_load_balancer_flows.py | 216 ++-
.../controller/worker/flows/test_member_flows.py | 33 +-
.../controller/worker/flows/test_pool_flows.py | 44 +-
.../worker/tasks/test_amphora_driver_tasks.py | 187 +-
.../unit/controller/worker/tasks/test_cert_task.py | 2 +-
.../controller/worker/tasks/test_compute_tasks.py | 230 ++-
.../worker/tasks/test_controller_tasks.py | 47 +-
.../controller/worker/tasks/test_database_tasks.py | 665 ++++++-
.../controller/worker/tasks/test_model_tasks.py | 9 +-
.../controller/worker/tasks/test_network_tasks.py | 127 +-
.../controller/worker/test_controller_worker.py | 605 ++++--
.../drivers/neutron/test_allowed_address_pairs.py | 58 +-
.../network/drivers/test_network_noop_driver.py | 6 +-
openstack-common.conf | 6 -
releasenotes/notes/.placeholder | 0
.../add-shared-pools-and-l7-ef9edf01bb9058e0.yaml | 26 +
...e-tags-for-amphora-images-28bd9df1ed4b9ca3.yaml | 9 +
.../octavia-active-standby-cec5d2ad4fd214d8.yaml | 19 +
releasenotes/source/_static/.placeholder | 0
releasenotes/source/_templates/.placeholder | 0
releasenotes/source/conf.py | 276 +++
releasenotes/source/index.rst | 9 +
releasenotes/source/liberty.rst | 6 +
releasenotes/source/unreleased.rst | 5 +
requirements.txt | 70 +-
setup.cfg | 14 +-
specs/template.rst | 4 +-
specs/version0.5/active_passive_loadbalancer.rst | 389 ----
specs/version0.5/controller-worker.rst | 2 +-
specs/version0.5/tls-data-security.rst | 2 +-
specs/version1/active_passive_loadbalancer.rst | 389 ++++
specs/version1/design.rst | 82 -
.../version1/use_glance_tag_to_refer_to_image.rst | 147 ++
test-requirements.txt | 21 +-
tox.ini | 22 +-
322 files changed, 25092 insertions(+), 9369 deletions(-)
Requirements updates
--------------------
diff --git a/requirements.txt b/requirements.txt
index f8c023a..0ca772a 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -4,15 +4,13 @@
-alembic>=0.8.0
-pecan>=1.0.0
-pbr>=1.6
-SQLAlchemy<1.1.0,>=0.9.9
-anyjson>=0.3.3
-Babel>=1.3
-eventlet>=0.17.4
-requests>=2.5.2
-iso8601>=0.1.9
-jsonrpclib
-keystonemiddleware>=2.0.0
-netaddr!=0.7.16,>=0.7.12
-python-neutronclient>=2.6.0
-WebOb>=1.2.3
-six>=1.9.0
+alembic>=0.8.0 # MIT
+pecan>=1.0.0 # BSD
+pbr>=1.6 # Apache-2.0
+SQLAlchemy<1.1.0,>=1.0.10 # MIT
+Babel>=1.3 # BSD
+eventlet!=0.18.3,>=0.18.2 # MIT
+requests!=2.9.0,>=2.8.1 # Apache-2.0
+rfc3986>=0.2.0 # Apache-2.0
+keystoneauth1>=2.1.0 # Apache-2.0
+keystonemiddleware!=4.1.0,>=4.0.0 # Apache-2.0
+python-neutronclient!=4.1.0,>=2.6.0 # Apache-2.0
+WebOb>=1.2.3 # MIT
+six>=1.9.0 # MIT
@@ -20 +18 @@ stevedore>=1.5.0 # Apache-2.0
-oslo.config>=2.3.0 # Apache-2.0
+oslo.config>=3.7.0 # Apache-2.0
@@ -22,5 +20,6 @@ oslo.context>=0.2.0 # Apache-2.0
-oslo.db>=2.4.1 # Apache-2.0
-oslo.i18n>=1.5.0 # Apache-2.0
-oslo.log>=1.8.0 # Apache-2.0
-oslo.messaging!=1.17.0,!=1.17.1,>=1.16.0 # Apache-2.0
-oslo.middleware>=2.8.0 # Apache-2.0
+oslo.db>=4.1.0 # Apache-2.0
+oslo.i18n>=2.1.0 # Apache-2.0
+oslo.log>=1.14.0 # Apache-2.0
+oslo.messaging>=4.0.0 # Apache-2.0
+oslo.middleware>=3.0.0 # Apache-2.0
+oslo.reports>=0.6.0 # Apache-2.0
@@ -28,2 +27,3 @@ oslo.rootwrap>=2.0.0 # Apache-2.0
-oslo.serialization>=1.4.0 # Apache-2.0
-oslo.utils>=2.0.0 # Apache-2.0
+oslo.serialization>=1.10.0 # Apache-2.0
+oslo.service>=1.0.0 # Apache-2.0
+oslo.utils>=3.5.0 # Apache-2.0
@@ -31,11 +31,7 @@ PyMySQL>=0.6.2 # MIT License
-python-barbicanclient>=3.3.0
-python-keystoneclient>=1.6.0
-python-novaclient>=2.28.1
-pyOpenSSL>=0.14
-WSME>=0.7
-pyasn1
-pyasn1-modules
-Jinja2>=2.6 # BSD License (3 clause)
-paramiko>=1.13.0
-taskflow>=1.16.0
-networkx>=1.10
+python-barbicanclient>=3.3.0 # Apache-2.0
+python-glanceclient>=2.0.0 # Apache-2.0
+python-novaclient!=2.33.0,>=2.29.0 # Apache-2.0
+pyOpenSSL>=0.14 # Apache-2.0
+WSME>=0.8 # MIT
+Jinja2>=2.8 # BSD License (3 clause)
+taskflow>=1.26.0 # Apache-2.0
@@ -44,2 +40,2 @@ networkx>=1.10
-Flask<1.0,>=0.10
-netifaces>=0.10.4
+Flask<1.0,>=0.10 # BSD
+netifaces>=0.10.4 # MIT
@@ -47 +43 @@ netifaces>=0.10.4
-cryptography>=1.0 # Apache-2.0
+cryptography>=1.0 # BSD/Apache-2.0
diff --git a/test-requirements.txt b/test-requirements.txt
index b1b921d..13fab87 100644
--- a/test-requirements.txt
+++ b/test-requirements.txt
@@ -5,5 +5,3 @@ hacking<0.10,>=0.9.1
-requests-mock>=0.6.0 # Apache-2.0
-cliff>=1.14.0 # Apache-2.0
-coverage>=3.6
-fixtures>=1.3.1
-mock>=1.2
+requests-mock>=0.7.0 # Apache-2.0
+coverage>=3.6 # Apache-2.0
+mock>=1.2 # BSD
@@ -11,2 +9 @@ pyroute2>=0.3.10 # Apache-2.0 (+ dual licensed GPL2)
-python-subunit>=0.0.18
-ordereddict
+python-subunit>=0.0.18 # Apache-2.0/BSD
@@ -14,3 +11,4 @@ oslotest>=1.10.0 # Apache-2.0
-testrepository>=0.0.18
-testtools>=1.4.0
-WebTest>=2.0
+testrepository>=0.0.18 # Apache-2.0/BSD
+testtools>=1.4.0 # MIT
+testresources>=0.2.4 # Apache-2.0/BSD
+WebTest>=2.0 # MIT
@@ -18 +16,2 @@ doc8 # Apache-2.0
-
+reno>=0.1.1 # Apache2
+bandit>=0.17.3 # Apache-2.0
1
0
We are tickled pink to announce the release of:
ironic 5.0.0: OpenStack Bare Metal Provisioning
This release is part of the mitaka release series.
With source available at:
http://git.openstack.org/cgit/openstack/ironic
Please report issues through launchpad:
http://bugs.launchpad.net/ironic
For more details, please see below.
5.0.0
^^^^^
This release adds support for manual cleaning and RAID configuration.
Operators may now manually run clean steps, including setting up RAID
on a node, while a node is in the manageable state.
This release features switch to Oslo Futurist library for asynchronous
thread execution and periodic tasks. Main benefit is that periodic
tasks are now executed truly in parallel, and not sequentially in one
green thread.
New Features
************
* Add support for ipmitool's port (-p) option. This allows ipmitool
support for operators that do not use the default port (623) as
their IPMI port.
* Pass proxy information from agent driver to IPA ramdisk, so that
images can be cached on the proxy server.
* Add support for a new capability called 'disk_label' to allow
operators to choose the disk label that will be used when Ironic is
partitioning the disk.
* iLO drivers now provide out-of-band firmware update as a manual
cleaning step, for supported hardware components.
* Support for activation of iLO Advanced license as a manual
cleaning step in iLO drivers.
* Enabled Inspector Inspection for CIMC and UCS drivers
* Adds support for using iPXE in UEFI mode.
* Add the ability to adjust ipxe timeout during image downloading,
default is still unlimited (0).
* Adds out-of-band inspection support for iRMC drivers.
* Add support for filtering nodes using the same driver via the API.
* Adds support for manual cleaning. This is available with API
version 1.15. For more information, see
http://docs.openstack.org/developer/ironic/deploy/cleaning.html
#manual-cleaning
* Root device hints extended to support the device name.
* Database migrations downgrade support was removed. More info about
database migration/rollback could be found here
http://docs.openstack.org/openstack-ops/content/ops_upgrades-roll-
back.html
* Adds ShellinaboxConsole support for virsh SSH driver.
Known Issues
************
* When using caching proxy with "agent_*" drivers, caching the image
on the proxy server might involve increasing
[glance]swift_temp_url_duration config option value. This way, the
cached entry will be valid for a period of time long enough to see
the benefits of caching. Large temporary URL duration might become a
security issue in some cases.
Upgrade Notes
*************
* Adds a [glance]swift_temp_url_cache_enabled configuration option
to enable Swift temporary URL caching. It is only useful if the
caching proxy is used. Also adds
[glance]swift_temp_url_expected_download_start_delay, which is used
to check if the Swift temporary URL duration is long enough to let
the image download to start, and, if temporary URL caching is
enabled, to determine if a cached entry will be still valid when
download starts. The value of
[glance]swift_temp_url_expected_download_start_delay must be less
than the value for the [glance]swift_temp_url_duration configuration
option.
* Add "choices" parameter to config options. Invalid values will be
rejected when first accessing them, which can happen in the middle
of deployment.
+-----------------------------------+------------------+
| Option | Choices |
+===================================+==================+
| [DEFAULT]/auth_strategy | keystone, noauth |
+-----------------------------------+------------------+
| [glance]/auth_strategy | keystone, noauth |
+-----------------------------------+------------------+
| [glance]/glance_protocol | http, https |
+-----------------------------------+------------------+
| [neutron]/auth_strategy | keystone, noauth |
+-----------------------------------+------------------+
| [amt]/protocol | http, https |
+-----------------------------------+------------------+
| [irmc]/remote_image_share_type | CIFS, NFS |
+-----------------------------------+------------------+
| [irmc]/port | 443, 80 |
+-----------------------------------+------------------+
| [irmc]/auth_method | basic, digest |
+-----------------------------------+------------------+
| [irmc]/sensor_method | ipmitool, scci |
+-----------------------------------+------------------+
* Adds a config option 'debug_tracebacks_in_api' to allow the API
service to return tracebacks in API responses in an error condition.
* Dependency for DRAC driver changed from "pywsman" to "python-
dracclient" with version >= 0.0.5. Exceptions thrown by the driver
and return values of the "set_bios_config", "commit_bios_config" and
"abandon_bios_config" methods changed on the vendor-passthru
interface.
* Configuration option "workers_pool_size" can no longer be less or
equal to 2. Please set it to greater value (the default is 100)
before update.
* Adds new configuration [ironic_lib]root_helper, to specify the
command that is prefixed to commands that are run as root. Defaults
to using the rootwrap config file at /etc/ironic/rootwrap.conf.
* Moves these configuration options from [deploy] group to the new
[disk_utils] group: efi_system_partition_size, dd_block_size and
iscsi_verify_attempts.
* Updated python-scciclient required version number for iRMC driver
to 0.3.0 which fixed the bug '#1518999' and '#1519000'.
Deprecation Notes
*****************
* The [conductor]/clean_nodes config is deprecated and will be
removed in the Newton cycle. It has been replaced by the
[conductor]/automated_clean config.
* Configuration option "periodic_interval" is deprecated.
* Using "driver_periodic_task" decorator is deprecated. Please
update your out-of-tree drivers to use "periodics.periodic"
decorator from Futurist library.
* The following configuration options have been moved to the
[disk_utils] group; they are deprecated from the [deploy] group:
efi_system_partition_size, dd_block_size and iscsi_verify_attempts.
Bug Fixes
*********
* No longer returns tracebacks for API errors in debug mode.
* Disables default execution of clean step 'reset_ilo' during
automated cleaning. Resetting of iLO is not required during every
invocation of automated cleaning. If required, operator can enable
the same.
* DRAC driver migrated from "pywsman" to "python-dracclient" fixing
the driver lockup issue caused by the python interpreter not
handling signals when execution handed to the c library.
* Fixes an issue with setting the boot device multiple times without
a reboot in the DRAC driver by setting the boot device only before
power management operations.
* Add missing "lookup" method to the pxe_drac driver vendor
interface enabling it to be deployed using the IPA ramdisk.
* API service once again records HTTP access logs. See
https://bugs.launchpad.net/ironic/+bug/1536828 for details.
* Fix issues with error handling when spawning a new thread to
continue cleaning. See
https://bugs.launchpad.net/ironic/+bug/1539118.
* Fixes an issue with the provided iPXE template where whole disk
images could not be booted. See
https://bugs.launchpad.net/ironic/+bug/1524403.
* Periodic tasks are no longer executed all in one thread.
* Fixes issue where automated cleaning fails for iLO drivers.
Automated cleaning fails for iLO driver if iLO is in System POST
state. iLO does not allow setting of boot device when it is in
System POST state.
* Fixes bug where ironic reboots the node with deploy image instead
of the user image during second reboot in uefi boot mode when ipxe
is enabled.
* Fixes an issue that prevented the node name to be removed as part
of the node update.
* In conductor/rpcapi.py, object_backport_version(), object_action()
and object_class_action_versions() misspell NotImplementedError with
NotImplemented which returns nothing useful to users. See
https://bugs.launchpad.net/ironic/+bug/1524163.
* Updated python-scciclient required version number for iRMC driver
to 0.3.0 which fixed the bug '#1518999' and '#1519000'.
Other Notes
***********
* Code related to disk partitioning was moved to ironic-lib.
Changes in ironic 4.3.0..5.0.0
------------------------------
198ae29 Add documentation for the IPMITool driver
57d8e51 Fix error in cleaning docs
b3ab84f Replace depricated tempest-lib with tempest.lib
6f36a5e Add new 'disk_label' capability
89c78df Fix JSON string in example of starting manual cleaning
aa1fc2a Remove 'grub2' option in creating whole-disk-images
c0350f7 Update iRMC driver doc for inspection
e6b3c42 Don't use token for glance & check for some unset vars
a71ac5d Use 'baremetal' flavor in devstack
f316775 [devstack] Fix IPA source build on Fedora
8f7eb52 DevStack: Enable VirtualBMC logs
419aa1b Updated from global requirements
3e11338 Firmware update(iLO) as manual cleaning step
7c83c6f Updated from global requirements
cf12ad9 Remove code duplication.
de72fcd Update iLO documentation for clean step 'reset_ilo'
efbccc8 Refactor the management verbs check to utils
5655792 Updated from global requirements
6babbee Remove duplicate doc in ironic.conf.sample
a082e70 Prep for 5.0 release
036b959 Fix unittests after new releases of libraries
547bd9d Updating docs with support for DL class servers
874f982 Update CIMC driver docs to install ImcSdk from PyPi
0a04e79 Add returns to send_raw() ipmitool function
5c6de4b Add function for dump SDR to ipmitool driver
f224b83 Add clean step in iLO drivers to activate iLO license
5ecda6b Update proliantutils version to 2.1.7 for Mitaka release
404bfda ipxe: add --timeout parameter to kernel and initrd
0cf2db6 Updated iLO driver documentation to recommend ipmitool version
7f46a03 Refactor driver loading to load a driver instance per node
22aa8a9 Clean up driver loading in init_host
6569cdb add wipefs to ironic-lib.filters
5b37b78 Updated from global requirements
053584c Use assertEqual/Greater/Less/IsNone
d8fa64b Follow up nits of 3429e3824c060071e59a117c19c95659c78e4c8b
d3859a7 API to list nodes using the same driver
1accb30 [devstack] set ipa-debug=1 for greater debugability
146eaad Loose python-oneviewclient version requirement
5b619b7 Set node last_error in TaskManager
e38f345 Add possible values for config options
c52dfb2 Follow up nits of irmc oob inspection
47e1898 Enable removing name when updating node
86640c6 Make some agent functions require exclusive lock
c1a8606 Add db api layer for CRUD operations on node tags
6af9da9 Update proliantutils version required for Mitaka release
8e206ff Add deprecated_for_removal config info in ironic.conf.sample
84b09fe Update ironic.conf.sample
b0ae5e9 Tolerate roles in context.RequestContext
3429e38 Switch to Futurist library for asynchronous execution and periodic tasks
bbee55d Move _from_db_object() into base class
cc66d0b Add ironic_tempest_plugin to the list of packages in setup.cfg
da7aba1 Fix gate broken by sudden remove of SERVICE_TENANT_NAME variable
f2d9886 Add manual cleaning to documentation
56d4945 Import host option in base test module
38201d9 Fixes automated cleaning failure in iLO drivers
b203092 Updated from global requirements
7ffa1d5 DevStack: Add support for deploying nodes with pxe_ipmitool
ee4f24b Change the libvirt NIC driver to virtio
b4bc03f DevStack: Support to install diskimage-builder from source
24955b2 [Devstack]Add ability to enable ironic node pty console
bfb5e54 Use 'node' directly in update_port()
d38ca35 Add links to the standalone configdrive documentation
24ff537 DevStack: Install squashfs-tools
001513f [DevStack] fix restart of nova compute
d402905 Use http_{root, url} config from "deploy" instead of "pxe"
5b724be During cleaning, store clean step index
c055845 Use oslo_config.fixture in unit tests
080707f Introduce driver_internal_info in code-contribution-guide
74d242a Updated from global requirements
01f7392 Correct instance parameter description
d19dfab Add node.uuid to InstanceDeploy error message
c53a649 Set existing ports pxe_enabled=True when adding pxe_enabled column
1de8903 Augmenting the hashing strategy
37590a8 Add hardware inspection module for iRMC driver
959689e Document possible access problems with custom IRONIC_VM_LOG_DIR path
2692280 Add documentation for proxies usage with IPA
f726831 Updated from global requirements
37a3486 Devstack: create endpoint in catalog unconditionally
bf6de00 Comment out test options that already exists on tempest's tree
9220cbd Replace config 'clean_nodes' with 'automated_clean'
0b3da47 Remove 'zapping' from code
74f6661 Cache agent clean steps on node
edc37cb API to manually clean nodes
a028772 Replace ifconfig with ip
39a2828 Updated iLO documentation for boot mode capability
1f82783 Agent vendor handles manual cleaning
49e0475 Remove downgrade support from migrations
a59d8ab Enable tinyipa for devstack Ironic
380d6bf Disable clean step 'reset_ilo' for iLO drivers by default
0ed100d Add proxy related parameters to agent driver
844c758 Update ironic.conf.samle
7e16907 Fix genconfig "tempdir" inconsistency
7276d22 Update the home page
bb64c4d Follow-up on dracclient refactor
025d194 Log warning if ipmi_username/ipmi_password missing
e5c5ddb Add portgroups to support LAG interfaces - net
a603e3c Add portgroups to support LAG interfaces - RPC
134ad4c Add portgroups to support LAG interfaces - objs
1740ab7 Add portgroups to support LAG interfaces - DB
3afbfaf Fix missing lookup() vendor method error for pxe_drac
5131d71 Refresh ssh verification mechanism
0f73a8b Refactor install-guide to configure API/Conductor seperately
65efbfd Enable Ironic Inspector for Cisco Drivers
d85b997 Fix doc8's "duplicated target names" (D000) error
db068c6 Remove conditional checking the auth_strategy values
0edba8a Extend root device hints to support device name
8c8704e Fix spawn error hook in "continue_node_clean" RPC method
fc72b4d Enable doc8 style checker for *.rst files
2e1f9c1 Updated from global requirements
4f8b97d Show transitions initiated by API requests
3843f55 Remove hard-coded DEPLOYWAIT timeout from Baremetal Scenario
fa981fd Fix tiny format issue with install_guide
4aae854 Add priority to manual clean step example
93ca514 Use node uuid in some exception log
6bed115 Fix error message in devstack
5661db3 Updated from global requirements
fde6252 [devstack] Restart nova compute before checking hypervisor stats
6f90631 Imported Translations from Zanata
8a1063e Fix minor typo
47be801 DRAC: cleanup after switch to python-dracclient
2173649 API service logs access requests again
e3f5517 Updated from global requirements
b464744 Correct port_id parameter description
6bcbe9d Remove duplicate words in API version history
0c9915e Remove unneeded enable_service in dev-quickstart.rst
7a5acbd Clarify that size in root device hints and local_gb are often different
a8afe45 Update ImcSdk requirement to use PyPi
87974fe Clean up 'no_proxy' unit tests
cb5c500 Add more unit tests for NO_PROXY validation
60aad94 Add ability to cache swift temporary URLs
51a73e1 DRAC: switch to python-dracclient on vendor-passthru
57e3ba1 Migrate Tempest tests into Ironic tree
691de30 Use Tempest plugin interface
91906c5 Fix issues with uefi-ipxe booting
a74f816 Update links to OpenStack manuals
0a75c41 Fix issue where system hostname can impact genconfig
1a4d589 Add choices option to several options
2ef3b40 Reorganize the developer's main page
c12cc03 Document backwards compat for passthru methods
81719c8 Drop MANIFEST.in - it's not needed pbr
bea9393 Clean up unneeded deprecated_group
6dd534e Devstack: replace 'http' with SERVICE_PROTOCOL
16bb29e Clarify rejected status in RFE contribution docs
ed3d71c Bring UP baremetal bridge
ffb654b Document the process of proposing new features
c3045f7 Updated from global requirements
a23b9b7 Use assertTrue/False instead of assertEqual(T/F)
968e832 devstack 'cleanup-node' script should delete OVS bridges
bab0835 Change default IRONIC_VM_SPECS_RAM to 1024
b48289e Remove release differences from flavor creation docs
b0eaea1 Add documentation for standalone ilo drivers
ac54456 Devstack: Make sure libvirt's hooks directory exists
fd64ca7 Update the ironic.conf.sample file
72f64cc Follow-up on refactor DRAC management interface
2cde492 Allow user to set arch for the baremetal flavor and ironic node
29b3706 tox: make it possible to run pep8 on current patch only
96ad1a1 Devstack: Use [deploy] erase_devices_priority config option
a7908dc Remove bashate from envlist
b7d4147 Use ironic-lib's util methods
946ea0a Refactor objects into a magic registry
bd60603 Don't return tracebacks in API response in debug mode
ee37525 Updated from global requirements
dd88841 Change assertTrue(isinstance()) by optimal assert
def448e Remove */openstack/common* in tox
d097010 Remove vim headers in source files
76b24d3 Trival: Remove unused logging import
60e850a Use ironic-lib's qemu_img_info() & convert_image()
13cf3c1 Update "Developer Quick-Start" guide for Fedora 23+
73ea7ce Enable ironic devstack plugin in local.conf sample
5fa4465 Correct a tiny issue in install-guide
181e3de Install 'shellinabox' package for Ironic
e3f25de Fix translations in driver base
b51f7d4 Run flake8 against the python scripts under tools/ and devstack/tools
2a5005d Add UEFI support for iPXE
dc080b5 Add console feature to ssh driver
16786b6 Conductor handles manual cleaning
cd9975d Add extensions to the scripts at devstack/tools/ironic/scripts
d7c41eb Fix "No closing quotation" error when building with tox
d9a2a62 Devstack: Remove QEMU hook at ./unstack
95fcd64 Run bashate as part of the pep8 command
f047ea0 Fix bashate errors in grenade plugin
49e273b Fix syntax errors in the shell scripts under devstack/tools
3bd1ecb Use the apache-ironic.template from our tree
2ab9801 Fix typo in ironic/conductor/manager.py
ba58cd7 genconfig: Debug info for unknown config types
2f6dce9 Keep the console logs for all boots
a1ff0a1 Use imageutils from oslo.utils
70e1f87 Add documentation for user inputs as HTTPS URLs
e95a8b9 Add bashate tox command
a0d2d7d Updated from global requirements
9aa7681 Add documentation for swiftless intermediate images
759db32 DRAC: switch to python-dracclient on management interface
0ced09b DRAC: switch to python-dracclient on power interface
de10be5 Follow up nits of Exception to str type conversion
778fcda Clean up variables in plugin.sh
c7e2b04 Replace assertEqual(None, *) with assertIsNone in tests
3012590 Add utility function to validate NO_PROXY
1a62671 Add bifrost as an option projects in Service overview
bc22a20 Sequence diagrams for iLo driver documentation
e08211e Refactor ilo documentation for duplicate information
7924997 Update swift HTTPs information in ilo documentation
d29ab63 Updated from global requirements
5ea3d08 Deprecated tox -downloadcache option removed
19fc22d Remove override-defaults
f4a7a84 Use 'service_type' of 'network'. Not 'neutron'
a2df90b Update ironic.conf.sample by applying the bug fix #1522841
c0a72cf Add grenade plugin
ac07388 Follow up patch to correct code-contribute-guide
952d5c5 Fix iPXE template for whole disk image
a0dcef4 Add devstack plugin
b218735 Copy devstack code to ironic tree
081e4e9 Add FSM.is_stable() method
40f9238 Explicitly depend on WebTest>=2.0
66cf3d0 Always pass keystone credentials to neutronclient
3daef88 Remove extra space in 'host' config comment
a434ca4 Add oslo_config.Opt support in Ironic config generator
7c138f0 Refactor disk partitioner code from ironic and use ironic-lib.
a59934f Simplifies exception message assurance for oneview.common tests
08c1f1d Use node.uuid directly in stop_console()
1171e25 Correct NotImplemented to NotImplementedError in rpcapi.py
55c246a Adding oneview.common tests for some method not well tested
b9b6068 Add port option support for ipmitool
2649d54 Numerous debug messages due to iso8601 log level
c5a8008 Handle deprecated opts' group correctly
c2fbcee Updated from global requirements
10fdbcd Clarify what changes need a release note
9dbd14e Remove wsgi reset_pool_size_to_default test
4138682 Add Mitaka release notes page
e936fbf Update python-scciclient version number
62407cc Add release notes from Icehouse to Liberty
0d75fa6 Add Code Contribution Guide for Ironic
ec2a328 Replace HTTP 'magic numbers' with constants
e91ff59 Documentation points to official release notes
a47f093 Split BaseConductorManager from ConductorManager
162240a Validate arguments to clean_step() decorator
Diffstat (except docs and test files)
-------------------------------------
MANIFEST.in | 6 -
devstack/files/apache-ironic.template | 12 +
devstack/files/debs/ironic | 23 +
devstack/files/hooks/qemu | 13 +
devstack/files/rpms/ironic | 18 +
devstack/lib/ironic | 1007 ++++++++++++
devstack/plugin.sh | 39 +
devstack/settings | 1 +
devstack/tools/ironic/scripts/cleanup-node.sh | 35 +
devstack/tools/ironic/scripts/configure-vm.py | 114 ++
devstack/tools/ironic/scripts/create-node.sh | 86 +
devstack/tools/ironic/scripts/setup-network.sh | 29 +
devstack/tools/ironic/templates/brbm.xml | 6 +
.../tools/ironic/templates/tftpd-xinetd.template | 14 +
devstack/tools/ironic/templates/vm.xml | 49 +
devstack/upgrade/settings | 5 +
devstack/upgrade/shutdown.sh | 18 +
devstack/upgrade/upgrade.sh | 112 ++
driver-requirements.txt | 15 +-
etc/ironic/ironic.conf.sample | 689 ++++----
etc/ironic/rootwrap.d/ironic-lib.filters | 25 +
etc/ironic/rootwrap.d/ironic-utils.filters | 10 -
ironic/api/app.py | 12 +-
ironic/api/controllers/v1/node.py | 169 +-
ironic/api/controllers/v1/utils.py | 35 +-
ironic/api/controllers/v1/versions.py | 6 +-
ironic/api/hooks.py | 5 +-
ironic/cmd/dbsync.py | 11 -
ironic/common/config_generator/generator.py | 85 +-
ironic/common/context.py | 14 +-
ironic/common/dhcp_factory.py | 14 +-
ironic/common/disk_partitioner.py | 226 ---
ironic/common/driver_factory.py | 38 +-
ironic/common/exception.py | 57 +-
ironic/common/fsm.py | 14 +-
ironic/common/glance_service/service_utils.py | 2 -
ironic/common/glance_service/v2/image_service.py | 123 +-
ironic/common/image_service.py | 7 +-
ironic/common/images.py | 38 +-
ironic/common/network.py | 18 +-
ironic/common/pxe_utils.py | 36 +-
ironic/common/service.py | 19 +-
ironic/common/swift.py | 6 +-
ironic/common/utils.py | 151 +-
ironic/conductor/base_manager.py | 374 +++++
ironic/conductor/manager.py | 761 +++++----
ironic/conductor/rpcapi.py | 79 +-
ironic/conductor/task_manager.py | 59 +-
ironic/conductor/utils.py | 171 +-
ironic/db/api.py | 194 ++-
ironic/db/migration.py | 4 -
.../1e1d5ace7dc6_add_inspection_started_at_and_.py | 5 -
.../21b331f883ef_add_provision_updated_at.py | 4 -
.../242cc6a923b3_add_node_maintenance_reason.py | 4 -
.../versions/2581ebaf0cb2_initial_migration.py | 5 -
.../2fb93ffd2af1_increase_node_name_length.py | 7 -
.../31baaf680d2b_add_node_instance_info.py | 6 -
.../versions/3ae36a5f5131_add_logical_name.py | 5 -
...25597_add_unique_constraint_to_instance_uuid.py | 5 -
.../3cb628139ea4_nodes_add_console_enabled.py | 4 -
...7deb87cc9d_add_conductor_affinity_and_online.py | 7 -
.../alembic/versions/48d6c242bb9b_add_node_tags.py | 4 -
.../versions/4f399b21ae71_add_node_clean_step.py | 4 -
.../516faf1bb9b1_resizing_column_nodes_driver.py | 4 -
.../5674c57409b9_replace_nostate_with_available.py | 7 -
...10e_added_port_group_table_and_altered_ports.py | 54 +
.../versions/789acc877671_add_raid_config.py | 5 -
.../bb59b63f55a_add_node_driver_internal_info.py | 4 -
.../versions/f6fdb920c182_set_pxe_enabled_true.py | 38 +
ironic/db/sqlalchemy/api.py | 225 ++-
ironic/db/sqlalchemy/models.py | 20 +
ironic/dhcp/base.py | 22 +-
ironic/dhcp/neutron.py | 133 +-
ironic/drivers/agent.py | 5 +
ironic/drivers/base.py | 180 ++-
ironic/drivers/drac.py | 9 +-
ironic/drivers/fake.py | 9 +-
ironic/drivers/irmc.py | 3 +
ironic/drivers/modules/agent.py | 76 +-
ironic/drivers/modules/agent_base_vendor.py | 155 +-
ironic/drivers/modules/amt/common.py | 4 +-
ironic/drivers/modules/cimc/common.py | 3 -
ironic/drivers/modules/cimc/management.py | 2 -
ironic/drivers/modules/cimc/power.py | 2 -
ironic/drivers/modules/console_utils.py | 3 +-
ironic/drivers/modules/deploy_utils.py | 555 +------
ironic/drivers/modules/drac/bios.py | 391 +----
ironic/drivers/modules/drac/client.py | 268 ----
ironic/drivers/modules/drac/common.py | 40 +-
ironic/drivers/modules/drac/job.py | 53 +
ironic/drivers/modules/drac/management.py | 445 ++---
ironic/drivers/modules/drac/power.py | 142 +-
ironic/drivers/modules/drac/resource_uris.py | 46 -
ironic/drivers/modules/drac/vendor_passthru.py | 87 +-
ironic/drivers/modules/ilo/boot.py | 4 +-
ironic/drivers/modules/ilo/common.py | 160 +-
ironic/drivers/modules/ilo/deploy.py | 45 +
ironic/drivers/modules/ilo/firmware_processor.py | 389 +++++
ironic/drivers/modules/ilo/management.py | 139 +-
ironic/drivers/modules/inspector.py | 5 +-
ironic/drivers/modules/ipminative.py | 14 +-
ironic/drivers/modules/ipmitool.py | 62 +-
ironic/drivers/modules/ipxe_config.template | 12 +-
ironic/drivers/modules/irmc/boot.py | 15 +-
ironic/drivers/modules/irmc/common.py | 77 +-
ironic/drivers/modules/irmc/inspect.py | 187 +++
ironic/drivers/modules/iscsi_deploy.py | 15 +-
ironic/drivers/modules/pxe.py | 21 +-
ironic/drivers/modules/seamicro.py | 6 +-
ironic/drivers/modules/snmp.py | 28 +
ironic/drivers/modules/ssh.py | 90 +-
ironic/drivers/pxe.py | 7 +
.../locale/fr/LC_MESSAGES/ironic-log-critical.po | 14 +-
ironic/locale/ironic-log-error.pot | 292 ++--
ironic/locale/ironic-log-info.pot | 157 +-
ironic/locale/ironic-log-warning.pot | 250 ++-
ironic/locale/ironic.pot | 1692 ++++++++++----------
.../locale/ja/LC_MESSAGES/ironic-log-critical.po | 14 +-
ironic/locale/ja/LC_MESSAGES/ironic.po | 171 +-
.../ko_KR/LC_MESSAGES/ironic-log-critical.po | 14 +-
.../pt_BR/LC_MESSAGES/ironic-log-critical.po | 14 +-
ironic/objects/__init__.py | 28 +-
ironic/objects/base.py | 31 +-
ironic/objects/chassis.py | 14 -
ironic/objects/conductor.py | 9 -
ironic/objects/node.py | 8 -
ironic/objects/port.py | 49 +-
ironic/objects/portgroup.py | 279 ++++
ironic/openstack/__init__.py | 0
ironic/openstack/common/__init__.py | 0
ironic/openstack/common/_i18n.py | 45 -
ironic/openstack/common/imageutils.py | 152 --
.../unit/drivers/ipxe_config_timeout.template | 19 +
.../unit/drivers/modules/amt/test_management.py | 2 +-
.../unit/drivers/modules/cimc/test_management.py | 4 +-
.../unit/drivers/modules/drac/test_management.py | 602 +++----
.../drivers/modules/ilo/test_firmware_processor.py | 552 +++++++
.../unit/drivers/modules/ilo/test_management.py | 252 +++
.../unit/drivers/modules/irmc/test_inspect.py | 248 +++
.../unit/drivers/modules/oneview/test_common.py | 108 +-
.../unit/drivers/modules/test_agent_base_vendor.py | 247 ++-
.../unit/drivers/modules/test_agent_client.py | 3 +-
.../unit/drivers/modules/test_console_utils.py | 14 +-
.../unit/drivers/modules/test_deploy_utils.py | 1251 +++++----------
.../unit/drivers/modules/test_iscsi_deploy.py | 47 +-
.../unit/drivers/third_party_driver_mock_specs.py | 19 +
ironic_tempest_plugin/README.rst | 22 +
ironic_tempest_plugin/__init__.py | 0
ironic_tempest_plugin/clients.py | 39 +
ironic_tempest_plugin/common/__init__.py | 0
ironic_tempest_plugin/common/waiters.py | 48 +
ironic_tempest_plugin/config.py | 69 +
ironic_tempest_plugin/plugin.py | 39 +
ironic_tempest_plugin/services/__init__.py | 0
.../services/baremetal/__init__.py | 0
ironic_tempest_plugin/services/baremetal/base.py | 204 +++
.../services/baremetal/v1/__init__.py | 0
.../services/baremetal/v1/json/__init__.py | 0
.../services/baremetal/v1/json/baremetal_client.py | 349 ++++
openstack-common.conf | 7 -
.../notes/5.0-release-afb1fbbe595b6bc8.yaml | 6 +
...ption-support-to-ipmitool-e125d07fe13c53e7.yaml | 5 +
.../add-agent-proxy-support-790e629634ca2eb7.yaml | 20 +
...dd-choice-to-some-options-9fb327c48e6bfda1.yaml | 21 +
.../automated_clean_config-0170c95ae210f953.yaml | 5 +
.../debug-no-api-tracebacks-a8a0caddc9676b06.yaml | 7 +
...able-clean-step-reset-ilo-1869a6e08f39901c.yaml | 6 +
.../disk-label-capability-d36d126e0ad36dca.yaml | 5 +
...rac-migrate-to-dracclient-2bd8a6d1dd3fdc69.yaml | 14 +
.../drac-missing-lookup-3ad98e918e1a852a.yaml | 4 +
.../fix-api-access-logs-68b9ca4f411f339c.yaml | 4 +
.../fix-cleaning-spawn-error-60b60281f3be51c2.yaml | 4 +
...late-for-whole-disk-image-943da0311ca7aeb5.yaml | 4 +
releasenotes/notes/futurist-e9c55699f479f97a.yaml | 16 +
...-automated-cleaning-fails-14ee438de3dd8690.yaml | 7 +
...-update-manual-clean-step-e6763dc6dc0d441b.yaml | 4 +
...ctivate-manual-clean-step-84d335998d708b49.yaml | 4 +
.../inspector-for-cisco-bffe1d1af7aec677.yaml | 3 +
.../notes/ipxe-and-uefi-7722bd5db71df02c.yaml | 3 +
releasenotes/notes/ipxe-uefi-f5be11c7b0606a84.yaml | 6 +
.../ipxe_timeout_parameter-03fc3c76c520fac2.yaml | 4 +
.../irmc-oob-inspection-6d072c60f6c88ecb.yaml | 3 +
.../list-nodes-by-driver-a1ab9f2b73f652f8.yaml | 3 +
.../notes/manual-clean-4cc2437be1aea69a.yaml | 5 +
.../name-root-device-hints-a1484ea01e399065.yaml | 3 +
...no-downward-sql-migration-52279e875cd8b7a3.yaml | 5 +
.../notes/node-name-remove-720aa8007f2f8b75.yaml | 4 +
...implementederror-misspell-276a181afd652cf6.yaml | 7 +
.../refactor-ironic-lib-22939896d8d46a77.yaml | 20 +
.../notes/ssh-console-58721af6830f8892.yaml | 3 +
...ciclient-required-version-71398d5d5e1c0bf8.yaml | 7 +
releasenotes/source/current-series.rst | 5 +
releasenotes/source/index.rst | 11 +-
releasenotes/source/liberty.rst | 218 +++
releasenotes/source/mitaka.rst | 6 +
releasenotes/source/unreleased.rst | 6 +-
requirements.txt | 66 +-
setup.cfg | 6 +-
test-requirements.txt | 33 +-
tools/config/oslo.config.generator.rc | 2 +-
tools/flake8wrap.sh | 20 +
tools/run_bashate.sh | 27 +
tools/states_to_dot.py | 53 +-
tox.ini | 12 +-
308 files changed, 19038 insertions(+), 9083 deletions(-)
Requirements updates
--------------------
diff --git a/driver-requirements.txt b/driver-requirements.txt
index 5243cdc..595e830 100644
--- a/driver-requirements.txt
+++ b/driver-requirements.txt
@@ -7 +7 @@
-proliantutils>=2.1.5
+proliantutils>=2.1.7
@@ -11,2 +11,2 @@ python-ironic-inspector-client
-python-oneviewclient<2.1.0,>=2.0.2
-python-scciclient>=0.2.0
+python-oneviewclient<3.0.0,>=2.0.2
+python-scciclient>=0.3.0
@@ -14,0 +15 @@ UcsSdk==0.8.2.2
+python-dracclient>=0.0.5
@@ -16,2 +17,2 @@ UcsSdk==0.8.2.2
-# The drac and amt driver import a python module called "pywsman", however,
-# this does not exist on pypi.
+# The amt driver imports a python module called "pywsman", but this does not
+# exist on pypi.
@@ -31,2 +32,2 @@ pyremotevbox>=0.5.0
-# The CIMC drivers use the Cisco IMC SDK version 0.7.2, which is available from
-# https://communities.cisco.com/docs/DOC-56257
+# The CIMC drivers use the Cisco IMC SDK version 0.7.2 or greater
+ImcSdk>=0.7.2
diff --git a/requirements.txt b/requirements.txt
index d1b6a6f..4fa8227 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -4,3 +4,3 @@
-pbr>=1.6
-SQLAlchemy<1.1.0,>=0.9.9
-alembic>=0.8.0
+pbr>=1.6 # Apache-2.0
+SQLAlchemy<1.1.0,>=1.0.10 # MIT
+alembic>=0.8.0 # MIT
@@ -8,10 +8,11 @@ automaton>=0.5.0 # Apache-2.0
-eventlet>=0.17.4
-WebOb>=1.2.3
-greenlet>=0.3.2
-netaddr!=0.7.16,>=0.7.12
-paramiko>=1.13.0
-python-neutronclient>=2.6.0
-python-glanceclient>=0.18.0
-python-keystoneclient!=1.8.0,>=1.6.0
-python-swiftclient>=2.2.0
-pytz>=2013.6
+eventlet!=0.18.3,>=0.18.2 # MIT
+WebOb>=1.2.3 # MIT
+greenlet>=0.3.2 # MIT
+netaddr!=0.7.16,>=0.7.12 # BSD
+paramiko>=1.16.0 # LGPL
+python-neutronclient!=4.1.0,>=2.6.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
+ironic-lib>=1.1.0 # Apache-2.0
+python-swiftclient>=2.2.0 # Apache-2.0
+pytz>=2013.6 # MIT
@@ -19,4 +20,4 @@ stevedore>=1.5.0 # Apache-2.0
-pysendfile>=2.0.0
-websockify>=0.6.1
-oslo.concurrency>=2.3.0 # Apache-2.0
-oslo.config>=2.7.0 # Apache-2.0
+pysendfile>=2.0.0 # MIT
+websockify>=0.6.1 # LGPLv3
+oslo.concurrency>=3.5.0 # Apache-2.0
+oslo.config>=3.7.0 # Apache-2.0
@@ -24 +25 @@ oslo.context>=0.2.0 # Apache-2.0
-oslo.db>=3.2.0 # Apache-2.0
+oslo.db>=4.1.0 # Apache-2.0
@@ -26,2 +27,2 @@ oslo.rootwrap>=2.0.0 # Apache-2.0
-oslo.i18n>=1.5.0 # Apache-2.0
-oslo.log>=1.12.0 # Apache-2.0
+oslo.i18n>=2.1.0 # Apache-2.0
+oslo.log>=1.14.0 # Apache-2.0
@@ -31,7 +32,7 @@ oslo.serialization>=1.10.0 # Apache-2.0
-oslo.service>=0.12.0 # Apache-2.0
-oslo.utils>=2.8.0 # Apache-2.0
-pecan>=1.0.0
-requests>=2.8.1
-six>=1.9.0
-jsonpatch>=1.1
-WSME>=0.8
+oslo.service>=1.0.0 # Apache-2.0
+oslo.utils>=3.5.0 # Apache-2.0
+pecan>=1.0.0 # BSD
+requests!=2.9.0,>=2.8.1 # Apache-2.0
+six>=1.9.0 # MIT
+jsonpatch>=1.1 # BSD
+WSME>=0.8 # MIT
@@ -39,2 +40,2 @@ Jinja2>=2.8 # BSD License (3 clause)
-keystonemiddleware!=2.4.0,>=2.0.0
-oslo.messaging!=2.8.0,>2.6.1 # Apache-2.0
+keystonemiddleware!=4.1.0,>=4.0.0 # Apache-2.0
+oslo.messaging>=4.0.0 # Apache-2.0
@@ -42,3 +43,4 @@ retrying!=1.3.0,>=1.2.3 # Apache-2.0
-oslo.versionedobjects>=0.13.0
-jsonschema!=2.5.0,<3.0.0,>=2.0.0
-psutil<2.0.0,>=1.1.1
+oslo.versionedobjects>=1.5.0 # Apache-2.0
+jsonschema!=2.5.0,<3.0.0,>=2.0.0 # MIT
+psutil<2.0.0,>=1.1.1 # BSD
+futurist>=0.11.0 # Apache-2.0
diff --git a/test-requirements.txt b/test-requirements.txt
index beb1974..bc4cb6f 100644
--- a/test-requirements.txt
+++ b/test-requirements.txt
@@ -5,4 +5,5 @@ hacking<0.11,>=0.10.0
-coverage>=3.6
-fixtures>=1.3.1
-mock>=1.2
-Babel>=1.3
+coverage>=3.6 # Apache-2.0
+doc8 # Apache-2.0
+fixtures>=1.3.1 # Apache-2.0/BSD
+mock>=1.2 # BSD
+Babel>=1.3 # BSD
@@ -10 +11 @@ PyMySQL>=0.6.2 # MIT License
-iso8601>=0.1.9
+iso8601>=0.1.9 # MIT
@@ -12,7 +13,9 @@ oslotest>=1.10.0 # Apache-2.0
-psycopg2>=2.5
-python-ironicclient>=0.8.0
-python-subunit>=0.0.18
-testtools>=1.4.0
-os-testr>=0.4.1
-testresources>=0.2.4
-testscenarios>=0.4
+psycopg2>=2.5 # LGPL/ZPL
+python-ironicclient>=1.1.0 # Apache-2.0
+python-subunit>=0.0.18 # Apache-2.0/BSD
+testtools>=1.4.0 # MIT
+os-testr>=0.4.1 # Apache-2.0
+testresources>=0.2.4 # Apache-2.0/BSD
+testscenarios>=0.4 # Apache-2.0/BSD
+WebTest>=2.0 # MIT
+bashate>=0.2 # Apache-2.0
@@ -21,3 +24,3 @@ testscenarios>=0.4
-sphinx!=1.2.0,!=1.3b1,<1.3,>=1.1.2
-sphinxcontrib-pecanwsme>=0.8
-sphinxcontrib-seqdiag
+sphinx!=1.2.0,!=1.3b1,<1.3,>=1.1.2 # BSD
+sphinxcontrib-pecanwsme>=0.8 # Apache-2.0
+sphinxcontrib-seqdiag # BSD
1
0
11 Mar '16
We are eager to announce the release of:
python-tackerclient 0.2.0: CLI and Client Library for OpenStack
Networking
This is the first release of python-tackerclient. This release is part
of the liberty release series.
With package available at:
https://pypi.python.org/pypi/python-tackerclient
For more details, please see below.
Changes in python-tackerclient 1639b8be19390e5b8ffcab014954c7dd8442df7f..0.2.0
------------------------------------------------------------------------------
24c84e5 Fix for vnfd-delete with vnfd-name as arg
f7d9000 Escape yaml string to configure VDU
fed4a77 Update .gitreview for new namespace
9a38919 Limit description length in vnfd-list
6252d7f Implement Tacker MANO API client changes
8459dd4 Change ignore-errors to ignore_errors
54c71bb Fix drop of config values supplied by end user
a3f34f8 Added validation for vnfd-create
782a342 Parameterization support added for VNFD templates
3c77bac Support Tacker client in master branch
ab13fa3 The vnf-create and vnfd-create output is hard to read
0c3c575 Add instructions to tackerclient
16b9bc9 Add --vnfd-name option to vnf-create command
5cd50a8 Clean up list output for device, vnf and vnfd
8c4636c call _super method for _XtachInterface parent class
85598f7 update_vnf: support config as yaml file
584bb05 vnfd: name and description was not supported
273e022 device, vnf: name column support
10ade21 vnf-create: key error by tenant_id
34c5f67 tackerclient: api for vnfd, vnd
480a86f vnfd, vnf: command options
03242bd teach vnf-create config
fc27717 add vnf related command
71556e2 add vnfd commends
36ae4a0 remove commands for service
5709e82 command: device-template and device
c5367c8 Revert "service instance: drop command related to service instance"
dc2a2b7 XML_NS_V20 -> XML_NS_V10
e843dbd catch up neutronclient change
4291ce9 use servicevm as service type for openstack client
2bbef9c rename --kwargs to --attributes
2ec8130 attach/detach interface command
bd5bbfb service instance: drop command related to service instance
c5b4e28 correct repo in .gitreview
8d1c86b Work toward Python 3.4 support and testing
87a2257 implement servicevm related command
ffa7a58 rename neutron to tacker
14eeda8 rename neutron to tacker
066bddc remove unnecessary neutronclient files
2acb813 remove unnecessary neutron file under neutronclient/tests
e8debf8 setup logger name of NeutronCommand automatically
872ab5e import python-neutronclient of 1bce6e437e2dd1fa5de6fc2ccdd0ee8ac3f44d18
1
0
11 Mar '16
We are chuffed to announce the release of:
python-troveclient 2.1.1: Client library for OpenStack DBaaS API
This release is part of the mitaka release series.
With source available at:
https://git.openstack.org/cgit/openstack/python-troveclient
With package available at:
https://pypi.python.org/pypi/python-troveclient
Please report issues through launchpad:
https://bugs.launchpad.net/python-troveclient
For more details, please see below.
Changes in python-troveclient 2.1.0..2.1.1
------------------------------------------
3c71e52 Revert "Time to get rid of any last vestiges of slave_of"
Diffstat (except docs and test files)
-------------------------------------
troveclient/v1/instances.py | 18 +++++++++++++++---
2 files changed, 31 insertions(+), 7 deletions(-)
1
0
11 Mar '16
We are amped to announce the release of:
ironic-inspector 3.1.0: Hardware introspection for OpenStack Bare
Metal
This release is part of the mitaka release series.
With source available at:
http://git.openstack.org/cgit/openstack/ironic-inspector
Please report issues through launchpad:
http://bugs.launchpad.net/ironic-inspector
For more details, please see below.
3.1.0
^^^^^
New Features
************
* Introduced API "POST /v1/introspection/<UUID>/abort" for aborting
the introspection process.
* New condition plugins "contains" and "matches" allow to match
value against regular expressions.
* Added new condition plugin "is-empty", which allows to match empty
string, list, dictionary or None.
* Add a new node_not_found hook - enroll, which allows automatically
discover Ironic's node.
* Conditions now support comparing fields from node info;
* Actions support formatting to fetch values from introspection
data. See http://docs.openstack.org/developer/ironic-
inspector/usage.html #introspection-rules
* Introspection rules conditions got a new generic "invert"
parameter that inverts the result of the condition.
Upgrade Notes
*************
* Switch required Ironic API version to '1.11', which supports
'enroll' state.
* Minimum possible value for the "max_concurrency" setting is now 2.
* Removed deprecated support for passing "node_patches" and
"ports_patches" arguments to processing hooks.
* Ramdisk logs are no longer part of data stored to Swift and
returned by the API.
* Introspection rules actions 'set-attribute', 'set-capability' and
'extend-attribute' no longer have the opposite effect on nodes that
do not match a rule.
Deprecation Notes
*****************
* The rollback actions for introspection rules are deprecated. No
in- tree actions are using them, 3rdpart should stop using them as
soon as possible.
* Using the root_device_hint alias for the raid_device plugin is
deprecated.
Bug Fixes
*********
* Fixed extra_hardware plugin connection to Swift.
* Only issue iptables calls when list of active MAC's changes.
* Dropped rollback actions from 'set-attribute', 'set-capability'
and 'extend-attribute' introspection rules actions, as they were
confusing, completely undocumented and broke some real world use
cases (e.g. setting driver field).
* Introspection rules (e.g. set-attribute action) now accept 'path'
field without leading forward slash as Ironic cli does.
Other Notes
***********
* Switched to Futurist library for asynchronous tasks.
* Log level for error when node was not found in Inspector cache was
changed from error to info level. It was done because not_found_hook
may handle this case, so this wouldn't be error anymore.
Changes in ironic-inspector 3.0.0..3.1.0
----------------------------------------
dab4217 Allow specify log level for Error exception
8688bb3 Updated from global requirements
bc1d71f Deprecate root_device_hint name for raid_device plugin
eb9891b Remove redundant data copying in tests
dfddcd5 Update the troubleshooting guide
3471ec9 Officially deprecate rollback for introspection rules
3975337 Generate API documentation from Python modules
2597501 Fixed warnings during the docs build
8b07533 Refactor service init, shutdown and run into a separate class
48aa522 Fix incorrect string formatting in the SSL code
51f5690 Refactor base test classes
b804efe Move ironic options to common/ironic
b71a3d9 Use dedicated config file for config generator
2f8e105 Recommend using dhcp-sequential-ip in the dnsmasq configuration
e8ecb99 Correct method call to to_dict
5b02024 Use futurist library for asynchronous tasks
59e0f92 [devstack] Improve virtual machines logs
0f8b5de Split ironic-related functions from utils to separate common.ironic module
a5c8c2a Add db migrations tests
cb83e95 Clarify that we don't maintain compatibility for stored data
5086d93 Add enroll_node_not_found hook
8a0b514 Logging configuration options at startup
b5fd510 Add invert option to rule conditions
bbe44d2 Updated from global requirements
f6c60eb Updated from global requirements
d8de403 Fix gate broken by sudden remove of SERVICE_TENANT_NAME variable
061d839 Add new condition: is-empty
a181378 Updated from global requirements
bf86545 Extend conditions and actions
ea93510 Small ValidateInterfacesHook cleanup
31f7a5a Drop rollback actions for set-XX and extend-XX rules actions
f56bf0c Do not set Swift parameters defaults in keyword arguments
e86cec3 Stop storing ramdisk logs with the introspection data
b49021b Expand instructions for DNS on Ubuntu
61d0b85 Always generate fresh uuid in test cases
11899a1 Updated from global requirements
17274a6 Add forward slash for node path patch
7cbbd2d Remove "ramdisk" mentioning in func test contrib
7a3d937 Introduce API for aborting introspection
daa20e2 Do not update firewall rules if list of MAC's did not change
88bac30 Update example.conf
cc422c0 Remove deprecated support for passing patches lists into hooks
c926e1e [devstack] Use the coreos builder for the source build of the ramdisk
40c17e3 Enable Keystone v3 endpoints for Inspector
7ee29da Register the keystone service and endpoint in the devstack plugin
800dedc Clean up documentation on introspection rules conditions
c5a2dd6 Updated from global requirements
b28f1a7 Update translation setup
6dd0de0 Use new introspection data save command in exercise.sh
7477959 Set timeout in gate to 10 minutes
570fd43 Updated from global requirements
d6ff54f Add new conditions: matches and contains
f34b1aa Updated from global requirements
cdf2287 Check whether agent tarball exists
Diffstat (except docs and test files)
-------------------------------------
.gitignore | 1 +
CONTRIBUTING.rst | 17 +-
config-generator.conf | 9 +
devstack/exercise.sh | 2 +-
devstack/plugin.sh | 39 ++-
example.conf | 134 +++-----
.../locale/ironic-inspector-log-critical.pot | 39 ---
.../locale/ironic-inspector-log-error.pot | 55 ---
.../locale/ironic-inspector-log-info.pot | 86 -----
.../locale/ironic-inspector-log-warning.pot | 91 -----
ironic-inspector/locale/ironic-inspector.pot | 220 ------------
ironic_inspector/common/i18n.py | 2 +-
ironic_inspector/common/ironic.py | 176 ++++++++++
ironic_inspector/common/swift.py | 47 ++-
ironic_inspector/conf.py | 62 +---
ironic_inspector/db.py | 1 +
ironic_inspector/dbsync.py | 8 +-
ironic_inspector/firewall.py | 20 +-
ironic_inspector/introspect.py | 66 +++-
ironic_inspector/main.py | 219 +++++++-----
...9a4a81d88_add_invert_field_to_rule_condition.py | 37 ++
ironic_inspector/node_cache.py | 38 ++-
ironic_inspector/plugins/base.py | 17 +-
ironic_inspector/plugins/discovery.py | 102 ++++++
ironic_inspector/plugins/example.py | 3 -
ironic_inspector/plugins/raid_device.py | 7 +
ironic_inspector/plugins/rules.py | 55 +--
ironic_inspector/plugins/standard.py | 71 ++--
ironic_inspector/process.py | 42 ++-
ironic_inspector/rules.py | 85 ++++-
ironic_inspector/test/base.py | 67 ++--
ironic_inspector/test/functional.py | 87 ++++-
ironic_inspector/test/test_common_ironic.py | 118 +++++++
ironic_inspector/test/test_firewall.py | 56 ++-
ironic_inspector/test/test_introspect.py | 113 +++++-
ironic_inspector/test/test_main.py | 111 +++---
ironic_inspector/test/test_migrations.py | 380 +++++++++++++++++++++
ironic_inspector/test/test_node_cache.py | 135 ++++++--
ironic_inspector/test/test_plugins_discovery.py | 128 +++++++
ironic_inspector/test/test_plugins_rules.py | 95 +++---
ironic_inspector/test/test_plugins_standard.py | 12 +-
ironic_inspector/test/test_process.py | 82 +++--
ironic_inspector/test/test_rules.py | 105 +++++-
ironic_inspector/test/test_swift.py | 12 +
ironic_inspector/test/test_utils.py | 115 +------
ironic_inspector/utils.py | 114 +------
.../abort-introspection-ae5cb5a9fbacd2ac.yaml | 4 +
.../notes/contains-matches-ee28958b08995494.yaml | 4 +
.../notes/deprecate-rollback-dea95ac515d3189b.yaml | 4 +
...eprecate-root-device-hint-909d389b7efed5da.yaml | 3 +
.../notes/empty-condition-abc707b771be6be3.yaml | 4 +
.../notes/enroll-hook-d8c32eba70848210.yaml | 6 +
.../notes/extend-rules-9a9d38701e970611.yaml | 5 +
.../extra-hardware-swift-aeebf299b9605bb0.yaml | 3 +
releasenotes/notes/futurist-557fcd18d4eaf1c1.yaml | 5 +
.../googbye-patches-args-071532024b9260bd.yaml | 4 +
.../less-iptables-calls-759e89d103df504c.yaml | 3 +
...nfo-not-found-cache-error-afbc87e80305ca5c.yaml | 5 +
.../no-logs-stored-data-6db52934c7f9a91a.yaml | 4 +
.../notes/no-rollback-e15bc7fee0134545.yaml | 10 +
.../patch-head-backslash-24bcdd03ba254bf2.yaml | 4 +
.../notes/rules-invert-2585173a11db3c31.yaml | 4 +
requirements.txt | 13 +-
setup.cfg | 23 +-
test-requirements.txt | 4 +
tox.ini | 9 +-
71 files changed, 2425 insertions(+), 1361 deletions(-)
Requirements updates
--------------------
diff --git a/requirements.txt b/requirements.txt
index ca0b5f0..fb076cf 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -6 +6 @@ Babel>=1.3 # BSD
-eventlet>=0.17.4 # MIT
+eventlet!=0.18.3,>=0.18.2 # MIT
@@ -7,0 +8 @@ Flask<1.0,>=0.10 # BSD
+futurist>=0.11.0 # Apache-2.0
@@ -13 +14 @@ pbr>=1.6 # Apache-2.0
-python-ironicclient>=0.8.0 # Apache-2.0
+python-ironicclient>=1.1.0 # Apache-2.0
@@ -16,2 +17,2 @@ python-swiftclient>=2.2.0 # Apache-2.0
-oslo.concurrency>=2.3.0 # Apache-2.0
-oslo.config>=3.2.0 # Apache-2.0
+oslo.concurrency>=3.5.0 # Apache-2.0
+oslo.config>=3.7.0 # Apache-2.0
@@ -19 +20 @@ oslo.db>=4.1.0 # Apache-2.0
-oslo.i18n>=1.5.0 # Apache-2.0
+oslo.i18n>=2.1.0 # Apache-2.0
@@ -22 +23 @@ oslo.rootwrap>=2.0.0 # Apache-2.0
-oslo.utils>=3.4.0 # Apache-2.0
+oslo.utils>=3.5.0 # Apache-2.0
diff --git a/test-requirements.txt b/test-requirements.txt
index 87e394c..c77cbb7 100644
--- a/test-requirements.txt
+++ b/test-requirements.txt
@@ -10,0 +11,4 @@ reno>=0.1.1 # Apache2
+fixtures>=1.3.1 # Apache-2.0/BSD
+testresources>=0.2.4 # Apache-2.0/BSD
+testscenarios>=0.4 # Apache-2.0/BSD
+oslotest>=1.10.0 # Apache-2.0
1
0
[OSSA 2016-007.1] Nova host data leak through resize/migration (CVE-2016-2140) ERRATA
by Tristan Cacqueray 10 Mar '16
by Tristan Cacqueray 10 Mar '16
10 Mar '16
=============================================================
OSSA-2016-007.1: Nova host data leak through resize/migration
=============================================================
:Date: March 08, 2016
:CVE: CVE-2016-2140
Affects
~~~~~~~
- Nova: <=2015.1.3, >=12.0.0 <=12.0.2
Description
~~~~~~~~~~~
Matthew Booth from Red Hat reported a vulnerability in Nova instance
resize/migration. By overwriting an ephemeral or root disk with a
malicious image before requesting a resize, an authenticated user may
be able to read arbitrary files from the compute host. Only setups
using libvirt driver with raw storage and setting "use_cow_images =
False" (not default) are affected.
Errata
~~~~~~
The former fix did not take into account the usage of non-disk-image
backends and caused a regression for this use-case. This update
provides an additional fix for that issue.
Patches
~~~~~~~
- https://review.openstack.org/289960 - original (Kilo)
- https://review.openstack.org/290847 - errata (Kilo)
- https://review.openstack.org/289958 - original (Liberty)
- https://review.openstack.org/290843 - errata (Liberty)
- https://review.openstack.org/289957 - original (Mitaka)
- https://review.openstack.org/290715 - errata (Mitaka)
Credits
~~~~~~~
- Matthew Booth from Red Hat (CVE-2016-2140)
References
~~~~~~~~~~
- https://bugs.launchpad.net/bugs/1548450
- https://bugs.launchpad.net/bugs/1555287
- http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2016-2140
OSSA History
~~~~~~~~~~~~
- 2016-03-09 - Errata 1
- 2016-03-08 - Original Version
--
Tristan Cacqueray
OpenStack Vulnerability Management Team
1
0
[OSSA 2016-007] Nova host data leak through resize/migration (CVE-2016-2140)
by Tristan Cacqueray 09 Mar '16
by Tristan Cacqueray 09 Mar '16
09 Mar '16
===========================================================
OSSA-2016-007: Nova host data leak through resize/migration
===========================================================
:Date: March 08, 2016
:CVE: CVE-2016-2140
Affects
~~~~~~~
- Nova: <=2015.1.3, >=12.0.0 <=12.0.2
Description
~~~~~~~~~~~
Matthew Booth from Red Hat reported a vulnerability in Nova instance
resize/migration. By overwriting an ephemeral or root disk with a
malicious image before requesting a resize, an authenticated user may
be able to read arbitrary files from the compute host. Only setups
using libvirt driver with raw storage and setting "use_cow_images =
False" (not default) are affected.
Patches
~~~~~~~
- https://review.openstack.org/289960 (Kilo)
- https://review.openstack.org/289958 (Liberty)
- https://review.openstack.org/289957 (Mitaka)
Credits
~~~~~~~
- Matthew Booth from Red Hat (CVE-2016-2140)
References
~~~~~~~~~~
- https://bugs.launchpad.net/bugs/1548450
- http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2016-2140
Notes
~~~~~
- This fix will be included in future 2015.1.3 (kilo) and 12.0.3
(liberty) releases.
--
Tristan Cacqueray
OpenStack Vulnerability Management Team
1
1
The OpenStack Telemetry team is pleased to announce the release of
Gnocchi 2.0.2
You can get more information about bugs fixed on Launchpad since 2.0.0:
https://launchpad.net/gnocchi/2.0/2.0.2
https://launchpad.net/gnocchi/2.0/2.0.1
It's also available on PyPI:
https://pypi.python.org/pypi/gnocchi/2.0.2
Highlights
----------
- Fix some migration issues from Gnocchi 1.3.X
For more details, please see below.
Changes in gnocchi 2.0.0..2.0.2
-------------------------------
0c876c4 ensure timeseries has unique index
f665a4d synchronously delete archives
0e85d8c Make the content of PKG-INFO can be decoded
43f0775 optimise timeseries
f45bd17 close queues
9cf6c7d ceph: fix help string
1ed960a Pass aggregation when create AggregatedTimeSerie
e7739cb fix migration from v1.3 to v2.0
eef4177 fix partitioning
Diffstat (except docs and test files)
-------------------------------------
README.rst | 2 +-
gnocchi/carbonara.py | 36 ++++++++++++++++---------
gnocchi/cli.py | 13 +++++----
gnocchi/storage/_carbonara.py | 1 +
gnocchi/storage/ceph.py | 9 ++++---
7 files changed, 104 insertions(+), 41 deletions(-)
--
Mehdi Abaakouk
mail: sileht(a)sileht.net
irc: sileht
1
0
07 Mar '16
We are pleased to announce the release of:
nova 12.0.2: Cloud computing fabric controller
This release is part of the liberty stable release series.
For more details, please see below.
Changes in nova 12.0.1..12.0.2
------------------------------
b806adb Propagate qemu-img errors to compute manager
4e1957f Fix evacuate support with Nova cells v1
2da1d8b libvirt: set libvirt.sysinfo_serial='none' for virt driver tests
9fbd706 XenAPI: Workaround for 6.5 iSCSI bug
0382cb8 Change warn to debug logs when migration context is missing
6edcc2a Imported Translations from Zanata
eb1f67c libvirt: Fix/implement revert-resize for RBD-backed images
14440aa Ensure Glance image 'size' attribute is 0, not 'None'
9701921 Add retry logic for detaching device using LibVirt
65d0ef8 Spread allocations of fixed ips
19e7aba Apply scheduler limits to Exact* filters
0d5b3c6 Replace eventlet-based raw socket client with requests
2c6c674 VMware: Handle image size correctly for OVA and streamOptimized images
deacf0e XenAPI: Cope with more Cinder backends
adc21bb ports & networks gather should validate existance
4440172 Disable IPv6 on bridge devices
1f594f9 Imported Translations from Zanata
9ed4489 Imported Translations from Zanata
a0ffd8c Validate translations
d1f3715 Fix instance not destroyed after successful evacuation
8ffca40 Imported Translations from Zanata
Diffstat (except docs and test files)
-------------------------------------
nova/compute/cells_api.py | 9 +-
nova/compute/manager.py | 5 +-
nova/db/sqlalchemy/api.py | 12 +-
nova/exception.py | 8 +
nova/image/glance.py | 3 +
nova/locale/cs/LC_MESSAGES/nova-log-critical.po | 12 +-
nova/locale/cs/LC_MESSAGES/nova-log-error.po | 12 +-
nova/locale/cs/LC_MESSAGES/nova-log-info.po | 12 +-
nova/locale/cs/LC_MESSAGES/nova-log-warning.po | 12 +-
nova/locale/cs/LC_MESSAGES/nova.po | 17 +-
nova/locale/de/LC_MESSAGES/nova-log-critical.po | 14 +-
nova/locale/de/LC_MESSAGES/nova-log-error.po | 12 +-
nova/locale/de/LC_MESSAGES/nova-log-info.po | 12 +-
nova/locale/de/LC_MESSAGES/nova.po | 35 +-
nova/locale/es/LC_MESSAGES/nova-log-critical.po | 12 +-
nova/locale/es/LC_MESSAGES/nova-log-error.po | 15 +-
nova/locale/es/LC_MESSAGES/nova-log-info.po | 12 +-
nova/locale/es/LC_MESSAGES/nova-log-warning.po | 12 +-
nova/locale/es/LC_MESSAGES/nova.po | 47 +-
nova/locale/es_MX/LC_MESSAGES/nova-log-critical.po | 12 +-
nova/locale/fr/LC_MESSAGES/nova-log-critical.po | 12 +-
nova/locale/fr/LC_MESSAGES/nova-log-error.po | 12 +-
nova/locale/fr/LC_MESSAGES/nova-log-info.po | 12 +-
nova/locale/fr/LC_MESSAGES/nova-log-warning.po | 12 +-
nova/locale/fr/LC_MESSAGES/nova.po | 107 ++-
nova/locale/it/LC_MESSAGES/nova-log-error.po | 12 +-
nova/locale/it/LC_MESSAGES/nova-log-info.po | 12 +-
nova/locale/it/LC_MESSAGES/nova.po | 17 +-
nova/locale/ja/LC_MESSAGES/nova-log-critical.po | 14 +-
nova/locale/ja/LC_MESSAGES/nova.po | 35 +-
nova/locale/ko_KR/LC_MESSAGES/nova-log-critical.po | 10 +-
nova/locale/ko_KR/LC_MESSAGES/nova.po | 25 +-
nova/locale/nova-log-warning.pot | 271 +++----
nova/locale/nova.pot | 806 +++++++++++----------
nova/locale/pa_IN/LC_MESSAGES/nova-log-critical.po | 12 +-
nova/locale/pt_BR/LC_MESSAGES/nova-log-critical.po | 10 +-
nova/locale/pt_BR/LC_MESSAGES/nova.po | 93 ++-
nova/locale/ru/LC_MESSAGES/nova.po | 184 ++++-
nova/locale/tr_TR/LC_MESSAGES/nova-log-critical.po | 12 +-
nova/locale/tr_TR/LC_MESSAGES/nova-log-error.po | 19 +-
nova/locale/tr_TR/LC_MESSAGES/nova-log-info.po | 12 +-
nova/locale/tr_TR/LC_MESSAGES/nova-log-warning.po | 25 +-
nova/locale/tr_TR/LC_MESSAGES/nova.po | 31 +-
nova/locale/zh_CN/LC_MESSAGES/nova-log-critical.po | 12 +-
nova/locale/zh_CN/LC_MESSAGES/nova-log-error.po | 12 +-
nova/locale/zh_CN/LC_MESSAGES/nova-log-info.po | 12 +-
nova/locale/zh_CN/LC_MESSAGES/nova-log-warning.po | 12 +-
nova/locale/zh_CN/LC_MESSAGES/nova.po | 25 +-
nova/locale/zh_TW/LC_MESSAGES/nova.po | 20 +-
nova/network/neutronv2/api.py | 41 +-
nova/objects/instance.py | 12 +-
nova/scheduler/filters/exact_core_filter.py | 4 +
nova/scheduler/filters/exact_disk_filter.py | 4 +
nova/scheduler/filters/exact_ram_filter.py | 4 +
.../scheduler/filters/test_exact_core_filter.py | 3 +
.../scheduler/filters/test_exact_disk_filter.py | 6 +-
.../scheduler/filters/test_exact_ram_filter.py | 6 +-
nova/virt/images.py | 25 +-
nova/virt/libvirt/driver.py | 45 +-
nova/virt/libvirt/guest.py | 50 ++
nova/virt/libvirt/imagebackend.py | 34 +
nova/virt/libvirt/storage/rbd_utils.py | 60 +-
nova/virt/libvirt/utils.py | 2 +
nova/virt/libvirt/vif.py | 7 +
nova/virt/vmwareapi/images.py | 8 +-
nova/virt/vmwareapi/vmops.py | 12 +-
nova/virt/xenapi/vmops.py | 13 +-
nova/virt/xenapi/volume_utils.py | 33 +-
tox.ini | 3 +
87 files changed, 2189 insertions(+), 949 deletions(-)
1
0