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
Configuration was fine for the gate, but I've updated it to ignore
directories and files that can be found in a well-used development
checkout.
Fixed any new spelling issues.
Change-Id: Icef5addba938b27911c26e841a37a2e9ba3fbe43
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
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
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
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
Currently, if the image download fails, there are no traces of the
error. This change adds logging and populates last_error.
Change-Id: I73ea2f94fb910daf21a5d4f52d6839aac3bad579
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
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
The current implementation in common has a lot of assumptions that the
manager is a conductor manager. To be able to reuse the same base RPC
service for the PXE filter, split the conductor part away from the
common one.
Change-Id: I4d24cf82d62cb034840435ef15b5373748b65f09
While looking at fixing a bug around enforcement of
the presence of specific ironic.conf parameters which
don't need to be present in all cases, I noticed we
had translated indicator message strings (which of course
are not actually translated, but really should be the actual
configuration paramter name in ironic.conf *OR* driver_info.
So ultimately, I decided to fix the text to be accurate
and appropriately verbose for the current ways it can be
configured, as opposed to the singular way it was available
when the capability was first added to Ironic.
Change-Id: If402814791554ef3143e25426fdc7e49a5b04810
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
Starting from jsonschema v4.21.0 the message for empty objects
validation changes from "is too short" to "should be non-empty" [1].
Handle the two cases so we don't break in case of upper-constraints
change.
[1] a1d4cb3b94
Change-Id: I01336d2966bdad8f8e2aec7a522644cff1d5c341
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
If user runs `ironic node-create -d <driver>` with a driver that is not
enabled or activated, or when no registered conductor service which
supports the given driver in a specified conductor group is found,
the current exception may not be clear enough or confusing for users.
This proposed change would prompt user to ensure that the input driver
is valid and enabled, and guide to run the `driver-list` subcommand to
show the current supported drivers; adding context for the reason for
the exception.
Now, if input driver is not valid or enabled, we get below message:
"No conductor service registered which supports driver <driver> for
conductor group "<group>". Ensure the driver is valid and enabled. (HTTP 400)"
Implements: clarity of exception message
Closes-Bug: #1398286
Change-Id: I592f3ce278d1b536ed91c3340b7f270985e309ac
Signed-off-by: Afonne-CID <delightinbusiness@gmail.com>
Previously, we updated node_periodic so we understood from the
logs when a periodic task was completed, so we could understand
where things were at in our hunt for database lock racess.
In any event, we now explicitly log in the _sync_power_state
method of the conductor, because it is not a node_periodic.
Change-Id: Iaec9926fe031e65de4732ff0bc7988c5604d4755
Second in a series of commits to add Codespell to Ironic Repos. This one adds the command that was used to fix the spelling errors.
Future Commits will add CI support and potentially a git-blame-ignore-revs file if their are lots of spelling mistakes that could clutter git blame.
Change-Id: I206f51f277d19bbcec450ed5312cd30d6fba8432
This is the first in a series of commits to add support for codespell. This is continuning the process completed in ironic-python-agent.
Future Commits will add a Tox Target, CI support and potentially a git-blame-ignore-revs file if their are lots of spelling mistakes that could clutter git blame.
Change-Id: Id328ff64c352e85b58181e9d9e35973a8706ab7a