2686 Commits

Author SHA1 Message Date
Zuul
501b8f463b Merge "Update configuration value in iRMC" 2024-08-21 19:20:53 +00:00
cid
a885a0544d Update configuration value in iRMC
Addresses the inline TODO within the Ironic codebase,
to set the ``kernel_append_params`` to the same value as
in the [pxe] configuration after the Xena release.

Current Release: Dalmatian

Change-Id: I1ce3ab560ab04979b7f31393a9877c4d1314925c
2024-08-15 20:09:24 +01:00
Himanshu Roy
c9cf2347ea add virtual media GET api
Closes-Bug: 2072307
Change-Id: I6020a7904639f5b6628bcabb5a861ecc397a8b05
Signed-off-by: Himanshu Roy <hroy@redhat.com>
2024-08-08 13:33:14 +05:30
Zuul
8b296e242b Merge "Self-Service via Runbooks" 2024-08-07 18:03:36 +00:00
Zuul
86bc7f7fdb Merge "Deprecate [agent]/manage_agent_boot" 2024-08-07 14:00:26 +00:00
cid
48f50248c2 Self-Service via Runbooks
Adds runbooks; the new API feature that makes it possible for
project members to self-serve maintenance tasks through curated step
lists associated with target nodes via traits.

In addition to basic CRUD support, runbook extends current API flow for
performing manual cleaning and servicing to support runbooks in lieu of
an explicit/arbitrary ``clean_steps`` and ``service_steps`` user-defined
lists.

Demo Video: https://youtu.be/00PJS4SXFYQ
Closes-Bug: #2027690

Change-Id: I43555ef72cb882adcada2ed875fda40eed0dd034
2024-08-02 05:44:29 +01:00
Zuul
160701ed16 Merge "Require hashed passwords for rescue by default" 2024-07-30 10:38:46 +00:00
Mahnoor Asghar
88ad9a7bbf Log node UUID and not entire node instance to
avoid logging its driver_info field

Change-Id: I07eed090920c777046fe29618d5d8be42618a0f6
2024-07-24 07:54:55 -04:00
Zuul
6d5bcdf42d Merge "grub: directly load linked config file" 2024-07-22 17:05:47 +00:00
Zuul
71db05bf0d Merge "Flexible IPMI credential persistence method configuration" 2024-07-22 17:05:44 +00:00
Zuul
e7061ae3ed Merge "Upgrade check on removed or deprecated hardware types and interfaces" 2024-07-22 16:47:01 +00:00
Zuul
5ca8f1145b Merge "Add Targets to firmware.update on multi system BMCs" 2024-07-22 14:44:59 +00:00
Zuul
9aada0524c Merge "Allow disabling specific boot modes during deployment/enrollment" 2024-07-22 11:43:58 +00:00
cid
58f84d2854 Allow disabling specific boot modes during deployment/enrollment
Allow operators to provide a list of disabled boot modes for
new deployments ``disallowed_deployment_boot_modes`` and/or
enrollments ``disallowed_enrollment_boot_modes``.

Defaults are an empty list, [], indicating all modes are
allowed.

Closes-Bug: #2068530
Change-Id: I1404c81718cd6bb2977e6f298d9b7d11664226d0
2024-07-20 23:46:52 -05:00
OpenStack Proposal Bot
1e52143f07 Imported Translations from Zanata
For more information about this automatic import see:
https://docs.openstack.org/i18n/latest/reviewing-translation-import.html

Change-Id: I2ee45dd00aa9e210d5a1664b444413f8e587c595
2024-07-19 04:14:34 +00:00
Jacob Anders
3a40347598 Add Targets to firmware.update on multi system BMCs
Currently, Ironic doesn't add Targets parameter to SimpleUpdate call
when updating firmware. This patch makes Ironic aware of multi-System
BMCs and send Targets parameter if this condition is detected. This is a
prerequisite for using sushy-tools simulated firmware upgrades for
testing.

Change-Id: I5fd0228200afc28b24d90595244d3961b05acc52
2024-07-16 23:12:27 +10:00
OpenStack Proposal Bot
11ce62d34f Imported Translations from Zanata
For more information about this automatic import see:
https://docs.openstack.org/i18n/latest/reviewing-translation-import.html

Change-Id: Ifdfeb120dd57da6b5f6c4a26303030f14a8b664f
2024-07-13 04:40:21 +00:00
Julia Kreger
4d46bbf712 grub: directly load linked config file
While troubleshooting grub network boot issues,
I did some reading and found out our model of config
was technically wrong to use a menuentry to load config
in another menuentry which may or may not be loaded.

I mean it worked, but it is simpler to just say
"go source this content into our state".

Change-Id: I5e2ec2dc5110fa0a4f9e11478502a199354454f5
2024-07-08 14:46:27 +00:00
Jay Faulkner
d146558ac3 Require hashed passwords for rescue by default
We added this option, and advertised it's default would change several
years ago. This completes the migration.

