API version 1.56 introduces support for building configdrive on the
server side. In this case configdrive is a dictionary, this changes
adds support for it.
Change-Id: I2b870fc89aa31c13b33f76b14acd6ee959800554
Depends-On: https://review.openstack.org/639050
Story: #2005083
Task: #29841
Adds the Python API to create/list/view/delete allocations, as well
as the OpenStackClient commands.
Change-Id: Ib97ee888c4a7b6dfa38934f02372284aa4c781a0
Story: #2004341
Task: #28028
Adds conductor resource to the CLI, the support to list and show
conductor resource, and filter nodes by conductor field.
Story: 1724474
Task: 28066
Change-Id: I9644b9b1bbe2f4f5aa6e80a6bb7ab9b0a4663a6f
Modify api to manage the new automated_clean field.
Also bump last known version to 47
Change-Id: I790c762083c2c1b6cbdde4b21434c56bb99236dd
Story: #2002161
Task: #23252
Implements support for conductor groups when creating, updating and
listing nodes. Refactored some CLI code to avoid excessive copy-paste.
Change-Id: I16559bc3bb6dcbac996c768aa4514676cf4a98a8
Depends-On: https://review.openstack.org/#/c/581391/
Story: #2001795
Task: #23117
A continuation of previous patches adding support for node
get and list calls to be able to overriden with an
os_ironic_api_version keyword argument.
Also adds a release note covering the prior patches in this
series.
Change-Id: I870540a23555e6ae37659452f727872d9d7882a3
Related-Bug: #1739440
Story: #2001870
Task: #14325
This adds support for the BIOS Setting APIs in the
openstackclient plugin. Also bump the last known
API version to 1.40 to get access to new API.
Change-Id: I1b4185e53818686c895d1fe526ba3fe5540873b3
This patch adds codes to support the fault field exposed from ironic API.
Querying nodes with specified fault is also supported as well.
Story: #1596107
Task: #10469
Partial-Bug: #1596107
Depends-On: https://review.openstack.org/556015/
Change-Id: I429df0ab5ea39140a2b988d5dfdacb24a67b955e
This is the first of (hopefully) many patches to enable API version
overrides to be passed into ironicclient methods.
This one plumbs .update() to accept an os_ironic_api_version kwarg and,
if specified, stuff it in the appropriate header for the call.
It also sets up node.set_provision_state to use that framework.
This was brought about by the ugliness necessary to make [1] work in
Nova.
[1] https://review.openstack.org/#/c/554762/
Related-Bug: #1739440
Task: #14326
Story: #2001870
Change-Id: Ic772ada7e562bc845045736cb18c17d7117818f7
It can happen if one of heartbeats encounteres "node locked" error, which
is normal, because the next heartbeat will succeed.
Change-Id: Iaed9b83e199761eac4e0e2157c16ea1efa564c24
Story: #2002094
Task: #19772
This addresses the comments in PS29 of
change id Id865d7c9a40e8d85242befb2a0335abe0c52dac7
Change-Id: I7352bedfdf65f5af1bd239476a343104f87965dd
Partial-bug: 1526449
Adding support for rescue and unrescue to OSC.
Co-Authored-By: Michael Turek <mjturek@linux.vnet.ibm.com>
Co-Authored-By: Dao Cong Tien <tiendc@vn.fujitsu.com>
Change-Id: Id865d7c9a40e8d85242befb2a0335abe0c52dac7
Depends-On: I3953ff0b1ca000f8ae83fb7b3c663f848a149345
Partial-bug: 1526449
This adds support for the traits APIs in both the node portion of the
SDK, and the openstackclient plugin. We also bump the last known API
version to 1.37 to get access to the new API.
Change-Id: I72017d51dea194ec062a66cb19d718ba827e7427
Partial-Bug: #1722194
Depends-On: I313fa01fbf20bf0ff19f102ea63b02e72ac2b856
In the doc-migration, warning-is-error was never enabled
for python-ironicclient. As such, I've enabled it and
corrected the various document errors.
Change-Id: I2d1b95fba25dba5d59da3f4b09b9974ff5196940
This adds support for volume_target, which is required to boot instances
from volumes.
This will expose new Python API to operate volume targets:
- client.volume_target.create
- client.volume_target.list
- client.volume_target.get
- client.volume_target.update
- client.volume_target.delete
- client.node.list_volume_targets
Co-Authored-By: Stephane Miller <stephane@alum.mit.edu>
Co-Authored-By: Hironori Shiina <shiina.hironori@jp.fujitsu.com>
Depends-On: I328a698f2109841e1e122e17fea4b345c4179161
Change-Id: I2347d0893abc2b1ccdea1ad6e794217b168a54c5
Partial-Bug: 1526231
This adds support for volume_connector, which is required to boot
instances from volumes.
This will expose new Python API to operate volume connectors:
- client.volume_connector.create
- client.volume_connector.list
- client.volume_connector.get
- client.volume_connector.update
- client.volume_connector.delete
- client.node.list_volume_connectors
Co-Authored-By: Satoru Moriya <satoru.moriya.br@hitachi.com>
Co-Authored-By: Stephane Miller <stephane@alum.mit.edu>
Co-Authored-By: Hironori Shiina <shiina.hironori@jp.fujitsu.com>
Depends-On: I328a698f2109841e1e122e17fea4b345c4179161
Change-Id: I485595b081b2c1c9f9bdf55382d06dd275784fad
Partial-Bug: 1526231
Fix a request of inject_nmi API to pass an empty body because PUT
request must be a JSON dict. A request without a body causes a
validation error in the server.
Change-Id: Iaaa9e88b4a4b1e1086217900480fb528bfae56dc
Partial-Bug: #1526226
Soft reboot/poweroff is now being implemented in Ironic. And the
Ironic driver in Nova should support this new feature. This patch
adds soft reboot and soft poweroff states.
Co-Authored-By: Naohiro Tamura <naohirot@jp.fujitsu.com>
Partial-Bug: #1526226
Change-Id: Icd2859784f3df85c08162c14464bce58067aab1d
Depends-On: I1c9bbd1f11f6a8565607c874b3c99aa10eeb62a5
This patch adds a new command "ironic node-inject-nmi" to support
inject nmi.
Co-Authored-By: Naohiro Tamura <naohirot@jp.fujitsu.com>
Partial-Bug: #1526226
Change-Id: Ib19e020685d46051ddf3086adde57ed229b22797
Depends-On: I08d74f5ccbc386baca1fb29e428fe01924499d45
This patch update VIF attach commands to allow setting custom
keys by using --vif-info <key=value> option.
Related-Bug: #1582188
Change-Id: I3b638693e981781d0ddcf6dd8fe75556ff24e428
This adds a new method base.Manager._get_as_dict() which
checks whether there is a resource first, before calling
Resource.to_dict(). Code was modified to call this new
method, instead of calling Resource.to_dict() directly.
This fixes the AttributeError that occurs if, for example, one
tries to get the list of driver passthru methods of the 'fake'
driver (via 'ironic driver-get-vendor-passthru-methods fake').
There are no methods, and without this change, an AttributeError
exception is raised. With this fix, an empty list is returned.
Change-Id: Ib6b691cd39ede9c5902b4df29023fd974b367a7d
Closes-Bug: #1626806
This adds an optional '--chassis <chassis UUID>' to the
'openstack baremetal node list' command. It provides
the ability to get a list of nodes of a specified chassis.
Change-Id: I5dbc0521858823d2e83506b6f873eda9a143f80b
Partial-Bug: #1526479
This change adds --wait[=timeout] flag for all provisioning actions but abort.
It also adds a helper node method wait_for_provision_state to back this flag.
The wait is aborted with an error in any of the following cases:
* node.last_error gets set
* unexpected stable state was reached (e.g. available instead of active)
* a failure state was reached
Change-Id: I8ba5c7da8980e932a578b084167b00e2b20f6daf
Partial-Bug: #1590752
This adds support for the node.resource_class field, introduced in
API 1.21. It can be modified on an existing node or passed when
creating a node, or used as a filter when fetching a list of nodes.
Change-Id: Id494a8b735a3532db84d90ba21da173f7e33ed1d
Depends-On: I936f2e7b2f4d26e01354e826e5595ff021c3a55c
Partial-Bug: #1604916
This patchset adds port creation with new optional parameters specifying
new port attributes (local_link_connection, pxe_enabled).
It also adds new parameter network_interface to node object.
Co-Authored-By: Vasyl Saienko (vsaienko@mirantis.com)
Co-Authored-By: William Stevenson (will.stevenson@sap.com)
Partial-bug: #1526403
Depends-on: I67495196c3334f51ed034f4ca6e32a3e01a58f15
Change-Id: If2fb996783b9ac26a5bae2aadd6387207750def9
This commits add the following:
* Ability to set target_raid_config for a node using
node-set-target-raid-config.
* Display target_raid_config and raid_config in node-show.
* Display logical disk properties for a driver using
driver-raid-logical-disk-properties.
NOTE: Client still defaults to version 1.9, so
'--ironic-api-version 1.15' (or above) should be
added to the CLI to use the feature as RAID can be
triggered only with manual cleaning which uses the
ironic-api-version 1.15.
Co-Authored-By: Nisha Agarwal <agarwalnisha1980@gmail.com>
Closes_bug: 1526400
Change-Id: Id7bb8a242838029e4cc3715d18b27fb1d5cd4dfa
This adds the manual cleaning CLI:
usage: ironic node-set-provision-state [--config-drive <config-drive>]
[--clean-steps <clean-steps>]
<node> <provision-state>
where <provision-state> is 'clean' and <clean-steps> is
the clean steps in JSON format. May be the path to a file containing
the clean steps; OR '-', with the clean steps being read from
standard input; OR a string. The value should be a list of clean-step
dictionaries; each dictionary should have keys 'interface' and
'step', and optional key 'args'. This argument must be specified
(and is only valid) when setting provision-state to 'clean'.
Change-Id: Id5907812935096c5c557c896daf72175ed138866
Partial-Bug: #1526290
Depends-On: I0e34407133684e34c4ab9446b3521a24f3038f92
Add CLI function to list nodes using the same driver.
Change-Id: I3ee3dd4fd52931a4eebb6ff037d83eb95e4fb1ba
Partial-Bug: #1530626
Depends-On: I998d6a0a6da44487d5ba90dafd417d81d1c7e504
without changing the API
This commit does refactoring regarding the base.Manager and the
specific managers that inherit from it (Chassis, Node, Port and
Driver).
The specific managers had a lot of duplicate code in methods like:
get, create, delete and update, they were literally equal, what does
not make sense once we already had the base.Manager inheritance to
avoid this type of problem.
This change moves the duplicate code to the parent (base.Manager) and
make the specific managers simpler by making the base.Manager more
useful regarding code reuse for these methods.
Change-Id: Ic77a86196d5bcd956f0a3ae517200824a4d70aa8
Closes-Bug: #1517631
node-port-list accecpts node_name but help say it only accecpt
node_uuid. Correct it and add related tests.
Change-Id: I37f7d505e249156e6a428c3b8d2648b43fcc3df4
This reverts commit 46b279bb36b2647bf04097fe271586fca76f5ed0.
The patch being reverted has broken the API compatibility. Until a fix
for this issue has been created, the patch should be reverted.
Change-Id: I1295c3e0d5ca228253874719befd7ed842d505fa
Closes-Bug: #1521429
This commit does refactoring regarding the base.Manager and the
specific managers that inherit from it (Chassis, Node, Port and
Driver).
The specific managers had a lot of duplicate code in methods like:
get, create and vendor_passthru, they were literally equal, what does
not make sense once we already had the base.Manager inheritance to
avoid this type of problem.
This change moves the duplicate code to the parent (base.Manager) and
make the specific managers simpler by making the base.Manager more
useful regarding code reuse for these methods.
Change-Id: I9acef9ecc815df61d7ddabe3fae9eccdafe2eeed
Closes-Bug: #1517631
The input of set_power_state() is different from the real string
it sends to Ironic service in json data. The power states were
translated in set_power_state(). Using a dict to map the translation
is more clear, and easier to add new power states.
Change-Id: I8c7dac1ac39f92b2031e7f1fa95cd5c398a708d5
Implements: blueprint enhance-power-interface-for-soft-reboot-and-nmi
Related-to: blueprint soft-reboot-poweroff
Related-to: blueprint instance-crash-dump