summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Merge "Set ironic-grenade to wait 120 seconds"Zuul2023-04-271-0/+1
|\
| * Set ironic-grenade to wait 120 secondsJulia Kreger2023-04-051-0/+1
| | | | | | | | | | | | | | | | | | | | Launching test VMs can take a while, and grenade can fail if the VM's networking is not quite online in under sixty seconds. As such, it is reasonable to use a larger window so the failure rate of ironic-grenade will hopefully decline. Depends-On: https://review.opendev.org/c/openstack/grenade/+/879674 Change-Id: I07aead4b09ccb7e427a0d3d04e7a580cf4b00a95
* | Merge "Add ablity to power off nodes in clean failed"Zuul2023-04-274-0/+51
|\ \
| * | Add ablity to power off nodes in clean failedChris Krelle2023-04-244-0/+51
| | | | | | | | | | | | | | | | | | | | | | | | We have seen duplicate ip issues when leaving clean failed nodes powered on. This patch allows operators to power down nodes that enter clean failed state. Change-Id: Iecb402227485fe0ba787a262121c9d6a048b0e13
* | | tests: Replace invalid UUIDsStephen Finucane2023-04-193-6/+13
| | | | | | | | | | | | | | | | | | | | | | | | Fix the warnings that oslo.versionedobjects has been emitting for years now. Change-Id: I53bd78d8b70f276d2ea8569f0ab1e7ce04f52fea Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
* | | db: Resolve SAWarning warningsStephen Finucane2023-04-192-12/+4
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Resolve the following SAWarning warning: SELECT statement has a cartesian product between FROM element(s) "foo" and FROM element "bar". Apply join condition(s) between each element to resolve. This was happening because we were filtering instances of ConductorHardwareInterfaces by the state of the Conductor referenced by the 'conductor_id' field *without* joining the Conductor table. By adding the join, we can avoid this cartesian product. Change-Id: I2c20d7a7c1de41d4d0057fabc1d953b5bfb5b216 Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
* | Merge "Always fall back from hard linking to copying files"Zuul2023-04-103-107/+40
|\ \
| * | Always fall back from hard linking to copying filesDmitry Tantsur2023-03-313-107/+40
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The current check is insufficient: it passes for Kubernetes shared volumes, although hard-linking between them is not possible. This patch changes the approach to trying a hard link and falling back to copyfile instead. The patch relies on optimizations in Python 3.8 and thus should not be backported beyond the Zed series to avoid performance regression. Change-Id: I929944685b3ac61b2f63d2549198a2d8a1c8fe35
* | | Merge "Run metal3 integration with ironic-image from source"Zuul2023-04-071-0/+2
|\ \ \
| * | | Run metal3 integration with ironic-image from sourceRiccardo Pittau2023-04-061-0/+2
| |/ / | | | | | | | | | | | | | | | | | | | | | The metal3 integration job now builds the ironic container image using the ironic code in the tested patch and run metal3-dev-env with it. Change-Id: I0f339ad6931264875b32e11dff79c02a252d04b1
* | | Merge "Do not log into the template1 database during test-setup"Zuul2023-04-051-1/+1
|\ \ \
| * | | Do not log into the template1 database during test-setupDmitry Tantsur2023-03-311-1/+1
| |/ / | | | | | | | | | | | | | | | | | | Template databases are not designed to run random SQL code. They should only be accessed to modify the template itself. Use postgres instead. Change-Id: Id7d38895d8d04964557447ecbc6ca29f39f626c9
* | | Merge "Exclude all files starting with . from flake8 tests"Zuul2023-04-051-1/+1
|\ \ \
| * | | Exclude all files starting with . from flake8 testsRiccardo Pittau2023-03-281-1/+1
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some tests tool and IDE may create a .local directory inside the repo with virtualenvs for dependencies, other tools may create . directories or files for temporary reports. While they can be removed in a second time, or configured differently, it's advisable to just exclude all file starting with . from the flake8 tests to avoid confusion and possible unexpected errors. Change-Id: I5dc2fd2dec9690c77babe0c2b1dc5d0991413b32
* | | Merge "On rpc service stop, wait for node reservation release"Zuul2023-04-054-8/+92
|\ \ \
| * | | On rpc service stop, wait for node reservation releaseSteve Baker2023-02-274-8/+92
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of clearing existing reservations at the beginning of del_host, wait for the tasks holding them to go to completion. This check continues indefinitely until the conductor process exits due to one of: - All reservations for this conductor are released - CONF.graceful_shutdown_timeout has elapsed - The process manager (systemd, kubernetes) sends SIGKILL after the configured graceful period Because the default values of [DEFAULT]graceful_shutdown_timeout and [conductor]heartbeat_timeout are the same (60s) no other conductor will claim a node as an orphan until this conductor exits. Change-Id: Ib8db915746228cd87272740825aaaea1fdf953c7
* | | | Merge "Remove outdated API version information from the enrollment docs"Zuul2023-04-051-16/+10
|\ \ \ \ | |_|_|/ |/| | |
| * | | Remove outdated API version information from the enrollment docsDmitry Tantsur2023-04-041-16/+10
| | |/ | |/| | | | | | | | | | Change-Id: I846ce901137bede05543a40e4d91930c4fddad41 Closes-Bug: #1753435
* | | Fix requests calls with timeoutsJulia Kreger2023-04-046-19/+37
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bandit 1.7.5 dropped with logic to check requests invocations. Specifically if a timeout is not explicitly set, then it results in an error. This should cause our bandit job to go green. Closes-Bug: 2015284 Change-Id: I1dcb3075de63aae97bb22012a54736c293393185
* | | Merge "Add error logging on lookup failures in the API"Zuul2023-04-041-1/+5
|\ \ \ | |/ / |/| |
| * | Add error logging on lookup failures in the APIDmitry Tantsur2023-03-171-1/+5
| | | | | | | | | | | | | | | | | | | | | Lookup returns generic 404 errors for security reasons. Logging is the only way of debugging any issues during it. Change-Id: I860ed6b90468a403f0f6cdec9c3d84bc872fda06
* | | Merge "Enables boot modes switching with Anaconda deploy for ilo driver"Zuul2023-03-273-0/+95
|\ \ \
| * | | Enables boot modes switching with Anaconda deploy for ilo driverNisha Agarwal2023-03-173-0/+95
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Enables boot modes switching with Anaconda deploy for ilo driver Story: 2010357 Task: 46530 Change-Id: I383cdd5c9d45b074d351ec98b1145fd68e2f3ac3
* | | | Merge "Use main branch of metal3-dev-env to run metal3 integration job"Zuul2023-03-241-5/+3
|\ \ \ \
| * | | | Use main branch of metal3-dev-env to run metal3 integration jobRiccardo Pittau2023-03-211-5/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Set libvirt domain to qemu for compatibility with openstack CI infra Change-Id: Icf6dfa9603ec35c0b0527ac5358252cbb4842e6d
* | | | | Merge "Refactoring: clean up inspection data handlers"Zuul2023-03-238-199/+150
|\ \ \ \ \
| * | | | | Refactoring: clean up inspection data handlersDmitry Tantsur2023-03-148-199/+150
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Avoid using the term "introspection". We need to settle on either "inspection" or "introspection", and the Ironic API already uses the former. * Accept (and return) inventory and plugin data separately to reflect the Ironic API (single JSON blobs are an Inspector legacy). * Make sure to mention the container name in error logging. * Use more readable formatting syntax for building Swift names. * Do not mock objects with dicts (in unit tests). * Simplify inventory API tests. Change-Id: Id8c4bc6d35b9634f5a5ac2b345a8fd7f1dba13c0
* | | | | | Merge "Refactoring: DRY in the root API controller"Zuul2023-03-231-117/+29
|\ \ \ \ \ \ | |/ / / / /
| * | | | | Refactoring: DRY in the root API controllerDmitry Tantsur2023-03-141-117/+29
| | | | | | | | | | | | | | | | | | | | | | | | Change-Id: I7bba31e73daef7292d0710242e6f88793b7ab357
* | | | | | Merge "Refactoring: create ironic.conductor.inspection"Zuul2023-03-234-193/+232
|\ \ \ \ \ \ | |/ / / / /
| * | | | | Refactoring: create ironic.conductor.inspectionDmitry Tantsur2023-03-144-193/+232
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ... to reduce the already frightening size of ironic.conductor.manager and make space for more inspection additions. While here, fix up log messages for clarity and brevity. Change-Id: I5196d58016ae094f17e0aad187a11d9cceaab04b
* | | | | | [CI] Fix port list benchmarkJulia Kreger2023-03-221-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | Change-Id: Ifdcf69f605e38f4c56661c8fd3c6b8aac087fc78
* | | | | | Merge "Fixes Secureboot with Anaconda deploy"Zuul2023-03-204-17/+19
|\ \ \ \ \ \ | | |_|/ / / | |/| | / / | |_|_|/ / |/| | | |
| * | | | Fixes Secureboot with Anaconda deployNisha Agarwal2023-03-164-17/+19
| | |/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes Secureboot with Anaconda deploy with PXE and iPXE Story:2010356 Task: 46529 Change-Id: Id6262654bb5e41e02c7d90b9a9aaf395e7b6a088
* | | | Merge "Fix auth_protocol and priv_protocol for SNMP v3"Zuul2023-03-175-2/+112
|\ \ \ \ | |/ / / |/| | |
| * | | Fix auth_protocol and priv_protocol for SNMP v3Duc Truong2023-03-015-2/+112
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | SNMP driver was using the wrong dictionary key to retrieve auth_protocol and priv_protocol from driver info. As a result, the SNMP client was created with empty strings for both those fields. Any nodes configured to use SNMP v3 with those fields failed because the SNMP driver was unable to perform power related operations due to authentication error. - Use correct keys for snmp auth_protocol and priv_protocol when creating SNMP client - Sanitize snmp auth_key and priv_key in API results Story: 2010613 Task: 47535 Change-Id: I5efd3c9f79a021f1a8e613c3d13b6596a7972672
* | | | Merge "Wipe Agent Token when cleaning timeout occcurs"Zuul2023-03-143-2/+15
|\ \ \ \
| * | | | Wipe Agent Token when cleaning timeout occcursJulia Kreger2023-03-023-2/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In a relatively odd turn of events, should cleaning have started, but then timed out due to lost communications or a hard failure of the machine, an agent token could previously be orphaned preventing re-cleaning. We now explicitly remove the token in this case. Change-Id: I236cdf6ddb040284e9fd1fa10136ad17ef665638
* | | | | Merge "Document [fake] delay config values"Zuul2023-03-141-0/+24
|\ \ \ \ \
| * | | | | Document [fake] delay config valuesSteve Baker2023-02-281-0/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This feature was added in the previous commit Change-Id: I30100cd3b2702bf8bb614d45c0f64712656ec15e
* | | | | | Merge "Clean out agent token even if power is already off"Zuul2023-03-133-0/+38
|\ \ \ \ \ \ | |_|_|_|/ / |/| | | | |
| * | | | | Clean out agent token even if power is already offJulia Kreger2023-03-023-0/+38
| | |/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | While investigating a very curious report, I discovered that if somehow the power was *already* turned off to a node, say through an incorrect BMC *or* human action, and Ironic were to pick it up (as it does by default, because it checks before applying the power state, then it would not wipe the token information, preventing the agent from connecting on the next action/attempt/operation. We now remove the token on all calls to conductor utilities node_power_action method when appropriate, even if no other work is required. Change-Id: Ie89e8be9ad2887467f277772445d4bef79fa5ea1
* | | | | Merge "Refactoring: extract some common functions from the inspector code"Zuul2023-03-133-37/+45
|\ \ \ \ \
| * | | | | Refactoring: extract some common functions from the inspector codeDmitry Tantsur2023-03-013-37/+45
| | | | | | | | | | | | | | | | | | | | | | | | Change-Id: I0acc5303c1a38645318fb9be4cb068d069b7fe6a
* | | | | | Merge "Do not recalculate checksum if disk_format is not changed"Zuul2023-03-136-22/+151
|\ \ \ \ \ \
| * | | | | | Do not recalculate checksum if disk_format is not changedDmitry Tantsur2023-03-076-22/+151
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Even if a glance image is raw, we still recalculate the checksum after "converting" it to raw. This process may take exceptionally long. Change-Id: Id93d518b8d2b8064ff901f1a0452abd825e366c0
* | | | | | | Merge "Restructure the inspector module in preparation for its expansion"Zuul2023-03-108-99/+152
|\ \ \ \ \ \ \ | | |/ / / / / | |/| | | | |
| * | | | | | Restructure the inspector module in preparation for its expansionDmitry Tantsur2023-03-018-99/+152
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Converts ironic.drivers.modules.inspector into a package with two subpackages: client and interface, the latter containing most of the current content. Change-Id: Idbfd275c60a873e3de2e0a34db793619f8c99d85
* | | | | | | Merge "Add a non-voting metal3 CI job"Zuul2023-03-106-0/+321
|\ \ \ \ \ \ \
| * | | | | | | Add a non-voting metal3 CI jobDmitry Tantsur2023-03-066-0/+321
| | |/ / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We'll use only one node as we're limited in resources but that should suffice for a basic test. Change-Id: I8e845d46ba0e13027aa1e628b0ad45eb24f9b387