Change-Id: I64f80fa2f971a223156cc5bf4231b59da0189885
2024-07-05 14:43:05 +00:00
Zuul
111466f782 Merge "Deprecated field in Redfish Driver" 2024-07-05 09:01:26 +00:00
Jay Faulkner
465bedbe7f Deprecate [agent]/manage_agent_boot
This configuration directive is completely untested, undocumented,
and requires deployers to manually configure significant
infrastructure for it. It also bypasses several deploy-time sanity
checks around whether or not we expect the server to boot.
Deprecating it for removal in 2025.2 release.

Related-bug: #2071741
Change-Id: Id73d9097e9e4152c7b635a4269b548c9dbdda0a6
2024-07-02 15:23:04 -07:00
Jay Faulkner
54c7ce513b Fixup: Move release note to proper directory
Somehow we approved a releasenote in the Ironic folder; instead we
put these in the root folder.

Change-Id: I098090f006f4aebaa9159f34d7b1906956c1ab36
2024-07-02 15:16:37 -07:00
Dmitry Tantsur
bb4cd9ea78
Upgrade check on removed or deprecated hardware types and interfaces
Issues an error on removed items still used in the configuration.

Issues a warning on deprecated items or nodes that use removed drivers
or interfaces.

Change-Id: Iebb4cd611f7111cde20acf9ba3d4c9127925b6cf
Closes-Bug: #2051954
2024-07-01 15:44:23 +02:00
cid
944ee5eee1 Deprecated field in Redfish Driver
Replaces depracated field ``storage.storage_controllers`` with the
new ``storage.controllers`` in the Redfish driver.

Closes-Bug: #2070485
Change-Id: Ibe66c73c8d2e402fabaa7a3a2fbc2f3c44e47dbd
2024-07-01 03:56:01 -07:00
Zuul
3820fc19c9 Merge "Update the redfish interoperability profile" 2024-07-01 09:19:22 +00:00
Zuul
4a49bb64cb Merge "Make redfish firmware update a service step" 2024-06-30 15:52:34 +00:00
Zuul
c63b56edfa Merge "Remove deprecated idrac wsman driver interfaces" 2024-06-28 18:44:45 +00:00
Jacob Anders
62ff8a949f Make redfish firmware update a service step
This commit makes changes neccessary for redfish.firmware.update to work
as both clean_step and service_step. This is done by adding a service
step decorator, adding conditional code to pass the execution to the
appropriate subsequent functions and modifying the periodics used to
handle async tasks.

Change-Id: I20a40127f66f734005a03365b806310a155dc237
2024-06-28 10:41:02 +10:00
Dmitry Tantsur
d28a61b2c0
Update the redfish interoperability profile
* Remove @Redfish.Copyright, it's not an allowed field.
* Remove unused fields such as AssetTag.
* Mark fields used in inspection and other optional features as
  optional.
* Add missing VirtualMedia on System and VirtualMedia fields.
* Add missing Thermal information and its subresources.
* Clarify which fields on System are links.
* Add Purpose field to all fields and actions.
* Expand the BIOS object with the actual requirements.
* Add ServiceRoot and services we use.
* Add missing resources related to RAID.

Change-Id: I35f8f49e4c70e736b685c3eeebf79326592b6314
2024-06-27 16:24:24 +02:00
Zuul
25b2564bde Merge "Fix execution of node servicing steps exposed by IPA's HardwareManager" 2024-06-27 08:59:51 +00:00
Julia Kreger
578f24bf18 Remove deprecated idrac wsman driver interfaces
Change-Id: I70738db25fdf9902575ac92195c3a40f1d7a0976
2024-06-24 15:03:28 -07:00
cid
2548f022c5 Flexible IPMI credential persistence method configuration
Instead of only file-based persistence which leaves files
with credentials on the conductor disk for the duration of
the session.

User can now pass ``True`` to the ``store_cred_in_env`` parameter
which instead stores IPMI password as an environment variable, still
for the duration of the session, but limiting exposure to just the
user session of ironic and anyone that has access to it.

Defaults to ``False``.

Closes-Bug: #2058749

Change-Id: Icd91e969e5c58bf42fc50958c3cd1acabd36ccdf
2024-06-21 18:11:54 +01:00
Zuul
941f2e36fa Merge "Remove ibmc hardware type" 2024-06-19 16:59:01 +00:00
Zuul
8a209f1372 Merge "Remove deprecated xclarity hardware type" 2024-06-19 13:53:09 +00:00
Julia Kreger
f14794ca2e Remove ibmc hardware type
There has been no testing of this hardware type in quite some time,
and the last we heard the vendor was moving towards redfish.

