ca07e941cf4ad37690e6376e624d901045f34728
2598 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
Zuul
|
1e107bd625 | Merge "Add support for reporting CPU socket number" | ||
|
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 |
||
|
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 |
||
|
Zuul
|
be9477179b | Merge "Support several API and Inspector URLs" | ||
|
Zuul
|
3e066e3f3e | Merge "Add missing headers to the inspection callback" | ||
|
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 |
||
|
Zuul
|
64081ad36b | Merge "Remove deprecated pbr options" | ||
|
Zuul
|
dc33a97221 | Merge "Remove unnecessary egg_info options" | ||
|
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 |
||
|
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 |
||
|
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 |
||
|
Zuul
|
a22d1fc411 | Merge "Add tox target and configuration for codespell" | ||
|
Zuul
|
d298e06b49 | Merge "[codespell] Fix spelling issues in IPA" | ||
|
Zuul
|
f1a4aeb29a | Merge "Update to latest pep8/code style versions" | ||
|
Zuul
|
7422a27de4 | Merge "Reformat and update the section on injecting root credentials" | ||
|
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 |
||
|
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 |
||
|
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 |
||
|
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 |
||
|
Takashi Kajinami
|
d342315a3a |
Remove unnecessary egg_info options
The tag_svn_revision option was already removed[1]. The values set to the other two options are effectively same as their defaults. [1] https://github.com/pypa/setuptools/issues/619 Change-Id: I00c91a4966135a92ee6391b0b7084f2b5b04aaef |
||
|
Iury Gregory Melo Ferreira
|
03b6b0a4ab |
Fix inspector retries to not take a long time
Since we moved to exponential wait we increased the amount of time to run unit tests, now we can configure the max time to wait - before: Ran: 33 tests in 22.6581 sec. - after: Ran: 33 tests in 4.0256 sec. Change-Id: Ibdcfebacad0489d17183e43ceb0d603fce67e72b |
||
|
Dmitry Tantsur
|
91b7ae96c9 |
Reformat and update the section on injecting root credentials
Change-Id: I49ad9979daad11bf7a54069564c6b7919de0ea7c |
||
|
Zuul
|
3a757f721f | Merge "docs: improve rootpwd password generation command" | ||
|
Dmitry Tantsur
|
2ab8364649 |
Add a jitter to heartbeat retries
Currently, if heartbeat fails, we reschedule it after 5 seconds. This is fine for the first retry, but it can cause a thundering herd problem when a lot of nodes fail to heartbeat at once. This change adds jitter to the minimum wait of 5 seconds. The jitter is not applied for forced heartbeats: they still have a minimum wait of exactly 5 seconds from the last heartbeat. The code is re-ordered to move the interval calculation to one place. Bonus: correctly logging the next interval. The unit tests have been rewritten to test the heartbeat process step by step and not rely on the exact sequence of the calls. Closes-Bug: #2038438 Change-Id: I4c4207b15fb3d48b55e340b7b3b54af833f92cb5 |
||
|
Zuul
|
62041d6d9e | Merge "Fix referencing to the raid_device var which is not set" | ||
|
Iury Gregory Melo Ferreira
|
801da9ec1f |
Retry in ProxyError during post inspector data
* ProxyError is derived from ConnectionError, but it's necessary to check the Response object to identify. - Added ProxyError in retry_if_exception_type - Updated _post_to_inspector to proper handle ProxyError - Updated the wait to use wait_exponential instead of wait_fixed. Closes-Bug: 2045429 Change-Id: Iefe3fe581cd4e7c91a0da708e6f6d0fdaacab6fe |
||
|
Zuul
|
beccfe8c92 | Merge "Revert "Fix vmedia network config drive handling"" | ||
|
Dmitry Tantsur
|
c57deb7e76 |
Revert "Fix vmedia network config drive handling"
This reverts commit
|
||
|
Maryna Savchenko
|
f80330839d |
Fix referencing to the raid_device var which is not set
Change-Id: I11180e5d61d893a78583ace555f6e90ba8845950 |
||
|
Zuul
|
61d17e2225 | Merge "Parse efibootmgr type and details" | ||
|
Zuul
|
eea9917023 | Merge "Fix vmedia network config drive handling" | ||
|
Steve Baker
|
352df0bc54 |
Parse efibootmgr type and details
This change improves the regex to match an exact entry name, and to also match with the the entry type from a set of recognised types. The boot entry details start from the recognised type onwards. This can be used by a step which deletes all entries of type 'HW' and UsbClass. Related-Bug: #2041901 Change-Id: I5d879f724efc2919b541fd3fef0f931df67ff9c7 |
||
|
Zuul
|
768aa17442 | Merge "Add mlnx deploy_step entry to enable deploy time firmware" 9.8.0 | ||
|
Zuul
|
7a4114512c | Merge "Handle different device outputs for multipath" | ||
|
Zuul
|
9f9940efdc | Merge "Test coverage for efi_utils.get_boot_record" | ||
|
Iury Gregory Melo Ferreira
|
0a29206b8d |
Handle different device outputs for multipath
In some cases the output of the multipath can differ and we would return a wrong parent device. Closes-Bug: 2043992 Change-Id: I848d7df798cc736bd5a55eed8fa46110caea1dc3 |
||
|
Michal Nasiadka
|
c23c913fc2 |
docs: improve rootpwd password generation command
Currently the command is a bit misleading because you need to escape dollar ($) signs. Command copied from DIB dynamic-log element docs [1]. [1]: https://docs.openstack.org/diskimage-builder/latest/elements/dynamic-login/README.html Change-Id: I7d5dc60aec373372f8faae4242a79f18d8a26d14 |
||
|
Adam Rozman
|
7a52314695 |
fix multipathd error handling release notes
This commit: - fixes some "multipathd error handling improvement" release notes - fixes a related comment in the code Related launchpad issue https://bugs.launchpad.net/ironic-python-agent/+bug/2031092 Change-Id: Ie3ba0601fa117b053cb8db6284e47249ca9c9134 Signed-off-by: Adam Rozman <adam.rozman@est.tech> |
||
|
Zuul
|
845df338f8 | Merge "improve multipathd error handling" | ||
|
Julia Kreger
|
33f01fa3c2 |
Fix vmedia network config drive handling
When performing DHCP-less deployments, the agent can start and discover more than one configuration drive present on a host. For example, a host was previously deployed using Ironic, and is now being re-deployed again. If Glean was present in the ramdisk, the glean-early.sh would end mounting the folder based upon label. If cloud-init, somehow is still in the ramdisk, the other folder could somehow get mounted. This patch, which is intended to be backportable, causes the agent to unmount any configuration drive folders, mount the most likely candidate based upon device type, partition, and overall state of the machine, and then utilize that configuration, if present, to re-configure and reload networking. Thus allowing dhcp-less re-deployments to be fixed without forcing any breaking changes. It should also be noted that this fix was generated in concert with an additional tempest test case, because this overall failure case needed to be reproduced to ensure we had a workable non-breaking path forward. Closes-Bug: 2032377 Change-Id: I9a3b3dbb9ca98771ce2decf893eba7a4c1890eee |
||
|
Zuul
|
9d9568ba23 | Merge "Get numa_node info when collecting pci devices info" | ||
|
Steve Baker
|
26be55f763 |
Test coverage for efi_utils.get_boot_record
A step will be developed to delete all EFI entries of type HD. As part of this get_boot_record will need to parse more of the output of `efibootmgr -v`. This change asserts the existing behaviour of get_boot_record, and the test can evolve with the changes in get_boot_record. Related-Bug: #2041901 Change-Id: I0c5ac4adc1044c528c27a4eaf580c619ceef47e0 |
||
|
Jay Faulkner
|
3d42298619 |
Remove standby.cache_image support
Image caching was never fully supported in Ironic or IPA; this is vestigal code leftover from a partial implementation. Even if we implemetented it today, we'd likely use a completely different methodology. Change-Id: Id4ab7b3c4f106b209585dbd090cdcb229b1daa73 |
||
|
Zhou Ya
|
76ad06225a |
Get numa_node info when collecting pci devices info
IPA now includes information about numa node id when collecting information about PCI devices. Closes-bug: #1622940 Co-Authored-By: Jay Faulkner <jay@jvf.cc> Change-Id: I70b0cb3eff66d67bb8168982acbbf335de0599cd |
||
|
Adam Rozman
|
13537db293 |
improve multipathd error handling
This commit: - Adds the ability to ignore inconsequential OS error caused by starting the multipathd service when an instance of the service is already running. Related launchpad issue https://bugs.launchpad.net/ironic-python-agent/+bug/2031092 Change-Id: Iebf486915bfdc2546451e6b38a450b4c241e43a8 |
||
|
Zuul
|
b42f0be422 | Merge "implement basic-auth support for user-image download process" | ||
|
Boushra Bettir
|
dbf3e5408d |
Replace shlex module with helper function
Used helper function, `parse_device_tags` from ironic_lib instead of the shlex module for their identical functionality. Updated mock_execute.side_effect for lsblk compatibility in utils.execute. Closes-Bug: #2037572 Change-Id: I6600e054f9644c67ab003f0e0f6c380b5c217223 |
||
|
Julia Kreger
|
cb61a8d6c0 |
Retry on checksum failures
HTTP is a fun protocol. Size is basically optional. And clients implicitly trust the server and socket has transferred all the bytes. Which *really* means you should always checksum. But... previously we didn't checksum as part of retrying. So if anything happened with python-requests, or lower level library code or the system itself causing bytes to be lost off the buffer, creating an incomplete transfer situation, then we wouldn't know until the checksum. So now, we checksum and re-trigger the download if there is a failure of the checksum. This involved a minor shift in the download logic, and resulted in a needful minor fix to an image checksum test as it would loop for 90 seconds as well. Closes-Bug: 2038934 Change-Id: I543a60555a2621b49dd7b6564bd0654a46db2e9a |
||
|
Adam Rozman
|
70961789a6 |
implement basic-auth support for user-image download process
This feature was proposed in https://bugs.launchpad.net/ironic-python-agent/+bug/2021947 Change-Id: I9dbfc1402240beb75b6736214753fd86dccae676 |
||
|
Zuul
|
89be7bd420 | Merge "Conditional creation of RAIDed ESP for UEFI Software RAID" |