fix(k3s): render platform helm values before addon installs

This commit is contained in:
Haitao Pan 2026-04-04 12:47:39 +08:00
parent 2aae4b62cb
commit ac32c148ca
4 changed files with 65 additions and 0 deletions

View File

@ -93,6 +93,30 @@
- k3s_platform_ghcr_username | length > 0
- k3s_platform_ghcr_token | length > 0
- name: Render platform caddy values
ansible.builtin.template:
src: platform-caddy-values.yaml.j2
dest: /tmp/platform-caddy-values.yaml
mode: "0600"
when:
- k3s_platform_values.components.caddy.enabled | default(false)
- name: Render platform apisix values
ansible.builtin.template:
src: platform-apisix-values.yaml.j2
dest: /tmp/platform-apisix-values.yaml
mode: "0600"
when:
- k3s_platform_values.components.apisix.enabled | default(false)
- name: Render platform external-dns values
ansible.builtin.template:
src: platform-external-dns-values.yaml.j2
dest: /tmp/platform-external-dns-values.yaml
mode: "0600"
when:
- k3s_platform_values.components.externalDns.enabled | default(false)
- name: Install reloader directly with Helm
ansible.builtin.shell: |
set -euo pipefail

View File

@ -0,0 +1,22 @@
etcd:
enabled: {{ k3s_platform_values.components.apisix.values.etcd.enabled | bool | lower }}
externalEtcd:
user: {{ k3s_platform_values.components.apisix.values.externalEtcd.user | to_json }}
ingress-controller:
enabled: {{ k3s_platform_values.components.apisix.values.ingress-controller.enabled | bool | lower }}
dashboard:
enabled: {{ k3s_platform_values.components.apisix.values.dashboard.enabled | bool | lower }}
gateway:
enabled: {{ k3s_platform_values.components.apisix.values.gateway.enabled | bool | lower }}
type: {{ k3s_platform_values.components.apisix.values.gateway.type | to_json }}
control:
enabled: {{ k3s_platform_values.components.apisix.values.control.enabled | bool | lower }}
apisix:
admin:
enabled: {{ k3s_platform_values.components.apisix.values.apisix.admin.enabled | bool | lower }}
deployment:
mode: {{ k3s_platform_values.components.apisix.values.apisix.deployment.mode | to_json }}
role: {{ k3s_platform_values.components.apisix.values.apisix.deployment.role | to_json }}
standalone:
config: |
{{ k3s_platform_values.components.apisix.values.apisix.deployment.standalone.config | indent(8, true) }}

View File

@ -0,0 +1,9 @@
ingressController:
enabled: {{ k3s_platform_values.components.caddy.values.ingressController.enabled | bool | lower }}
ingressClass:
create: {{ k3s_platform_values.components.caddy.values.ingressClass.create | bool | lower }}
name: {{ k3s_platform_values.components.caddy.values.ingressClass.name | to_json }}
default: {{ k3s_platform_values.components.caddy.values.ingressClass.default | bool | lower }}
service:
type: {{ k3s_platform_values.components.caddy.values.service.type | to_json }}
email: {{ k3s_platform_values.components.caddy.values.email | to_json }}

View File

@ -0,0 +1,10 @@
provider: {{ k3s_platform_values.components.externalDns.values.provider | to_json }}
policy: {{ k3s_platform_values.components.externalDns.values.policy | to_json }}
registry: {{ k3s_platform_values.components.externalDns.values.registry | to_json }}
txtOwnerId: {{ k3s_platform_values.components.externalDns.values.txtOwnerId | to_json }}
sources:
{{ k3s_platform_values.components.externalDns.values.sources | to_nice_yaml(indent=2) | indent(2, true) }}
domainFilters:
{{ k3s_platform_values.components.externalDns.values.domainFilters | to_nice_yaml(indent=2) | indent(2, true) }}
env:
{{ k3s_platform_values.components.externalDns.values.env | to_nice_yaml(indent=2) | indent(2, true) }}