Commit graph

869 commits

Author SHA1 Message Date
Julia Kreger
d1c117502a CI: Fix anaconda job post OSSA-2025-001
Turns out some of the standalone jobs, anaconda in particular,
can reference some artifacts on disk in such a way which causes
the security logic to block the request. This is an easy fix.

Change-Id: I79204117cdbffab1f619981767471475870b4571
(cherry picked from commit 42be33b52b)
2025-05-16 17:09:48 +00:00
Jay Faulkner
38d94ca3a0 Use specific fix-commit from dnsmasq
I have requested a new release from dnsmasq here:
https://lists.thekelleys.org.uk/pipermail/dnsmasq-discuss/2024q4/017828.html
but until they perform one, we should at least checkout and build
a version of dnsmasq with this fix, instead of downgrading to one that
is slightly less broken.

Related-Bug: 2026757
Change-Id: I8abac5fa729035341c90d7881cb35aff751da101
(cherry picked from commit 360e21124c)
2024-11-25 22:04:01 +00:00
Dmitry Tantsur
510f87a033
Try limiting MTU to at least 1280
Temporary make metal3-integration non-voting until we merge the fix for
regression https://review.opendev.org/c/openstack/ironic/+/928885.

Change-Id: If8f9907df62019b3cf6d6df7d83d5ff421f6be65
2024-09-12 10:35:40 +02:00
Zuul
da5e44908b Merge "Enable the inspection test in the redfish standalone job" 2024-09-03 17:49:14 +00:00
cid
aaec00275a Replace reference to ari/aki
Replace 'ari' and 'aki' with correct values for kernel/ramdisk
artifacts.

Closes-Bug: #2074090
Change-Id: I5b5bcf7e081fc0865ec43ccf6a988280ec7c9273
2024-08-27 13:46:10 +01:00
Dmitry Tantsur
e3d6b644ff
Enable the inspection test in the redfish standalone job
Change-Id: If975a303b6a74efdb2688ad6ae961c34336d99bb
Depends-On: https://review.opendev.org/c/openstack/ironic-tempest-plugin/+/925981
2024-08-22 17:50:44 +02:00
Zuul
50c12609cc Merge "DevStack: enable the new in-band inspection by default" 2024-08-12 17:01:07 +00:00
Zuul
701ad07b57 Merge "CI: set tftp folder permission" 2024-08-07 14:11:02 +00:00
Dmitry Tantsur
db7e4deff9
DevStack: enable the new in-band inspection by default
This change makes it possible to test the new "agent" implementation.
The PXE environment is not migrated so far, so managed inspection is
assumed by default.

Change-Id: I60a11454aefc01333e3f788e2b09ec6e47423223
2024-08-05 13:27:40 +02:00
Jay Faulkner
bfdfd6c161 [devstack] Ensure downgrade_dnsmasq is idempotent
Right now, when restacking to get new code checked out, we fail due to
the dnsmasq directory already existing. Now, skip the downgrade if we
detect the correct version -- as we would on a second run.

Change-Id: I5c3d28f75b66d14540cbafa03bff8b7def688da5
2024-07-25 13:50:59 -07:00
Julia Kreger
631f50d21b CI: set tftp folder permission
In trying to chase down why the raw tftp boot of grub is not
happy, I determined that the tftp folder being created had the
wrong permissions out of the box. Ironic has an optional knob for
this, so we're going to set it by default.

Change-Id: If2a0e5e47163a3525ecd245e8b54cacea9a615de
2024-07-09 23:13:25 +00:00
cid
3fd1fb3518 Follow up to change on testing CI on ARM
Setting the minimum needed for configuring devstack.

Related-Change: #915441
Change-Id: Ia94ebe2d2a1bd66cd03a4c833273b20ff15171f4
2024-06-24 20:00:53 +01:00
Zuul
19c8efd9d7 Merge "Provision ARM (aarch64) fake-bare-metal-vms" 2024-06-19 16:59:05 +00:00
cid
209ba79732 Provision ARM (aarch64) fake-bare-metal-vms
This commit introduces support for provisioning ARM (aarch64)
fake-bare-metal VMs in Ironic for the purpose of eventually supporting
CI testing on ARM64 architecture-based hardware.

Change-Id: Ie4bff8892228275ad0fb940c30e8071f7f4c423f
2024-06-19 03:17:05 +01: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
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
4b35da4ece Merge "[devstack] Upload images with --file instead of stdin" 2024-05-14 15:48:13 +00:00
Zuul
dcace881bc Merge "docs: revise notes around iso booting for clarity" 2024-05-13 16:37:25 +00:00
Dan Smith
a0f48b6425 [devstack] Upload images with --file instead of stdin
This makes all the image upload commands in the devstack plugin use
--file instead of stdin redirection, and also uses an absolute path.
One of the commands was already doing it this way. By doing the upload
like this, it makes the devstack plugin usable with the OCaaS devstack
mode (for faster openstack client ops) since we can't pass the image
stream via stdin. Most people will be using --file for uploading
anyway, so this is probably more realistic anyway.

