11543 Commits

Author SHA1 Message Date
Dmitry Tantsur
171474d69a Fix regression in ramdisk deploy kernel parameters
After commit d7a5b3469cfb5c16e122451e9cd8594d7a7671a1 the custom kernel
parameters are not used in cleaning/inspection. This patch fixes it.

Change-Id: Ic017cc0f3aebd4858a1a6e3326e5cf0fc0888d24
2021-07-27 10:43:41 +02:00
Zuul
8d9bf692ec Merge "Document making bugfix releases and branches" 2021-07-26 01:44:27 +00:00
Dmitry Tantsur
59b4fb8dc1 Expand the IPMI documentation
Explaing which cipher suites must be used and how to pre-configure the
BMC. Also explain the privilege levels.

Change-Id: I93845ac9dd068b0ddb52693afe4993804857e5ea
2021-07-23 14:31:12 +02:00
Dmitry Tantsur
1e041bea3b Document making bugfix releases and branches
Change-Id: Id87da43caa33ee5f5e547497599b1f358a22b4ae
2021-07-22 18:16:35 +02:00
Zuul
f27ea44afc Merge "Update vendor_passthru subscriptions releasenote" 18.1.0 2021-07-22 08:14:50 +00:00
Zuul
51913a230c Merge "Add vendor_passthru method for subscriptions" 2021-07-22 07:46:22 +00:00
Iury Gregory Melo Ferreira
a2417571be Update vendor_passthru subscriptions releasenote
This is a follow-up to I5b7fa99b0ee64ccdc0f62d9686df655082db3665

Change-Id: Ib1145f9d34ad53966c2f4b24981316d4a8763340
2021-07-22 08:17:50 +02:00
Riccardo Pittau
f095a94787 Prepare 18.1 and clean up release notes
Change-Id: I8f33eefdce7a60fa8e48225ec20a801b3d1222f0
2021-07-21 19:19:43 +02:00
Zuul
c71583fc8a Merge "Scoped RBAC Devstack Plugin support" 2021-07-21 11:27:17 +00:00
Iury Gregory Melo Ferreira
4bc5142df2 Add vendor_passthru method for subscriptions
This patch adds two new vendor_passthru methods for Redfish:
- create_subscription (create a sbuscription)
- delete_subscription (delete a subscription)
- get_all_subscriptions (get all subscriptions on the node)
- get_subscription (get a single subscription)

Unit Tests in test_utils split into multiple classes to avoid random
failures due to cache.

Tested in bifrost env using two different HW:
- HPE EL8000 e910
- Dell R640

Story: #2009061
Task: #42854
Change-Id: I5b7fa99b0ee64ccdc0f62d9686df655082db3665
2021-07-21 10:27:32 +02:00
Zuul
103e34f5a8 Merge "Set glance limit for baremetal friendly images" 2021-07-20 13:48:03 +00:00
Zuul
59563e9581 Merge "Fix handling driver_info[agent_verify_ca] == False" 2021-07-20 08:25:42 +00:00
Julia Kreger
b5872c9032 Set glance limit for baremetal friendly images
The devstack default limit enforcement for glance defaults
to 1GB, and unfortunately this is too small for many to use
larger images such as centos which includes hardware firmware
images for execution on baremetal where drivers need the vendor
blobs in order to load/run.

Sets ironic-base to 5GB, and updates examples accordingly.

Depends-On: https://review.opendev.org/c/openstack/devstack/+/801309
Change-Id: I41294eb571d07a270a69e5b816cdbad530749a94
2021-07-19 10:32:43 -07:00
Zuul
41a10cffce Merge "Burn-in: Add documentation" 2021-07-19 15:04:01 +00:00
Zuul
33842cda0d Merge "Add a section to redfish doc for BIOS registry fields" 2021-07-19 10:17:54 +00:00
Julia Kreger
2cd6468346 Scoped RBAC Devstack Plugin support
Adds support to the ironic devstack plugin to configure
ironic to be used in a scope-enforcing mode in line with
the Secure RBAC effort. This change also defines two new
integration jobs *and* changes one of the existing
integration.

In these cases, we're testing functional crub interactions,
integration with nova, and integration with ironic-inspector.

As other services come online with their plugins and
devstack code being able to set the appropriate scope
enforcement configuration, we will be able to change the
overall operating default for all of ironic's jobs and
exclude the differences.

This effort identified issues in ironic-tempest-plugin,
tempest, devstack, and required plugin support in
ironic-inspector as well, and is ultimately required
to ensure we do not break the Secure RBAC.

Luckilly, it all works.

Change-Id: Ic40e47cb11a6b6e9915efcb12e7912861f25cae7
2021-07-15 21:58:31 +00:00
Arne Wiebalck
e488792ccc Burn-in: Add documentation
Add documentation for the CPU, memory, disk, and network burn-in
cleaning steps to the admin guide.

