Commit Graph

1227 Commits

Author SHA1 Message Date
Zuul 3f17bca07d Merge "Update master for stable/2024.1" 2024-03-15 14:48:34 +00:00
Zuul 1014dc16dd Merge "reno: Update master for victoria Unmaintained status" 2024-03-12 18:34:10 +00:00
Zuul d32d3c5ddc Merge "reno: Update master for wallaby Unmaintained status" 2024-03-12 18:31:54 +00:00
OpenStack Release Bot 292a0ce2ce 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: I8c58db8c491fb9c66933ea44be60cadadd7b66b1
2024-03-08 13:53:04 +00:00
OpenStack Release Bot bcca9cd8f2 reno: Update master for xena Unmaintained status
The stable/xena branch has been deleted, so reno can't find its
release notes.  Use the xena-eom tag to indicate the end of the
Cinder project's maintenance of the Xena series.

This strategy is what we used for the yoga transition, and was
discussed at a cinder weekly meeting:
https://meetings.opendev.org/irclogs/%23openstack-meeting-alt/%23openstack-meeting-alt.2024-02-07.log.html#t2024-02-07T14:06:09

Change-Id: I498caa035a92bae70bb3e8e3a230b7c790642aa9
2024-03-06 16:59:07 +00:00
OpenStack Release Bot f5510ad1ae reno: Update master for wallaby Unmaintained status
The stable/wallaby branch has been deleted, so reno can't find its
release notes.  Use the wallaby-eom tag to indicate the end of the
Cinder project's maintenance of the Wallaby series.

This strategy is what we used for the yoga transition, and was
discussed at a cinder weekly meeting:
https://meetings.opendev.org/irclogs/%23openstack-meeting-alt/%23openstack-meeting-alt.2024-02-07.log.html#t2024-02-07T14:06:09

Change-Id: I95d26dad9d6fccfe804bd236fba97dc3c83eb017
2024-03-06 16:54:27 +00:00
OpenStack Release Bot e1d4b5d5d2 reno: Update master for victoria Unmaintained status
The stable/victoria branch has been deleted, so reno can't find its
release notes.  Use the victoria-eom tag to indicate the end of the
Cinder project's maintenance of the Victoria series.

This strategy is what we used for the yoga transition, and was
discussed at a cinder weekly meeting:
https://meetings.opendev.org/irclogs/%23openstack-meeting-alt/%23openstack-meeting-alt.2024-02-07.log.html#t2024-02-07T14:06:09

Change-Id: Ie986152d5fbba36a6102f9c0edafdf123f9ba3fe
2024-03-06 16:47:50 +00:00
Zuul 84fe1810c8 Merge "Deprecate Windows OS support" 2024-02-21 19:17:10 +00:00
Zuul 04ada3cbcc Merge "Add releasenote for unchecked LVM versions" 2024-02-21 16:47:56 +00:00
Zuul f33b2b2b83 Merge "Dell PowerFlex: Unnecessary login happen" 2024-02-21 16:47:55 +00:00
Zuul d1ee8f4d1c Merge "LVM: Assume LVM >= 2.02.115" 2024-02-21 16:35:10 +00:00
Takashi Kajinami 278fdf8b3a Deprecate Windows OS support
Unfortunately the Winstackers project has been retired because of no
maintainers[1][2], and OpenStack on Windows host is no longer
maintained.

[1] https://lists.openstack.org/pipermail/openstack-discuss/2022-November/031044.html
[2] https://review.opendev.org/c/openstack/governance/+/886880

Change-Id: I97a441700304765e6db33f3827d5146fed09a919
2024-02-21 15:15:27 +00:00
Rajat Dhasmana cc518e14d8 Add releasenote for unchecked LVM versions
This is a followup of[1][2] where we remove checks for certain
LVM versions.
This patch adds a releasenote for stating that we have removed
checks for certain LVM versions and the minimum supported version
should be 2.02.115

[1] https://review.opendev.org/c/openstack/os-brick/+/891318
[2] https://review.opendev.org/c/openstack/os-brick/+/891319

