11278 Commits

Author SHA1 Message Date
Zuul
a7988cb416 Merge "Add iDRAC management via Redfish to idrac HW type" 2021-03-31 17:52:39 +00:00
Zuul
c9f9c2ca9b Merge "Generic way to configure clean step priorites" 2021-03-31 16:30:19 +00:00
DhuldevValekar3
601f6d51f6 Add iDRAC management via Redfish to idrac HW type
This change adds support for managing an iDRAC -- reset, clear job
queue, and reset to known good state -- via the Redfish out-of-band
(OOB) management protocol to the idrac hardware type. This is offered by
new idrac-redfish management hardware interface implementation cleaning
steps: reset_idrac, clear_job_queue, and known_good_state.
known_good_state both resets an iDRAC and clears its job queue.

Story: 2007617
Task: 39628
Depends-On: https://review.opendev.org/c/x/sushy-oem-idrac/+/782254

Change-Id: Iad69c8d7cf3a373f5cfcc619a479a106efa2e4d4
2021-03-31 09:13:59 -04:00
Zuul
ff4c370d4b Merge "Add import, export configuration to idrac-redfish" 2021-03-31 11:53:03 +00:00
Zuul
4e8a3fdc29 Merge "Fix configuration generation for ironic doc pages" 2021-03-31 05:36:31 +00:00
Zuul
c2ac96458a Merge "Always add 'boot_method' vmedia in redfish/ilo vmedia boot" 2021-03-31 05:19:48 +00:00
Jacob Anders
1523ae1ce4 Generic way to configure clean step priorites
This change adds a generic method of configuring clean step
priorities instead of making changes in Ironic code every time a new
clean step is introduced.

Change-Id: I56b9a878724d27af2ac05232a1680017de4d8df5
Story: 1618014
2021-03-31 14:11:49 +10:00
Zuul
34b2183862 Merge "[doc] Warning about out-of-sync ESPs for UEFI software RAID" 2021-03-29 23:38:19 +00:00
Julia Kreger
12d1dd5309 Fix configuration generation for ironic doc pages
Ironic's sample configuration page previously did not render any
of the items in the default section, except for those items added
by other libraries. This was because we were trying to use an iterator
instead of a list.

Using an iterator, in theory should have worked, and did work for
normal invocations, but didn't work when it came to sphinx generated
output.

Instead of trying to use itertools to assemble everything, we just
now instead assemble the list and use a list_opts method like some
of the other more complex groups to add values.

Confirmed in local build output that the sphinx generated output
works as expected now.

Change-Id: I7f1cffb2a91728ab632ab0ccaa6acbb7e86fb533
2021-03-29 15:56:51 -07:00
Julia Kreger
4bd1c40bdc Always add 'boot_method' vmedia in redfish/ilo vmedia boot
The inclusion of a boot_method=vmedia kernel command line
argument is mandatory singnaling so IPA understands it has
been booted via virtual media, and to act accordingly.

Change-Id: I92751a3f4305fe0ded9ff379643b45132fe66157
Story: 2008749
Task: 42181
2021-03-29 10:41:47 -07:00
Zuul
b748ff6529 Merge "Fix webserver_verify_ca config documentation" 2021-03-29 17:25:50 +00:00
Zuul
d80a6b2651 Merge "Fix idrac-wsman BIOS step async error handling" 2021-03-29 17:25:26 +00:00
Aija Jauntēva
457d0cd70b Add import, export configuration to idrac-redfish
Introduces import_configuration, export_configuration
and import_export_configuration steps.

Currently as MVP supports OEM section only.

Story: 2003594
Task: 40622

Depends-On: https://review.opendev.org/#/c/759425/

Change-Id: I10dbc30614d8654dda540ffaa5e61e7a9f03c7b3
2021-03-29 12:33:10 -04:00
Zuul
851aac397e Merge "Allow using per-site network_data schema" 2021-03-29 16:09:49 +00:00
Zuul
065bc617fd Merge "Allow running RAID cleaning steps with in-band cleaning" 2021-03-29 16:09:35 +00:00
Zuul
cd75c7dc70 Merge "Move configuration mold utilities" 2021-03-29 15:44:44 +00:00
Zuul
1caaa0c507 Merge "Validate the kickstart template and file before use" 2021-03-29 15:13:31 +00:00
Aija Jauntēva
d913ef6396 Move configuration mold utilities
Utilities moved to ironic.common.molds.
New config section [molds] created and settings moved there.

Change-Id: I1177f7dd5d5157bb3a5c0bd09acd75c9a394ab47
2021-03-29 07:42:53 -04:00
Zuul
356734aaca Merge "Automaticaly set cipher suite" 2021-03-29 10:51:18 +00:00
Zuul
6fe8e6beb8 Merge "DRAC : idrac-redfish inspect updates pxe port" 2021-03-29 10:07:21 +00:00
Zuul
b64cc44d1b Merge "[doc] Update available software RAID levels." 2021-03-29 09:46:09 +00:00
Zuul
54d74c06e5 Merge "Add configuration mold storage" 2021-03-29 09:45:43 +00:00
Arne Wiebalck
fc457a49d7 [doc] Warning about out-of-sync ESPs for UEFI software RAID
Add a note that the ESPs created by the IPA may get out of sync.

