215fecd4470e868e1bac9737417e166a7e10fb64
Commit Graph

2529 Commits

This Branch
This Branch
All Branches
Author SHA1 Message Date
Steve Baker
215fecd447 Step to clean UEFI NVRAM entries
Adds a deploy step ``clean_uefi_nvram`` to remove unrequired extra UEFI
NVRAM boot entries. By default any entry matching ``HD`` as the root
device, or with a ``shim`` or ``grub`` efi file in the path will be
deleted, ensuring that disk based boot entries are removed before the
new entry is created for the written image. The ``match_patterns``
parameter allows a list of regular expressions to be passed, where a
case insensitive search in the device path will result in that entry
being deleted.
Closes-Bug: #2041901
Change-Id: I3559dc800fcdfb0322286eba30ce47041419b0c6
2024年04月11日 01:17:23 +12:00
Zuul
cdd0a83448 Merge "Import disk_{utils,partitioner} from ironic-lib" 2024年04月03日 01:04:10 +00:00
Zuul
c784ee7cb9 Merge "Fix mocking for TestGenericHardwareManager" 2024年04月01日 14:57:34 +00:00
Zuul
b6075156b3 Merge "USB device discovery" 2024年03月28日 21:22:53 +00:00
Daniel King
cae6b15bbc Fix mocking for TestGenericHardwareManager
This test class is testing the GenericHardwareManager, but did no
mocking for dispatch_to_managers. Therefore, if any of its methods
attempted to make a call to that method, it would break the unit tests.
This update adds mocking for get_managers to prevent the tests from
breaking if a method calls dispatch_to_managers.
Additionally, updates test_delete_configuration_skip_list.
test_delete_configuration_skip_list mocks get_skip_list_from_node.
mocks get_skip_list_from_node.
Correcting the return_value from a list to a set to match what is
returned from the original method.
Related-Bug: 2057668
Change-Id: Ifaa800449b49f64c6ba5779bfae1c8e2c3249903
2024年03月25日 12:16:02 -04:00
Riccardo Pittau
8de6e03539 Update ironic-lib min required version
The addition of the qemu-img module that is used in ipa was
introduced in ironic-lib 6.0.0
Change-Id: I65b283d9abcfe2aa961baf9f686391c8dcc71d6b
2024年03月19日 14:39:06 +01:00
783a0377ad 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: I67ee5ead4aa7f47517c35d1a77d594fcad22cc4c
2024年03月19日 11:10:44 +00:00
Zuul
ee8340f2cb Merge "Update regex to detect closed branch" 9.10.0 2024年03月18日 11:07:10 +00:00
Dmitry Tantsur
f824930bbd Import disk_{utils,partitioner} from ironic-lib
With the iscsi deploy long gone, these modules are only used in IPA and
in fact represent a large part of its critical logic. Having them
separately sometimes makes fixing issues tricky if an interface of
a function needs changing.
This change imports the code mostly as it is, just removing run_as_root and
a deprecated function, as well as moving configuration options to config.py.
Also migrates one relevant function from ironic_lib.utils.
Change-Id: If8fae8210d85c61abb85c388b300e40a75d0531c
2024年03月15日 18:45:04 +01:00
Zuul
e28b3e72f7 Merge "Use assert_not_called" 2024年03月15日 17:30:21 +00:00
Zuul
815e1f462f Merge "reno: Update master for unmaintained/victoria" 2024年03月14日 12:05:39 +00:00
Zuul
aa76962b4e Merge "reno: Update master for unmaintained/wallaby" 2024年03月14日 12:00:33 +00:00
38ba0d8508 reno: Update master for unmaintained/xena
Update the xena release notes configuration to build from
unmaintained/xena.
Change-Id: I3bbef10b65dc43596a59eaca5d792f5e451d5d4c
2024年03月14日 11:27:13 +00:00
5a017ea84a reno: Update master for unmaintained/wallaby
Update the wallaby release notes configuration to build from
unmaintained/wallaby.
Change-Id: Iaf279482847d781d7d338c4923a672a5e9337332
2024年03月14日 11:22:41 +00:00
6ebaf277a6 reno: Update master for unmaintained/victoria
Update the victoria release notes configuration to build from
unmaintained/victoria.
Change-Id: I00a9bcb8ee6d5160d2598fbecb8e585885212df7
2024年03月14日 11:18:06 +00:00
Takashi Kajinami
bffa88acb8 Update regex to detect closed branch
... based on the change made in reno recently[1].
Also the overall regex is updated to be more consistent with the regex
used in ironic.
[1] https://review.opendev.org/c/openstack/reno/+/910547
Change-Id: I362de82fb5478b846df7a343da02a359f5f7dece
2024年03月13日 19:40:40 +09:00
Zuul
9b760755ca Merge "Force constraints when installing a package during tox test" 2024年03月13日 08:23:06 +00:00
Riccardo Pittau
95b3ed3fed Fix unit tests after ironic-lib changes
Updating tests after change [1] and [2] in ironic-lib.
[1] ae53e8e4b3
[2] 7644196e7d
Change-Id: I880b4f82beb117d8812e60c13040e19476cec32b
2024年03月12日 09:13:14 +01:00
Thomas Goirand
ca6ff4706b Use assert_not_called
IPA still has 3 occurences of not_called() which are failing for me
when building the Ironic Debian package in Debian Unstable (ie: with
Python 3.12).
This patch uses assert_not_called() instead of not_called(), fixing
the problem.
Change-Id: I8bd27fa706b298b28ef5bef405134a2c9803d757
2024年02月26日 11:57:10 +01:00
Damien Rannou
3fd68c0848 USB device discovery
The idea is to retreive USB devices informations via 'lshw' and
return the list to ironic in order to be able to create introspection
rules based on USB devices.
Change-Id: I39d60cb467614fca7a7f701dbe576154213580a5
2024年02月19日 14:49:52 +01:00
Riccardo Pittau
d4554e4ab5 Force constraints when installing a package during tox test
The tox deps option grants installation of single dependencies and
requirements, optionally pinned using constraints, before installing
a package, therefore not granting installation of the correct
constraint during the package installation.
To fix that tox 4.4.0 has introduced the constrain_package_deps
option [1]
[1] https://tox.wiki/en/4.12.1/faq.html#using-constraint-files
Change-Id: I770e55db5d6f53174c490749d27830f9209e98cc
2024年02月12日 14:59:39 +01:00
Zuul
df7eccd7f1 Merge "Trivial: avoid deprecated utcnow" 2024年02月08日 14:43:41 +00:00
Zuul
6d35c1e949 Merge "Make inspection URL optional if the collectors are provided" 2024年02月07日 23:06:34 +00:00
614532d2a2 reno: Update master for unmaintained/yoga
Update the yoga release notes configuration to build from
unmaintained/yoga.
Change-Id: I0c5ab4348bd293ce77b04180247773412edbe179
2024年02月06日 15:03:51 +00:00
Zuul
359ac636f0 Merge "Drop usage of run_as_root" 2024年01月31日 16:29:06 +00:00
Dmitry Tantsur
8877e1f319 Trivial: avoid deprecated utcnow
Change-Id: I5dbe3c2be36e23e749fbeebbc448d413d276b401
2024年01月31日 10:09:13 +01:00
Zuul
c3e3cf2aef Merge "Also retry inspection on HTTP CONFLICT" 9.9.0 2024年01月29日 08:50:26 +00:00
Zuul
204381bbd9 Merge "[codespell] Adding git-blame-ignore-revs to clear codespell changes" 2024年01月27日 00:17:47 +00:00
Dmitry Tantsur
0010f5c11a Also retry inspection on HTTP CONFLICT
The new implementation can return it when unable to lock the node.
Other possible errors are 400 and 404 (should not be retried), as well as
5xx (already retried).
Change-Id: I74c2f54a624dc47e8e2d1e67ae4c6a6078e01d2f
2024年01月26日 16:21:24 +01:00
Sharpz7
0ef3397bec [codespell] Adding git-blame-ignore-revs to clear codespell changes
Change-Id: Iac9895c78fe68b52521074065c5e6d0b0c15491c
2024年01月25日 01:49:11 +00:00
Dmitry Tantsur
9f849472ca Drop usage of run_as_root
IPA can only be run as root and does not use rootwrap. We need to
eventually remove support for rootwrap from ironic-lib.
Change-Id: Iffd5cae5e3dc8637bc6dd10b3bcc9fe33932b8cf
2024年01月23日 14:23:23 +01:00
Zuul
1e107bd625 Merge "Add support for reporting CPU socket number" 2024年01月22日 11:52:06 +00:00
Kaifeng Wang
9cafe76225 Add support for reporting CPU socket number
IPA reports a few cpu fields including cores, arch, flags etc.
There is a need that user wants to utilize the physical number in
a baremetal since cores are just a logical representation of the
compute resource.
The socket number is more suitable for the quota control in some
use cases.
Change-Id: I94be86d6b12a3a7e7ca1041d948427a073412a31
2024年01月19日 21:24:37 +00:00
Sharpz7
b928b6601c [Codespell] Adding tox target to CI (Non-Voting)
Adding CI for previous codespell tox change
Related Bug: https://bugs.launchpad.net/ironic-python-agent/+bug/2047654
Change-Id: I02f7973c0e6799f7d7b44978009dfebbce3877a4
2024年01月17日 17:15:33 +00:00
Zuul
be9477179b Merge "Support several API and Inspector URLs" 2024年01月16日 19:17:36 +00:00
Zuul
3e066e3f3e Merge "Add missing headers to the inspection callback" 2024年01月16日 19:17:35 +00:00
likui
dcf12d1b58 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: I699e08c268040d387b91ccca4e6505184d3d1b59
2024年01月15日 14:17:44 +08:00
Zuul
64081ad36b Merge "Remove deprecated pbr options" 2024年01月10日 09:32:35 +00:00
Zuul
dc33a97221 Merge "Remove unnecessary egg_info options" 2024年01月10日 09:04:36 +00:00
Dmitry Tantsur
6cd36a750f Make inspection URL optional if the collectors are provided
With the new in-band inspection, we can derive the callback URL from
the Ironic URL, there is no need to duplicate it. This change uses
the presence of collectors as a sign to run inspection.
The previous approach of setting an inspection URL, with or without
explicitly setting collectors, still works for compatibility with
ironic-inspector.
Change-Id: Ie4279ee6d2995c9686f1dcdef1d6e5dc1dd20871
2024年01月10日 08:55:42 +01:00
Dmitry Tantsur
0d4ae976c2 Support several API and Inspector URLs
Allows nodes with a single IP stack to be deployed from a dual-stack
Ironic.
Detecting advertised address and usable Ironic URLs are done completely
independently which does open some space for a misconfiguration. I hope
it's not likely in the reality, especially since this feature is
targetting advanced standalone users.
Change-Id: Ifa506c58caebe00b37167d329b81c166cdb323f2
Closes-Bug: #2045548 
2024年01月09日 16:43:23 +01:00
Dmitry Tantsur
2bb74523ae Add missing headers to the inspection callback
Somehow, it has worked correctly for years, but now I've discovered that
the new inspection is (no longer?) tolerant to the missing header.
While here, copy all headers from the heartbeat code.
Change-Id: I9e5c609eb4435e520bc225dea08aedfdf169744b
2024年01月09日 16:38:46 +01:00
Zuul
a22d1fc411 Merge "Add tox target and configuration for codespell" 2024年01月08日 17:22:04 +00:00
Zuul
d298e06b49 Merge "[codespell] Fix spelling issues in IPA" 2024年01月08日 17:22:02 +00:00
Zuul
f1a4aeb29a Merge "Update to latest pep8/code style versions" 2024年01月03日 14:57:53 +00:00
Zuul
7422a27de4 Merge "Reformat and update the section on injecting root credentials" 2023年12月29日 22:20:49 +00:00
Jay Faulkner
dcaed43ef9 Update to latest pep8/code style versions
Update various linting programs to their latest version, and fix any
issues created by the update.
Change-Id: I014c846560663a76a1663b568ef48659d0ab6d4d
2023年12月28日 14:19:27 -08:00
Jay Faulkner
4a1acae5bc Add tox target and configuration for codespell
Adds a tox target for codespell, `tox -e codespell`. Can optionally
be run as `tox -e codespell -- -w` to get automatic spelling fixes
applied where appropriate. Adds small amounts of configuration to
setup.cfg, including an ignore list of words.
Related-bug: #2047654
Change-Id: I98203b02a9c6b6fc36edd6b4bbcc7c92a634da8b
2023年12月28日 11:43:10 -08:00
Jay Faulkner
36e5993a04 [codespell] Fix spelling issues in IPA
This fixes several spelling issues identified by codepsell. In some
cases, I may have manually modified a line to make the output more clear
or to correct grammatical issues which were obvious in the codespell
output.
Later changes in this chain will provide the codespell config used to
generate this, as well as adding this commit's SHA, once landed, to a
.git-blame-ignore-revs file to ensure it will not pollute git historys
for modern clients.
Related-Bug: 2047654
Change-Id: I240cf8484865c9b748ceb51f3c7b9fd973cb5ada
2023年12月28日 10:54:46 -08:00
Takashi Kajinami
921cf26898 Remove deprecated pbr options
The api_doc_dir option and the autodoc_index_modules option were both
deprecated in pbr 4.2.
The required options for the sphinxcontrib-apidoc extension are already
defined in doc/source/conf.py .
Change-Id: Ifcef9e84ff4febeb01cfdc75bdbd66565d0e8079
2023年12月20日 11:41:44 +09:00