Commit graph

2378 commits

Author SHA1 Message Date
Zuul
6f4e679c4c Merge "Fix lint issues with documentation" 2024-11-05 08:27:15 +00:00
Zuul
8ba066b33c Merge "Enable WSGI module entrypoint for Ironic" 2024-10-30 18:16:11 +00:00
Jay Faulkner
f6191f2969 Fix lint issues with documentation
The doc8 linter found several syntax problems in our docs; primarily a
large number of places we used single-backticks to surround something
when we should've used double-backticks.

This is frontrunning a change that will add these checks to CI.

Change-Id: Ib23b5728c072f2008cb3b19e9fb7192ee5d82413
2024-10-29 14:59:28 -07:00
Zuul
07465858f5 Merge "docs: adds link to oslo_messaging_notifications documentation" 2024-10-25 15:15:46 +00:00
Jay Faulkner
3db454f0ea Enable WSGI module entrypoint for Ironic
This adds a wsgi entrypoint module which can be used with a wsgi runner,
such as uwsgi, to launch Ironic API processes without the need of a
separate script.

The legacy WSGI script is currently being installed by PBR, and as part
of the migration to a pyproject.yaml-compatible PBR, we cannot use the
wsgi-scripts plugin anymore, and will be removing the script installed
by it in a future Ironic release.

The new WSGI script, because it has statements at the module top-level,
cannot be autodocumented; we now exclude it.

Also we don't treat all warnings as errors in pdf docs builds to allow
the use of mock autosummary, starting with including the wsgi module.

Co-Authored-By: Doug Goldstein <cardoe@cardoe.com>
Change-Id: I584ac6a25c4e6cd9744a609b50d12b434a930dc6
2024-10-25 16:57:05 +02:00
Zuul
f76b006b3f Merge "Add support for node name in port creation" 2024-10-24 18:18:56 +00:00
Nicholas Kuechler
48b2d856a5 docs: adds link to oslo_messaging_notifications documentation
Change-Id: I1bf907247559c9945def34dc1b7fccb634324636
2024-10-23 09:51:43 -05:00
cid
da002a341c Add support for node name in port creation
Add support for creating ports using either node UUID or node name.

Closes-Bug: #1439901
Change-Id: I215619648bbe7aa1152e0f117971bece74ffe1fe
2024-10-23 11:43:10 +01:00
Zuul
1f740c8a90 Merge "docs: Updates redfish metrics docs with required configuration file settings" 2024-10-22 18:49:03 +00:00
Zuul
fd51cead30 Merge "Added Localdev Docs on changing microversion" 2024-10-21 23:28:19 +00:00
Sharpz7
823a7c93bd Added Localdev Docs on changing microversion
Added some documentaition that details how to change the ironic localdev microversion for testing purposes.

Rendered View: https://files.mcaq.me/944ch.png

Change-Id: I1e21a12ad1413046a41f856ddf229e399f82523a
2024-10-21 22:27:01 +00:00
Nicholas Kuechler
ae4d5b5c49 docs: Updates redfish metrics docs with required configuration file settings
Change-Id: Ide7c245e017a92519e17ed1fb62c7fc986a1ae6a
2024-10-16 15:29:37 -05:00
Julia Kreger
ac31720ac1
docs: Add context around asynchronous device initialization
Centos Stream and ultimately RHEL have switched to asynchronous
device initialization, which impacts root device hints and their
usability on those systems, in large part because context which
people have traditionally had, no longer holds true on those newer
kernels.

This doc update attempts to provide the needful context to guide
operators to the best possible outcome given the distribution changes.

Change-Id: I541086cfe235b10f1f1dba95fad95022a22f9ce7
2024-10-07 07:13:26 -05:00
Zuul
462f86889b Merge "Checksum files before raw conversion" 2024-10-03 17:58:06 +00:00
Julia Kreger
00c5e0faf8 Checksum files before raw conversion
While working another issue, we discovered that support added to
the ironic-conductor process combined the image_download_source
option of "local" with the "force_raw" option resulted in a case
where Ironic had no concept to checksum the files *before* the
conductor process triggered an image format conversion and
then records new checksum values.