Change-Id: Ie2553eac42ed2e36a9be0b9720a79269a08e3252
2021-03-29 09:45:41 +02:00
Arne Wiebalck
86c34114d8 [doc] Update available software RAID levels.
The initial RAID levels have been extended by levels 5 and 6.
Update the documentation to reflect this.

Change-Id: Ifd7eb9d836b6fbf0a08648654ef2080b9717be83
2021-03-29 09:35:29 +02:00
Zuul
98f662dbf7 Merge "update grub2 file name" 2021-03-29 05:25:25 +00:00
Iury Gregory Melo Ferreira
b029fb3770 Automaticaly set cipher suite
In some cases the operator can't specify `ipmi_cipher_suite`
for each node and the problem with session can still occour:
`Error in open session response message : no matching cipher suite`

This patch adds a new configuration option that will take a list
of possible cipher suite versions that can be used when the error
occurs and the node doesn't have the `ipmi_cipher_suite` set.

Story: 2008739
Task: 42093
Change-Id: I6788585a83268e20ff6447e570995871bc9c25d5
2021-03-29 05:50:25 +02:00
Zuul
71935eaf8c Merge "Enable Reuse of Zuul Job in 3rd Party CI Environment" 2021-03-27 02:14:13 +00:00
Julia Kreger
9da8f418e3 Fix webserver_verify_ca config documentation
When a specific configuration options list is created and delineated
out, it needs to be explicitly added so it gets pulled in, either
through each configuration generator file's list options method, or
in the case of default for the list of lists to iterate through.

It seems websever_verify_ca was missing in the docs, and this
results in it being properly generated.

Change-Id: I84709f5093c4b716b4cb21bd31fa05c65f93d8df
Story: 2008732
Task: 42084
2021-03-26 17:22:29 -07:00
Dmitry Tantsur
24be3c2286 Allow using per-site network_data schema
I have been against it since the beginning of this work, hoping that we
can settle down on one network data format, one is more native for
Ironic because of our relation to OpenStack. This has not happened, with
e.g. CoreOS only using its own formats. So, let it be. Use with caution.

Change-Id: I872d010517cd343fcbcafadb4535f07ca15c2c95
2021-03-26 15:33:14 +01:00
Zuul
3f219703f1 Merge "redfish boot_interfaces, ipmitool -> pxe" 2021-03-26 13:10:42 +00:00
Zuul
328f0ca826 Merge "redfish-virtual-media: allow USB devices instead of floppies" 2021-03-26 13:10:30 +00:00
Aija Jauntēva
15e20fe293 Add configuration mold storage
Support Swift and Web server via HTTP GET and PUT.

Story: 2003594
Task: 40621
Change-Id: I1d253650f6a3b98dbbe4e09c167c35526f5f940c
2021-03-26 05:40:09 -04:00
Pradip Kadam
7d82d7f3dd DRAC : idrac-redfish inspect updates pxe port
Extends generic Redfish OOB inspection to add setting pxe_enabled
on the discovered ports for the idrac hardware type.
It retrieves the list of PXE device MAC addresses using an OEM extension
to the Redfish API if necessary
and updates the pxe_enabled field of Port.

Change-Id: Ife8387a3bdb75717b896cf1067d2490084665e49
Story: 2006819
Task: 37380
Co-Authored-By: Mahendra Kamble <mahendra.kamble358@gmail.com>
Co-Authored-By: Sonali Borkar <sonaliborkar85@gmail.com>
2021-03-26 04:35:45 -04:00
Armstrong Liu
8f474bfe59 update grub2 file name
Some higher versions of grub2 (e.g. 2.05 or 2.06-rc1) use
grub.cfg-01-MAC, while another lower versions of
grub2 (e.g. 2.04) use MAC.conf, so we generate both paths
in order to be compatible with both.

For more information we can see:
https://docs.oracle.com/en/operating-systems/oracle-linux/7/install/ol7-install-prepare.html#ol7-install-pxe-boot-uefi

Change-Id: Icbdd284de38b8e54c52cdbba709bba0e644c35cd
Signed-off-by: Armstrong Liu <vpbvmw651078@gmail.com>
2021-03-26 11:30:58 +08:00
Bernd Mueller
918f3c33c3 redfish boot_interfaces, ipmitool -> pxe
Change-Id: I10fd83b081e56dff686be9698e63585dec8676a8
2021-03-25 16:52:02 +01:00
Zuul
8e34aa53ce Merge "Allow overriding an external URL for virtual media" 2021-03-25 15:30:19 +00:00
Dmitry Tantsur
1abff50dbb redfish-virtual-media: allow USB devices instead of floppies
Support for floppy disks is increasingly harder to find, let us support
USB devices as an alternative.

