c2c72eef975eda9afbb1fe2ee06740a5d577c187
Commit Graph

2690 Commits

This Branch
This Branch
All Branches
Author SHA1 Message Date
Zuul
173c754c61 Merge "oci: Enable embedded authentication passing" 2025年02月18日 19:22:06 +00:00
Julia Kreger
94fde4b3b4 Remove agent_token_required upgrade knob
To help ease upgrades to Victoria, IPA had a knob added
to enable operators to express if agent tokens were required
in their deployment. Since then, the feature is required, however
we left the logic enabling the fun upgrade case handling.
At this point, this knob serves no further use, and can be removed.
Change-Id: I202f06e1b6598a802c9853fb99201c55e7a40cb1
2025年02月18日 14:36:18 +00:00
Julia Kreger
6c22ab2d39 Remove pre-victoria cycle agent token transition upgrade support
In order to support a state of mid-cluster upgrades, IPA had logic
to permit the case of getting a call where we didn't have a token
but got token, which could happen in a deployment which is mid-upgrade.
The code now explicitly lacks that permissive logic because, at this
point, upgrades no longer need to be supported from the pre-victoria
clusters by current IPA.
Related-Bug: #2086865
Related-Bug: #2086866
Change-Id: Ia4c459158098f48cde4a6f6f9c96b25431a88081
2025年02月18日 14:35:48 +00:00
Julia Kreger
a6ca65201a Lockout agent command results if a token is received
This is a second attempt at securing the get command output endpoint
which could have data such as logs which could potentially have
sensitive details and information after the agent has completed
one or more actions.
Now, if a token is receieved, the agent locks out the command results
endpoint, and requires all future calls to include it.
This allows for the agent to be backwards compatible.
Special thanks go to cid for his first attempt at this, which I took
for the basis of some of the testing required.
Closes-Bug: #2086866
Co-Authored-By: cid@gr-oss.io
Change-Id: Ia39a3894ef5efaffd7e1d22cc6244059a32175ff
2025年02月18日 06:32:48 -08:00
Zuul
8ab0bfbd9b Merge "Revert "Add token validation to GET command endpoints"" 2025年02月17日 18:35:53 +00:00
Dmitry Tantsur
3968715908 Revert "Add token validation to GET command endpoints"
This reverts commit 6f860995c6.
Reason for revert: the change has broken virtually everyone who
has not updated Ironic before IPA. To make the matter worse, the
attached release note is not descriptive and does not explain
the upgrade impact.
The reverted change should be reworked to allow a graceful period.
Change-Id: I2a2a03dd8409af900b938494ceafd45a89e0c197
2025年02月17日 13:40:19 +00:00
Zuul
3261052f5d Merge "follow-up: update release note for bootable container work" 2025年02月14日 22:46:58 +00:00
Zuul
2e9964e126 Merge "Add token validation to GET command endpoints" 2025年02月14日 22:46:56 +00:00
Zuul
7a70cc87fc Merge "Ensure IPA is locked down in rescue mode" 2025年02月14日 22:46:52 +00:00
cid
a42980a016 Ensure IPA is locked down in rescue mode
Securely handle state transition by locking down IPA at the final
stage of rescue operation to prevent restarts on tenant networks.
Closes-Bug: #2086865
Change-Id: I8e1be8da93a8c3fdf3cff7ad386c702d970d15f1
2025年02月14日 18:18:50 +01:00
cid
6f860995c6 Add token validation to GET command endpoints
Currently, we only validate authentication tokens for POST but not
for GET requests which could mean anyone can retrieve command results
without authentication. Adding that uniformly across all command-related
endpoints.
Closes-Bug: #2086866
Depends-On: https://review.opendev.org/c/openstack/ironic/+/941607
Change-Id: Ib7f58b1694273beeb25314984c6e049376244d86
2025年02月13日 23:28:56 +00:00
Julia Kreger
c4998fc584 oci: permit an 'unknown' but valid image
One of the "fun" aspects of accessing OCI images, is we have no way
to realistically gain awareness of the underlying disk format in the
OCI model, at least unless it is hinted at in the data model.
Where we're unable to really figure that out is when a user
supplies a specific digest URL. Ironic recognizes this and "right sizes"
the process and data discovery and explicitly notes the disk format it
believe to be 'unknown'.
In order for IPA to be able to stream, and appropriately check
this data format, IPA has be "okay" with 'unknown'. Everything else
appears good to get to this point. This doesn't prohibit the image
safety checking, just allows for the perception mismatch when the
format is 'unknown'
Change-Id: Ibe38245e906c659057a3c5ea7d8a0e474599ff5c
2025年02月12日 17:16:41 -08:00
Julia Kreger
a132e167f4 oci: Enable embedded authentication passing
For the OCI artifact retrieval case, to enable authentication to be
passed from the conductor (in the form of a bearer token), we need to
be able to handle the case where this data is present, and then
initiate the connection with the appropriate token.
Change-Id: I380b32671cbc3a640bc5012ac241a7244750d117
2025年02月12日 16:54:56 -08:00
cid
ced6f3a02a Trivial:Remove codespell job (moved to pre-commit)
Change-Id: I938eaaf29e3bc803155baa11b450d4d92e349d58
2025年02月12日 15:59:59 +01:00
Julia Kreger
c8763bba06 follow-up: update release note for bootable container work
Updates the release note for the bootable container work to
clarify the existence of the configuration option which can
be utilized to disable bootable container deployments in the
ramdisk.
Change-Id: I5b269947884c015db38cf98ac782472a62858455
2025年02月12日 06:39:47 -08:00
Zuul
a6d1921056 Merge "Bootable container support" 2025年02月10日 19:26:34 +00:00
Riccardo Pittau
fe55bee475 Revert "Configure ipa bugfix 10.1"
This reverts commit 412c8f3f4d.
Reason for revert: This landed in the wrong branch!
Change-Id: Ia4729c01e3e07f368fe691f91c3a1648a94c6d30
2025年02月10日 11:05:12 +00:00
Julia Kreger
1508cc4cd0 Bootable container support
Adds support for bootable containers to be deployed by the agent.
Related: https://review.opendev.org/c/openstack/ironic/+/937897
Change-Id: I66cb37d117d2afc335f015fb1fc31bdbd5c3cee5
2025年02月07日 15:59:48 -08:00
Riccardo Pittau
412c8f3f4d Configure ipa bugfix 10.1
Pin upper-constraints
Change-Id: Ideaf6a27ff01ed3f0dedba6df89202c5d7936817
2025年02月06日 17:22:25 +01:00
Zuul
8dacfa611f Merge "Collect bus and driver for interfaces" 10.1.0 2025年02月03日 20:15:14 +00:00
cid
a8b7b75e72 Trivial: Fix config help text about clock syncing
Closes-Bug: #2091593
Change-Id: I9798359b12de8c427263e8fc25f79b6f033211c4
2025年02月01日 08:41:45 +01:00
Kaifeng Wang
96bf1ef012 Collect bus and driver for interfaces
It's useful to have pci bus address/driver collected, the operator can
use the information to configure portgroup in a consistent way.
Change-Id: I432bca881ad881bae6d5e67c9b6fb52fe55b4e1e
2025年02月01日 15:22:26 +08:00
Doug Goldstein
b612bde7fa migrate lints to pre-commit
Migrated the existing lints to pre-commit and switched some over to ruff
to follow the changes that have landed in the ironic repo.
Change-Id: I361ca1b8d4ac9738f9c45ba6a87c377f5aca22a8
Signed-off-by: Doug Goldstein <cardoe@cardoe.com>
2025年01月29日 17:30:18 -05:00
Zuul
0c35e7e2da Merge "Add support for burnin-gpu" 2025年01月29日 19:20:10 +00:00
Zuul
234bc70f12 Merge "fix sphinx errors with incorrect backticks" 2025年01月29日 17:15:59 +00:00
Zuul
fdb15d448b Merge "avoid f-strings in logging per flake8" 2025年01月29日 17:15:58 +00:00
Zuul
b0623f0ac9 Merge "switch from 'not is' to 'is not' for pep8" 2025年01月29日 17:15:56 +00:00
Zuul
5333525411 Merge "Trivial: fix reference of unusable i18n prefix" 2025年01月29日 04:45:38 +00:00
Zuul
3ed0126a8f Merge "Replace crypt module" 2025年01月29日 03:00:25 +00:00
Doug Goldstein
fbb12a2f22 fix sphinx errors with incorrect backticks
In these cases two backticks must be used instead of one.
Change-Id: I85b00742a06ad1137a2d8f761432af97338995bb
Signed-off-by: Doug Goldstein <cardoe@cardoe.com>
2025年01月24日 23:07:51 -05:00
Doug Goldstein
dfdaf09508 avoid f-strings in logging per flake8
flake8 checks recommend avoiding f-strings.
Change-Id: I1636cb45c73463b9b1d70ad784582beca277af4a
Signed-off-by: Doug Goldstein <cardoe@cardoe.com>
2025年01月24日 21:57:23 -06:00
Doug Goldstein
c289ac0f18 switch from 'not is' to 'is not' for pep8
Fix this pep8 violation.
Change-Id: Ia69382a501791e3d11c045278c72073849cee20c
Signed-off-by: Doug Goldstein <cardoe@cardoe.com>
2025年01月24日 21:57:21 -06:00
Kaifeng Wang
f568ba1505 Trivial: fix reference of unusable i18n prefix
Change-Id: If3c8ed77587e4f36e6e9912c66eb9cd66700d515
2025年01月24日 11:42:41 +08:00
kubajj
018a5f6253 Fix errors in the function erase_devices_express
Prevents the UnboundLocalError in erase_devices_express clean step.
Closes-Bug: #2095499
Change-Id: I01ce5005a62638ff960d2a75f225f882b2d56973
2025年01月22日 14:17:30 +00:00
Zuul
535735b746 Merge "Silence modprobe loading errors for IPMI drivers" 2025年01月21日 01:48:46 +00:00
Zuul
a491947c1e Merge "Trivial - Follow Up: No Retry on Disk Space Error" 2025年01月20日 23:48:49 +00:00
Riccardo Pittau
51c73d22fa Silence modprobe loading errors for IPMI drivers
Debug messages from modprobe failing to load ipmi drivers can
be confusing and they do not add anything since they're
not really errors.
This patch silence the message in the logs.
Change-Id: I7452bc9e56148e3d423be92f384ff9aeffbe88d7
2025年01月20日 22:09:15 +00:00
Zuul
56037e78cc Merge "Remove dependency on ironic-lib" 2025年01月20日 11:37:18 +00:00
cid
bd07283085 Trivial - Follow Up: No Retry on Disk Space Error
Related-Change: #939500
Change-Id: Id54f5bedd5c79c587bc4484914a8eb492e018010
2025年01月19日 18:44:58 +01:00
Zuul
ca07e941cf Merge "Add a release note for 939340" 2025年01月17日 19:40:39 +00:00
cid
c222626b01 Treat 'No space left on device' error as fatal
Fail without retries when Errno 28 - "No space left
on device" error is encountered.
Closes-Bug: #2094854
Change-Id: Ie84b422916ddc02f2474164fe3da083324ef4824
2025年01月17日 11:13:01 +01:00
kubajj
2ece938671 Add a release note for 939340
Follow-up to 939340 to add a release note about the bug-fix.
Change-Id: I202f22d40776ab5d3245b8e14021d1404a9f478d
2025年01月16日 09:34:08 +00:00
kubajj
6dceb33209 Fix RAID volume name
Use just md<index> as the default volume name if a volume name is not defined.
The original change (https://review.opendev.org/c/openstack/ironic-python-agent/+/853182)
introduced an error:
mdadm: Value "/dev/md0" cannot be set as name. Reason: Not POSIX compatible.\n
This change fixes it.
Closes-Bug: #2073406
Change-Id: Ic8bd473801fcb92fc814f6ad4e1d6dc316783bf3
2025年01月15日 12:34:36 +00:00
Jay Faulkner
8b18184e2d Remove dependency on ironic-lib
ironic-lib is being retired; this change imports any used code from
ironic-lib and updates references.
This contains some changes to how we throw exceptions; aligning
ironic-lib code with IPA practice to have all exceptions be a RESTError.
This also allows us to remove code around serializing ironic-lib
exceptions.
Change-Id: I137340ce6820c68d8e0f1a32668151bba7b1ddd7
2025年01月14日 11:59:06 -08:00
cid
dfcb86d738 Add support for burnin-gpu
Adds support for running burnin tests on GPUs
using gpu-burn[1]. Also refactors stress-ng code
to be a bit cleaner.
Requires gpu-burn to be pre-installed within the IPA.
* https://github.com/wilicc/gpu-burn
Co-Authored-By: Scott Solkhon <scottsolkhon@gmail.com>
Closes-Bug: #2069085
Change-Id: I8f8cace6ebc2b7f1c245c82a64609cdfc1c492f9
2025年01月03日 17:59:31 +00:00
Takashi Kajinami
eda6c81cbf Replace crypt module
The crypt module was removed in Python 3.13 . Replace the module by
new methods from oslo_utils.secretutils .
Closes-Bug: #2083955
Change-Id: I61060fc13aabc8116c3d0f8ad50ee8c415675f31
2025年01月02日 13:07:13 +00:00
Zuul
06077cb88e Merge "Inventoried MAC address for only ipv6 addresses" 2024年12月04日 19:09:09 +00:00
b010580caf reno: Update master for unmaintained/2023.1
Update the 2023.1 release notes configuration to build from
unmaintained/2023.1.
Change-Id: I0d8b1773367a61b326b5a6ff86ac1f126b15099b
2024年11月29日 07:54:13 +00:00
Maximilian Brandt
6ccd3965ff Inventoried MAC address for only ipv6 addresses
Extended the function that expose BMC MAC address in inventory data
for an IPv6 only interface.
Previously, if no IPv4 address was configured, no mac address was exposed.
Change-Id: I93e49d308cfd63be1c09749ced4428a87a3daff9
2024年11月21日 17:51:15 +01:00
Zuul
01639aab20 Merge "Add a command to lock down the agent" 10.0.0 2024年11月21日 16:20:33 +00:00