Commit Graph

175 Commits

Author SHA1 Message Date
Riccardo Pittau 8de6e03539 Update ironic-lib min required version
The addition of the qemu-img module  that is used in ipa was
introduced in ironic-lib 6.0.0

Change-Id: I65b283d9abcfe2aa961baf9f686391c8dcc71d6b
2024-03-19 14:39:06 +01:00
Zuul 7d15efd7a6 Merge "Remove oslo.serialization dependency" 2022-07-02 02:56:44 +00:00
Riccardo Pittau 1356157ec8 Remove importlib-metadata from requirements
We don't need it anymore as we don't support python < 3.8
Also it was removed from global requirements so it breaks the
requirements check.

Change-Id: Ia12cbef3515f823fdd627a36020cf7801bf6d734
2022-06-21 17:54:39 +02:00
Riccardo Pittau 64ffd2ee80 Remove oslo.serialization dependency
Use pure json instead of jsonutils.

Borrow encode function from oslo.serialization to be used in the
utils module.

Change-Id: Ied9a2259a4329a86b4f0853bd1fb187563c0a036
2022-06-17 09:37:35 +02:00
Julia Kreger 16a38600a8 Update oslo.log requirement to 4.6.1
Previously IPA was set to enforce a minimum version of 3.36.0 which
was a Python2 version build which does did not support more recent
versions of python. Given that relationship is realistically impossible
moving the minimum to something released a bit more recently, in this
case 4.6.1.

Change-Id: Ibfbcc1196eb9f583ba9d79bae7988d64de514f6d
2022-05-24 08:17:02 -07:00
Riccardo Pittau 8111475eb0 Use Werkzeug modern version
Request class from Werkzeug now includes json capability by default.
See [1] and [2] for more info.

[1] 2cd4fa9484
[2] 7b52ecd8f3

Change-Id: I3c74b26ef4aff07c371364203a5b39c658b552a7
2022-04-14 10:47:06 +00:00
Arne Wiebalck 7f15455d8d Burn-in: Dynamic network pairing
Pair nodes dynamically via a distributed coordination backend for
network burn-in. The algorithm uses a group to pair nodes: after
acquiring a lock, a first node joins the group, releases the lock,
waits for a second node, then they both leave, and release the lock
for the next pair.

Story: #2007523
Task: #42796

Change-Id: I572093b144bc90a49cd76929c7e8685ed45d9f6e
2022-01-10 11:31:33 +01:00
Derek Higgins 12f5f30e63 Instruct qemu-img to write image zeros to disk.
Doing this will cause it not to zero out the entire
block device which can be very costly on a slow HDD.

Story: 2009227
Task: 43315

Change-Id: I62ba2afc037d9844387e6b0984fe5008779d95d2
2021-12-08 15:56:05 +00:00
Dmitry Tantsur 33d889c3c4 Refactor: use convert_image from ironic_lib
Change-Id: If890baf3545cff6cef7c645c42e7f9d9038c9aa7
2021-06-01 14:07:34 +02:00
Dmitry Tantsur be3882162e Remove the iscsi extension
Change-Id: I2f0e581575112d6c7ba0d211661cab3e0b6caca6
2021-05-10 12:43:44 +02:00
Dmitry Tantsur 3251d7b641 Remove runtime dependency on pbr
Pbr is a very heavy package to depend on. It requires git-core, which is
16 MiB on my Fedora. We only use it to detect the version, which can be
done without pbr using a much lighter importlib_metadata.

Copied from https://review.opendev.org/c/openstack/osprofiler/+/739379

Change-Id: I5f434e6bfde6f645804941f3a36d5458a28270e7
2021-04-26 09:16:34 +02:00
Dmitry Tantsur 59cb08fd28 New deploy step for injecting arbitrary files
This change adds a deploy step inject_files that adds a flexible
way to inject files into the instance.

Change-Id: I0e70a2cbc13744195c9493a48662e465ec010dbe
Story: #2008611
Task: #41794
2021-02-16 16:56:52 +01:00
Zuul 11a87365fb Merge "Generate a TLS certificate and send it to ironic" 2020-09-23 12:14:38 +00:00
Zuul a3b10db95a Merge "Replace oslo's loopingcall with tenacity" 2020-09-12 15:24:41 +00:00
Dmitry Tantsur 021e0a6a46 Generate a TLS certificate and send it to ironic
Adds a new flag (on by default) that enables generating a TLS
certificate and sending it to ironic via heartbeat. Whether
ironic supports auto-generated certificates is determined by
checking its API version.

