Commit Graph

2624 Commits

Author SHA1 Message Date
Zuul 7df06977d3 Merge "Add states.SERVICING and SERVICEWAIT to _FASTTRACK_HEARTBEAT_ALLOWED" 2024-04-17 10:34:59 +00:00
Jacob Anders 619e1ac80c Add states.SERVICING and SERVICEWAIT to _FASTTRACK_HEARTBEAT_ALLOWED
Currently, service steps may fail to start in scenarios dependent on IPA
fasttrack. This change attempts to resolve this by incorporating
servicing states in the fast track allowed states whitelist while also
making _FASTTRACK_HEARTBEAT_ALLOWED a superset of _HEARTBEAT_ALLOWED
instead of duplicating values in the two constants.

Change-Id: I47984469c1432e7fc7b4f1494b9f6c551c34672f
2024-04-17 14:04:16 +10:00
Zuul ddca532f52 Merge "Fix the confusion around service_reboot/servicing_reboot" 2024-04-15 23:38:00 +00:00
Alexon Oliveira 668dd24108 Remove deprecation warning by setting schema
Closes-Bug: #2061160

Change-Id: Ie5af73dd1b8af29734d1cf34b070e2a2bbc09949
Signed-off-by: Alexon Oliveira <alolivei@redhat.com>
2024-04-15 14:54:17 -03:00
Zuul a329135fad Merge "Fix spelling reported by codespell" 2024-04-15 10:01:50 +00:00
Winicius Silva 0f62bd2164 Fix spelling reported by codespell
Change-Id: I5a1f68189eb75b92bedeaaa8b645be7f10b0d30f
2024-04-12 14:34:49 -03:00
Dmitry Tantsur 004e78c413
Fix the confusion around service_reboot/servicing_reboot
We ended up using two names for the same flag (and forgot it in one
place completely). To not just fix the issue but also prevent it in the
future, refactor asynchronous steps handling into a new helper module
with constants and helper functions.

I've settled on servicing_reboot as opposed to service_reboot because
that's the value we currently set (but not read), so it provides
better compatibility when backporting.

Remove excessive mocking in the Redfish unit tests.

Change-Id: I32b5f860b5d10864ce68f8d5f1dac3f76cd158d6
2024-04-12 18:09:54 +02:00
Dmitry Tantsur 22aa29b864
Stop assuming service steps have priorities
Unlike clean, deploy and verify steps, service steps cannot run
automatically and thus do not have a usable notion of priority. It's not
possible to provide a priority through the API but our validation code
still requires it. This change gets rid of most priority handling for
service steps, leaving only some foundation for future enhancements.

Change-Id: I82aefc03a5c062b67e0f457612fe568399226dc8
2024-04-10 13:59:19 +02:00
Zuul 7737a2549d Merge "Add states.SERVICING and SERVICEWAIT to need_prepare_ramdisk" 2024-04-10 09:09:31 +00:00
Jacob Anders 70ccb6af11 Add states.SERVICING and SERVICEWAIT to need_prepare_ramdisk
Currently, service steps do not work with virtual media deployments
because states.SERVICING and states.SERVICEWAIT are missing from the whitelist
of valid provision_states. This change resolves this issue.

Change-Id: I5e3ec08d128b35385f2d90c9c852140b757b8dbf
2024-04-10 10:48:04 +10:00
Zuul 604ff49456 Merge "Fix redfish detach generic vmedia device method" 2024-04-09 14:57:28 +00:00
Riccardo Pittau 58fc21fc0b Fix redfish detach generic vmedia device method
Fixes usage of redfish detach virtual media feature to be conform to
the general implementation.
Before the detach virtual media API call using redfish driver was not
working as intended and caused the operation to fail.

The method implementation was allowing only a single device_type
while it should be multiple devices to match the conductor manager
implementation.

Change-Id: I9edd3b77eeb3ec1b0484d4e6f0c6dea53e83f9ad
2024-04-09 11:07:50 +02:00
Zuul d5802f832f Merge "Expose conductor online boolean for accurate alive" 2024-04-07 17:38:51 +00:00
Dmitry Tantsur a9a4fff71c
Fix generating local paths when connecting virtual media
The generate path does not contain the node UUID, causing conflicts.

Also make sure to always clean up any existing files first.

Change-Id: I30f948d64e7b87f33841dc22828db60338a62dd8
2024-04-03 16:16:31 +02:00
Zuul 565d18f0d5 Merge "Fix Reopen Web Console Duplicate Sol Session" 2024-03-28 21:41:33 +00:00
Zuul 0d6bbb3620 Merge "Drop fallback to unmanaged inspection for virtual media and UEFI boot" 2024-03-27 22:19:29 +00:00
OpenStack Proposal Bot 272344e951 Imported Translations from Zanata
For more information about this automatic import see:
https://docs.openstack.org/i18n/latest/reviewing-translation-import.html