Change-Id: Id96540b3e7fae24bed2856ad08ced907d4b71aa6
2024-02-21 14:32:45 +00:00
Zuul 2d733e47a8 Merge "LVM: Assume version >= 2.02.99" 2024-02-19 15:08:26 +00:00
Zuul 7e0a7f8f81 Merge "Fix: FC partial target scan" 2024-02-15 02:09:12 +00:00
Rajat Dhasmana f2154eedf0 Fix: FC partial target scan
When fetching the target value (T in HCTL) for the storage HBAs,
we use the /sys/class/fc_transport path to find available targets.
However, this path only contains targets that already have a LUN
attached from, to the host.

Scenario:
If we have 2 controllers on the backend side with 4 target HBAs each (total 8).
For the first LUN mapping from controller1, we will do a wildcard
scan and find the 4 targets from controller1 which will get
populated in the /fc_transport path.
If we try mapping a LUN from controller2, we try to find targets in the
fc_transport path but the path only contains targets from controller1 so
we will not be able to discover the LUN from controller2 and fail with
NoFibreChannelVolumeDeviceFound exception.

Solution:
In each rescan attempt, we will first search for targets in the
fc_transport path: "/sys/class/fc_transport/target<host>*".
If the target in not found then we will search in the fc_remote_ports
path: "/sys/class/fc_remote_ports/rport-<host>*"

If a [c,t,l] combination is found from either path, we add it to
the list of ctls we later use it for scanning.

This way, we don't alter the current "working" mechanism of scanning
but also add an additional way of discovering targets and improving
the scan to avoid failure scenarios in each rescan attempt.

Closes-Bug: #2051237
Change-Id: Ia74b0fc24e0cf92453e65d15b4a76e565ed04d16
2024-02-13 20:16:22 +05:30
Zuul 72743a2139 Merge "encryptors: Unbind LuksEncryptor and CryptsetupEncryptor" 2024-02-13 00:04:33 +00:00
OpenStack Release Bot f03f528d74 reno: Update master for yoga Unmaintained status
The stable/yoga branch has been deleted, so reno can't find its
release notes.  Use the yoga-eom tag to indicate the end of the
Cinder project's maintenance of the Yoga series.

This strategy was agreed upon at today's cinder weekly meeting:
https://meetings.opendev.org/irclogs/%23openstack-meeting-alt/%23openstack-meeting-alt.2024-02-07.log.html#t2024-02-07T14:06:09

Change-Id: Id62a486aa66bf924a0ede98ec66e71586d1b806f
2024-02-07 15:06:47 +00:00
Zuul 7ad6acdff5 Merge "NVMe-oF: Support nvme cli v2" 2024-01-10 14:12:09 +00:00
Zuul 6dec29040d Merge "NVME-oF: Fix to support new "address" in sysfs" 2024-01-10 14:09:05 +00:00
Zuul c1feb4f86f Merge "Update python classifier in setup.cfg" 2024-01-09 23:29:21 +00:00
Zuul f1fcd9a75d Merge "NVMe-oF: Fix attach when reconnecting" 2024-01-09 07:20:14 +00:00
Ghanshyam Mann 2f5af5f6bc Update python classifier in setup.cfg
As per the current release tested runtime, we test
till python 3.11 so updating the same in python
classifier in setup.cfg

Change-Id: I06e453b6d02ac8c7b615d3d61b06173eb249dc27
2024-01-08 20:21:04 -08:00
Zuul 136f76efd4 Merge "NVMe-oF: Improve hostnqn creation" 2024-01-06 11:51:56 +00:00
Zuul 8e960a9bcd Merge "NVMe-oF: Fix generation of hostnqn file" 2024-01-06 11:34:20 +00:00
Zuul 504836db48 Merge "Dell Powerflex: Add new VOLUME_NOT_MAPPED_ERROR" 2024-01-05 18:37:15 +00:00
Gorka Eguileor 16ba8ed396 NVMe-oF: Support nvme cli v2
The nvme cli has changed its behavior, now they no longer differentiate
between errors returning a different exit code.

Exit code 1 is for errors and 0 for success.

This patch fixes the detection of race conditions to also look for the
message in case it's a newer CLI version.

Together with change I318f167baa0ba7789f4ca2c7c12a8de5568195e0 we are
ready for nvme CLI v2.

