11569 Commits

Author SHA1 Message Date
Riccardo Pittau
f1c9ff0e92 Update min version of tox to use allowlist
The min version of tox is updated to 3.18.0 to replace whitelist_externals
with allowist_externals option [1]

[1] https://github.com/tox-dev/tox/blob/master/docs/changelog.rst#v3180-2020-07-23

Change-Id: Icf821d49d2543be2a37dffc686ae7ab4163b04cc
2021-05-18 11:13:22 +02:00
Dmitry Tantsur
722326f675 Clean up kernel_append_params for iRMC
Currently handling of kernel_append_params is very inconsistent. This
change applies a straightforward process:
1. instance_info[kernel_append_params]
2. driver_info[kernel_append_params]
3. [$driver]kernel_append_params

Story: #2008902
Task: #42472
Change-Id: Ib83594743ae58ea26dbd9875c98ab169dd5ab009
2021-05-17 16:44:10 +02:00
Dmitry Tantsur
e51404c8e7 Clean up kernel_append_params for Redfish and iLO
Currently handling of kernel_append_params is very inconsistent. This
change applies a straightforward process:
1. instance_info[kernel_append_params]
2. driver_info[kernel_append_params]
3. [$driver]kernel_append_params

The existing ilo_kernel_append_params is declared but never implemented,
so it's removed without deprecation in favor of the new option.

Story: #2008902
Task: #42470
Task: #42471
Change-Id: I0fcd7c63a4bc41110eb7f4cd4031580ef98d9a19
2021-05-17 16:43:34 +02:00
Dmitry Tantsur
2a73f5a84e Clean up kernel_append_params for PXE/iPXE
Currently handling of kernel_append_params is very inconsistent. This
change applies a straightforward process:
1. instance_info[kernel_append_params]
2. driver_info[kernel_append_params]
3. [pxe]kernel_append_params (renamed from pxe_append_params).

Also adds a helper for subsequent fixes in other drivers.

Change-Id: I79bcf4d8ef1f0f55a82e0991dd5bb1685b3f7957
Story: #2008902
Task: #42469
2021-05-17 16:12:30 +02:00
Zuul
af94a3da1e Merge "Add bios_interface to api-ref spec" 2021-05-17 11:37:39 +00:00
Zuul
492acec747 Merge "setup.cfg: Replace dashes with underscores" 2021-05-16 09:59:25 +00:00
Bob Fournier
98c9500614 Add bios_interface to api-ref spec
This is a doc change to add bios_interface to the api reference. Its
included in the detailed node list and node show but wasn't shown
in the api-ref.

Change-Id: I8735d10db1644f8a2c872c75c156c75c06b79c0c
2021-05-14 11:31:40 -04:00
Dmitry Tantsur
c70b858769 Expand the deployment guide
* Add optional Glance and Neutron integration.
* Migrate and expand the configdrive section from the install guide.
* Explain how to use cloud-init boot scripts.
* Explain allocations and mention metalsmith as an easy CLI.
* Use more realistic URLs and checksums in the examples.
* Remove a reference to local boot, it's the default nowadays.
* Replace the iLO note with a more generic one.
* Small fixes and clean ups.

Change-Id: I28ac60da6722b9ca2c2b571511070010145958f6
2021-05-12 17:24:04 +02:00
likui
26f6607113 setup.cfg: Replace dashes with underscores
Setuptools v54.1.0 introduces a warning that the use of
dash-separated options in 'setup.cfg' will not be supported
in a future version [1].
Get ahead of the issue by replacing the dashes with underscores.
Without this, we see 'UserWarning' messages
like the following on new enough
versions of setuptools:

  UserWarning: Usage of dash-separated 'description-file' will not be
  supported in future versions. Please use the underscore name
  'description_file' instead

[1] https://github.com/pypa/setuptools/commit/a2e9ae4cb

Change-Id: If07c53b62d32d2bc3d519b4f541f267995e522fe
2021-05-12 17:54:12 +08:00
Zuul
e9f3212525 Merge "[doc] Update documentation about force_persistent_boot_device" 2021-05-11 09:32:07 +00:00
Zuul
bbc9e3d1c1 Merge "Upgrade guide: remove ancient versions and group with Installation" 2021-05-11 06:51:54 +00:00
Arne Wiebalck
754f15c92d [doc] Update documentation about force_persistent_boot_device
Apparently, this was missed when the new options were introduced.

Story: #2004846

Change-Id: I04be5a5a8fa962bafa68f0ea93ee127b1610c20f
2021-05-10 19:02:32 +02:00
Zuul
541de6036c Merge "Avoid unnecessary validation in boot interfaces" 2021-05-10 15:44:30 +00:00
Dmitry Tantsur
6243a4b280 Rework the user guide
Currently it only contains (outdated) explanations how Ironic works.
Move them one level deeper and migrate the content relevant to users:
* Preparing instance images from the installation guide
* Deploying nodes from the standalone guide