Change-Id: I8d97ed731133d02aed46a078c50769692ad7ba04
2024-05-08 11:00:44 -07:00
Julia Kreger
8d0b556e3d Fix spurious CI job failures around partition images
Cirros partition images have some underlying limitations,
meaning it is not ideal for any step which requires the image
to hae commands executed in it to perform operations, such as
mounting additional filesystems in UEFI mode, or installing
grub in BIOS mode.

This is because cirros images are an unpacked ramdisk, in other
words, the posted disk image *has no* contents on the root
filesystem of the image. While we attempt to unpack[0] this as well,
this can also fail creating false failures resulting in check
jobs failing and then working on recheck.

As the constraint is the same as the BIOS mode check, and there
is no realistic fix, this change removes the boot mode check and
thus always disables partition image testing with tempest *when*
cirros is in use.

note 0: We presently unpack using a virtual machine launch so it
takes place with the same process as when cirros starts, however
linux doesn't always boot, and the tools don't really determine
if that is the case or not, and if we retool it, we should just
move to a direct extraction and image re-pack.

Change-Id: I7687ff1eddb14d22b981860d4c4c9b172bae45b7
2024-05-07 09:40:32 -07:00
Julia Kreger
021117e354 docs: revise notes around iso booting for clarity
Had someone try to boot the tinycore ISO on a UEFI machine, and they
got a nice error. Just turns out we needed to update our docs a little
bit to provide appropriate clarity.

Change-Id: I1adfb62ea22d0b58740ceadc8c338fc04d9b78de
2024-05-01 10:14:20 -07:00
Zuul
a7b2908e2c Merge "CI: Unpack cirros image partition jobs" 2024-04-18 19:20:12 +00:00
cid
211e007472 Load machine type from command-line
Change-Id: Ib2bdac78e0eb4043e2a2f86244ea168641571817
2024-04-16 00:30:44 +01:00
Julia Kreger
adef5d60a7 CI: Unpack cirros image partition jobs
Cirros, by default, as part of its initialization, copies the initial
ramdisk contents over the filesystem on disk. This changes the partition
image creation job so we do it upfront so the partition image looks like
and matches what we generally expect from a partition image as opposed
to just a kernel, ramdisk, and bootloader.

Change-Id: Idde30e33e9453f8564a7c3b9109c4e567146dee7
2024-04-02 03:53:37 +00:00
Julia Kreger
12cf47da0b ci: automatically set the branch for IPA to match TARGET_BRANCH
... if present, use TARGET_BRANCH parameter to influence which
branch is used for IPA downloads.

Change-Id: I9d8878ddc56f1cd90debfc2e61838162fe39e039
2024-03-27 13:46:52 -07:00
Zuul
df9e1ba80e Merge "[codespell] Fixing Spelling Mistakes" 2024-03-14 17:13:05 +00:00
Zuul
1e84214d38 Merge "ci: support overriding the service project name" 2024-03-11 12:49:27 +00:00
Zuul
4a147edd4d Merge "Fix multiple assignment of redfish_system_id during node creation" 2024-03-08 01:00:03 +00:00
cid
abe8843ddc Fix multiple assignment of redfish_system_id during node creation
``redfish_system_id`` is being passed multiple times to the node at
creation as ``node_options`` never defaults back to it's initial state
throughout the iteration of the while loop.

Though it is surprisingly functional, it's fragile and this change aims
to fix that.

Closes-Bug: #2054597
Change-Id: I2c151afafb86191f047985ac00075a791639646d
2024-03-05 16:17:39 +01:00
Zuul
8122861dac Merge "ci: pin CI to dnsmasq 2.85" 2024-03-01 15:03:28 +00:00
Zuul
de3fd5d88f Merge "[CI] Support for running with shards" 2024-02-29 23:54:46 +00:00
Julia Kreger
f893c740d7 ci: pin CI to dnsmasq 2.85
A temporary path forward to increase CI stability, by pinning
to what appears to be a "good working version" of upstream dnsmasq
which does not crash fon us.

Change-Id: I3295c92fd7b7871ad351b94f4c6cf0f554279db0
2024-02-29 14:54:40 -08:00
Jay Faulkner
5606c431f2 [CI] Support for running with shards
Adds support for creating nodes with shards.
Adds multinode job to test >1 n-cpus against shards.

Change-Id: I269568d83f17879fed5ac1dd5916935aea1f7fbf
2024-02-29 18:51:56 +00:00
yatinkarel
27f53debb6 ci: Source install dnsmasq-2.87
dnsmasq-2.86 shipped in Ubuntu jammy has a
known issue[1] which is fixed in dnsmasq-2.87
but it's not yet released with Ubuntu jammy.

