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

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

@ -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.

@ -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 -}}