Helm secrets
Introduction
Utilisation des secrets dans les charts helm
Attention
La clés publique (age1yen2x2ntanvcd82qkve92d89zy5utgtlfs6pkyzfly7vef8festqwdlpme) utilisée dans les exmples ci-dessous est un exemple. Vous devez utiliser votre clés publique (voir SOPS et Age).
Prérequis
Application
- Plugin helm secret
- SOPS
Clés
- Une clés privée
- Une clés public
- Le mot de passe
Pour la création des clés (voir SOPS et Age)
Chiffrer un fichier
- Créer le fichier
.sops.yamlà la racine de votre chart helm avec le contenu suivant:
creation_rules:
- age:
- age1yen2x2ntanvcd82qkve92d89zy5utgtlfs6pkyzfly7vef8festqwdlpme
- Fichier à chiffrer
echo "password: Top5ecret" > values-secret.yaml
- Chiffrer le fichier
sops --encrypt --in-place values-secret.yaml
- Vérifier
cat values-secret.yaml
password: ENC[AES256_GCM,data:2K3qAmyDiDa/,iv:Es7oVS8KaZlS6AFWbMCC9tuAu701/yZIKioV3ts2LUY=,tag:qtFxKkqFIt9Lzp++7JGTYA==,type:str]
sops:
age:
- enc: |
-----BEGIN AGE ENCRYPTED FILE-----
YWdl...PmUT9U9HCDrZsQ2F/eYrKqs/sWPL1H5RJYwaqTaToAN71d2wQ==
-----END AGE ENCRYPTED FILE-----
recipient: age1yen2x2ntanvcd82qkve92d89zy5utgtlfs6pkyzfly7vef8festqwdlpme
lastmodified: "2026-08-12T08:53:06Z"
mac: ENC[AES256_GCM,data:3R7mfGM53LMkBxbHfcrxfsfutsSnilTOsDaLq+j4eudOTcFmvKHf...B5Gcg==,type:str]
unencrypted_suffix: _unencrypted
version: 3.13.3
Editer un fichier chiffré
helm secrets edit value-secret.yaml
Le mot de passe est demandé
Si la clés privée n'est pas dans le dossier ~.config/sops/age alors
export SOPS_AGE_KEY_FILE=<patho_to_private_key_file>;helm secrets edit values-secrets.yaml
CICD
PAS TESTÉ
Créer une variable de type secret SOPS_AGE_KEY dans votre Git, y coller la clés privée extraite comme expliqué ici
Exemple de CICD
name: Deploy with Helm & SOPS
on:
push:
branches:
- main
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Install dependencies
run: |
sudo apt-get update
sudo apt-get install -y sops age
curl https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | bash
helm plugin install https://github.com/jkroepke/helm-secrets
- name: Set up SOPS
run: |
mkdir -p ~/.config/sops/age/
echo "${{ secrets.SOPS_AGE_KEY }}" > ~/.config/sops/age/keys.txt
chmod 600 ~/.config/sops/age/keys.txt
- name: Deploy with Helm
run: |
helm secrets upgrade --install my-release ./my-chart
Sources
| Version | Date | Change | Auteur |
|---|---|---|---|
| 1.1 | 12.08.2026 | MàJ pour SOPS et Age | GMo |
| 1.0 | 13.08.2023 | Création | GMo |