This reverts commit c4d2851a13910cc36c46034ba87e6775f8c2b20b.
Reason for revert: 3.6 is not broken yet, except that this change
breaks it. Let us revert until we fully switch to Stream 9.
Change-Id: Ia2870135a90128f744afb9c45524ab003878843f
The logic of adding a partition number to the device path does not work
for devicemapper devices (e.g. a multipath storage device).
Change-Id: I9a445e847d282c50adfa4bad5e7136776861005d
Using partition numbers is currently broken for devicemapper devices.
Fortunately, GPT has partition UUIDs, so we can just generate one and
use it for lookup.
Change-Id: I41ffe4f8e4c6e43182090b5aa2a2b4b34f32efd5
The existing lsblk call is very handy for an overview, but there a lot
more useful pairs to collect. Collect them in a machine-readable format
to be able to use in debugging and further development.
Change-Id: Ib27843524421944ee93de975d275e93276a5597a
Request class from Werkzeug now includes json capability by default.
See [1] and [2] for more info.
[1] 2cd4fa9484
[2] 7b52ecd8f3
Change-Id: I3c74b26ef4aff07c371364203a5b39c658b552a7
Add file to the reno documentation build to show release notes for
stable/yoga.
Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/yoga.
Sem-Ver: feature
Change-Id: Ib1aa5d02cc5dc32bc4eebf6982d3f00d44e703f3
https://storyboard.openstack.org/#!/story/2008290 added support
for NVMe-native storage cleaning, greatly improving storage clean
times on NVMe-based nodes as well as reducing device wear.
This is a follow up change which aims to make further improvements
to cleaning efficiency in mixed NVMe-HDD environments. This is
achieved by combining NVMe-native cleaning methods on NVMe devices
with traditional metadata clean on non-NVMe devices.
Story: 2009264
Task: 43498
Change-Id: I445d8f4aaa6cd191d2e540032aed3148fdbff341
Depending on the how the stars align with partition images
being written to a remote system, we *may* end up with
*either* a Partition UUID value, or a Partition's UUID value.
Which are distinctly different.
This is becasue the value, when collected as a result of writing
an image to disk *falls* back and passes the value to enable
partition discovery and matching.
Later on, when we realized we ought to create an fstab entry,
we blindly re-used the value thinking it was, indeed, always
a Partition's UUID and not the Partition UUID. Obviously,
the label type is quite explicit, either UUID or PARTUUID
respectively, when initial ramdisk utilities such as dracut
are searching and mounting filesystems.
Adds capability to identify the correct label to utilize
based upon the current state of the block devices on disk.
Granted, we are likely only exposed to this because of IO
race conditions under high concurrecy load operations.
Normally this would only be seen on test VMs, but
systems being backed by a Storage Area Network *can*
exibit the same IO race conditions as virtual machines.
Change-Id: I953c936cbf8fad889108cbf4e50b1a15f511b38c
Resolves: rhbz#2058717
Story: #2009881
Task: 44623
In case no BOM is present in the CSV file the utf-16 codec won't work.
We fail over to utf-16-le as Little Endian is commonly used.
Change-Id: I3e25ce4997f5dd3df87caba753daced65838f85a
Its configuration must match one in Ironic, and netboot does not work
with whole disk images under UEFI.
Fix the boot mode of the BIOS job: it was running in UEFI.
Change-Id: Ia207e80bbfc30f8d2891e11bbeda7b2ab0d617c0
* Move irrelevant code from inside the giant try..except block
* Do not bother removing the (empty) temporary mountpoint
* Fix log messages according to the actual code
* Fix some code duplication
* Add missing unit tests for failure case
Change-Id: Id7b557419d513375816d73901e2ab6f139d765ad
prepare_boot_partitions_for_softraid() is used in BIOS and UEFI
modes to prepare the partitions for the bootloader. Move it from
the image extensions to raid_utils to reflect this and avoid the
import of an extension to efi_utils.
Follow-up to 62c5674a600baeeef0af3b12baeab486870eb103.
Change-Id: I9f5974fbbfea5e8cdfbb7e49bea375e5cbfdd145
In work_on_disk function, IPA runs mkfs commands without
following device rescan operation. This leads to incorrect
content of uuids_to_return to be returned.
These mkfs commands modify partition label but IPA fails
to catch such changes because of no following device
rescan operation.
This commit adds call of device rescan function before
uuids_to_return construction.
Change-Id: I4e8b30deb5e2247f51ce8f10bd3271f64a264089
We forgot to revert it. This job covers software RAID and manual
cleaning, so it's very important to avoid regressions, even if it costs
us some rechecks from time to time.
Change-Id: I2446afeaca866ffc3131b5e9f266526f35fc5ed7
It seems like tinyIPA silently replaces /dev/md/esp with /dev/md127.
Find the next free /dev/md device and use it instead.
Also rescan the resulting device before copying files.
Change-Id: Ie04f530be434c4b1561e75f387b9da679e4607e0
Depends-On: https://review.opendev.org/c/openstack/ironic/+/827129/
Move the software RAID code path from grub2-install to
efibootmgr:
- remove the UEFI efibootmgr exception for software RAID
- create and populate the ESPs on the holder disks
- update the NVRAM with all ESPs (the component devices
of the ESP mirror, use unique labels to avoid unintentional
deduplication of entries in the NVRAM)
Story: #2009794
Change-Id: I7ed34e595215194a589c2f1cd0b39ff0336da8f1
Pair nodes dynamically via a distributed coordination backend for
network burn-in. The algorithm uses a group to pair nodes: after
acquiring a lock, a first node joins the group, releases the lock,
waits for a second node, then they both leave, and release the lock
for the next pair.
Story: #2007523
Task: #42796
Change-Id: I572093b144bc90a49cd76929c7e8685ed45d9f6e
We have updated the yoga testing runtime to keep the
py36 testing.
- https://review.opendev.org/c/openstack/governance/+/820195
Unit tests job template is also updated to keep python
3.6 as a voting job. So with the py3.6 and py3.9 testing as voting
job template, we are keeping python 3.6, 3.7, 3.8, and 3.8 as
tested versions in the Yoga cycle.
- https://review.opendev.org/c/openstack/openstack-zuul-jobs/+/820286
This commit re-add the python 3.6/3.7 versions in setup.cfg classifier.
Change-Id: I0f03a7f5bb2aa07c2ec2aab1a8ebfddc0c70ca87
In order to ease logging of the various burn-in steps, this patch
proposes options to define the outpout files for all burn-in steps:
{'agent_burnin_cpu', 'agent_burnin_vm', 'agent_burnin_fio_network',
'agent_burnin_fio_disk'}_outputfile via a node's driver-info.
Story: #2007523
Task: #44102
Change-Id: I327cae5949d38e738d3c535487b3795d00ad8f1e