k8s/roles/nvidia_device_plugin/templates/values.yml.j2

129 lines
4.4 KiB
Django/Jinja

{% if nvidia_device_plugin_config.name or nvidia_device_plugin_config.map %}
config:
{% if nvidia_device_plugin_config.name %}
name: "{{ nvidia_device_plugin_config.name }}"
{% endif %}
{% if nvidia_device_plugin_config.map %}
map:
{% for key, value in nvidia_device_plugin_config.map.items() %}
{{ key }}: |
{{ value | indent(6, false) }}
{% endfor %}
{% endif %}
{% if nvidia_device_plugin_config.default %}
default: "{{ nvidia_device_plugin_config.default }}"
{% endif %}
{% if nvidia_device_plugin_config.fallback_strategies %}
fallbackStrategies: {{ nvidia_device_plugin_config.fallback_strategies }}
{% endif %}
{% endif %}
compatWithCPUManager: {{ nvidia_device_plugin_compat_with_cpu_manager | lower }}
{% if nvidia_device_plugin_mig_strategy is defined and nvidia_device_plugin_mig_strategy %}
migStrategy: "{{ nvidia_device_plugin_mig_strategy }}"
{% endif %}
{% if nvidia_device_plugin_fail_on_init_error is defined %}
failOnInitError: {{ nvidia_device_plugin_fail_on_init_error | lower }}
{% endif %}
{% if nvidia_device_plugin_device_list_strategy is defined and nvidia_device_plugin_device_list_strategy %}
deviceListStrategy: "{{ nvidia_device_plugin_device_list_strategy }}"
{% endif %}
{% if nvidia_device_plugin_device_id_strategy is defined and nvidia_device_plugin_device_id_strategy %}
deviceIDStrategy: "{{ nvidia_device_plugin_device_id_strategy }}"
{% endif %}
{% if nvidia_device_plugin_nvidia_driver_root is defined and nvidia_device_plugin_nvidia_driver_root %}
nvidiaDriverRoot: "{{ nvidia_device_plugin_nvidia_driver_root }}"
{% endif %}
image:
repository: {{ nvidia_device_plugin_image.repository }}
tag: "{{ nvidia_device_plugin_image.tag }}"
pullPolicy: {{ nvidia_device_plugin_image.pull_policy }}
resources: {{ nvidia_device_plugin_resources | default({}) | to_nice_yaml(indent=2) | indent(2) }}
nodeSelector: {{ nvidia_device_plugin_node_selector | default({}) | to_nice_yaml(indent=2) | indent(2) }}
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
{% for term in nvidia_device_plugin_affinity.node_affinity.required_during_scheduling_ignored_during_execution.node_selector_terms %}
- matchExpressions:
{% for expr in term.match_expressions %}
- key: {{ expr.key }}
operator: {{ expr.operator }}
values:
{% for val in expr.values %}
- {{ val }}
{% endfor %}
{% endfor %}
{% endfor %}
tolerations: {{ nvidia_device_plugin_tolerations | to_nice_yaml(indent=2) | indent(2) }}
priorityClassName: "{{ nvidia_device_plugin_priority_class_name }}"
{% if nvidia_device_plugin_runtime_class_name is defined and nvidia_device_plugin_runtime_class_name %}
runtimeClassName: "{{ nvidia_device_plugin_runtime_class_name }}"
{% endif %}
devicePlugin:
enabled: true
{% if nvidia_device_plugin_gfd.enabled %}
gfd:
enabled: true
nameOverride: "{{ nvidia_device_plugin_gfd.name_override }}"
{% if nvidia_device_plugin_gfd.no_timestamp is defined %}
noTimestamp: {{ nvidia_device_plugin_gfd.no_timestamp | lower }}
{% endif %}
{% if nvidia_device_plugin_gfd.sleep_interval is defined %}
sleepInterval: "{{ nvidia_device_plugin_gfd.sleep_interval }}"
{% endif %}
securityContext:
privileged: {{ nvidia_device_plugin_gfd.security_context.privileged | lower }}
{% endif %}
{% if nvidia_device_plugin_nfd %}
nfd:
nameOverride: "{{ nvidia_device_plugin_nfd.name_override }}"
enableNodeFeatureApi: {{ nvidia_device_plugin_nfd.enable_node_feature_api | lower }}
master:
serviceAccount:
name: "{{ nvidia_device_plugin_nfd.master.service_account.name }}"
create: {{ nvidia_device_plugin_nfd.master.service_account.create | lower }}
config:
extraLabelNs:
{% for ns in nvidia_device_plugin_nfd.master.config.extra_label_ns %}
- {{ ns }}
{% endfor %}
worker:
tolerations:
{% for tol in nvidia_device_plugin_nfd.worker.tolerations %}
- key: "{{ tol.key }}"
operator: "{{ tol.operator }}"
value: "{{ tol.value | default('') }}"
effect: "{{ tol.effect }}"
{% endfor %}
config:
sources:
pci:
deviceClassWhitelist:
{% for cls in nvidia_device_plugin_nfd.worker.config.sources.pci.device_class_whitelist %}
- {{ cls }}
{% endfor %}
deviceLabelFields:
{% for field in nvidia_device_plugin_nfd.worker.config.sources.pci.device_label_fields %}
- {{ field }}
{% endfor %}
{% endif %}
mps:
root: "{{ nvidia_device_plugin_mps.root }}"