Closes-Bug: #1961222
Change-Id: Idf4d79527e1f03cec754ad708d069b2905b90d3f
2024-01-05 16:45:21 +01:00
Gorka Eguileor 268b1261ec NVME-oF: Fix to support new "address" in sysfs
Attaching NVMe-oF no longer works in CentosOS 9 stream using nvme 2.4
and libnvme 1.4.

The reason is that the 'address' file in sysfs now has the 'src_addr'
information.

Before we had:
   traddr=127.0.0.1,trsvcid=4420 After:

Now we have:
   traddr=127.0.0.1,trsvcid=4420,src_addr=127.0.0.1

This patch fixes this issue and future proofs for any additional
information that may be added by parsing the contents and searching for
the parts we care: destination address and port.

Closes-Bug: #2035811
Change-Id: I7a33f38fb1b215dd23e2cff3ffa79025cf19def7
2024-01-05 16:45:21 +01:00
Gorka Eguileor ec22c32de6 NVMe-oF: Fix attach when reconnecting
When an nvme subsystem has all portals in connecting state and we try
to attach a new volume to that same subsystem it will fail.

We can reproduce it with LVM+nvmet if we configure it to share targets
and then:
- Create instance
- Attach 2 volumes
- Delete instance (this leaves the subsystem in connecting state [1])
- Create instance
- Attach volume <== FAILS

The problem comes from the '_connect_target' method that ignores
subsystems in 'connecting' state, so if they are all in that state it
considers it equivalent to all portals being inaccessible.

This patch changes this behavior and if we cannot connect to a target
but we have portals in 'connecting' state we wait for the next retry of
the nvme linux driver. Specifically we wait 10 more seconds that the
interval between retries.

[1]: https://bugs.launchpad.net/nova/+bug/2035375

Closes-Bug: #2035695
Change-Id: Ife710f52c339d67f2dcb160c20ad0d75480a1f48
2024-01-05 16:45:21 +01:00
Zuul aa83cc22e5 Merge "Remove unnecessary 'type: ignore' comments" 2024-01-04 18:53:38 +00:00
happystacker 97e89d8578 Dell Powerflex: Add new VOLUME_NOT_MAPPED_ERROR
Dell Powerflex 4.x changed the error code of VOLUME_NOT_MAPPED_ERROR
to 4039. This patch adds that error code.

Closes-Bug: #2046810
Change-Id: I76aa9e353747b1651480efb0f3de11c707fe5abe
2023-12-20 14:13:02 +01:00
Zuul 0e90d8e4c9 Merge "tox: Don't share envdir between pep8 and fast8" 2023-12-19 17:33:59 +00:00
Zuul f67655291a Merge "Support hacking>=6.0.0" 2023-12-15 22:13:12 +00:00
Zuul 7e9f8a666f Merge "import pylint tooling from cinder" 2023-11-29 16:47:14 +00:00
Rajat Dhasmana 02a9f590a2 Remove unnecessary 'type: ignore' comments
The mypy job complaints about 'exc' variable[1] since it was used
for ExceptionChainer as well as TargetPortalNotFound exception.
Changing the variable name for TargetPortalNotFound exception from
'exc' to 'target_exc' makes the 'type: ignore' comments unnecessary.

[1] Trying to read deleted variable 'exc'

Change-Id: I4b10db0754f0e00bb02d3a60f9aaf88b90466a8f
2023-11-22 11:27:47 +05:30
Gorka Eguileor 088c676bf5 NVMe-oF: Improve hostnqn creation
This patch improves the creation of the /etc/nvme/hostnqn file by using
the system UUID value we usually already know.

This saves us one or two calls to the nvme-cli command and it also
allows older nvme-cli versions that don't have the `show-hostnqn`
command or have it but can only read from file to generate the same
value every time, which may be useful when running inside a container
under some circumstances.

Change-Id: Ib250d213295695390dbdbb3506cb297a86e95218
2023-11-15 13:40:25 +01:00
Zuul b72f575e26 Merge "Remove egg_info from setup.cfg" 2023-11-14 19:38:46 +00:00
Tony Saad 14b024c505 Dell PowerFlex: Unnecessary login happen
The Dell PowerFlex (scaleio) connector maintains a token cache
for PowerFlex OS.
The cache was overwritten with None by misktake
in Change-ID I6f01a178616b74ed9a86876ca46e7e46eb360518.
This patch fixes the broken cache to avoid unnecessary login.