In essence, this opened the user requested image file to be
suspetible to a theoretical man-in-the-middle attack OR
the remote server replacing the content with an unknown file,
such as a new major version.

The is at odds with Ironic's security model where we do want to
ensure the end user of ironic is asserting a known checksum for
the image artifact they are deploying, so they are aware of the
present state. Due to the risk, we chose to raise this as a CVE,
as infrastructure operators should likely apply this patch.

As a note, if your *not* forcing all images to be raw format
through the conductor, then this issue is likely not a major
issue for you, but you should still apply the patch.

This is being tracked as CVE-2024-47211.

Closes-Bug: 2076289
Change-Id: Id6185b317aa6e4f4363ee49f77e688701995323a
Signed-off-by: Julia Kreger <juliaashleykreger@gmail.com>
2024-10-03 15:06:07 +00:00
Zuul
e25cff9621 Merge "Firmware Update via Firmware Interface Docs" 2024-09-27 09:02:52 +00:00
Zuul
6f6ae12948 Merge "doc: Promote built-in introspection from experimental" 2024-09-27 09:02:49 +00:00
Zuul
b430d3ed67 Merge "[doc] Add instructions on making big fake-BM nodes" 2024-09-27 09:02:47 +00:00
Zuul
9fe510a14a Merge "Fix inspect interface for redfish driver in the docs" 2024-09-24 12:49:08 +00:00
Iury Gregory Melo Ferreira
82b67aa36c Firmware Update via Firmware Interface Docs
This patch adds some initial documentation
for the update step available via
the redfish firmware interface.

Change-Id: I4a70e2e78d725fd96a2ddd116c6d6e0d9c3b9639
2024-09-24 08:12:16 -03:00
Mahnoor Asghar
adfb091695 Fix inspect interface for redfish driver in the docs
Change-Id: If8d833bc5b012a17588aa7e3ebcb143bba12de12
2024-09-24 07:08:18 -04:00
Takashi Kajinami
533e1ad609 doc: Promote built-in introspection from experimental
The feature is no longer considered experimental. Remove a few warnings
and wordings to reflect the current state.