Change-Id: Ib02b716cbcf1f7b4ed8e47cf3fcf40872f1dc9a1
2021-03-25 15:49:45 +01:00
Zuul
4028b5907b Merge "Remove extra/vif_port_id" 2021-03-25 14:22:32 +00:00
Zuul
ea6dff7d31 Merge "Add anaconda support in the pxe boot driver" 2021-03-25 08:36:59 +00:00
Zuul
cde40054ce Merge "Follow up of Use OOB inspection to fetch MACs for IB inspection" 2021-03-25 03:46:41 +00:00
Dmitry Tantsur
133dac255f Allow overriding an external URL for virtual media
Virtual media deployments can be conducted outside of the provisioning
network as long as the node gets an IP address somehow and can reach
ironic and its HTTP server. This changes adds new configuration that
allows to use public IP addresses for virtual media while keeping PXE
boots working and constrained to the provisioning network.

Change-Id: I8b859b2812160ff3911eb7d648eab835ef61d934
Story: #2008566
Task: #41706
2021-03-24 16:53:56 +00:00
Aija Jauntēva
83ce7c4264 Fix idrac-wsman BIOS step async error handling
Instead of using process_event('fail') use error_handlers,
otherwise in case of failure node gets stuck and fails
because of timeout, instead of failing earlier due to
step failure.

And improve coverage to test this error handling
and also happy paths.

Story: 2008307
Task: 41197
Change-Id: I1e957c2b526abc37920212b6431b11eedc9f89be
2021-03-24 07:59:07 -04:00
Zuul
2e68c318b3 Merge "Support pre-built deploy/rescue ISO in Redfish" 2021-03-24 10:51:14 +00:00
Jacob Anders
f96ce69818 Follow up of Use OOB inspection to fetch MACs for IB inspection
This is a follow up to commit 05df3d7aa4aa7a1fd25a2f2d55726197e1b5f9df
addressing issues with excessive logging and adding a missing unit test.

Change-Id: I827fa5dd813acbf1d478c64508f10c42d1460b4a
2021-03-24 20:15:31 +10:00
Zuul
aab113ac8a Merge "Update idrac-redfish RAID release note" 2021-03-24 08:57:27 +00:00
Arun S A G
9d3de26fb1 Validate the kickstart template and file before use
The kickstart template is supplied by the user and it needs
to be validated to make sure it includes all the expected
variables and nothing else.

We validate the template by rendering it using expected
variables. If any of the expected variables are not present
in the template or unexpected variables are defined in the
template we raise InvalidKickstartTemplate exception

Once we render the template into kickstart file we
pass the file to 'ksvalidator' tool if it is present
on the system to validate the rendered kickstart file
for correctness.

'ksvalidator' tool comes from pykickstart libarary and
it is GPLv2 licensed. GPLv2 license is incompatible with
Openstack. So we do not explicitly include the library in
requirements.txt instead rely on it being pre-existing on
the conductor. If the 'ksvalidator' binary is not present
on the system, kickstart validation will be skipped

Change-Id: I3e040bbdbcefb8764c93355d0ba7179e2110b9c6
2021-03-23 21:53:35 -07:00
Arun S A G
880bd639f3 Add anaconda support in the pxe boot driver
To prepare for booting anaconda we need to generate a kickstart file
from the kickstart template and pass it to the installer as a kernel
command line argument (inst.ks). Similarly the second stage of the
installer (stage2) needs to fetched and it's location needs to be
passed as a kernel command line argument (inst.stage2)

This change also adds 'boot_anaconda' target to pxe_config.template
and ipxe_config.template and renders that target correctly. The pxe
configuration will automatically switch to boot_anaconda target when
the boot_option is 'kickstart'.

Change-Id: I3ffe5a60684cdefe51c7a0a47acc1acedbb49145
2021-03-23 21:53:34 -07:00
Zuul
709562731c Merge "Version 17.0 mapping/doc updates" 2021-03-23 23:35:55 +00:00
Mohammed Naser
8cfde74470 Allow running RAID cleaning steps with in-band cleaning
In I3b647e39982c0a98abac7b0a7c1c60215d6db4f2, the change
allowed users to set priorities for create and delete config
however it was not set in the right place because the steps live
in the `raid` interface.

This patch introduces a get_clean_steps for the RAID interface
which gets all the steps and the correct overrides.  This has been
tested to work in a local environment.

Change-Id: I5138ec9daf27affc28647dd83c79a867c9be6f3d
2021-03-23 16:34:41 -04:00
Zuul
f5dc3a0698 Merge "Add prelude for Ironic 17.0." 2021-03-23 15:36:53 +00:00