Closes-Bug: #2004630
Change-Id: I2399b0b2af8254cd5697b44dcfcec553c2845bec
2023-10-07 02:16:26 +00:00
Zuul fb23a40a65 Merge "Revert "Dell PowerFlex password appears in plain text when creating a volume"" 2023-09-28 15:46:12 +00:00
Yian Zong bbc732c40e Revert "Dell PowerFlex password appears in plain text when creating a volume"
This reverts commit 33661ece80.

Reason for revert: breaks reading password from the config file

Change-Id: I840d8c4d66daf0ab8636617b42cdb47dd4313cc9
2023-09-28 07:48:06 +00:00
Zuul 07b0e4a94b Merge "Update master for stable/2023.2" 2023-09-25 14:56:44 +00:00
Zuul f3b11ddf9e Merge "Dell Powerflex: Add new VOLUME_ALREADY_MAPPED_ERROR" 2023-09-21 10:23:49 +00:00
Zuul 92d9963e6f Merge "Dell PowerFlex password appears in plain text when creating a volume from an image" 2023-09-20 22:15:07 +00:00
tony-saad 33661ece80 Dell PowerFlex password appears in plain text when creating a volume
from an image

This patch fixes the issue of password getting writen in plain text in
logs while creating a new volume. It created a new logger with default
log level at error.

Closes-Bug: #2003179
Change-Id: I0292a30f402e5acddd8bbc31dfaef12ce24bf0b9
2023-09-20 10:47:06 +00:00
tony-saad 42d9a89280 Dell Powerflex: Add new VOLUME_ALREADY_MAPPED_ERROR
Dell Powerflex 4.x changed the error code of VOLUME_ALREADY_MAPPED_ERROR
to 4037. This patch adds that error code.

Closes-Bug: #2013749
Change-Id: I928c97ea977f6d0a0b654f15c80c00523c141406
2023-09-20 08:47:24 +02:00
Gorka Eguileor 7da3d82773 NVMe-oF: Fix generation of hostnqn file
In some old nvme-cli versions the NVMe-oF create_hostnqn method fails.

This happens specifically on versions between not having the
show-hostnqn command and having it always return a value. On those
version the command only returns the value present in the file and never
tries to return an idempotent or random value.

This patch adds for that specific case, which is identified by the
stderr message:

   hostnqn is not available -- use nvme gen-hostnqn

Closes-Bug: #2035606
Change-Id: Ic57d0fd85daf358e2b23326022fc471f034b0a2f
2023-09-14 18:21:18 +02:00
OpenStack Release Bot 034a6f247a Update master for stable/2023.2
Add file to the reno documentation build to show release notes for
stable/2023.2.

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

Sem-Ver: feature
Change-Id: I25bef272ded6c7c963c6ad0f95103fe421fa8fe7
2023-09-08 14:55:39 +00:00
Brian Rosmaita eea10dea21 Use generic testing template
Change If402f9ae0ca06fec0 replaced cycle-specific testing templates
that had to be changed in each project's zuul config file with a
generic template that only needs to be updated in one place, namely,
in the openstack-zuul-jobs repo.

Apparently os-brick didn't get the memo, so we fix that now.

Change-Id: I8202283d5bd5ecede3414fe3e92e95e743df2f67
2023-09-01 17:48:18 -04:00
Zuul bb730f37cd Merge "Check paths before extending device" 2023-08-25 16:32:11 +00:00
whoami-rajat 71627c56ac Fix unit tests when hostid file exists
After merging change I0b60f9078f23f8464d8234841645ed520e8ba655, we
noticed an issue with existing unit tests which started failing.
The reason is 'nvme_hostid' was an additional parameter returned
in the response while fetching connector properties from nvme
connector.
This is environment specific and won't occur in environments where
'/etc/nvme/hostid' file doesn't exist due to which these tests
passed in gate but failed in the local run when hostid file
was present.
This patch mocks the get_nvme_host_id method for tests so the
hostid is never returned irrespective of the environment.

Closes-Bug: #2032941
Change-Id: I8b1aaedfdb9bef6e34813e39dede9afe98371d2b
2023-08-24 15:28:35 +00:00