Change-Id: I3394a59586b253c4270b5590ff63b86ab8399d57
2024-03-25 04:45:51 +00:00
Steve Baker 161374f763 Expose conductor online boolean for accurate alive
Currently the online database column is not considered when displaying
the "baremetal conductor list" Alive status. This means that when a
conductor is stopped gracefully it will be shown as (inaccurately)
alive for the duration of [conductor]graceful_timeout.

This change adds the online field to the alive evaluation, so the
conductor must be online *and* have a recent heartbeat.

Change-Id: Ic5a8d56ec236faca1b9797bd0d3e42c956469fab
2024-03-22 15:07:12 +13:00
OpenStack Release Bot cd117d1ed9 Update master for stable/2024.1
Add file to the reno documentation build to show release notes for
stable/2024.1.

Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/2024.1.

Sem-Ver: feature
Change-Id: Ie669c480f361e7df0ba0566931685a3bf38045a2
2024-03-19 15:25:16 +00:00
Zuul 5c00b7cf0b Merge "Fix data length exceeding limit error" 2024-03-18 14:40:05 +00:00
Dmitry Tantsur 2f399a1fb7
Drop fallback to unmanaged inspection for virtual media and UEFI boot
It is not expected that nodes configured this way start PXE-booting.

Change-Id: I9bc5ab73bb54e0612fb6025f10c4d41a5b8842cb
2024-03-18 10:26:47 +01:00
Zuul 0237392002 Merge "Fix artifical rbac policy constraint that resulted in 500s" 2024-03-17 21:33:45 +00:00
CID ef8bca007d Fix data length exceeding limit error
This commit increases the length of the 'user' column to
accommodate longer UUIDs, ensuring that the full user UUIDs are stored
without exceeding the column limit.

Closes-Bug: #2054594
Change-Id: I59b435ca2bb5850bb2338228b64868c2003bfea3
2024-03-16 22:26:15 +00:00
Zuul 8922c79b7c Merge "Support more standard way of passing lists via query strings" 2024-03-15 14:09:31 +00:00
Zuul 2f71e5d512 Merge "Update regex to detect closed branch" 2024-03-15 01:58:15 +00:00
Zuul 64595e704a Merge "Release notes prelude for 2024.1/24.1" 2024-03-15 01:58:07 +00:00
Zuul bf1aadf2bc Merge "Allow usage of virtual media via System" 2024-03-14 22:14:59 +00:00
Zuul 16b0ea709a Merge "Implement generic redfish vmedia attach detach" 2024-03-14 21:39:50 +00:00
Jay Faulkner 0c735264d6 Release notes prelude for 2024.1/24.1
Change-Id: If17630cccd4e61d4c966deec6ff473a50752eeb2
2024-03-14 20:12:15 +00:00
Zuul df9e1ba80e Merge "[codespell] Fixing Spelling Mistakes" 2024-03-14 17:13:05 +00:00
Zuul 6c29b2c72c Merge "reno: Update master for unmaintained/xena" 2024-03-14 12:17:52 +00:00
Zuul 728de6ffe8 Merge "reno: Update master for unmaintained/wallaby" 2024-03-14 12:09:49 +00:00
OpenStack Release Bot 18e22b0892 reno: Update master for unmaintained/xena
Update the xena release notes configuration to build from
unmaintained/xena.

Change-Id: Iede7e335ad5e2303d7f7e7ec5526cf72fbfb38c2
2024-03-14 11:28:02 +00:00
OpenStack Release Bot 6c6f034e73 reno: Update master for unmaintained/wallaby
Update the wallaby release notes configuration to build from
unmaintained/wallaby.

Change-Id: I1c3d05be89f2101e5f2a72d19b43afa762ff4b7a
2024-03-14 11:23:32 +00:00
OpenStack Release Bot 667e7bf23d reno: Update master for unmaintained/victoria
Update the victoria release notes configuration to build from
unmaintained/victoria.

Change-Id: Ia14b67a6a0a81e022c4588096078225c546c2c93
2024-03-14 11:18:59 +00:00
Winicius Silva 6d046ad7b4 Allow usage of virtual media via System
DMTF now changes their Virtual Media URI to support Systems. Redfish driver now
support this resource to boot, so it is needed that Ironic have a way to use it.

Closes-Bug: #2039458
Change-Id: I66e8edb847e93f96374072525222f05e7561fb07
2024-03-13 22:02:08 -03:00
Riccardo Pittau 237510ae2c Implement generic redfish vmedia attach detach
This patch adds implementation of attach/detach generic virtual
media device to the Redfish driver.
Also the redfish vendor eject vmedia action is now deprecated
and it will be removed during the next cycle in favor of the
generic API.