Change-Id: Ide8061f96eeb303490f06ebf31d2f2e6be93d0d1
2021-07-14 17:51:11 +02:00
Zuul
7b42258ab9 Merge "Fix Redfish RAID interface_type physical disk hint" 2021-07-14 15:31:11 +00:00
Bob Fournier
58ca01c22a Add a section to redfish doc for BIOS registry fields
Move the descriptions of the BIOS registry fields in the API to
a new section in the Redfish documentation.

Change-Id: Ifedb4526113bb84ccc598e13f5767b71a60f5532
2021-07-13 21:56:57 -04:00
Zuul
cf14413bf7 Merge "Sanity check object version changes" 2021-07-13 22:46:16 +00:00
Zuul
420940127d Merge "Fix iPXE docs: snponly is not always available" 2021-07-13 21:52:32 +00:00
Dmitry Tantsur
3199d289bd Fix iPXE docs: snponly is not always available
Actually, it's only available on RHEL/CentOS 8, but I hope the other
distributions will catch up.

Change-Id: I53314b8f16fd7b965c58370e33ab83501e7cb067
2021-07-13 14:43:07 +02:00
Riccardo Pittau
06124bae73 Update requirements
Update minimum required versions of python packages.
The updates is based on crosscheck requirements from required
packages:
oslo-log 4.3.0 depends on oslo.context>=2.20.0
oslo-config 6.8.0 depends on rfc3986>=1.2.0
oslo-config 6.8.0 depends on requests>=2.18.0
oslo-log 4.3.0 depends on pbr>=3.1.1
oslo-log 4.3.0 depends on oslo.serialization>=2.25.0
oslo-policy 3.7.0 depends on oslo.context>=2.22.0

Also update minimum versions of ddt and stestr to avoid compatibility
issues with recent Python versions (3.8 and higher).

Change-Id: I34b558f4e7b93618130af1ba2250f6ab8575d4d6
2021-07-13 14:37:28 +02:00
Dmitry Tantsur
e503048f09 Sanity check object version changes
Make sure there are no gaps in release and object versions.

Change-Id: Ib177a10ee5cc208494a331b0d080ad40c4a09aae
2021-07-13 14:05:56 +02:00
Zuul
b588e5d846 Merge "Bring boot_iso/deploy_iso handling in iLO closer to Redfish" 2021-07-13 10:33:32 +00:00
Zuul
89e978d828 Merge "Clean up images when ejecting an ISO with Redfish" 2021-07-13 10:20:20 +00:00
Zuul
8e671f8052 Merge "Add ipxe ramdisk kernel append param test" 2021-07-12 12:58:36 +00:00
Zuul
9c926e6801 Merge "Update iDRAC virtual media boot known issue" 2021-07-12 12:58:28 +00:00
Zuul
6013211057 Merge "Allow reboot to hard disk following iso ramdisk deploy." 2021-07-12 09:11:14 +00:00
Zuul
5be9edecd3 Merge "Add missing BIOSSettings version mapping for older releases" 2021-07-11 14:14:33 +00:00
Derek Higgins
3bad548ce3 Allow reboot to hard disk following iso ramdisk deploy.
Re-uses the force_persistent_boot_device driver_info option
which can be set to ``Never`` in order to set the virtual
media to one time boot.

Story: 2009042
Task: 42805

Change-Id: Ida7adb3c02db6279ef934797614eaa7be1f35daa
2021-07-10 09:55:11 +01:00
Julia Kreger
ae535bac25 Add ipxe ramdisk kernel append param test
While investigating a bug report, I noticed we didn't explicitly
test passing arguments in with the ipxe interface and a ramdisk,
and given the issue reported was precisely that, I wrote a test.

Change-Id: I801b71d381a69e7b8678b9e60ff36dda0ae3f7fb
2021-07-09 11:55:35 -07:00
Aija Jauntēva
fdef42fee3 Update iDRAC virtual media boot known issue
Change-Id: Ia34fce52f2b717428c7502ed7cb0ed1a7df66bc6
2021-07-08 12:00:50 -04:00
Cenne
46ff51487a Add boot_mode and secure_boot to node object and expose in api
* add fields to Node object
  * expose them at endpoint `/v1/nodes/{node_ident}/states`
  * update states on powersync / entering managed state.
  * tests
  * update api endpoint info in api-ref

Story: 2008567
Task: 41709

Change-Id: Iddd1421a6fa37d69da56658a2fefa5bc8cfd15e4
2021-07-08 15:04:15 +02:00
Zuul
415464db4a Merge "Fix typos in API sanitization change notes" 2021-07-07 20:30:42 +00:00
Zuul
a14d3adae0 Merge "Use selectinload for all list queries" 2021-07-07 19:13:10 +00:00
Zuul
bbf2abf5ca Merge "Allow node_sanitize function to be provided overrides" 2021-07-07 18:24:45 +00:00
Dmitry Tantsur
7e5e65550d Add missing BIOSSettings version mapping for older releases
Otherwise the upgrade fails because of old versions.

