iac/aero/roles/sarex_stack/templates/registry-secret.yaml.j2

44 lines
1.7 KiB
Django/Jinja
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#jinja2: trim_blocks:True, lstrip_blocks:True
{#
Манифест секретов доступа к приватному реестру, собираемый из ключа
сервисного аккаунта (registry_key_src) на control-node.
Секретов два и они РАЗНОГО назначения:
* yc-cr-auth (flux-system) — им source-controller тянет OCI-ЧАРТЫ.
Обязателен: без него не поедет ни один HelmRelease.
* regcred (namespace потребителя) — imagePullSecrets подов. Продублирован
из манифестов репозитория; на уровне ноды образы и так доступны через
/etc/rancher/k3s/registries.yaml, но манифесты на него ссылаются.
Namespace создаётся здесь же: секрет нужен РАНЬШЕ, чем чарт создаст namespace.
ВНИМАНИЕ: файл содержит секрет в открытом виде. Рендерится с mode 0600
во временный каталог и удаляется сразу после kubectl apply.
#}
{% set docker_config = {
"auths": {
registry_host: {
"username": registry_username,
"password": registry_key_content,
"auth": (registry_username ~ ":" ~ registry_key_content) | b64encode
}
}
}
%}
{% for s in registry_secrets %}
---
apiVersion: v1
kind: Namespace
metadata:
name: {{ s.namespace }}
---
apiVersion: v1
kind: Secret
metadata:
name: {{ s.name }}
namespace: {{ s.namespace }}
type: kubernetes.io/dockerconfigjson
data:
.dockerconfigjson: {{ docker_config | to_json | b64encode }}
{% endfor %}