Change-Id: I1a3dcb54e3a948aa9fc6f59d67f72de51df20e84
2024-09-19 23:23:29 +09:00
Muhammad Ahmad
7e85b3ed4d doc/source/admin fixes part-1
This a continuation to the efforts to ensure that the documentation is free from typos and grammatical mistakes so that the reader is not confused. Includes fixes for some of the documentation in doc/source/admin/*

Change-Id: I9ff40f1982ffad86a41e44395b6bee3a8dbfe43a
2024-09-15 10:33:49 +00:00
Zuul
072619978e Merge "Deduplicate and remove invalid information for steps" 2024-09-10 14:31:36 +00:00
Zuul
d41a1c6f72 Merge "Support Automatic Lessee from instance metadata" 2024-09-05 23:49:48 +00:00
Julia Kreger
c996aafa6d CVE-2024-44982: Harden all image handling and conversion code
It was recently learned by the OpenStack community that running qemu-img
on untrusted images without a format pre-specified can present a
security risk. Furthermore, some of these specific image formats have
inherently unsafe features. This is rooted in how qemu-img operates
where all image drivers are loaded and attempt to evaluate the input data.
This can result in several different vectors which this patch works to
close.

This change imports the qemu-img handling code from Ironic-Lib into
Ironic, and image format inspection code, which has been developed by
the wider community to validate general safety of images before converting
them for use in a deployment.

This patch contains functional changes related to the hardening of these
calls including how images are handled, and updates documentation to
provide context and guidance to operators.

Closes-Bug: 2071740
Change-Id: I7fac5c64f89aec39e9755f0930ee47ff8f7aed47
Signed-off-by: Julia Kreger <juliaashleykreger@gmail.com>
2024-09-04 15:18:58 -07:00
Zuul
b0a650a086 Merge "Better handle missing inspection_network" 2024-09-03 14:58:38 +00:00
Jay Faulkner
0eda3d65ea Support Automatic Lessee from instance metadata
Ironic already has support for automatically setting a lessee on
deployment, but it is only supported for direct deployments with Ironic,
as it uses request context which is not preserved in the Nova driver.

Now, when combined with the related Nova change, Ironic can support this
behavior for fully integrated installations. On deploy time, Nova will
set several fields -- including project_id -- in instance info. If
enabled, Ironic will then use that project_id as the automatic lessee.
The previous behavior of using the project_id from the request context
is still supported as a fallback.

This is being tracked in nova as blueprint ironic-guest-metadata.

Closes-Bug: #2063352
Change-Id: Id381a3d201c2f1b137279decc0e32096d4d95012
2024-09-02 18:14:22 -07:00
Jay Faulkner
9810fa996a [doc] Add instructions on making big fake-BM nodes
Many testing scenarios, including testing "full size" DIB ramdisks
instead of using tinyipa, require adjustment of our proscribed values
for Ironic VM size. Document this in the devstack guide.

Change-Id: I58823fa19d65c12ea2f9229394080f83d1d397f4
2024-08-30 12:49:11 -07:00
Zuul
67542d639a Merge "idrac: inherit driver interface from redfish" 2024-08-29 04:55:05 +00:00
Doug Goldstein
52fdbb743d
idrac: inherit driver interface from redfish
With the removal of the wsman interfaces in the idrac driver and only
redfish being supported, the idrac driver should inherit from the
redfish driver to ensure that it properly supports all the redfish
supported interfaces. Furthermore with several of the interfaces being
no-op passthru to the redfish implementation there is no reason to not
let the user select those interfaces as well. With an eye towards not
having to support these in the future, direct users to use the stock
redfish versions in the docs as well.

Change-Id: I79ab44f31660e6d5311db46223e8bd60d2b3f213
Signed-off-by: Doug Goldstein <cardoe@cardoe.com>
2024-08-28 08:47:32 -05:00
cid
aaec00275a Replace reference to ari/aki
Replace 'ari' and 'aki' with correct values for kernel/ramdisk
artifacts.

Closes-Bug: #2074090
Change-Id: I5b5bcf7e081fc0865ec43ccf6a988280ec7c9273
2024-08-27 13:46:10 +01:00
Jay Faulkner
1aa780377e Deduplicate and remove invalid information for steps
Lots of references to deprecated ways of doing things, as well as two
entire separate sections dedicated to how disk erasure works.

Also ensured we reference new valid config options surrounding disk
erasure.

Additional improvments could include adding documentation around how to
skip disks per node (or linking to any preexisting docs around it).

Change-Id: Ifa029e26eff0637b443d094d85e773b885d0979b
2024-08-26 11:24:37 -07:00
Zuul
e6e075de1f Merge "Clarify how to configure for non-master branch" 2024-08-26 16:20:29 +00:00
Zuul
58a79bedfa Merge "docs-audit-2024: Labeling references" 2024-08-26 13:14:20 +00:00
Zuul
569b7d0971 Merge "[docs] Add procedure to EoL and delete old bugfix branch" 2024-08-26 12:35:08 +00:00
Jay Faulkner
8e6b758bfa Clarify how to configure for non-master branch
Since we're a plugin, the TARGET_BRANCH instructions in the normal
devstack guide are not enough. We should specifically instruct people to
avoid this pitfall.

Change-Id: I7c9fd98c582984036e0b19714b8f387a31e8715f
2024-08-22 10:32:09 -07:00
cid
17ba2b3db7 docs-audit-2024: Labeling references
Rewrite page headings with correct labeling for references
and specifications.

Closes-Bug: #2072352
Related-Bug: #2072349
Change-Id: I82313c18294ff8572ae6a6a02607068370f195c3
2024-08-22 15:02:59 +01:00
Dmitry Tantsur
018a7dcaed
Better handle missing inspection_network
Currently, if the inspection network is not provided, neutron-based
network interfaces fail with something like:

    Driver redfish does not support inspection (disabled or not implemented)

This is utterly misleading. Use a hand-crafted error message instead.
Same for the PXE boot interface. Also add missing documentation.

Change-Id: I79086db1c270e02a6c74b870acc336e8da54dea3
2024-08-22 15:32:22 +02:00
Riccardo Pittau
2a6abc8107 [docs] Add procedure to EoL and delete old bugfix branch
The process is currently manual and requires some precise steps.

Change-Id: I25c1c03426fa306681b48c4a5cfb53ff47c8c027
2024-08-22 10:13:05 +02:00
Muhammad Ahmad
c316443c94 Some documentaion improvements for ironic docs
The documentation contains a significant amount of grammar mistakes.

This could cause confusion in certain scenarios to correctly understanding the
context. Starting to go though the documentation and pushing this commit
as a start.

Change-Id: If2c18909a83ba501b5ffae494934fb631b009e54
2024-08-21 14:24:40 +05:00
Zuul
3d1422fb7b Merge "docs-audit-2024: Use gerunds for task headings" 2024-08-21 08:10:51 +00:00
Zuul
54e3f25c24 Merge "Link to configuration options" 2024-08-14 19:38:55 +00:00
cid
ba096e091a Follow up to the runbooks change (#922142)
Update api-ref, documentation to reflect the new
endpoints and the new way to set node provision state.

Related-Bug: #2027690
Change-Id: I2106691c08eb04d1001ccf97e6e08fc811356874
2024-08-13 11:52:36 +01:00
cid
582b2e991c Link to configuration options
Implement cross-referencing to configuration options
through out the Ironic documentation.

Closes-Bug: #2076111
Change-Id: I28712a3a92eb7e7d9875e49ea3ed8800168262fe
2024-08-09 18:45:51 +01:00
Zuul
8b296e242b Merge "Self-Service via Runbooks" 2024-08-07 18:03:36 +00:00
cid
4750c4e9fa docs-audit-2024: Use gerunds for task headings
Ironic docs improvements. Addressing one of the issues from
the Ironic documentation audit. Using gerunds in titles and
including *Ironic* in the title to improve SEO.

Closes-Bug: #2072351
Related-Bug: #2072349
Change-Id: I9f9c47654386df416b51e8a0cd48f5a89f55e799
2024-08-07 15:18:25 +01:00
cid
48f50248c2 Self-Service via Runbooks
Adds runbooks; the new API feature that makes it possible for
project members to self-serve maintenance tasks through curated step
lists associated with target nodes via traits.

In addition to basic CRUD support, runbook extends current API flow for
performing manual cleaning and servicing to support runbooks in lieu of
an explicit/arbitrary ``clean_steps`` and ``service_steps`` user-defined
lists.

Demo Video: https://youtu.be/00PJS4SXFYQ
Closes-Bug: #2027690

Change-Id: I43555ef72cb882adcada2ed875fda40eed0dd034
2024-08-02 05:44:29 +01:00
Riccardo Pittau
816a7dfe8b Remove ironic-inspector from bugfix branches
Change-Id: Ic54c5da159e05b20686ef4fbb54f6690abc32a22
2024-07-30 15:05:09 +02:00
Doug Goldstein
acf1c7d43e
idrac driver doc should mention all dependencies
To utilize the idrac-redfish interfaces, you need the sushy-oem-idrac
package to be installed along side of sushy itself.

Change-Id: I3376cd0b40fce49345121ad84d35749241e9dbe8
2024-07-22 14:56:15 -05:00