Add a no_driver ironic driver type

Enabling this driver type ensures that the no-console, no-raid
and no-inspect interfaces are enabled so that they can be later
configured on a per-node basis if required.

These interfaces are useful to have enabled at the same time as
driver specific interfaces such as idrac or ilo in order so that
managment of specific functions can be disabled if required.

Change-Id: I2904ba005e3fa18faf8ccf04661e206501fa4aa3
This commit is contained in:
Jonathan Rosser 2023-03-16 12:13:58 +00:00
parent b6550a4c3f
commit 0a5de94bf3
3 changed files with 13 additions and 1 deletions

View File

@ -328,6 +328,7 @@ ironic_conductor_init_config_overrides: {}
# driver definitions
ironic_drivers_enabled:
- no_driver
- agent_ipmitool
- pxe_ipmitool

View File

@ -0,0 +1,7 @@
---
features:
- |
A new driver type ``no_driver`` is defined in the os_ironic role which
enables the ``no-console``, ``no-raid`` and ``no-inspect`` interfaces
in the ironic configuration. This driver is added to the defaults set of
drivers configured by the ironic ansible role.

View File

@ -20,6 +20,10 @@ _ironic_inspector_is_first_play_host: "{{ (ironic_services['ironic-inspector']['
# task to save time.
ironic_driver_types:
no_driver:
inspect: no-inspect
console: no-console
raid: no-raid
agent_ilo:
hardware_type: ilo
boot: ilo-virtual-media
@ -140,7 +144,7 @@ ironic_packages_list: >
{%- set package_list = package_list + ironic_inspector_http_distro_packages %}
{%- endif %}
{%- if 'ipmitool-socat' in (filtered_ironic_drivers | json_query('[*].console') | unique) %}
{% set package_list = package_list + ironic_ipmitool_socat_distro_packages %}
{%- set package_list = package_list + ironic_ipmitool_socat_distro_packages %}
{%- endif %}
{{- package_list -}}