11258 Commits

Author SHA1 Message Date
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
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
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
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
Zuul
f5dc3a0698 Merge "Add prelude for Ironic 17.0." 2021-03-23 15:36:53 +00:00
Dmitry Tantsur
d55929fc7d Support pre-built deploy/rescue ISO in Redfish
This change adds support to pre-built ISO images via the new driver_info
parameters redfish_deploy_iso and redfish_rescue_iso, similarly to the
iLO hardware type.

Also removes overly eager mocking in image unit tests.

Change-Id: I1366791a6c6eb34f3a43337c4199592783765912
2021-03-23 16:14:38 +01:00
Zuul
8762fb1eb3 Merge "Add known iDRAC virtual media boot issue" 2021-03-23 14:22:33 +00:00
Julia Kreger
80d4a0c515 Version 17.0 mapping/doc updates
Change-Id: I3a144aaaca60ce195ba22fa5af2d9c1e7b4d4bf4
2021-03-23 14:16:02 +00:00
Julia Kreger
8e79fafc87 Add prelude for Ironic 17.0.
Change-Id: I4d309f98e7ca5b8b581ef8893315db7f86e4c498
2021-03-23 14:14:58 +00:00
Zuul
8c80765fba Merge "Revise release notes for 17.0 release" 2021-03-23 11:36:19 +00:00
Aija Jauntēva
752568eece Add known iDRAC virtual media boot issue
Change-Id: I81ce6d2583e8a9d4031566888d0adffa6d0a965e
2021-03-23 07:34:56 -04:00
Aija Jauntēva
25efd0c8df Update idrac-redfish RAID release note
Followup Iefb7f882c97e33a176962e4e907163d9e4809445

Change-Id: I12be4e53a5b4c2fde5184dabecfff6561772c4ed
2021-03-23 06:03:10 -04:00
Zuul
961a85ada7 Merge "Add Redfish RAID interface to idrac HW type" 2021-03-23 01:47:56 +00:00
Julia Kreger
f4ff15938c Remove extra/vif_port_id
Removes API translation layer into port/portgroup internal_info
Removes internal logic to support use of VIFs stored in the extra
field, which effectively means all vif binding must now utilize
vif attachment and detachment.

This is a change that we likely should have pushed forward a couple
years back, but I didn't want to break compatability with very old
of ironic or standalone users which were deploying instances using
very old instructions. That being said, it is necessary to remove
the legacy vif support so new access controls can properly wrap
vif API endpoints.

Depends-On: https://review.opendev.org/c/openstack/ironic-tempest-plugin/+/769204
Change-Id: I588b3a64475656542389ff83786189e2dc16d35c
2021-03-22 12:04:18 -07:00
Julia Kreger
67394c3cd4 Revise release notes for 17.0 release
Change-Id: I2799fb1634747cde451a787c567711dcdad2d688
2021-03-22 10:24:52 -07:00
Zuul
acd4b451dc Merge "Use OOB inspection to fetch MACs for IB inspection" 2021-03-22 13:16:06 +00:00
Zuul
8251885db5 Merge "Add anaconda configuration and template" 2021-03-22 11:05:07 +00:00
Zuul
52bcb3e328 Merge "Follow-up to RBAC allocation changes" 2021-03-21 10:20:03 +00:00
Zuul
5c348396ac Merge "Allow unsupported redfish set_boot_mode" 2021-03-20 01:26:56 +00:00
Steve Baker
9f221a7d42 Allow unsupported redfish set_boot_mode
Currently if the baremetal boot mode is unknown and the driver doesn't
support setting the boot mode then the error is logged and deployment
continues.

However if the BMC doesn't support getting or setting the boot mode
then setting the boot mode raises an error which results in the deploy
failing. This is the case for HPE Gen9 baremetal, which doesn't have a
'BootSourceOverrideMode' attribute in its system Boot field, and
raises a 400 iLO.2.14.UnsupportedOperation in response to setting the
boot mode.

This is raised from set_boot_mode as a RedfishError. This change
raises UnsupportedDriverExtension exception when the 'mode' attribute
is missing from the 'boot' field, allowing the deployment to continue.

Change-Id: I360ff8180be252de21f5fcd2208947087e332a39
2021-03-19 12:54:06 -07:00
Arun S A G
26040d4563 Add anaconda configuration and template
This change adds 'anaconda' group and 'default_ks_template'
configuration option under that group to ironic configuration file.
Along with this change a new boot_option named 'kickstart' is added
to identify anaconda kickstart deploy in the boot interface.

deploy_utils.get_boot_option method is modified to check if
node.deploy_interface is set to 'anaconda' and return boot_option
'kickstart'.

This change also validates whether required parameters are set when
the boot_option on the node is set to 'kickstart'.

When boot_option is 'kickstart' we also validate if the glance image
source has 'squashfs_id' property associated with it.

Change-Id: I2ef7c33e2e63e6d08c084b4c5dbd77a44ddd2d14
Story: 2007839
Task: 41675
2021-03-19 09:39:50 -07:00
Aija Jauntēva
952695be33 Add Redfish RAID interface to idrac HW type
Adds MVP support for idrac-redfish to RAID interface. Based on
generic redfish implementation, but requires OEM extension
to check when `Immediate` time becomes available shortly
after IPA starts executing steps.

Does not support foreign disks, convert from non-RAID mode.

Story: 2008602
Task: 41778
Depends-On: https://review.opendev.org/c/x/sushy-oem-idrac/+/776224
Change-Id: Iefb7f882c97e33a176962e4e907163d9e4809445
2021-03-19 12:11:50 -04:00
Zuul
121bc5a4c2 Merge "Switch to JSON RPC from ironic-lib" 2021-03-19 14:03:22 +00:00
Zuul
a06e403b11 Merge "Add runtime gpu capabilities to ilo inspection" 2021-03-19 08:32:15 +00:00
Julia Kreger
e6863c6b71 Follow-up to RBAC allocation changes
Change-Id: I4f703258be47cf0de0a31f7e706a1aba1ea302f0
2021-03-18 12:55:29 -07:00