Compatibility shims are provided for migrated pages.

Change-Id: I8468da377b7878eb3d1a61e6a6bcd4ac8a5f06d7
2021-05-10 17:18:13 +02:00
Dmitry Tantsur
b92fa285a9 Upgrade guide: remove ancient versions and group with Installation
Change-Id: Ida2d1003eb99f012be0eca6ebde4fe2f935b2880
2021-05-10 17:18:13 +02:00
Zuul
86ab396559 Merge "Delete unavailable py2 package" 2021-05-10 15:01:01 +00:00
Zuul
2477e75c7f Merge "Document the custom-agent deploy interface" 2021-05-10 15:00:45 +00:00
LinPeiWen
35dea07897 Delete unavailable py2 package
The openstack Ussuri and Victoria versions no longer support the
Centos7 and pyrhon2 environment packages. Correct the missing
problems in the latest document

Change-Id: I60787243fdc6ed2741522355ec79970bdb912f41
2021-05-10 09:47:52 +00:00
Dmitry Tantsur
abfe383cc3 Fix deployment when executing a command fails after the command starts
If the agent accepts a command, but is unable to reply to Ironic (which
sporadically happens before of the eventlet's TLS implementation), we
currently retry the request and fail because the command is already
executing. Ironic now detects this situation by checking the list of
executing commands after receiving a connection error. If the requested
command is last one, we assume that the command request succeeded.

Ideally, we should pass a request ID to IPA and then compare it. Such
a change would affect the API contract between the agent and Ironic
and thus would not be backportable.

Change-Id: I2ea21c9ec440fa7ddf8578cf7b34d6d0ebbb5dc8
2021-05-07 17:50:06 +02:00
Zuul
2e5e2e5eb5 Merge "Provide an option to not cache bootable iso ramdisks" 2021-05-05 20:56:26 +00:00
Dmitry Tantsur
53d06a797c Document the custom-agent deploy interface
Follow-up to commit e85a36fe36db166e3f37212aa8261ac72e34e66a.

Change-Id: I8f1909523f2e8c314bd7e6f62ac29a90d7585abd
2021-05-05 16:05:47 +02:00
Zuul
270792377d Merge "Bye-bye iSCSI deploy, you served us well" 2021-05-05 13:12:32 +00:00
Zuul
21778d29f4 Merge "Update refarch with information about image_download_source" 2021-05-05 13:12:14 +00:00
Zuul
462969c68f Merge "Do not mask configdrive when executing in-band deploy steps" 2021-05-05 13:12:00 +00:00
Zuul
b2449bf2c4 Merge "Inherit InvalidImageRef from InvalidParameterValue" 2021-05-05 12:21:01 +00:00
Riccardo Pittau
4874f3c44e Provide an option to not cache bootable iso ramdisks
The behavior when a bootable iso is provided behind an http server is
to download and serve the image from the conductor; the image is
removed only when the node is undeployed.
In certain cases, for example on large deployments, this could cause
undesired behaviors, like the conductor nodes running out of disk storage.
We provide an option to avoid this event directly using the original url of
the bootable iso that is then served directly by the external http server
where it is hosted.

Change-Id: I6ecbe8ae4c775f5a39b68ff698bde655795e5db7
2021-05-05 14:14:35 +02:00
Dmitry Tantsur
e6bb99cd8f Avoid unnecessary validation in boot interfaces
Interfaces should only validate values they're going to use. Boot
interfaces do not care about image properties when local boot is used
(which is the default), so they shouldn't validate them. The deploy
interface has to provide validation for images.

This change fixes PXE, iPXE and redfish-virtual-media, although other
boot interfaces may need a similar change. We also need to refactor
handling instance_info in deploy_utils, but that can wait until the
iSCSI deploy removal.

Also refactor unit tests for redfish-virtual-media.

Story: #2008874
Task: #42418
Change-Id: Ida21f21d6435c0d7fa46cb5b1161f034ad8956ee
2021-05-04 18:11:19 +02:00
Dmitry Tantsur
47398edd3c Inherit InvalidImageRef from InvalidParameterValue
InvalidImageRef is a kind of InvalidParameterValue and can happen during
validation, causing a traceback now.

Change-Id: I5f10fe7240e74d337f991bbd1a5220cc4e713de7
2021-05-04 17:32:54 +02:00
Dmitry Tantsur
929907d684 Bye-bye iSCSI deploy, you served us well
The iSCSI deploy was very easy to start with, but it has since become
apparently that it suffers from scalability and maintenance issues.
It was deprecated in the Victoria cycle and can now be removed.

Hide the guide to upgrade to hardware types since it's very outdated.

I had to remove the iBMC diagram since my SVG-fu is not enough to fix it.

Change-Id: I2cd6bf7b27fe0be2c08104b0cc37654b506b2e62
2021-05-04 14:28:25 +02:00
Zuul
c5cf36d195 Merge "Clean up deprecated features of the agent deploy" 2021-05-04 09:57:29 +00:00
Zuul
cea29d5215 Merge "Update basic local.conf for quickstart" 2021-05-04 05:41:38 +00:00
Dmitry Tantsur
e79f163837 Update refarch with information about image_download_source
Change-Id: Ia06b01e89d79bf0f65d95dd0c20e91b456b8acae
2021-05-03 17:40:58 +02:00
Dmitry Tantsur
bad281cf16 Clean up deprecated features of the agent deploy
Removes support for non-decomposable deploy steps.
Removes support for pre-Wallaby agents.

Change-Id: I7bb1e58ecbcb1130e64150f26aa5bd347a24f7d5
2021-05-03 16:59:36 +02:00
Zuul
83b412cbdb Merge "Deploy interface that fully relies on custom deploy steps" 2021-05-03 11:27:18 +00:00
Dmitry Tantsur
a7f4b4a21c Stop testing the iscsi deploy interface
Change-Id: If876d5bbb7e18f293673d56912ecab3170fe5dfb
2021-04-30 15:54:23 +02:00
Dmitry Tantsur
e85a36fe36 Deploy interface that fully relies on custom deploy steps
This change adds a new deploy-interface custom-agent that is essentially
the direct deploy without the write_image step and without bootloader
handling. It's targeted at deployments that need to write the image
differently, while keeping all other aspects the same.

The existing AgentDeploy becomes a subclass of the new CustomAgentDeploy
class, serving as a convenient base class for downstream deploy
interfaces that use IPA.

Change-Id: Ie126ce677c79f102e382305650bddb7f09834483
Story: #2008719
Task: #42059
2021-04-30 14:38:16 +02:00
Dmitry Tantsur
d97f0fb5ec Do not mask configdrive when executing in-band deploy steps
The agent needs to use configdrive, and we do send it over the same
channel when running write_image. There is no point in preventing custom
deploy steps from accessing it.

Change-Id: I93d3966b2c6af1f60bfbb39b3a07056308c6866c
2021-04-29 13:54:55 +02:00
Zuul
193d2e65f1 Merge "Process in-band deploy steps on fast-track" 2021-04-28 15:52:22 +00:00
Zuul
888279c802 Merge "Docs: dhcp-less works with Glean 1.19.0" 2021-04-28 11:27:09 +00:00
Zuul
789ac329e4 Merge "Remove a pause before cleaning when fast-tracking" 2021-04-27 12:02:22 +00:00
Dmitry Tantsur
7ac60fb157 Docs: dhcp-less works with Glean 1.19.0
Change-Id: I46be8e000eba520e14fa9541ee53466ec10aa9a4
2021-04-27 10:47:18 +02:00
Zuul
0282c05de5 Merge "Follow up to add iDRAC management via Redfish" 2021-04-26 16:09:47 +00:00
Zuul
e50a0ca6a6 Merge "Remove temporary cleaning information on starting cleaning" 2021-04-23 21:23:21 +00:00
Zuul
9c9e38f9b9 Merge "Fix fast track with redfish-virtual-media" 2021-04-23 12:07:38 +00:00
Dhuldev Valekar
266be4eb4c Follow up to add iDRAC management via Redfish
Add unit tests to redfish utils method wait_until_get_system_ready.

Followup to change: Iad69c8d7cf3a373f5cfcc619a479a106efa2e4d4

Change-Id: I334d6d5d7a35557a57ba118bed0a6beedba934d3
2021-04-23 04:48:24 -05:00
Dmitry Tantsur
f4a7002023 Remove temporary cleaning information on starting cleaning
Currently we only remove the URL, which may leave a stale token.

Change-Id: I9ff2d726cb75317fe09bd43342541db0e721f2b8
2021-04-22 14:00:32 +02:00
Zuul
f720ce7e25 Merge "[doc][trivial] Fix diagram in agent token admin docs" 2021-04-22 11:11:09 +00:00
Riccardo Pittau
57120615a9 Update CI jobs list and description in docs
Change-Id: I823317d3f34f87767f3f43968326b4111ab5c3e8
2021-04-22 12:35:09 +02:00
Arne Wiebalck
7fecedad24 [doc][trivial] Fix diagram in agent token admin docs
Change-Id: I98233646472b6a5150bf1bd6fd42d364a71bd830
2021-04-22 12:12:38 +02:00
Arne Wiebalck
cf98a468ea [doc][trivial] Fix typo in agent token admin docs
Change-Id: Id40e9ed39c051a6988745a624ec4f755dc79cd41
2021-04-22 12:08:15 +02:00