13351 Commits

Author SHA1 Message Date
Jay Faulkner
466cd3902c Remove postgresql testing and documentation
Ironic has maintained a CI job for years after postresql support was
deprecated in order to prevent unintentional breakage of that support.
Now, we have confirmed evidence that other openstack components, such as
keystone, required for testing this postgresql support no longer
function in this job.

As a result, ironic can no longer test postgresql support. Operators
utilizing postgresql who have not yet migrated must migrate now.

Change-Id: If6e4432b000996789346a1f7449410cfc8497fe1
2024-11-12 14:41:04 -08:00
Zuul
feb7740009 Merge "devstack - enable v6 addr list if q-dhcp enabled" 2024-11-10 05:37:35 +00:00
Zuul
2c7ed62e9a Merge "Instance provisioning fails on SQLite" 2024-11-10 05:37:31 +00:00
Zuul
488bc76cab Merge "add pyproject.toml to support pip 23.1" 2024-11-09 04:17:33 +00:00
Zuul
b2f47d4428 Merge "trivial: Fix policy scope restriction for automated cleaning" 2024-11-09 00:56:31 +00:00
Zuul
63c911be45 Merge "Use linux instead of linuxefi in grub config" 2024-11-08 16:44:49 +00:00
Zuul
d564c4ceb0 Merge "Redfish power: account for disable_power_off" 2024-11-08 16:27:39 +00:00
Zuul
c35db0127c Merge "Actually ignore [inspector]power_off with fast track" 2024-11-08 12:10:24 +00:00
Zuul
d815291294 Merge "Migrate lint to pre-commit" 2024-11-07 13:07:34 +00:00
Riccardo Pittau
27bd049257 Use linux instead of linuxefi in grub config
The EFI handover protocol has been deprecated since a while
and recently moved to be optional and enabled by default [1].
As a consequence, the linuxefi and initrdefi binaries that
were specifically compiled to use that option, are
also deprecated and they have been removed in most of
the recent linux distributions in favor of the generic
linux and initrd that are now compatible with UEFI boot.
This patch changes linuxefi to linux and initrdefi to
initrd in all the grub templates, using the generic
entries for all the platform architectures.