Change-Id: I01f83dd04cfec2adc9e2a6b9c531391773ed36e5
Depends-On: https://review.opendev.org/747136
Depends-On: https://review.opendev.org/749975
Story: #2007214
Task: #40604
2020-09-11 17:46:52 +02:00
Iury Gregory Melo Ferreira 08fdae9081 Fix l-c
Change-Id: I98e087f85e166da02890828054ed46ec9177eeb5
2020-09-10 15:26:16 +02:00
Dmitry Tantsur 471666905c Replace oslo's loopingcall with tenacity
The latter has a more natural API and does not have a hard requirement
of eventlet. It is already a dependency of ironic-lib.

Change-Id: I68de9e989af137b34c19bbaf9b7c0a5ba6e1d4e3
2020-09-01 11:53:25 +02:00
Dmitry Tantsur ddbba07021 Allow specifying target devices for software RAID
This change adds support for the physical_disks RAID parameter in
a form of device hints (same as for root device selection).

Change-Id: I9751ab0f86ada41e3b668670dc112d58093b8099
Story: #2006369
Task: #39080
2020-03-17 13:03:24 +01:00
Dmitry Tantsur f1b2df908a Replace WSME and Pecan with Werkzeug
WSME is no longer maintained and Pecan is an overkill for our (purely
internal) API. This change rewrites the API in Werkzeug (the library
underneath Flask). I don't use Flask here since it's also an overkill
for API with 4 meaningful endpoints.

Change-Id: Ifed45f70869adf00e795202a53a2a53c9c57ef30
2019-12-04 16:50:47 +01:00
Zuul 6032643a04 Merge "Stop using six library" 2019-12-03 13:09:30 +00:00
Dmitry Tantsur 4354bc04f9 Replace netaddr dependency with stdlib ipaddress
netaddr is quite a big library, and all we need is covered by
the built-in ipaddress module (available in python 3).

Also add a safeguard for invalid 'ip route' output.

Change-Id: I9d76a8d1c1b6b1585e301a9c63b37fab3b98746f
2019-12-02 12:13:04 +01:00
Dmitry Tantsur 9f6c2aa05b Remove the unused dependency on iso8601
Change-Id: If6cabb58ee861d10657c6563fe3118709e621545
2019-12-02 12:12:27 +01:00
Riccardo Pittau ca7a46b113 Stop using six library
Since we've dropped support for Python 2.7, it's time to look at
the bright future that Python 3.x will bring and stop forcing
compatibility with older versions.
This patch removes the six library from requirements, not
looking back.

Change-Id: I4795417aa649be75ba7162a8cf30eacbb88c7b5e
2019-11-29 10:18:14 +01:00
Riccardo Pittau 8c9fd6dffc Using from_device_file from Devices
The from_device_file method in pyudev.Device is deprecated since
version 0.18
Using the same method from pyudev.Devices is now recommended.

Increasing minimum version of pyudev to 0.18 and correctly handling
exception raised by from_device_file.

Change-Id: I0637585241c81a36f69aef8017f1134f5c526eb1
2019-07-09 13:59:32 +02:00
Dmitry Tantsur 5c5328ccaa Supports fetching API endpoints from mDNS
This change enables IPA to receive API endpoints and configuration
via multicast DNS.

Story: #2005393
Task: #30382
Change-Id: Ibbf07052bea8f5c0305dda098b2879bcbc2fece5
2019-05-29 16:58:24 +02:00
Dmitry Tantsur 29136bf68d Allow streaming raw partition images
Currently we support streaming raw whole disk images, but not
partition ones. This change enables it.

Change-Id: Ie95102aa3f2054a6b429f3d3e0926e90923c5faf
Story: #2003809
Task: #26558
2018-10-17 11:16:04 +02:00
Michael Turek b32750f5c4 Install grub to PReP partition when prep_boot_part_uuid is provided
Installs the grub bootloader to the PreP Boot partition when the
prep_boot_partition_uuid is provided. This is required when
booting a partition image locally on ppc64* systems.

This change also passes the cpu_arch along to work_on_disk so
that the PReP partition is created when partitioning disks for
local boot on ppc64* systems,

Change-Id: I70667d43af962b357e6eeccba258f4fa5a91a09e
Depends-On: I2bc9f13ec605de7b7b96d96a1a4edebee0af76dc
Story: #1749057
Task: #22999
2018-07-20 16:07:16 +00:00
Chuck Short 1036384f74 Switch to using stestr
According to Openstack summit session [1] stestr is maintained project
to which all Openstack projects should migrate.
Let's switch it then.

[1] https://etherpad.openstack.org/p/YVR-python-pti

Also adjust requiremenst to past the gate checks.

Change-Id: If7a0ebd9cca26cb67eb2ec9036d0aa2693fdffbf
Signed-off-by: Chuck Short <chucks@redhat.com>
2018-06-29 09:38:30 -04:00
Doug Hellmann 8748293674 fix lower constraints and uncap eventlet
Fix the lower constraints settings to match the expected values.

