summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Make WSGI server respect listen_* directivesbugfix/6.2-eolbugfix/6.2Jay Faulkner2020-09-023-7/+58
| | | | | | | | | | | | The listen_port and listen_host directives are intended to allow deployers of IPA to change the port and host IPA listens on. These configs have not been obeyed since the migration to the oslo.service wsgi server. Story: 2008016 Task: 40668 Change-Id: I76235a6e6ffdf80a0f5476f577b055223cdf1585 (cherry picked from commit 7d0ad36ebd350a7162bc3c33bbefd26b9e962a78)
* Increase memory for tinyipa jobsRiccardo Pittau2020-08-211-5/+5
| | | | | | | | | | Tinyipa is not that tiny anymore and we need to increase the base memory for VMs in jobs that use it. Depends-On: https://review.opendev.org/747397 Change-Id: I7e2d93ef566f4f2beb54caf445c7810a01aec1de (cherry picked from commit 2a5ba7ef68db8b09a62e36943be75ef29c62ef54)
* Fix bootloader install issue with MDRAIDDoug Szumski2020-08-133-6/+52
| | | | | | | | | | | | | | | When no root_device hint is set, an MDRAID partition can be incorrectly selected as the root device which causes installation of the bootloader to the physical disks behind the MDRAID volume to fail. See the notes in the referenced Story for more detail. This change adds a little more specificity to the listing of block devices. Change-Id: I66db457e71a0586723ee753bef961aec5bf58827 Story: 2007905 Task: 40303 (cherry picked from commit 5e95b1321d6e4fe5c562092d0baba73ad6d5303e)
* Merge "Ignore devices with size 0 when collecting inventory" into bugfix/6.2Zuul2020-08-133-5/+25
|\
| * Ignore devices with size 0 when collecting inventoryDmitry Tantsur2020-08-103-5/+25
| | | | | | | | | | | | | | | | | | | | delete_configuration still fetches all devices as it needs to clean ones with broken RAID. Story: #2007907 Task: #40307 Change-Id: I4b0be2b0755108490f9cd3c4f3b71a5e036761a1 (cherry picked from commit 1f3b70c4e968464a93ea68e6f64c4836b90446de)
* | Fix TypeError on agent lookup failureJulia Kreger2020-08-073-4/+84
|/ | | | | | | | | | | | | | | | | | Agent lookups can fail as we presently use logging.exception, better known in our code as LOG.exception, which can also generate other fun issues on journald based systems where additional errors could be raised resulting in us being unable to troubleshoot the the actual issue. Because of the mis-use of LOG.exception and the default behavior of the backoff retry handler, the retry logic was also not functional as any error no matter how small caused IPA to just exit. Change-Id: Ic4608b7c6ff9773d1403926efb3d59869c71343b Story: 2007968 Task: 40465 (cherry picked from commit 5eab9bced63b2b9a6753cbbf594dda7ef9d03a3a)
* Update jobsIury Gregory Melo Ferreira2020-07-132-8/+16
| | | | | | | | | | - Increase the number of VM's since we are running two tests. - Do no run ipa-tempest-wholedisk-* (the partition jobs are covering this since tempest runs wholedisk and partition tests) - Remove `partition` from the job names Change-Id: Ic82fc9dc7b658dab52c06b3619a0118acd111bc5 (cherry picked from commit 6bde89e4dd8403c98885963cb3f2aa983f852acc)
* Update TOX_CONSTRAINTS_FILE for bugfix/6.2OpenStack Release Bot2020-07-091-1/+1
| | | | | | | | | | | | Update the URL to the upper-constraints file to point to the redirect rule on releases.openstack.org so that anyone working on this branch will switch to the correct upper-constraints list automatically when the requirements repository branches. Until the requirements repository has as victoria branch, tests will continue to use the upper-constraints list on master. Change-Id: I2f00e95b5ff2616941ee50f575e10eddb680ecce
* Update .gitreview for bugfix/6.2OpenStack Release Bot2020-07-081-0/+1
| | | | Change-Id: I42aec2958d2ae2cc888040a1408d0c28b213bc89
* Refactor part of image module6.2.0Riccardo Pittau2020-07-071-27/+32
| | | | | | | Shuffle some functions around and reduce size of _is_bootloader_loaded moving logic out to a new function. Change-Id: I9c10bf05186dcebb37f175d61bf4ac9ff86b6510
* Merge "Limit Inspection->Lookup->Heartbeat lag"Zuul2020-07-068-6/+71
|\
| * Limit Inspection->Lookup->Heartbeat lagJulia Kreger2020-07-038-6/+71
| | | | | | | | | | | | | | | | | | | | Caches hardware information collected during inspection so that the initial lookup can occur without any delay. Also adds logging to track how long inventory collection takes. Co-Authored-By: Dmitry Tantsur <dtantsur@protonmail.com> Change-Id: I3e0d237d37219e783d81913fa6cc490492b3f96a
* | Merge "Fix serializing ironic-lib exceptions"Zuul2020-07-063-0/+39
|\ \ | |/ |/|
| * Fix serializing ironic-lib exceptionsDmitry Tantsur2020-07-023-0/+39
| | | | | | | | | | | | Change-Id: If1408e4b81d263c56b4bbab618dd0737db5f762e Story: #2007889 Task: #40268
* | Switch the inspector job to tinyIPA until DIB is fixedDmitry Tantsur2020-07-031-0/+2
| | | | | | | | Change-Id: Ibe4d212d83bc27163af1fa9aa82881ade2d647db
* | Increase the ESP partition size to 550 MiB when using software RAIDDmitry Tantsur2020-07-025-16/+30
| | | | | | | | | | | | | | This has been a popular guidance, and diskimage-builder has recently started following it. Change-Id: I794c846fb191c15b0a30546bf64d624dfbde0fd4
* | Merge "Mount all vfat partitions before calling grub2"Zuul2020-07-022-6/+73
|\ \ | |/ |/|
| * Mount all vfat partitions before calling grub2Arne Wiebalck2020-06-302-6/+73
| | | | | | | | | | | | | | | | | | In order to ensure grub2 finds all files it needs, mount all vfat partitions specified in the deployed image. Story: #2007618 Task: #39629 Change-Id: Ie5b6e0abc3f266409562f9ecb26538126b667056
* | Bump hacking min version to 3.0.1zhangbailin2020-06-302-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | flake8 new release 3.8.0 added new checks and gate pep8 job start failing. hacking 3.0.1 fix the pinning of flake8 to avoid bringing in a new version with new checks. Though it is fixed in latest hacking but 2.0 and 3.0 has cap for flake8 as <4.0.0 which mean flake8 new version 3.9.0 can also break the pep8 job if new check are added. To avoid similar gate break in future, we need to bump the hacking min version. - http://lists.openstack.org/pipermail/openstack-discuss/2020-May/014828.html Change-Id: Iff96a7a4c8f2a0f625a47ac44158d904fa132157
* | Fixes minor issues in the read() retries patchDmitry Tantsur2020-06-302-4/+6
| | | | | | | | | | | | | | | | | | | | | | | | Follow-up to commit c5b97eb781cf9851f9abe87a1500b4da55b8bde8. Two things slipped through the cracks: * ImageDownloadError was instantiated incorrectly, resulting in a wrong error message. This was uncovered by using assertRaisesRegext in tests. * We allowed calling write(None). This was uncovered by avoiding sleep(4) in tests and enabling more failed calls before timeout. Change-Id: If5e798c5461ea3e474a153574b0db2da96f2dfa8
* | Merge "Fix confusing logging when running asynchronous commands"Zuul2020-06-292-12/+14
|\ \
| * | Fix confusing logging when running asynchronous commandsDmitry Tantsur2020-06-262-12/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | We log them as completed when they start executing. Also fix a problem in remove_large_keys that prevented items with defaultdict from being logged. Change-Id: I34a06cc85f55c693416f8c4c9877d55d6affafc9
* | | Merge "Extend retries to 9, 10 seconds apart."Zuul2020-06-293-4/+16
|\ \ \
| * | | Extend retries to 9, 10 seconds apart.Julia Kreger2020-06-233-4/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The download retry interval was previously five seconds which is not long enough to recover after a hard network connectivity break where we may be reliant upon network port forwarding hold-down timers or even routing protocol route propogation to recover communication. Previously the time value was 5 seconds, with 3 attempts, meaning 15 seconds total ignoring the error detection timeouts. Now it is 10 seconds, with 10 attempts, meaning 100 seconds before the error detection timeouts. Change-Id: I6d11edc9a3156f2bdc21c3d432ecc7625d652699
* | | | Merge "Add debug message to node lookup"Zuul2020-06-291-0/+3
|\ \ \ \
| * | | | Add debug message to node lookupRiccardo Pittau2020-06-251-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This should help identify the start of the node lookup. Change-Id: I72f0949fee84be5a2b06eab976c5560e252fa63a
* | | | | Temporary switch to tinyipa jobsRiccardo Pittau2020-06-291-8/+8
|/ / / / | | | | | | | | | | | | | | | | | | | | To unlock the CI until the issue with the EPEL repo is fixed. Change-Id: Ia939df9354ddcbb11852d99b672443d37b87a0fd
* | | | Merge "Minor clean-up follow-up to timeout on read() fix"Zuul2020-06-252-8/+3
|\ \ \ \ | |/ / / |/| | |
| * | | Minor clean-up follow-up to timeout on read() fixJulia Kreger2020-06-242-8/+3
| | | | | | | | | | | | | | | | | | | | | | | | Just some minor cleanup driven from the review process. Change-Id: I0b3d73c251d6da6d85e11279990dcc36751e27e7
* | | | Add full download retriesJulia Kreger2020-06-233-29/+83
|/ / / | | | | | | | | | | | | | | | | | | | | | Instead of just trying to get the connection and handler for the download, lets try to retry the whole action of of downloading. Change-Id: I9217792d32e6f33c70f146a9b7d3ef58c5644d8a
* | | Add timeout operations to try and prevent hang on read()Julia Kreger2020-06-233-1/+92
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Socket read operations can be blocking and may not timeout as expected when thinking of timeouts at the beginning of a socket request. This can occur when streaming file contents down to the agent and there is a hard connectivity break. In other words, we could be in a situation like: - read(fd, len) - Gets data - Select returns context to the program, we do things with data. ** hard connectivity break for next 90 seconds** - read(fd, len) - We drain the in-memory buffer side of the socket. - Select returns context, we do things with our remaining data ** Server retransmits ** ** Server times out due to no ack ** ** Server closes socket and issues a FIN,RST packet to the client ** ** Connectivity restored, Client never got FIN,RST ** ** Client socket still waiting for more data ** - read(fd, len) - No data returned - Select returns, yet we have no data to act on as the buffer is empty OR the buffered data doesn't meet our requried read len value. tl;dr noop - read(fd, len) <-- We continue to try and read until the socket is recognized as dead, which could be a long time. NOTE: The above read()s are python's read() on an contents being streamed. Lower level reads exist, but brains will hurt if we try to cover the dynamics at that level. As such, we need to keep an eye on when the last time we received a packet, and treat that as if we have timed out or not. Requests periodically yeilds back even when no data has been received, in order to allow the caller to wall clock the progress/status and take appropriate action. When we exceed the timeout time value with our wall clock, we will fail the download. Change-Id: I7214fc9dbd903789c9e39ee809f05454aeb5a240
* | Merge "Add a deploy step for writing an image"Zuul2020-06-204-7/+56
|\ \
| * | Add a deploy step for writing an imageDmitry Tantsur2020-06-024-7/+56
| | | | | | | | | | | | | | | | | | | | | The new step just invokes the appropriate method of the standby extension. Change-Id: Ic74f83ab2b7e58f8e4b46e0abfab79e221afeb3e Story: 2006963
* | | Merge "Make get_partition_uuids work with whole disk images"Zuul2020-06-202-52/+90
|\ \ \
| * | | Make get_partition_uuids work with whole disk imagesDmitry Tantsur2020-06-172-52/+90
| | | | | | | | | | | | | | | | | | | | | | | | | | | | We used to popular root UUID inside the message formatting function, move it to actual prepare_image/cache_image calls. Change-Id: Ifb22220dfd49633e8623dd76f7a6a128f5874b78
* | | | Remove .travis.yml (wow, it is ancient)Dmitry Tantsur2020-06-181-19/+0
|/ / / | | | | | | | | | Change-Id: I476a6eb5f64a6306038063cd2f96f96ace5c5d91
* | | Merge "Fix apidoc build"Zuul2020-06-165-5/+20
|\ \ \
| * | | Fix apidoc buildJulia Kreger2020-06-155-5/+20
| | | | | | | | | | | | | | | | Change-Id: Id7c5686cdbdc79812e06eb4a5f87eddc75005cc3
* | | | Merge "Split and move logic for partition tables"Zuul2020-06-114-17/+49
|\ \ \ \
| * | | | Split and move logic for partition tablesRiccardo Pittau2020-05-254-17/+49
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Move and split the logic to create the partition tables when applying raid configuration. Change-Id: Ic76dd2067ace02dd02351caca0c7f9b05571e510
* | | | | Merge "Add ffi development lib to bindep"Zuul2020-06-101-0/+2
|\ \ \ \ \ | |_|/ / / |/| | | |
| * | | | Add ffi development lib to bindepRiccardo Pittau2020-06-051-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The ffi development library is necessary to build ipa. Change-Id: I1c5c5a29e073774e93a6df6d754e1eb97aa9b86b
* | | | | Merge "Document how to output journal to console"Zuul2020-06-091-0/+3
|\ \ \ \ \
| * | | | | Document how to output journal to consoleJay Faulkner2020-06-091-0/+3
| |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Having all logs from the device visible on console may be useful for deployers who do not enable login access to IPA ramdisks as a matter of policy. Change-Id: If9d29dd00a8c35fe679e1f54d1574eed0a79470c
* | | | | Merge "New extension call to return partition UUIDs"Zuul2020-06-092-0/+20
|\ \ \ \ \ | | |_|/ / | |/| | |
| * | | | New extension call to return partition UUIDsDmitry Tantsur2020-06-022-0/+20
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently we parse the success message from the write_image call. This is inconvenient and incompatible with the deploy steps split. Change-Id: I258dc1ff1ad1c9df5cbc26a7825d9e7ef2f3205b Story: #2006963
* | | | Merge "Make the install_bootloader command asynchronous"Zuul2020-06-092-12/+13
|\ \ \ \
| * | | | Make the install_bootloader command asynchronousDmitry Tantsur2020-06-082-12/+13
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | It does not return anything, so it makes no point for it to be synchronous. Ironic always calls it with wait=True, so there is no problem with backward compatibility either. Change-Id: I44fec2e0cb54486328ce71263613d8592e384870
* | | | drop mock from lower-constraintsHervé Beraud2020-06-091-1/+0
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | The mock third party library was needed for mock support in py2 runtimes. Since we now only support py36 and later, we don't need it in lower-constraints. These changes will help us to drop `mock` from openstack/requirements Change-Id: I2901831fad91a35a095936fcc6f84663f123880b
* | | Merge "Convert jobs to dib"Zuul2020-05-292-52/+38
|\ \ \