We are ecstatic to announce the release of: python-ironicclient 1.7.0: OpenStack Bare Metal Provisioning API Client Library This release is part of the newton release series. With source available at: http://git.openstack.org/cgit/openstack/python-ironicclient With package available at: https://pypi.python.org/pypi/python-ironicclient Please report issues through launchpad: http://bugs.launchpad.net/python-ironicclient For more details, please see below. 1.7.0 ^^^^^ New Features ************ * Adds a new "ironic create" command that creates resources (chassis, nodes, ports) specified in one or more JSON ("*.json") or YAML ("*.yaml") files. * Adds a new "openstack baremetal create" command. Similar to the "ironic create" command, this command creates resources specified in one or more files. (Note that "openstack baremetal create" can also be used to create a node via specified node attributes. However, this feature has been deprecated since 1.4.0.) * The "ironic port-show", "ironic port-list --detail", and "ironic node-port-list --detail" commands now include the "internal_info" field in the output. * Adds new OpenStackClient commands: * "openstack baremetal chassis create" * "openstack baremetal chassis delete" * "openstack baremetal chassis list" * "openstack baremetal chassis set" * "openstack baremetal chassis show" * "openstack baremetal chassis unset" * "openstack baremetal driver list" * "openstack baremetal driver passthru call" * "openstack baremetal driver passthru list" * "openstack baremetal driver show" * "openstack baremetal node adopt" * "openstack baremetal node boot device set" * "openstack baremetal node boot device show" * "openstack baremetal node console disable" * "openstack baremetal node console enable" * "openstack baremetal node console show" * "openstack baremetal node passthru call" * "openstack baremetal node passthru list" * "openstack baremetal node validate" * "openstack baremetal port delete" * "openstack baremetal port list" * "openstack baremetal port set" * "openstack baremetal port unset" Please see the help for each command for more information. * Adds an option "--chassis <chassis UUID>" to the "openstack baremetal node list" command. It provides the ability to get a list of the nodes of the specified chassis. * Allows setting and unsetting (clearing) the node's target RAID configuration via the OpenStackClient plugin commands "openstack baremetal node set --target-raid-config" and "openstack baremetal node unset --target-raid-config" respectively. * Adds "--wait" flag to the "ironic node-set-provision-state" command and the associated "node.wait_for_provision_state" method in the Python API. The flag works with all provision state changes except for "abort". Deprecation Notes ***************** * Deprecates "-l" argument of "openstack baremetal port create" command in favor of "--local-link-connection", as by OpenStackClient guidelines, the options should be full words. Bug Fixes ********* * Fail with EndpointException instead of IndexError while creating v1 client without "endpoint" argument if os_ironic_api_version isn't specified. Changes in python-ironicclient 1.6.0..1.7.0 ------------------------------------------- 465c504 Correct a couple small grammar things in release notes 2262f98 Clean up release notes for 1.7 5c89c3d Change 'P' to 'Queens' and add deprecation date e31544b Add openstack baremetal driver commands d8cd1ce Add node validate OSC command 1345372 Add --chassis to 'openstack baremetal node list' 1bc9df9 Sync tools/tox_install.sh a08eb48 Updated from global requirements 3e58d0f Using assertIsNone() is preferred over assertEqual() 188ab8c Add --node to 'openstack baremetal port list' 0f00533 Adds node boot device & passthru OSC commands 1688aed Set/unset node's target RAID config via OSC command 1add122 Add baremetal port list command to OSC plugin 313fb98 Updated from global requirements 7513aae Add baremetal port delete command to OSC plugin dd75510 Add openstack baremetal chassis commands fd54fd0 Adds 'openstack baremetal node console' commands 9acb5d2 Use osc-lib instead of openstackclient 0a0e151 Use osc_lib instead of cliff 1370e62 Update hacking test-requirement cbb402e Add docs target to tox.ini e7c286f Add --wait flag for provision actions and wait_for_provision_state function 83f70ba Use constraints for all the things d013193 Trivial: Fix doc string for class DeleteBaremetalNode 7f650e3 Add key_value_pairs_to_dict() method 5b0469e Updated from global requirements eb8d9e8 Add 'openstack baremetal node adopt' command a015463 Update help shown for node-delete 3a4f3af Add baremetal port set command to OSC plugin eb97ff3 Fail with more meaningful error while creating client 7bf8ac8 Deprecate -l option for port creation in OSC plugin 144d676 Trivial: remove redundant parentheses 8a71829 Remove unused variables assignments in OSC plugin unit tests bd6d94a Fix i18n problems in shell.py 91c4539 Add create command to ironic client a52cc0d Updated from global requirements 87f1a69 Fix uuid to UUID in expected error messages 1f29bbb Trivial: Remove useless spaces 4e82421 Verify JSON response of driver commands b2c4c7e Make shell main() specify return value in exit code 4fdaccd Add baremetal port unset command to OSC plugin 75cf16d Add internal_info field to port 0633c58 Remove unused LONG_FIELDS 16f4b88 Remove discover from test-requirements Diffstat (except docs and test files) ------------------------------------- ironicclient/common/utils.py | 26 +- ironicclient/exc.py | 8 + ironicclient/osc/plugin.py | 2 +- ironicclient/osc/v1/baremetal_chassis.py | 307 +++++++++++ ironicclient/osc/v1/baremetal_create.py | 78 +++ ironicclient/osc/v1/baremetal_driver.py | 164 ++++++ ironicclient/osc/v1/baremetal_node.py | 373 ++++++++++++-- ironicclient/osc/v1/baremetal_port.py | 265 +++++++++- ironicclient/shell.py | 110 ++-- ironicclient/v1/client.py | 14 +- ironicclient/v1/create_resources.py | 272 ++++++++++ ironicclient/v1/create_resources_shell.py | 28 + ironicclient/v1/driver_shell.py | 8 +- ironicclient/v1/node.py | 88 +++- ironicclient/v1/node_shell.py | 71 ++- ironicclient/v1/port.py | 9 +- ironicclient/v1/resource_fields.py | 3 + ironicclient/v1/shell.py | 2 + .../notes/add-create-command-3df5efbbecc33276.yaml | 10 + .../add-port-internal-info-74a03ebd8b0a3dfc.yaml | 5 + .../index-error-no-endpoint-eb281187f80a9aa4.yaml | 5 + .../notes/osc-commands-1-7-d531960472a11ac2.yaml | 31 ++ .../osc-node-list-chassis-091d080684cdccf8.yaml | 6 + .../notes/osc-plugin-ff0d897d8441a9e1.yaml | 2 +- ...de-set-target-raid-config-5d538d6253902ecb.yaml | 8 + .../provision-state-wait-e7ff919ce8e13703.yaml | 5 + .../remove-llc-short-arg-89c7443acc6c54a4.yaml | 5 + requirements.txt | 10 +- setup.cfg | 28 +- test-requirements.txt | 5 +- tools/tox_install.sh | 55 ++ tox.ini | 10 +- 51 files changed, 4348 insertions(+), 160 deletions(-) Requirements updates -------------------- diff --git a/requirements.txt b/requirements.txt index d89a88a..004b3d2 100644 --- a/requirements.txt +++ b/requirements.txt @@ -6,3 +6,4 @@ appdirs>=1.3.0 # MIT License -dogpile.cache>=0.6.1 # BSD -cliff!=1.16.0,!=1.17.0,>=1.15.0 # Apache-2.0 -keystoneauth1>=2.7.0 # Apache-2.0 +dogpile.cache>=0.6.2 # BSD +jsonschema!=2.5.0,<3.0.0,>=2.0.0 # MIT +keystoneauth1>=2.10.0 # Apache-2.0 +osc-lib>=1.0.2 # Apache-2.0 @@ -10 +11 @@ oslo.i18n>=2.1.0 # Apache-2.0 -oslo.utils>=3.15.0 # Apache-2.0 +oslo.utils>=3.16.0 # Apache-2.0 @@ -12,0 +14 @@ python-openstackclient>=2.1.0 # Apache-2.0 +PyYAML>=3.1.0 # MIT diff --git a/test-requirements.txt b/test-requirements.txt index 6d3f403..78e28b2 100644 --- a/test-requirements.txt +++ b/test-requirements.txt @@ -4 +4 @@ -hacking<0.11,>=0.10.0 +hacking<0.12,>=0.11.0 # Apache-2.0 @@ -6 +5,0 @@ coverage>=3.6 # Apache-2.0 -discover # BSD @@ -20 +19 @@ os-testr>=0.7.0 # Apache-2.0 -jsonschema>=2.0.0,<3.0.0,!=2.5.0 # MIT +jsonschema!=2.5.0,<3.0.0,>=2.0.0 # MIT