How can I specify a helm override to configure nova PCI alias when there are multiple aliases?

I haven't been able to come up with a YAML compliant specification for this.

 

Are there other alternatives to be able to specify this as an override? I assume that a nova Chart change would be required to support this custom one-alias-entry-per-line formatting.

 

Any insights on how to achieve this in helm are welcomed.

 

Background:

There is a limitation in the nova.conf specification of PCI alias in that it does not allow multiple PCI aliases as a list. The code says "Supports multiple aliases by repeating the option (not by specifying a list value)".  Basically nova currently only supports one-alias-entry-per-line format.

 

Ideally I would specify global pci alias in a format similar to what can be achieved with PCI passthrough_whitelist, which can takes JSON list of dictionaries.

 

This is what I am trying to specify in nova.conf (i.e., for nova-api-osapi and nova-compute):

[pci]

alias = {dict 1}

alias = {dict 2}

. . .

 

The following nova configuration format is desired, but not as yet supported by nova:

[pci]

alias = [{dict 1}, {dict 2}]

 

The following snippet of YAML works for PCI passthrough_whitelist, where the value encoded is a JSON string:

 

conf:

  nova:

  overrides:

    nova_compute:

      hosts:

      - conf:

          nova:

            pci:

              passthrough_whitelist: '[{"class_id": "030000", "address": "0000:00:02.0"}]'

 

Jim Gauld