Change-Id: I9daff59128f537a3da2e882adf5c97be9c4ab8d9
2024-03-13 12:09:15 +01:00
Takashi Kajinami 616e6d120a Update regex to detect closed branch
... based on the change made in reno recently[1].

[1] https://review.opendev.org/c/openstack/reno/+/910547

Change-Id: I0eea3de292c5e0f57d2136064e70227c5865c8b8
2024-03-13 19:31:27 +09:00
Zuul 2f3448a421 Merge "Special case lenovo UEFI boot setup" 2024-03-12 22:28:26 +00:00
Zuul bb3b0e9b95 Merge "Add inspection PXE filter service" 2024-03-11 18:31:10 +00:00
Julia Kreger c6a4005049 Fix artifical rbac policy constraint that resulted in 500s
Some of the endpoints are *highly* restricted in ironic's newer
more stringently enforced RBAC world. Some of these endpoints would
emit 500s by default, when realistically it was the policy definition
saying "only system scope could be used" for the endpoint, but the
reality is that 403 is what should have been returned for a client to
properly understand what is going on.

Change-Id: If5e13764dad886ba3ee1a848f3ff9f3279f4d7f6
2024-03-11 08:07:32 -07:00
Zuul 30974ba0da Merge "Fix error handling in the virtual media attach API" 2024-03-08 10:57:19 +00:00
Zuul c139b22e8a Merge "Detect ilo6 and redirect to redfish" 2024-03-08 02:25:13 +00:00
likui e5f7e052ac Fix Reopen Web Console Duplicate Sol Session
Reopen web console may occasionally result in duplicated
sol session. get_console action open
one console process while another sol session remains.

This patch adds "sol deactivate" action before get
console. Make sure the current connection always a success.

Change-Id: Ie5d9c94a3e9e3561b6aa1a52462d6739662d4eb0
2024-03-07 15:41:32 -08:00
Dmitry Tantsur 79523c5911
Fix error handling in the virtual media attach API
Currently, if the image download fails, there are no traces of the
error. This change adds logging and populates last_error.

Change-Id: I73ea2f94fb910daf21a5d4f52d6839aac3bad579
2024-03-07 18:48:13 +01:00
Dmitry Tantsur 934658dab4
Support more standard way of passing lists via query strings
Currently, arguments like "fields", "shared" or the new "device_types"
only accept comma-separated strings. While there is no single standard,
the most common approach is to repeat the arguments, i.e.

 NOT /nodes?fields=uuid,name
 BUT /nodes?fields=uuid&fields=name

Unfortunately, at least GopherCloud already relies [1] on the more common
(but not currently working in Ironic) behavior. Let's make it work.

[1] 8455d01343/openstack/baremetal/v1/nodes/testing/requests_test.go (L87)

Change-Id: Ia780b10986929d79dc4f334d278bcb00a9984fd0
2024-02-29 17:08:18 +01:00
Zuul a7ce0d7ae6 Merge "Add a reserved workers pool (5% by default)" 2024-02-29 07:22:42 +00:00
Dmitry Tantsur 89fe0396af
Add inspection PXE filter service
The logic to handle dnsmasq hostfiles is moved from ironic-inspector
with only cosmetic changes. The logic to purge the hostsdir is not
copied since it relies on running commands with root privileges.
A documentation example is added instead.

The change is missing the RPC call to notify the filter about changes.
It will be done in a follow-up.

Change-Id: Ie32018c760c39873ead1da54cfaeae87eaaaf043
2024-02-28 18:13:56 +01:00
Julia Kreger 50ced3a3fa neutron: do not error if no cleaning/provisioning on launch
In the early days of the neutron network interface, we had a hard
launch failure added to prevent ironic.conf from having a neutron
network configuration which was not valid when the neutron network
interface was in use.

But as time has moved on, these settings became node-settable,
and ironic configuration largely became mutable as well, so they
can always be added after the process has been launched.

But we kept the error being returned. Which doesn't make sense
now that it can always be back-filled into a working state
or just entirely be "user supplied" via the API by an appropriate
user.

Closes-Bug: 2054728
Change-Id: I33e76929ca9bf7869b3b4ef4d6501e692cf0a922
2024-02-22 13:14:13 -08:00
Julia Kreger 4fb1b813f4 Special case lenovo UEFI boot setup
Special cases boot/uefi record setup to focus on UEFI
nvram updates instead of attempting nvram updates *and*
setting the boot device to disk.

Closes-Bug: 2053064
Change-Id: Ic6584479a47146577052d17fa3f697eef64ac73c
2024-02-17 15:54:25 +00:00