Change-Id: Ib32db463981ec54430884ac760956b7c7b40b17f
2024-06-18 16:33:35 -07:00
Julia Kreger
c02ad76fef Remove deprecated xclarity hardware type
Change-Id: I93e0d947d0f790bd4dfaa73e2cd31fdd36262af2
2024-06-18 16:33:00 -07:00
Przemyslaw Szczerbik
4f924f2d64 Fix execution of node servicing steps exposed by IPA's HardwareManager
Implement execute_service_step() in AgentBaseMixin that will
asynchronously execute service step on the agent. Without it, Ironic
will try to find <step_name> attribute on the object that implements
interface specified by the servicing step.

Example:

Step: [{"interface": "deploy", "step": "burnin_cpu"}]
Error: AttributeError: 'AgentDeploy' object has no attribute 'burnin_cpu'

Closes-Bug: #2069430

Change-Id: Idb1d5b50656c3765ea5c9e21b7844946ae4cfc67
Signed-off-by: Przemyslaw Szczerbik <przemyslaw.szczerbik@intel.com>
2024-06-18 02:22:03 -07:00
Przemyslaw Szczerbik
78f54dfefa Build PXE config for node in SERVICING state
When [pxe]enable_netboot_fallback option is enabled, it's necessary to
build PXE config for nodes in SERVICING provisioning state. Otherwise
node servicing tear down will fail and node will be placed into
servicing failed state.

Closes-Bug: #2069413

Change-Id: Ib00504563f9fa7bed99a0fa1949ac99ea6870875
Signed-off-by: Przemyslaw Szczerbik <przemyslaw.szczerbik@intel.com>
2024-06-14 04:22:12 -07:00
Zuul
d0a833095a Merge "Link MACs with PXE config to pxe_enabled ports" 2024-06-12 02:32:39 +00:00
Zuul
b2a57f6bed Merge "Change [agent]require_tls to True by default" 2024-06-11 23:33:49 +00:00
Zuul
10239b0d5e Merge "Fix wrong option mentioned in release notes" 2024-06-10 15:00:03 +00:00
cid
e958b379c1 Link MACs with PXE config to pxe_enabled ports
Currently, Ironic creates a pxe link file for every port,
even when a port's pxe_enabled property is set to false,
which means it can still boot from this port when it shouldn't.

With this commit, unless explicitly configured otherwise, only
pxe_enabled ports (pxe_enabled=True) will have the pxe link file.

Closes-Bug: #1741422
Change-Id: I013861dd5b9a7525058606f8dc8b05502a28af1e
2024-06-10 15:10:05 +01:00
Takashi Kajinami
316274a9d3 Fix wrong option mentioned in release notes
The [conductor] graceful_timeout option does not exist, and
the [conductor] heartbeat_timeout option is actually used instead.

Change-Id: I689fcf8c392eecbcf8ee12b2f67f78f9f22d17aa
2024-06-10 17:36:50 +09:00
Julia Kreger
6095b4017d Change [agent]require_tls to True by default
While looking at the overall heartbeat/agent workflow, it seemed
like the [agent]require_tls setting should likely be True by
default, as we are well past the initial phase where operators
might not have the TLS capability when upgrading.

Change-Id: Id526e948e6c5ed032d7542232b1c1a31cb285b26
2024-06-04 14:30:38 -07:00
Julia Kreger
88c45151fa Assert URL consistency for agent_url
While agent_url is software generated, it is still a public endpoint
and at least needs some upfront filtering applied. To do this, we
can leverage urllib in the standard library to disassemble the
url, and reconstruct it based upon the standards. The plus of this
approach is that it will remove some invalid formatting for us, and
if things are too out of line, an exception is raised as ValueError.

An important note, this is *not* explicitly urlparsing security[0] as
denoted in the Python urllib documentation, but that the application
should operate defensively.

[0]: https://docs.python.org/3/library/urllib.parse.html#url-parsing-security

Change-Id: I45ee1c8a73ed13511bc47a69130105f16d34be1e
2024-06-04 10:22:49 -07:00
Jay Faulkner
b44cad8e5e Fix CI issues in codespell/pep8
Codespell upgrade caused failures, fixed spelling where
appropriate, added ignores where appropriate.

Some new package release broke pep8 runs; fixed by no
longer pinning Pygments version.

Change-Id: I670bbb170823d6a0ace8eeb9d9e486e8e9bf7404
2024-05-28 02:38:31 -07:00
Zuul
5717c7e599 Merge "docs: document stance on partition image use" 2024-05-06 10:49:17 +00:00
13ab26188c reno: Update master for unmaintained/zed
Update the zed release notes configuration to build from
unmaintained/zed.

Change-Id: I473ad6309784bc3e672eedb556d1694a2e5f99f5
2024-05-06 06:23:45 +00:00
Zuul
820ec7ddc7 Merge "Replace cinderclient usage with openstacksdk" 2024-05-01 17:22:26 +00:00
Zuul
dec5780fca Merge "Inject a randomized publisher id" 2024-05-01 04:58:12 +00:00