[1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=cc3fdda2876e58a7e83e558ab51853cf106afb6a

Closes-Bug: #2081305
Change-Id: Ie5b2265d7afc8b71fabfca6ca6687e0e34ce3b5b
2024-11-07 09:40:35 +01:00
Doug Goldstein
2cb56f8b99
add qemu-img to necessary dependency list
The unittests want qemu-img available now so add that as a dependency
that users need to install before running the tests.

Change-Id: I2169988c653088115c7b388113b5e76e721e2429
Signed-off-by: Doug Goldstein <cardoe@cardoe.com>
2024-11-06 11:51:57 -06:00
LALLAU Bertrand
6af6d10ab3 Instance provisioning fails on SQLite
The following error occurs when using SQLite:
oslo_config.cfg.NoSuchOptError: no such option hostname in group [DEFAULT]

`hostname` is not defined in [DEFAULT] group, use `host` instead.

Closes-Bug: #2086682
Change-Id: Ic93b5d7c6ea27a3c47daa6b2c6671aaa401b5427
2024-11-05 18:54:41 +00:00
Dmitry Tantsur
4f40ddef26
Actually ignore [inspector]power_off with fast track
The option's help says that the option is ignored when fast track is on,
but in reality it only happens with the legacy inspection.

The clean-up logic diverges between the two inspection implementation,
so change the new implementation to reuse the old clean-up code.

Add a few missing unit tests.

Change-Id: I2e84aa285b5673bcc911d35439ba80a739460f59
2024-11-05 16:41:08 +01:00
Jay Faulkner
6008d31f2f
add pyproject.toml to support pip 23.1
pip 23.1 removed the "setup.py install" fallback for projects
that do not have pyproject.toml and now uses a pyproject.toml
which is vendored in pip.
To address that, this change adds the minimal pyproject.toml
to enable pbr to be properly used to build editable wheels.

This is required to support installing devstack on
centos stream 9 and related distros with GLOBAL_VENV=True
Without this change the wsgi scripts are not generated in
editable mode. i.e. pip install -e /opt/stack/keystone

See https://pip.pypa.io/en/stable/news/#v23-1
and https://github.com/pypa/pip/issues/8368 for more
details on the removal of the fallback support.

setuptools v64.0.0 is used to support editable installs
via its PEP-660 implmentation
https://github.com/pypa/setuptools/pull/3488

This patch was taken nearly verbatim from the equivalent nova change.

Co-Authored-By: Sean Mooney <work@seanmooney.info>
Change-Id: I34888e8f87b4a3ab09546ba58ef5f2cf495bc7e3
2024-11-05 08:00:24 -06:00
Riccardo Pittau
166e317945 Check for AMD virtualization support
As we do for Intel vmx we shold also check for AMD svm support
before dropping to tinyipa.

Change-Id: I8507db1bf99631b1076fa5db7ddc6bc3fb7e8083
2024-11-05 11:27:48 +01:00
Zuul
6f4e679c4c Merge "Fix lint issues with documentation" 2024-11-05 08:27:15 +00:00
Julia Kreger
ffecec3c55 trivial: Fix policy scope restriction for automated cleaning
By default, the decision if to clean is a "system" decision,
and not necessarilly a "user" or "operator" decision. However
some operators may choose to have custom policies to enable
specific tenants to have additional rights without granting
special system scoped users.

This change just changes the labeling on the default rule to
permit it to match a project scoped user while leaving the
default rule in place. This slightly changes the resulting
error, but doesn't change the error code, and enables operators
to run with custom rules for this entry.

Change-Id: Ie963abcbff079664b8407499c3e943ad3fd8f315
2024-11-04 09:19:32 -08:00
Zuul
21d6133fa1 Merge "Remove trailing whitespace" 2024-11-04 11:11:48 +00:00
Zuul
dac825a187 Merge "Correct duplicated names/entries in unit tests" 2024-11-04 10:04:19 +00:00
Zuul
20f7e5a517 Merge "CI: Change 4k block device job to use LVM" 2024-10-31 18:59:06 +00:00
Zuul
312fed31d7 Merge "Added missing fields in API Ref" 2024-10-31 16:36:44 +00:00
Sharpz7
8466ba7c2b Added missing fields in API Ref
Change-Id: Ia2de52368d7f7967b0cb62cf433883490feebd6b
2024-10-30 22:11:28 +00:00
Zuul
8ba066b33c Merge "Enable WSGI module entrypoint for Ironic" 2024-10-30 18:16:11 +00:00
Jay Faulkner
80c8b9f3fc Migrate lint to pre-commit
Migrate all existing linters to pre-commit. This consolodates our bandit
and codespell job into the general pep8 job.

Change-Id: I6b40a3338d98fab500e22918b6bd5b8bff2106fd
2024-10-29 14:59:33 -07:00
Jay Faulkner
f6191f2969 Fix lint issues with documentation
The doc8 linter found several syntax problems in our docs; primarily a
large number of places we used single-backticks to surround something
when we should've used double-backticks.

This is frontrunning a change that will add these checks to CI.

Change-Id: Ib23b5728c072f2008cb3b19e9fb7192ee5d82413
2024-10-29 14:59:28 -07:00
Jay Faulkner
045249f60d Remove trailing whitespace
Trailing whitespace is soon to be caught by the global pre-commit
linter changes. This fixes this issue in anticipation of that lint.

Change-Id: I48597afde4c55775ccca56f927c30ca4f3465523
2024-10-29 14:55:44 -07:00
Jay Faulkner
95ae183dc4 Correct duplicated names/entries in unit tests
There were several duplicated entries. Where they appeared
actually-different, I changed the name. Where they appeared identical, I
deleted the duplicate.

These will be linted in the future once we switch to pre-commit.

Change-Id: I880dc6b6de593c12e5ac026edfbe95258e87bcde
2024-10-29 14:55:44 -07:00
Jay Faulkner
a72aad5354 Make all API samples valid JSON
As part of the migration to pre-commit for CI, we will begin linting
JSON files in the repo. These were all invalid JSON and are being
updated in anticipation of that update.

Change-Id: Ib6c7581fb20211d2b7134f506286c73e5c2cd6bb
2024-10-29 14:55:44 -07:00
Zuul
e8d29df979 Merge "Gracefully handle bad request exception" 2024-10-28 13:20:35 +00:00
Zuul
660c588dcb Merge "Expand detected strings in check_cipher_suite_errors" 2024-10-25 16:14:38 +00:00
Zuul
07465858f5 Merge "docs: adds link to oslo_messaging_notifications documentation" 2024-10-25 15:15:46 +00:00
Jay Faulkner
3db454f0ea Enable WSGI module entrypoint for Ironic
This adds a wsgi entrypoint module which can be used with a wsgi runner,
such as uwsgi, to launch Ironic API processes without the need of a
separate script.

The legacy WSGI script is currently being installed by PBR, and as part
of the migration to a pyproject.yaml-compatible PBR, we cannot use the
wsgi-scripts plugin anymore, and will be removing the script installed
by it in a future Ironic release.

The new WSGI script, because it has statements at the module top-level,
cannot be autodocumented; we now exclude it.

Also we don't treat all warnings as errors in pdf docs builds to allow
the use of mock autosummary, starting with including the wsgi module.

Co-Authored-By: Doug Goldstein <cardoe@cardoe.com>
Change-Id: I584ac6a25c4e6cd9744a609b50d12b434a930dc6
2024-10-25 16:57:05 +02:00
Zuul
81fa3c0729 Merge "Remove Python 3.8 support" 2024-10-24 18:19:00 +00:00
Zuul
f76b006b3f Merge "Add support for node name in port creation" 2024-10-24 18:18:56 +00:00
Julia Kreger
fde2cd608e CI: Change 4k block device job to use LVM
An interesting, and frustrating aspect of 4k block devices is that the math begins
to be impacted across the whole of the useage of the device.
Specifically the LVM block spacing also begins to be thrown
"out of alignment" which changes user calculations.

Most users doing smaller allocations likely won't matter, but users doing
thin volumes or filling the percentage of the remaining usable volume, also then
break.

So realistically, the best path to ensure we have appropriate 4k device testing,
and our dependent tooling in diskimage-builder is also getting tested, is to run
the more complex case in our CI job.

This change is dependent upon two other changes which are under review.

Change-Id: I5b23403c783fa84b4158708741524c3dc9a92722
2024-10-24 10:56:31 -07:00
Takashi Kajinami
6bbfa45e1e Remove Python 3.8 support
Python 3.8 was removed from the tested runtimes for 2024.2[1] and has
not been tested since then.

Also add Python 3.12 which is part of the tested runtimes for 2025.1.
Now unit tests job with Python 3.12 is voting.

[1] https://governance.openstack.org/tc/reference/runtimes/2024.2.html

Change-Id: I706c8b22fbf29e057942990a1004a42763594746
2024-10-24 18:13:34 +09:00
Nicholas Kuechler
48b2d856a5 docs: adds link to oslo_messaging_notifications documentation
Change-Id: I1bf907247559c9945def34dc1b7fccb634324636
2024-10-23 09:51:43 -05:00
cid
da002a341c Add support for node name in port creation
Add support for creating ports using either node UUID or node name.

Closes-Bug: #1439901
Change-Id: I215619648bbe7aa1152e0f117971bece74ffe1fe
2024-10-23 11:43:10 +01:00
Pavlo Shchelokovskyy
80540bb52d Expand detected strings in check_cipher_suite_errors
we see some slightly different errors returned in the wild
for some HW.

Change-Id: Ic822c8283600b658ba5ff7bc007cb95352d82a86
Related-Bug: #2085137
2024-10-22 23:14:41 +03:00
Zuul
1f740c8a90 Merge "docs: Updates redfish metrics docs with required configuration file settings" 2024-10-22 18:49:03 +00:00
Zuul
100f9b6829 Merge "Enable GLOBAL_VENV in ironic grenade jobs" 2024-10-22 18:48:58 +00:00
cid
c09525dd81 Gracefully handle bad request exception
Closes-Bug: #1619235
Change-Id: I156ba389e437c49ae75411cfbf0e29bcd54733bc
2024-10-22 13:01:31 +01:00
Zuul
fd51cead30 Merge "Added Localdev Docs on changing microversion" 2024-10-21 23:28:19 +00:00
Sharpz7
823a7c93bd Added Localdev Docs on changing microversion
Added some documentaition that details how to change the ironic localdev microversion for testing purposes.

Rendered View: https://files.mcaq.me/944ch.png

Change-Id: I1e21a12ad1413046a41f856ddf229e399f82523a
2024-10-21 22:27:01 +00:00
Ghanshyam Mann
7b807eff73 Enable GLOBAL_VENV in ironic grenade jobs
grenade by default enable GLOBAL_VENV which means it
install and run everything from virtual env

- https://review.opendev.org/c/openstack/grenade/+/930507

We faced the error in ironic grenade scripts in virtual env
so GLOBAL_VENV was disabled explicitly. This fixing the scripts
and enable GLOBAL_VENV in ironic jobs also.

Change-Id: I48ee1dd4adc2e5bcc18c5f116d979e7524248495
2024-10-17 14:48:11 -07:00
Zuul
45ee7dc365 Merge "CI: Add a 4k disk CI job" 2024-10-17 15:37:45 +00:00
Zuul
69a788ab55 Merge "devstack: Remove IRONIC_USE_WSGI" 2024-10-17 14:07:58 +00:00
Dmitry Tantsur
599fb4b64a
Redfish power: account for disable_power_off
Change-Id: I7ba8ec97a59623081af45248ae688d0d7d3d1f70
2024-10-17 15:58:14 +02:00
Zuul
0d07ad03d8 Merge "devstack: Remove IRONIC_USE_MOD_WSGI" 2024-10-17 13:28:13 +00:00
Nicholas Kuechler
ae4d5b5c49 docs: Updates redfish metrics docs with required configuration file settings
Change-Id: Ide7c245e017a92519e17ed1fb62c7fc986a1ae6a
2024-10-16 15:29:37 -05:00