Change-Id: Ibd591ab6e17e26db0b2b4dde103fe3458e1536f5
2021-07-07 19:37:15 +02:00
Julia Kreger
9e477d1787 Fix typos in API sanitization change notes
Change https://review.opendev.org/c/openstack/ironic/+/794880
included a few minor typos and required a clarification of a point
which.

This change just makes those minor text changes.

Change-Id: I883d4ca89ba984c29b53b531af98f2f0be39edbf
2021-07-07 10:08:51 -07:00
Dmitry Tantsur
d3737b23bd Bring boot_iso/deploy_iso handling in iLO closer to Redfish
The iLO version is, as far as I remember, the oldest implementation of
virtual media in Ironic. Since then a few cool feature have been
developed in this area, but they are limited to the code using
image_utils (e.g. Redfish). The iLO boot interface only uses image_utils
when an ISO needs to be built, but not when one is provided. This patch
changes that.

There are a few visible side-effects to that:
1) file:/// images are now supported
2) ramdisk_image_download_source is now supported
3) the default caching behavior changes to caching http:// links
   (previously they were passed to the BMC directly).
4) glance images are supported with backends other than swift

Story: #2008987
Task: #42638
Change-Id: I23c21188776c511eddcdaf66a222ce64876678e2
2021-07-07 18:51:13 +02:00
Zuul
e2b156ec8b Merge "Add note regarding configuration drives to tuning docs" 2021-07-07 16:28:55 +00:00
Zuul
6be6c5e416 Merge "Avoid double file removal in create_boot_iso" 2021-07-07 16:28:45 +00:00
Zuul
7eccdc1376 Merge "Support "swift" for ramdisk_image_download_source" 2021-07-07 16:13:53 +00:00
Julia Kreger
6bbd03b17c Use selectinload for all list queries
Since node objects *can* be large, and due to the nature of joined
record dedeuplication, we should avoid them for list operations to
speed the operation to completion by *instead* allowing the client
to execute three queries and reconcile versus dedeuplicate the
single node.

This *should* result in generally faster list interaction, and
preserves the behavior for nodes at this time in order to
minimize a drastic increase of SQL queries for individual nodes.

Change-Id: Iac457e483068f613ded2aeff60cf6d9fc64a7dac
2021-07-07 08:43:54 -07:00
Dmitry Tantsur
da27e370b6 Clean up images when ejecting an ISO with Redfish
There is no point in keeping the disconnected ISO files around.

Change-Id: I371b0f6ab74de7aa26ecc4a65e825303e3d94085
2021-07-07 16:34:46 +02:00
Julia Kreger
9851b68ee9 Allow node_sanitize function to be provided overrides
The biggest amount of API overhead is the node sanitization
process, at least at this point in time.

We have streamlined the database interaction to ensure specific
field selection lists are as orderly as possible, but the
node sanitization code re-executes some methods over and over
which do not require variable data from the underlying node.

These are blanket settings "is the user allowed to see x, or y".

Which means we can call node_sanitize pre-seeding these
arguments and execute the calls once, instead of a thousand times
to have the same exact result.

Story: 2008885
Task: 42433

Change-Id: I342e7900cac388cb4749480684418a5a15ac60eb
2021-07-06 11:07:34 -07:00
Zuul
7d6e936cfe Merge "Add support for configdrive in anaconda interface" 2021-07-06 17:21:06 +00:00
Dmitry Tantsur
c830861ee8 Avoid double file removal in create_boot_iso
The images.fetch call removes the provided destination file on error.
The create_boot_iso function calls it with a temporary file, which
results in another attempt to remove it. This attempt fails and masks
the actual exception (e.g. validation failure).

I doubt this problem is exposed to end users, but fixing it anyway.

Change-Id: I77ef1cabbcea9808771613fa37b27978fd0ce770
2021-07-06 19:08:38 +02:00
Julia Kreger
85212fead4 Add note regarding configuration drives to tuning docs
Configuraiton drives get stored in the instance_info field which
is of a text type, which in theory is not a big deal, however large
configuration drives are returned over the database client
and when entire node objects are generated by the client, which
has an obvious bandwidth and record transfer latency overhead.

Change-Id: I7f2b6ab9c3adf88202f213a42af7553cf9e8276d
2021-07-06 09:12:21 -07:00
Dmitry Tantsur
8cb6057450 Support "swift" for ramdisk_image_download_source
The ilo-virtual-media boot interface supports exposing Glance images via
a temporary URL. This change brings this support to Redfish and others.

Change-Id: Ie72bb5e62c29efa5eea1710e74f505329d28d726
2021-07-06 17:42:42 +02:00