Until fixed version is available in Ubuntu
jammy let's use source install instead of
using a older version from Ubuntu focal.

[1] https://lists.thekelleys.org.uk/pipermail/dnsmasq-discuss/2022q3/016562.html

Update from Julia:

Pushing forward the source fix again as ubuntu removed the
prior path we were using as a focal package and replaced
it with a package which is demonstrating the same basic issue.

Related-Bug: #2026757
Change-Id: I7ffcd167fc1e3a8c1192d766743bb5620d85ef35
2024-02-27 14:48:59 -08:00
Julia Kreger
ab5d0cadb0 ci: support overriding the service project name
Extension to extend the default service project name
value, which if set can be overrridden in Ironic's policy
configuration.

Change-Id: I60cc53a34c7062261703492e720989efedca4f2b
2024-02-16 07:24:46 -08:00
Julia Kreger
19bc67c196 ci: allow service role CI account usage to have elevated access
When I thought change I2b4bcc748b6e43e4215dc45137becce301349032
was going to fix everything, that was with the mental model that
it was going to be enabled by default. That didn't happen in
review as part of the service, but the reality is we still have
some adjacent CI jobs which need it to operate properly.

Given CI, it is just invoked when scope enforcement is enabled
for CI purposes

Change-Id: I60074504742d8b09017acbb42d2706215b0169af
2024-02-15 20:45:51 +00:00
Sharpz7
949387bd80 [codespell] Fixing Spelling Mistakes
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
2024-02-12 19:58:56 +00:00
Zuul
b256551b19 Merge "Disable legacy RBAC policy by default." 2024-01-23 21:58:26 +00:00
Zuul
cd17f5e61a Merge "Drop rootwrap support" 2024-01-23 20:14:36 +00:00
Julia Kreger
4359323558 Disable legacy RBAC policy by default.
Change the default RBAC policy in ironic such that the new RBAC
policy is enforced by default and the legacy policy is not usable
unless explicitly re-enabled.

Depends-On: https://review.opendev.org/c/openstack/metalsmith/+/905012
Change-Id: Id559f1d8b9a76c8a570b598585c2d58c56d08837
2024-01-22 11:10:53 -08:00
Takashi Kajinami
7032a0d9ac Stop using a specific mirror in infra
The host currently hard-coded is not functioning. This replaces
the hard-coded mirror by the local CI mirror detected. In case
mirror info is not available then upstream centos mirror is used.

Change-Id: I96a8cb45154c9dbb50efecc22d34c4ff75c6722a
2024-01-22 22:11:08 +09:00
Dmitry Tantsur
be09717be2
Drop rootwrap support
After removing the iSCSI deploy and changing ISO parsing code to use
a corresponding library, Ironic no longer executes any commands as root
and it should stay this way.

Change-Id: I47d2bab9b94345fbcf89a2a80028853050a041ea
2024-01-08 18:02:27 +01:00
Zuul
2403cd6041 Merge "CI: use Swift for configdrive when available" 2023-12-29 23:31:04 +00:00
Dmitry Tantsur
4cc167cc6e
Test redfish with reduced sushy-tools feature set
Two jobs are changed to test a reduced Redfish implementation:
one PXE job uses the minimum version (only boot/power management)
one vmedia job uses the reduced version (+ NICs, virtual media)

Change-Id: Ib3afdb26b9cd36c0e4f3d736b9c69a5bf508fc0e
2023-12-15 11:38:00 +01:00
Dmitry Tantsur
af8508f51d
CI: use Swift for configdrive when available
We have fixed the issue with TLS settings not being respected in
8a66978666

Change-Id: Ieb79432e897686e03e54d32ea390cca29b506569
2023-12-14 09:02:22 +01:00
Julia Kreger
ce300b3de1 CI: Remove deprecated devstack method
Removes get_uefi_ipxe_boot_file from the devstack plugin
as it is no longer used.

Change-Id: I5eed744a4746767b216399b132e98298471b4ab7
2023-11-16 15:16:49 -08:00
Zuul
5b1e347eb1 Merge "CI: Fix our internal MTU settings" 2023-10-18 06:43:05 +00:00
Zuul
b58f6d394e Merge "Enable OVN CI" 2023-10-10 16:01:15 +00:00
Julia Kreger
40e825ba93 CI: Fix our internal MTU settings
Long story short, we auto-clamp down everything to 1400 bytes
due to VXLAN tunneling for multinode testing. But there are other
reasons to clamp it smaller, and we will need to clamp that further
for multinode should we mix it with OVN.

Anyway, this should make things cleaner and we should rely upon the
gate calcualted MTU as a starting place, not the guess based upon
interface list. i.e. test VM could be wrong but gate could know better.

Change-Id: I385679fe30d1447f1ed94cdf5a419e6acefbc595
2023-10-09 13:13:29 +00:00