summaryrefslogtreecommitdiff
path: root/devstack
Commit message (Collapse)AuthorAgeFilesLines
* devstack: increase concurrency and worker timeout for sushy-tools13.0.4Dmitry Tantsur2020-06-091-0/+3
| | | | | | | | | | Sometimes sushy-tools hits worker timeout in gunicorn when handing a virtual media ISO, causing a request to be aborted and deployment to fail. Increase the timeout from 30 to 90 seconds and add some concurrency to ensure that more than one deployment can run. Change-Id: I9e951aaaa13981602151bff3f2eebfa338113f6c (cherry picked from commit 7a455a3ff3af8a1542e32578f4f5a1c65d021c3d)
* Fix bash comparisons for grenade multinode switchJulia Kreger2020-02-052-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | It seems, however variables are getting set with grenade in native zuulv3 jobs, the environment variables are no longer comparing as they once did in standard bash jobs. What worked previously, was [ "$VAR" == 'value' ], however when comparing the newer grenade node jobs we see things like [[ subnode != \s\u\b\n\o\d\e ]] returning true when single quotes are used. Comparison in the logs to where double quotes were used for functionally the same comparision, revealed proper processing and execution as expected. As such, changing our single quotes to double quotes where applicable. For the record, I also quickly checked codesearch and it looks like we were the only project to use single quotes for this comparison. Change-Id: I2db2e870e2c5f32aa061af025ee7ce12c4f7c049
* Fix typo in setup-network.sh scriptRiccardo Pittau2020-01-311-1/+1
| | | | | | | Removing a $ sign that shouldn't be there and can cause trouble. Change-Id: I59a046c06334a3366d0c7070114446efa832df23 (cherry picked from commit 90b747ac669ee8985335930945ee6fe20d8157fa)
* Explicitly use ipxe as boot interface for iPXE testingKaifeng Wang2020-01-091-1/+1
| | | | | | | | | | We are about to drop pxe + ipxe_enabled=True combination for iPXE testing, so let's make it explicit in the jobs. Change-Id: I0e99e6336aa47857c06ba2f6869e66580159a9be Story: 2007003 Task: 37779 (cherry picked from commit 697048b47edc8b70bb602485714997b0f6b3d0f4)
* CI: limit rescue testing to only two jobsDmitry Tantsur2019-10-241-1/+1
| | | | | | | | | This feature is time-consuming and prone to race conditions. This changes switches it off by default, leaving it on in two jobs: the one running on Nova and the standalone one. Change-Id: I7c50cb12065da05dad4ece0918883748ee4617e0 (cherry picked from commit a2472c15181e5544940000efc9a47fd449279a87)
* Change MTU logic to allow for lower MTUs automaticallyJulia Kreger2019-10-221-1/+5
| | | | | Change-Id: I40d357e716b589585493824cfd963fd5f579bd81 (cherry picked from commit cf074202e50426365c761326c8d2ccfcce4ad916)
* Merge "Fix devstack installation failure" into stable/trainZuul2019-10-071-1/+1
|\
| * Fix devstack installation failureChristopher Dearborn2019-10-051-1/+1
| | | | | | | | | | | | | | | | | | | | This patch fixes an exception that occurs when deploying devstack with the DIB ramdisk. Change-Id: Ia4499291b6dff1e8c8b6cd1ac544a1e3787ccf83 Story: #2006645 Task: #36881 (cherry picked from commit dab47f9ce143fa1d7fb7c51608bb69332464d914)
* | Use correct function to stop serviceIury Gregory Melo Ferreira2019-10-041-1/+1
|/ | | | | | | | | | DevStack provides a function to stop services[1], the `stop_redfish` function wasn't using this one. [1] https://opendev.org/openstack/devstack/src/branch/master/functions-common#L2252 Change-Id: I9e7be1d3ade0d2743893de6565e5dc427d5e1f71 (cherry picked from commit a5297da9416335bc4145be33ce13ae857808cdd4)
* Prepare stable/train testingMark Goddard2019-09-261-2/+2
| | | | Change-Id: I7395b2604ac49bbbd0c2b236842a471a86a60b37
* Merge "Allow retrying PXE boot if it takes too long"Zuul2019-09-231-3/+13
|\
| * Allow retrying PXE boot if it takes too longDmitry Tantsur2019-09-201-3/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | PXE is inherently unreliable and sometimes times out without an obvious reason. It happens particularly often in resource constrained environments, such as the CI. This change allows an operator to set a timeout, after which the boot is retried again. The _add_node_filters call had to be refactored to avoid hitting the complexity limit. Change-Id: I34a11f52e8e98e5b64f2d21f7190468a9e4b030d Story: #2005167 Task: #29901
* | Merge "Devstack: Fix iPXE apache log location bug"Zuul2019-09-212-2/+3
|\ \
| * | Devstack: Fix iPXE apache log location bugMichael Davies2019-09-202-2/+3
| |/ | | | | | | | | | | | | | | | | | | | | Make the apache log directory configurable, based upon which operating system this is running on. This is needed as ironic devstack is broken on Red Hat-related operating systems as a result. Change-Id: I22e04d886219755a38b1e895c2c6f9d756535cab Story: 2006577 Task: 36689
* | devstack: wait for conductor to start and register itselfDmitry Tantsur2019-09-201-1/+17
| | | | | | | | Change-Id: I5e026754ed5aa6fb0ffaff086cda0bfa0aca2211
* | Merge "CI: move libvirt images to /opt for standalone and multinode jobs"Zuul2019-09-202-15/+25
|\ \ | |/ |/|
| * CI: move libvirt images to /opt for standalone and multinode jobsDmitry Tantsur2019-09-162-15/+25
| | | | | | | | | | | | | | Moves the volume pool from / to /opt for the standalone and multinode jobs, since on smaller nodes /opt is mounted from a larger ephemeral disk. Change-Id: Idb4e235fd40ecd9829c3ad8a9dd1224f1c29a12e
* | Merge "Remove support for CoreOS images"Zuul2019-09-181-29/+3
|\ \
| * | Remove support for CoreOS imagesDmitry Tantsur2019-09-091-29/+3
| | | | | | | | | | | | | | | | | | Also remove the remaining elilo test template instead of updating it. Change-Id: I79a49837f4d0dd6a432895e8997158a51feb99c3
* | | Merge "Remove cisco references and add release note"Zuul2019-09-171-29/+1
|\ \ \ | |_|/ |/| |
| * | Remove cisco references and add release noteRuby Loo2019-09-131-29/+1
| |/ | | | | | | | | | | | | | | | | | | | | The cisco hardware types and interfaces were removed in Ie12eaf7572ce4d66f6a68025b7fe2d294185ce28. This removes the last few references to them, and adds a release note about their removal. Change-Id: I6d11dda0132d999b2dbf6bbd47cac55336e1d079 Story: 2005033 Task: 29522
* | devstack: save iPXE httpd logsDmitry Tantsur2019-09-041-0/+4
|/ | | | Change-Id: I3ad5ee77a2e2e8613316b1e935256d5ba0394420
* Merge "Adding file uri support for ipa image location"Zuul2019-08-291-3/+11
|\
| * Adding file uri support for ipa image locationMichael Davies2019-08-271-3/+11
| | | | | | | | | | | | | | | | Allow ipa kernel/disk images to be specified via file:// designator so they can be locally hosted in addition to being available over http. Change-Id: If3e32f30a7df27113721e15bff9ecaae16bfe8d4
* | Adjust placement query for reserved nodesJulia Kreger2019-08-261-3/+3
|/ | | | | | | | | Minor timing changes in an attempt to: a) Make the logs less noisy b) Wait a little bit longer for placement records to be updated. Change-Id: I4f64a2f5ab2d1696f244f083d5dc387c75cc1175
* Adds dhcp-all-interfaces elementnishagbkar2019-08-251-2/+2
| | | | | | | | | | | | Changes the value of IRONIC_DIB_RAMDISK_OPTIONS to 'centos7 dhcp-all-interfaces' from 'ubuntu' to resolve the issue in passing the ironic-python-agent-buildimage-dib test. Based on the comments of https://review.opendev.org/#/c/676239/ Change-Id: I92f44370cbd10c192c26cceb1589990f74985e92 Task: 36375 Story: 2005114
* Merge "Support power state change callbacks to nova using ksa_adapter"Zuul2019-08-241-1/+4
|\
| * Support power state change callbacks to nova using ksa_adapterSurya Seetharaman2019-08-121-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add power state change callbacks of an instance to nova by performing API requests. Whenever there is a change in the power state of a physical instance (example a "power on" or "power off" IPMI command is issued or the periodic ``_sync_power_states`` task detects a change in power state) ironic will create and send a ``power-update`` external event to nova using which nova will update the power state of the instance in its database. By conveying the power state changes to nova, ironic becomes the source of truth thus preventing nova from forcing wrong power states on the instance during the nova-ironic periodic sync. It also adds the possibility of bringing up/down a physical instance through the ironic API even if it was put down/up through the nova API. Note that ironic only sends requests to nova if the target power state is either "power on" or "power off". Other error states will be ignored. In cases where the power state change is originally coming from nova, the event will still be created and sent to nova and on the nova side it will be a no-op with a debug log saying the node is already powering on/off. NOTE: Although an exclusive lock (task_manager.upgrade_lock() method) is used when calling the nova API to send events, there can still be a race condition if the nova-ironic power sync happens to happen a nano-second before the power state change event is received from ironic in which case the nova state will be forced on the node. Credit for introducing ksa adapter: Eric Fried <openstack@fried.cc> Depends-On: https://review.opendev.org/#/c/645611/ Part of blueprint nova-support-instance-power-update Story: 2004969 Task: 29424 Change-Id: I6d105524e1645d9a40dfeae2850c33cf2d110826
* | Merge "Remove ironic command bash completion"Zuul2019-08-201-1/+0
|\ \
| * | Remove ironic command bash completionJulia Kreger2019-08-191-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The ironic command has bene long deprecated and we are finally removing it from python-ironicclient. In order to remove it, we need to remove this reference to the ironic.bash_completion file which is no longer present nor necessary. Change-Id: If2cae16ce7c24258ee720a6b8ac6e9bcdd2589aa
* | | Merge "Move to unsafe caching"Zuul2019-08-201-1/+1
|\ \ \
| * | | Move to unsafe cachingJulia Kreger2019-08-161-1/+1
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently we use writeback caching for disks on our test vms, however that honors syncs and IO could become blocked/locked if the sync has not completed with the double virtualization that occurs in CI. In theory, we don't need to worry about the buffer cache behavior for our test VMs. Overall, it appears that there is a performance gain of about 10-15% with making this change because we're not honoring syncs to not lock-up IO. Change-Id: Ib09dd7fd41c6b1cbc0e2b707bfc9e4ff8dfa6fad
* | | Merge "devstack: Fix libvirtd/libvirt-bin detection"Zuul2019-08-191-1/+1
|\ \ \
| * | | devstack: Fix libvirtd/libvirt-bin detectionEric Fried2019-08-161-1/+1
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Attempting to devstack on bionic failed with: Failed to restart libvirt-bin.service: Unit libvirt-bin.service not found. devstack/lib/ironic was trying to figure out whether our libvirtd service is called libvirtd or libvirt-bin based on: - Are we on ubuntu? - Does /etc/init.d/libvirtd not exist? if is_ubuntu && [ ! -f /etc/init.d/libvirtd ]; then libvirt_service_name="libvirt-bin" But on this bionic, for whatever reason, my libvirtd is at /usr/sbin/libvirtd. However, `type libvirtd` succeeds in either case. So this commit broadens the second part of that check accordingly. Note, FWIW, that devstack's lib/nova_plugins/functions-libvirt checks this way: # Only Xenial is left with libvirt-bin. Everywhere else is libvirtd if is_ubuntu && [ ${DISTRO} == "xenial" ]; then LIBVIRT_DAEMON=libvirt-bin else LIBVIRT_DAEMON=libvirtd fi Change-Id: I94a86a96d5732db60c12399fcaf666f960461e3e
* | | Install sushy if redfish is a hardware typeJulia Kreger2019-08-151-1/+6
|/ / | | | | | | Change-Id: I2b8750835f87d49e5b51c156f18a5c12d6d9884a
* | Merge "Add Redfish Virtual Media Boot support"Zuul2019-08-152-0/+76
|\ \
| * | Add Redfish Virtual Media Boot supportIlya Etingof2019-08-142-0/+76
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch introduces standard Redfish virtual media boot support to ironic. The patch implements basic boot interface features along with devstack plugin support for virtual media boot. Functionally, redfish boot interface supports the same set of features as PXE. Unlike other virtual media boot implementations (e.g. iLo), this patch does not require user-built deploy/rescue/boot ISO images for virtual media boot. Instead, ironic will build necessary images out of common kernel/ramdisk pair (though user needs to provide ESP image). Story: 1526753 Task: 10389 Co-Authored-By: Shivanand Tendulker <stendulker@gmail.com> Change-Id: I0db0a64c5ccf260f5a0695dbe994af1e11f71517
* | | Merge "Enable testing software RAID in the standalone job"Zuul2019-08-141-0/+4
|\ \ \ | |/ / |/| |
| * | Enable testing software RAID in the standalone jobDmitry Tantsur2019-08-071-0/+4
| | | | | | | | | | | | | | | Change-Id: Id5cc1854492df230e6657bc8450c49a52f21ac16 Depends-On: https://review.opendev.org/#/c/675064/
* | | Merge "devstack: allow creating more than one volume for a VM"Zuul2019-08-094-17/+39
|\ \ \ | |/ /
| * | devstack: allow creating more than one volume for a VMDmitry Tantsur2019-08-074-17/+39
| |/ | | | | | | | | | | This is needed to easily test software RAID. Change-Id: Ia1bc81db97c6d5d1f79c4e1cfea1ab29fd988c3f
* | Merge "Uses IPA-B to build in addition to CoreOS"Zuul2019-08-091-3/+5
|\ \
| * | Uses IPA-B to build in addition to CoreOSNisha Brahmankar2019-08-081-3/+5
| |/ | | | | | | | | | | | | | | Depends-On: https://review.opendev.org/#/c/669213/ Task: 30073 Story: 2005114 Change-Id: I39f33f748c6c25ff1f4a543beb59231ea8b7f30f
* | Allow configuring global deploy and rescue kernel/ramdiskDmitry Tantsur2019-08-062-10/+8
| | | | | | | | | | | | | | | | | | | | The devstack plugin was updated to configure basic ops before ironic starts, so that we can put links to deploy images in the ironic.conf. Change-Id: I305fc3712b1ac0cf2fe64569729e236c7b614bb4 Story: #2006175 Task: #35699
* | Merge "Use HTTPProxyToWSGI middleware from oslo"Zuul2019-08-051-2/+2
|\ \
| * | Use HTTPProxyToWSGI middleware from osloPavlo Shchelokovskyy2019-08-021-2/+2
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | currently it is impossible to use ironic-api for both internal and public api at the same time when both of those are using (ssl terminating) proxies as there's only one config option to override the resource url's in responses ([api]public_endpoint). This patch adds the http_proxy_to_wsgi middleware from oslo.middleware to the ironic API service, which, with properly configured proxies, makes the choice of correct URL automatic, and thus makes such scenario possible. As this middleware may potentially not properly handle some endpoint URL schemas, leave the api.public_endpoint option as a backup, but it will be ignored when proxy headers parsing is enabled. Change-Id: I3ce6b0726b479c2835f8777957b2cb12d8098aec Story: #2006303 Task: #36019
* | Enable testing adoption in the CIDmitry Tantsur2019-07-251-1/+5
|/ | | | | Change-Id: Id175e0573b9ff76fd1b6c2e57af774e943ae1476 Depends-On: https://review.opendev.org/672286
* Merge "Revert "Add logic to determine Ironic node is HW or not into ↵Zuul2019-07-201-1/+1
|\ | | | | | | configure_ironic_dirs""
| * Revert "Add logic to determine Ironic node is HW or not into ↵Julia Kreger2019-07-191-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | configure_ironic_dirs" This is due to a failure in the logic where the UEFI firmware objects are copied along with the ipxe loader. tl;dr we need to have two separate if statements. This reverts commit 0913c948423ed6c8ba147cf4e2a5a4de6945ec96. Change-Id: Iaf78462a8b4abf4ad9c294c8575c67f5ade40a40
* | Don't install ubuntu efi debs on centmichaeltchapman2019-07-111-1/+5
| | | | | | | | | | | | | | | | Recently shim and grub-efi-amd64-signed were moved from debs to be installed by lib/ironic, which causes errors since the latter does not exist for rpm based distros. Change-Id: I87c5268bdd23c4978201b4b7cb2e4a4770190828