We will manage the eventlet version using constraints now. See the
thread starting at
http://lists.openstack.org/pipermail/openstack-dev/2018-April/129096.html
for more details.

Change-Id: I66b4e20bb565ac7fa9ca5cf48410f29161ef7b3a
Signed-off-by: Doug Hellmann <doug@doughellmann.com>
2018-04-19 20:19:42 +09:00
OpenStack Proposal Bot d90a53515f Updated from global requirements
Change-Id: Ia3aa6302d24606c4b13fcd91604869ac00acecd0
2018-03-26 08:04:56 +00:00
OpenStack Proposal Bot c0790bb105 Updated from global requirements
Change-Id: Ief83d9d150c7aad73c04d40579f003ff150cff7c
2018-03-14 05:31:23 +00:00
OpenStack Proposal Bot 714203115a Updated from global requirements
Change-Id: I562b667455268e491bc95b3c0c37115e4139c7c4
2018-01-16 12:30:01 +00:00
OpenStack Proposal Bot b781cbc13e Updated from global requirements
Change-Id: I810a82fd77951ce121349139c89a812fd856bfba
2017-12-24 00:59:36 +00:00
OpenStack Proposal Bot bd71c299c8 Updated from global requirements
Change-Id: Ic9d1e6b96ec1b62aef964f0e1d62d630edd37148
2017-12-19 01:18:53 +00:00
OpenStack Proposal Bot 82aa57e1e8 Updated from global requirements
Change-Id: I02feb227a2df53e68498b020eba48418865bb12c
2017-11-29 08:57:37 +00:00
OpenStack Proposal Bot fdd799db80 Updated from global requirements
Change-Id: I9d59a5196b57fbc8af1efff3a6841410966ad260
2017-11-16 11:06:04 +00:00
OpenStack Proposal Bot bf3580e937 Updated from global requirements
Change-Id: I6552d47dfeefc8756ddcb214c6ad7595549ab8f7
2017-11-15 18:10:19 +00:00
OpenStack Proposal Bot 69f985d334 Updated from global requirements
Change-Id: I42c1a4d34194a3d3ae7d330ad4959155ec41d192
2017-09-16 23:13:09 +00:00
OpenStack Proposal Bot c90b150043 Updated from global requirements
Change-Id: I4e0e586f9e37548c27bb0f8475999ea2567f0737
2017-08-24 05:50:24 +00:00
OpenStack Proposal Bot 8110243388 Updated from global requirements
Change-Id: Ifc6e645014f1ddba696a6e21fe8349d2f7b30103
2017-07-18 01:47:05 +00:00
OpenStack Proposal Bot 5e02d31c74 Updated from global requirements
Change-Id: I58e3ad5330714ea2348e8043ea77063a7c965bc8
2017-06-15 16:24:20 +00:00
OpenStack Proposal Bot cf60715870 Updated from global requirements
Change-Id: I2a3c3c5c94f7b0ed593de252b79be461ffcc5ccf
2017-06-10 21:38:12 +00:00
OpenStack Proposal Bot 9028742ebc Updated from global requirements
Change-Id: I8f3c7abb313a18ec8f41aefc6001392818a9ccf5
2017-06-05 17:21:17 +00:00
OpenStack Proposal Bot 116ddde00d Updated from global requirements
Change-Id: Ibb2590c8f12c509a9cb2fe3abde77f22fa7c1b52
2017-05-17 13:40:18 +00:00
OpenStack Proposal Bot 92c33a0f47 Updated from global requirements
Change-Id: Ic29c84030819bf98b9680b51edb5b8840479706c
2017-04-12 04:12:39 +00:00
OpenStack Proposal Bot 819eaf86a1 Updated from global requirements
Change-Id: Ic89074e92befcef8d920d4087be8c1a81b27b4e2
2017-03-28 21:29:15 +00:00
OpenStack Proposal Bot b9afdba017 Updated from global requirements
Change-Id: I04d0462d7e6dc6158c22dc3aa0f68461785f5e7f
2017-03-13 19:32:22 +00:00
OpenStack Proposal Bot 8e1226e732 Updated from global requirements
Change-Id: Ide1164498fc53c5a28bb1ada7e9f18483204ba1e
2017-03-02 11:45:38 +00:00
OpenStack Proposal Bot ec7990b6a2 Updated from global requirements
Change-Id: I1cc5dd5b901c89f95665d523f0139f71e2551bec
2017-03-01 04:07:45 +00:00
OpenStack Proposal Bot 43b23ac9b5 Updated from global requirements
Change-Id: I216c039b838f0ccfb2a68ca37220d28c09e39074
2017-02-14 05:51:58 +00:00