summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Remove lower-constraints jobRiccardo Pittau2020-12-152-149/+0
| | | | | | | As discussed during the upstream ironic community meeting on Monday Dec 14 2020, the lower-constraints job is being removed. Change-Id: I116d99014a7bf77ca77b796ea3b759800dd808ce
* Merge "Avoid a full install in tox environments that do not need it"Zuul2020-12-141-0/+6
|\
| * Avoid a full install in tox environments that do not need itDmitry Tantsur2020-12-141-0/+6
| | | | | | | | | | | | | | | | | | | | | | Usage of usedevelop=True results in all requirements.txt dependencies always installed (without constraints) even when requirements.txt is not explicitly added. Override usedevelop for these environments. Add requirements.txt to the 'docs' environment since it imports the whole ironic in the process. Change-Id: Ibab7d9cff1bd6eccc022873d1c5f59e27e54abaf
* | Merge "Use ddt for existing policy tests"Zuul2020-12-141-103/+194
|\ \
| * | Use ddt for existing policy testsSteve Baker2020-12-141-103/+194
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change aims to replicate the existing policy check tests using ddt so that they can be represented in a declarative format. The number of tests are expected to grow significantly with secure-rbac, so the aim of this change is to explore how best to represent the tests before the new tests are written. Change-Id: Id1b60f5525773eadbe1b85797eeefdb70d73ae1d
* | | Merge "devstack: build DIB images with CentOS Stream by default"Zuul2020-12-141-1/+1
|\ \ \ | |_|/ |/| |
| * | devstack: build DIB images with CentOS Stream by defaultDmitry Tantsur2020-12-111-1/+1
| | | | | | | | | | | | Change-Id: I50edd6b2740a26d00be19abc58c3ff770417fb68
* | | Do not pin Python version in tox configRiccardo Pittau2020-12-141-1/+1
| | | | | | | | | | | | | | | | | | We want to use the default for each system. Change-Id: I80e411e11b3b1db990ff91a1cf90c662170dcab6
* | | Merge "Add secure boot support to ilo-uefi-https"Zuul2020-12-144-7/+29
|\ \ \ | |_|/ |/| |
| * | Add secure boot support to ilo-uefi-httpsvmud2132020-11-264-7/+29
| | | | | | | | | | | | | | | | | | | | | | | | Adds secure boot support to ilo-uefi-https boot interface. Change-Id: I1d08b88496764bbee5cf0a1d306eb7be31d0d373 Story: #2008258 Task: #41114
* | | Merge "Fix lower-constraints with the new pip resolver"Zuul2020-12-134-10/+13
|\ \ \ | |_|/ |/| |
| * | Fix lower-constraints with the new pip resolverIury Gregory Melo Ferreira2020-12-114-10/+13
| | | | | | | | | | | | | | | | | | | | | | | | * move pep8 dependencies from test-requirements to tox.ini, they're not needed there and are hard to constraint properly. * add oslo.cache to l-c to avoid bump of dependencies Change-Id: Ia5330f3d5778ee62811da081c28a16965e512b55
* | | Add TLS troubleshooting guide entryDmitry Tantsur2020-12-101-0/+51
| | | | | | | | | | | | Change-Id: Ied66562bb2475513ddb8c712dedc5f50fc6cad4f
* | | Merge "Test patching booleans with string values"Zuul2020-12-061-0/+32
|\ \ \
| * | | Test patching booleans with string valuesSteve Baker2020-11-271-0/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The baremetal client encodes boolean patch values as strings ("True", "False") but there is no unit test coverage which confirms that this actually works. This change adds that test coverage. Change-Id: I9e428ad973e88d3e1ef1e04e49a7b00a4e2d43fd
* | | | Merge "Improve object_to_dict arguments"Zuul2020-12-066-59/+63
|\ \ \ \ | |/ / /
| * | | Improve object_to_dict argumentsSteve Baker2020-11-276-59/+63
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As a follow-up to the review feedback in[1], type specific fields arguments are removed and the type is inferred from the versioned object fields. Story: 1651346 Task: 10551 [1] https://review.opendev.org/751160 Change-Id: I89a65214ab7d550d0b4a327dd033c27399ae13bf
* | | | Merge "Remove compatibility with conductors that do not support groups"Zuul2020-12-041-2/+1
|\ \ \ \
| * | | | Remove compatibility with conductors that do not support groupsDmitry Tantsur2020-09-291-2/+1
| | | | | | | | | | | | | | | | | | | | Change-Id: I6d672a25bfe66391a8e8eaaa5d040512a5e01c19
* | | | | Merge "JSON conversion followup change"Zuul2020-12-0214-72/+30
|\ \ \ \ \ | | |/ / / | |/| / / | |_|/ / |/| | |
| * | | JSON conversion followup changeSteve Baker2020-11-2614-72/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change addresses nit-level review comments from this task. Story: 1651346 Task: 10551 Change-Id: I01608004ce90facadb73e252203900a1e62cbea1
* | | | Merge "CI: add a non-voting bifrost-vmedia-uefi job"Zuul2020-12-021-0/+2
|\ \ \ \
| * | | | CI: add a non-voting bifrost-vmedia-uefi jobDmitry Tantsur2020-11-261-0/+2
| |/ / / | | | | | | | | | | | | | | | | | | | | It provides useful coverage of e.g. fast-track with virtual media. Change-Id: Ie09f4daced5ffd9d953b9add4d5484bbdd1ba1ac
* | | | Use openstack-tox for ironic-tox-unit-with-driver-libsRiccardo Pittau2020-11-271-1/+1
|/ / / | | | | | | | | | | | | | | | | | | All the tox jobs are based on openstack-tox, we should convert ironic-tox-unit-with-driver-libs too. Change-Id: I20836d586edccfb8cd8fed1f3a89f1497ff96943
* | | Merge "Add vendor_passthru method for virtual media"Zuul2020-11-259-27/+259
|\ \ \
| * | | Add vendor_passthru method for virtual mediaBob Fournier2020-11-249-27/+259
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a vendor_passthru method to eject_vmedia for Redfish and idrac. Story: 2008363 Task: 41271 Change-Id: Ib5ae16bacfd79f479a9aa8fbf69edc5cfdf73ce3
* | | | Merge "Allow disabling automated_clean per node"Zuul2020-11-256-2/+72
|\ \ \ \
| * | | | Allow disabling automated_clean per nodeFeruzjon Muyassarov2020-11-246-2/+72
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This allows users to disable automated cleaning on Node level. Story: #2008113 Task: #40829 Change-Id: If583bae4108b9bfa99cc460509af84696c7003c5
* | | | | Merge "Make standalone jobs voting again"Zuul2020-11-251-8/+6
|\ \ \ \ \
| * | | | | Make standalone jobs voting againRiccardo Pittau2020-11-231-8/+6
| | |_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | Also remove 2 non-voting jobs from gate. Change-Id: I40574cad53de8b9f89e1ae0a033b75de39140769
* | | | | Merge "Always retry locking when performing task handoff"Zuul2020-11-255-4/+82
|\ \ \ \ \
| * | | | | Always retry locking when performing task handoffJason Anderson2020-11-245-4/+82
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There are some Ironic execution workflows where there is not an easy way to retry, such as when attempting to hand off the processing of an async task to a conductor. Task handoff can require releasing a lock on the node, so the next entity processing the task can acquire the lock itself. However, this is vulnerable to race conditions, as there is no uniform retry mechanism built in to such handoffs. Consider the continue_node_deploy/clean logic, which does this: method = 'continue_node_%s' % operation # Need to release the lock to let the conductor take it task.release_resources() getattr(rpc, method)(task.context, uuid, topic=topic If another process obtains a lock between the releasing of resources and the acquiring of the lock during the continue_node_* operation, and holds the lock longer than the max attempt * interval window (which defaults to 3 seconds), then the handoff will never complete. Beyond that, because there is no proper queue for processes waiting on the lock, there is no fairness, so it's also possible that instead of one long lock being held, the lock is obtained and held for a short window several times by other competing processes. This manifests as nodes occasionally getting stuck in the "DEPLOYING" state during a deploy. For example, a user may attempt to open or access the serial console before the deploy is complete--the serial console process obtains a lock and starves the conductor of the lock, so the conductor cannot finish the deploy. It's also possible a long heartbeat or badly-timed sequence of heartbeats could do the same. To fix this, this commit introduces the concept of a "patient" lock, which will retry indefinitely until it doesn't encounter the NodeLocked exception. This overrides any retry behavior. .. note:: There may be other cases where such a lock is desired. Story: #2008323 Change-Id: I9937fab18a50111ec56a3fd023cdb9d510a1e990
* | | | | | Merge "Remove from_dict function from context"Zuul2020-11-232-23/+4
|\ \ \ \ \ \ | |_|/ / / / |/| | | | |
| * | | | | Remove from_dict function from contextRiccardo Pittau2020-11-172-23/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Also changing context entries from deprecated to current ones. Change-Id: I06a8763acf70e9e5890681c6ad3d410de86c14a1
* | | | | | Merge "Expunge the internal version of WSME"Zuul2020-11-2016-3389/+15
|\ \ \ \ \ \
| * | | | | | Expunge the internal version of WSMESteve Baker2020-11-1916-3389/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change removes unused code and concludes the conversion of the REST API from WSME based to plain JSON. Change-Id: Ib04c759f86d9758b67a75648b5971f5a80c77ecb Story: 1651346 Task: 10551
* | | | | | | Merge "Fix disk label to account for UEFI"Zuul2020-11-193-1/+28
|\ \ \ \ \ \ \ | |/ / / / / / |/| | | | | |
| * | | | | | Fix disk label to account for UEFIJulia Kreger2020-11-183-1/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously disk labels would not be populated if not explicitly set by an API user, which lead to a dangerous possible case, which sometimes could work, but was ultimately wrong to setup a UEFI booting machine with a BIOS MBR partition table. Not all systems support this, but UEFI systems are supposed to support GPT partition tables. We now fallback if no explicit override is set and assume GPT if the machine is set to UEFI mode. Change-Id: I001d8c6ee3b1d6c466c71ea5179bdbca9bdd692d
* | | | | | | Convert volume/targets endpoint to plain JSONSteve Baker2020-11-193-251/+132
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: I4d7f13ffb1dd438d9136238fa75a3efaac4e8b7e Story: 1651346 Task: 10551
* | | | | | | Convert volume/connectors endpoint to plain JSONSteve Baker2020-11-193-239/+125
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: I6c0a49cafa94fe6d2dee4069642d352d5391ec92 Story: 1651346 Task: 10551
* | | | | | | Don't allow patching port internal_infoSteve Baker2020-11-192-3/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Patching the port internal_info was allowed in error in the just landed JSON conversion change[1]. This is now fixed, and the comment has been updated to explain why internal_info needs to be part of patch schema. [1] https://review.opendev.org/750120 Change-Id: Ieab085cfd9731e180f741b17a27ea540dabbf62e
* | | | | | | Merge "[doc][trivial] Fix spelling error"Zuul2020-11-181-1/+1
|\ \ \ \ \ \ \
| * | | | | | | [doc][trivial] Fix spelling errorArne Wiebalck2020-11-181-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: Ief679596e49d8686fc778e342180d221255b15cf
* | | | | | | | Merge "Convert volume endpoint to plain JSON"Zuul2020-11-181-43/+25
|\ \ \ \ \ \ \ \
| * | | | | | | | Convert volume endpoint to plain JSONSteve Baker2020-11-161-43/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: I10293c55c7f65374c4d5d98fe7ba0cfd8a90b670 Story: 1651346 Task: 10551
* | | | | | | | | Merge "Convert ramdisk endpoint to plain JSON"Zuul2020-11-181-21/+13
|\ \ \ \ \ \ \ \ \ | |/ / / / / / / /
| * | | | | | | | Convert ramdisk endpoint to plain JSONSteve Baker2020-11-161-21/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: Ib7f1875051eed0fc5882cf675eead56694db76d7 Story: 1651346 Task: 10551
* | | | | | | | | Merge "Convert portgroups endpoint to plain JSON"Zuul2020-11-184-281/+175
|\ \ \ \ \ \ \ \ \ | |/ / / / / / / /
| * | | | | | | | Convert portgroups endpoint to plain JSONSteve Baker2020-11-164-281/+175
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: I3706051704c260e605c765e8a45e4d4f3ec0b977 Story: 1651346 Task: 10551
* | | | | | | | | Merge "Convert ports endpoint to plain JSON"Zuul2020-11-189-598/+475
|\ \ \ \ \ \ \ \ \ | |/ / / / / / / / | | / / / / / / / | |/ / / / / / / |/| | | | | | |