summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Start API after conductor is started in the combined executablebugfix-20.0-eolDmitry Tantsur2022-04-062-3/+9
| | | | | Change-Id: Icaffb5d346001d62e5c9522708dd44f01faeb3a6 (cherry picked from commit c5ef4b9203d396d02dde92760acd95a0912caa68)
* Fix rebuilds using anaconda deploy interfaceRuby Loo2022-03-283-33/+64
| | | | | | | | | | | | | | | The anaconda deploy interface was saving internal information in the node's instance_info, in the user-facing 'stage2' and 'ks_template' fields. This broke rebuilds using a different image with different stage2 or template specified in the image properties. This has been fixed by saving the information in the node's driver_internal_info instead. Addresses comments/nits from https://review.opendev.org/c/openstack/ironic/+/827924. Change-Id: Id9428518d21290fb38a0f7471a2cb69a6cb3ffb2 (cherry picked from commit ab68c9d88b76e4ff83f9dffddcc204676fdb50d5)
* Anaconda deploy handles configdrive correctlyRuby Loo2022-03-156-10/+42
| | | | | | | | | | | | | | | | | | | | | | | | | | The anaconda deploy interface wasn't handling configdrive correctly. This fixes: - the code was incorrectly treating the config drive as a dict, whereas it could also be in iso6600 format, gzipped and base64-encoded. It is handled properly now. - kickstart commands that deal with the config drive were added to the end of the kickstart file. Which means that they are executed after an ironic API request is sent to ironic to indicate that the node has been provisioned and is ready to be rebooted. Which means that there is a possible race condition wrt these commands being completed before the node is powered off. This has been fixed by putting the API request at the end of the kickstart file. Also, a sync was added to ensure that all modifications are written to disk. - extra newlines ('\n') were incorrectly added to the user data content. This broke the content-type decoding and cloud-init was unable to proces them. The extra newlines have been removed. Change-Id: If00342a1bfa3e87b2094061b0e2b0b69de3a8a4f (cherry picked from commit 09d8a94d5a9b3cabdf7fddc483821fd0df69e5ee)
* More fixes for anaconda deploy interfaceRuby Loo2022-03-075-45/+93
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The anaconda deploy interface has a few issues that are addressed here: - fixes logic in get_instance_image_info() for anaconda. If the ironic node's instance_info doesn't have both 'stage2' and 'ks_template' specified, we weren't using any values from the instance_info. This has been fixed to use values from instance_info if specified. Otherwise, they are set as follows: The 'stage2' value is taken from the image properties. We use the value for 'ks_template' if it is specified in the image properties. If not (since it is optional), we use the config option's '[anaconda]default_ks_template' value. setting. - For anaconda's stage2 directory, we were incorrectly creating a directory using the full path of the stage2 file. It now correctly creates the right directory. - The anaconda deploy interface expects the node's instance_info to be populated with the 'image_url'; added code to do that in PXEAnacondaDeploy's prepare() method. - When the deploy is finished and the bm node is being rebooted, we incorrectly set the node's provision state to 'active' instead of doing it via the provisioning state machine mechanism. - The code that was doing the validation of the kickstart file was incorrect and resulted in errors; this has been addressed. - The '%traceback' section in the packaged 'ks.cfg.template' file is deprecated and fails validation, so it has been removed. Change-Id: I953e948bcfa108d4c8e7b145da2f52b652e52a10 (cherry picked from commit 06cc5d47dcdc49193e5e4e748471eb0b9ae97bbb)
* Update .gitreview for bugfix/20.0OpenStack Release Bot2022-02-241-0/+1
| | | | Change-Id: I4c78aca37753c7db02a3f0cf878cf07a370f9f7f
* Build the new cirros image even when netboot is the default20.0.0Dmitry Tantsur2022-02-171-4/+6
| | | | | | | The standalone job changes boot_option in runtime, so local boot can be used even when the default boot option is netboot. Change-Id: Ia538907f3662e8cd84d988ea5d862c7f488558e1
* Merge "CI: use a custom cirros partition image instead of the default"Zuul2022-02-165-6/+128
|\
| * CI: use a custom cirros partition image instead of the defaultDmitry Tantsur2022-02-165-6/+129
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Cirros partition images are not compatible with local boot since they don't ship grub (nor a normal root partition). This change adds a script that builds a partition image with UEFI artifacts present. It still cannot be booted in legacy mode, but it's a progress. Set the tempest plugin's partition_netboot option. We need it to inform the tempest plugin about the ability to do local boot. This option already exists but is never set. Also set the new default_boot_option parameter, which will be introduced and used in Iaba563a2ecbca029889bc6894b2a7f0754d27b88. Remove netboot from most of the UEFI jobs. Change-Id: I15189e7f5928126c6b336b1416ce6408a4950062
* | Merge "Fix release mapping (19.1 -> 20.0)"Zuul2022-02-161-1/+1
|\ \
| * | Fix release mapping (19.1 -> 20.0)Iury Gregory Melo Ferreira2022-02-151-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | We have some backward incompatible changes, so we need a major bump See [1] for more details [1] https://zuul.opendev.org/t/openstack/build/e5174d1d8d68491aa01d9a2e3e020a4b/log/tox/list-changes-results.log#1932-1944 Change-Id: Ia3fb13d7f6c29904cf9e1ffe446e3473fdbeecef
* | | [doc][trivial] Fixing typos in RBAC documentationArne Wiebalck2022-02-151-10/+10
|/ / | | | | | | Change-Id: I2f7f467afcfd0290d239e90af3daac7ec8fa57a9
* | Merge "Set correct initrd_filename for iPXE when using Swift"Zuul2022-02-153-5/+20
|\ \
| * | Set correct initrd_filename for iPXE when using SwiftDmitry Tantsur2022-02-103-5/+20
| |/ | | | | | | | | | | | | | | | | | | iPXE derives its "file names" from the last component of the URL path. In case of the conductor's local server it's {mode}_{component} where mode = deploy/rescue and component = kernel/ramdisk. However, in case of Swift/Ceph, the last component will be different. This patch accounts for it. Change-Id: I7ba5545032069509a9c302abe1c21537ccb5ec8a
* | Merge "Add release mappings for 19.0 and 19.1 bugfix"Zuul2022-02-141-1/+41
|\ \
| * | Add release mappings for 19.0 and 19.1 bugfixIury Gregory Melo Ferreira2022-02-141-1/+41
| | | | | | | | | | | | | | | | | | | | | | | | In the bugfix/19.0 we forgot to update our release_mappaings This commit adds the missing mapping for 19.0 and also adds the mapping for 19.1 (our upcoming bugifx branch) Change-Id: Iffb75a5e6e2412b6e43629ae46f9e98926236b24
* | | Merge "iRMC: Fix instructions for boot interface"Zuul2022-02-141-2/+2
|\ \ \
| * | | iRMC: Fix instructions for boot interfaceZhou Hao2022-02-111-2/+2
| | |/ | |/| | | | | | | | | | | | | | | | | | | At present, the boot interface pxe and irmc-pxe of the iRMC type machine are based on PXE, not iPXE. Correct the wrong description. Signed-off-by: Zhou Hao <zhouhao@fujitsu.com> Change-Id: Idcedc851d75e95222c2c7ce8cb816a1b5a361285
* | | Merge "Clean up jobs with legacy names"Zuul2022-02-143-15/+15
|\ \ \
| * | | Clean up jobs with legacy namesDmitry Tantsur2022-02-033-15/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Not everyone on the team even knows what pxe_ipmitool used to mean :) Furthermore, we don't need "ipa" in job names, everything uses IPA for... even longer than pxe_ipmitool does not exist. While here, one job was clearly meant to use BIOS boot, but it does not. Change-Id: I8a37efa0f222361f30ddb7fa621548685a40f961
* | | | Update some releasenotes for 19.1 releaseIury Gregory Melo Ferreira2022-02-143-6/+8
| |_|/ |/| | | | | | | | Change-Id: I9fe5cd295df33dd3af9bcbdc3fc5f35bd0c6df1b
* | | Merge "Fix the benchmark job"Zuul2022-02-101-0/+2
|\ \ \
| * | | Fix the benchmark jobDmitry Tantsur2022-02-091-0/+2
| | |/ | |/| | | | | | | | | | | | | This is a price to pay for using private API and not having unit tests :) Change-Id: Ie400a73eb2036678ed9446e0b499301cc2b690dd
* | | Merge "Add idrac-redfish clean steps to not require ramdisk"Zuul2022-02-105-9/+32
|\ \ \
| * | | Add idrac-redfish clean steps to not require ramdiskAija Jauntēva2022-01-215-9/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Includes idrac-redfish RAID and management steps. Update helper utility to not prepare agent on reboots if cleaning without it. Change-Id: I3c06e12f82908fba2b2587d0e3bec4b8bbdeba4b
* | | | [trivial] Fix typo in policy error messageArne Wiebalck2022-02-091-1/+1
| |/ / |/| | | | | | | | Change-Id: I5fa4b9f876be9e4f0276f123d5355cb2299517ec
* | | Merge "Explicit parameter to distinguish partition/whole-disk images"Zuul2022-02-0718-50/+266
|\ \ \
| * | | Explicit parameter to distinguish partition/whole-disk imagesDmitry Tantsur2022-01-2818-50/+266
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Using kernel/ramdisk makes no sense with local boot, we need a better way. We already have an internal image_type instance parameter, let's make it public. Glance support will be added in the next patch. Change-Id: I4ce5f7a2317d952f976194d2022328f4afbb0258
* | | | Merge "deploy_utils: only check glance for image properties kernel/ramdisk"Zuul2022-02-072-32/+3
|\ \ \ \ | |/ / /
| * | | deploy_utils: only check glance for image properties kernel/ramdiskDmitry Tantsur2022-01-282-32/+3
| | | | | | | | | | | | | | | | | | | | | | | | Other image services cannot have them, not use making a network call. Change-Id: I691ae5b67358ced5f0aa860b9ca6ccec58c897ad
* | | | Merge "Wait for conductor start before notifying systemd"Zuul2022-02-075-0/+69
|\ \ \ \
| * | | | Wait for conductor start before notifying systemdDmitry Tantsur2022-01-265-0/+69
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently, the launcher first notifies systemd, then starts checking the services (RPC and WSGI). So any failures will be reported, but only after systemd declares the service ready. This change adds a polling loop to make sure RpcService.start() finishes successfully. Change-Id: Ib460622d69a9cb1cb82e796a6ab294bbbb40c359
* | | | | Merge "Return non-zero exit code on failures"Zuul2022-02-074-3/+8
|\ \ \ \ \ | |/ / / /
| * | | | Return non-zero exit code on failuresDmitry Tantsur2022-01-264-3/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Launcher.wait() does not raise, it returns an integer code. Propagate it to sys.exit() so that failures are correctly recognized. Change-Id: I38bf39e4e4845415640b3468e9fb3029f70dcded
* | | | | Merge "Fix resource_url in the remaining resources"Zuul2022-02-0316-52/+83
|\ \ \ \ \ | |_|_|_|/ |/| | | |
| * | | | Fix resource_url in the remaining resourcesDmitry Tantsur2022-01-2416-52/+83
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Node history was particularly affected: limit was not converted from string to integer, so "next" link was never added. Add some safeguards to the generic API code. Change-Id: I1328e2f07621bf7e39b96eb4a7ddb66c9a2b65bb
* | | | Merge "Make account prefix of Swift confgurable"Zuul2022-02-034-2/+74
|\ \ \ \
| * | | | Make account prefix of Swift confgurableTakashi Kajinami2022-01-264-2/+74
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Account prefix is configurable in Swift and can be different. This change introduces a configuration parameter to customize the prefix so that users can customize the prefix consistently. To allow setting a consistent value in Ironic and Swift, the prefix value is automatically suffixed by '_' like; - AUTH => AUTH_ - AUTH_ => AUTH_ Story: 2009778 Task: 44259 Change-Id: I4862efa3af452f89f1dc4e15d2c3cc43b857f86d
* | | | | Merge "Fix redfish RAID failed tasks"Zuul2022-02-033-39/+124
|\ \ \ \ \
| * | | | | Fix redfish RAID failed tasksAija Jauntēva2022-01-053-39/+124
| |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Redfish Tasks do not report failures via HTTP status codes. Instead have to check TaskState and TaskStatus. Story: 2009767 Task: 44244 Change-Id: I8f9a89d18d22d18a2e695fde894bcd27f18f8954
* | | | | Merge "Inspector: better error message on DiscoveryFailure"Zuul2022-02-012-3/+21
|\ \ \ \ \
| * | | | | Inspector: better error message on DiscoveryFailureDmitry Tantsur2022-01-202-3/+21
| | |_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The keystoneauth's error message on connection problems is very confusing: Version requested but version discovery document was not found and allow_version_hack was False While I'm trying to improve the situation in [1], it still won't be perfect. This patch adds some context to DiscoveryFailure. We should probably do the same for other services, but inspector is particularly affected since it can be used standalone. [1] https://review.opendev.org/c/openstack/keystoneauth/+/825540 Change-Id: Ibd41580d1389c7584639bf000e330fec5ee1b73d
* | | | | Re-enable the standalone jobDmitry Tantsur2022-02-011-5/+2
| | | | | | | | | | | | | | | | | | | | Change-Id: Ieefdfc0ec287b5fed42f7c7d6d213cbd2f8cd927
* | | | | Merge "Add additional ramdisk tests"Zuul2022-02-013-1/+138
|\ \ \ \ \
| * | | | | Add additional ramdisk testsJulia Kreger2022-01-263-1/+138
| | |_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Noticed we're missing some test coverage in regards to booting from ramdisks when I was investigating an issue which was reported against wallaby. Adds tests which *should* catch the issue I'm chasing in wallaby. Change-Id: I4965d0cc3966c50fa0485b5e194248dd2072f7a8
* | | | | Avoid non-Stream CentOS and temporary disable the standalone jobDmitry Tantsur2022-01-312-3/+6
| |_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | The standalone job is failing because of a bug in IPA. To fix it we need to make DIB jobs operational, and they're failing because of CentOS repos. Change-Id: I8bd051ea709d328cb5efa2c2cbd5a226bdb4cfd3
* | | | Fix DevStack plugin ipxe-snponly-x86_64.efi nameAija Jauntēva2022-01-271-1/+1
|/ / / | | | | | | | | | Change-Id: Ic25eb356d1bc86c1dc4b09df7fc0df42b3821cf3
* | | Merge "Migrates docs from wiki"Zuul2022-01-244-3/+125
|\ \ \
| * | | Migrates docs from wikiJulia Kreger2022-01-204-3/+125
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Moves legacy documentation from the wiki. Please note, this has stripped out upgrade notes in some links in part because links are broken, and those versions should have long ago exited production, meaning this is largely for contextual information retention by the project. * https://wiki.openstack.org/wiki/ReleaseNotes/Kilo#OpenStack_Bare_Metal_service_.28Ironic.29 * https://wiki.openstack.org/wiki/Ironic/ReleaseNotes/Juno * https://wiki.openstack.org/wiki/Ironic/ReleaseNotes/Icehouse Change-Id: I62016bd6319a612bd0c59f496481cae88a182032
* | | | Merge "Fix Mock objects as specs"Zuul2022-01-2114-180/+235
|\ \ \ \
| * | | | Fix Mock objects as specsRiccardo Pittau2021-12-1514-180/+235
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In Python 3.10 is not possible to use Mock objects as specs for Mock instances anymore. For more info see https://bugs.python.org/issue43478 Change-Id: Ia79ad659098c3e68432214782aeb5b8a9df99eb0 Story: 2009736 Task: 44161