Skip to content

evermind/argocd-helm-secrets

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

argocd-helm-secrets

Docker and helm-charts for ArgoCD with helm-secrets support

inspired by

Version is equal to used arcocd base image.

Releases at https://hub.docker.com/r/evermind/argocd-helm-secrets Use image evermind/argocd-helm-secrets:{version} for your deployment.

Features

Using

  • export gpg key gpg --export-secret-keys YOUR_ID_HERE > private.key
  • mount private key inside container to /home/argocd/gpg/gpg.asc

Components

Hints / lesson learned

  1. Argocd creates seperate helm environment per call or deployment. So plugins installed by Dockerfile arn´t used. Set $HELM_PLUGINS in Dockerfile prevents this problem.
  2. Argocd uses the same image for various roles (server, repoServer ...). Helm secrets is needed in repoServer. So there also mounted gpg secrets required.

Example deployment

values.yaml

global:
  # different repo for integration of helm secrets plugin
  image:
    repository: evermind/argocd-helm-secrets
    tag: "latest"
    imagePullPolicy: Always

[...]

repoServer:
  extraArgs:
  - --repo-cache-expiration 12h
  
  ## Additional volumeMounts for gpg key import
  volumeMounts: 
  - name: gpg-secret
    mountPath: /home/argocd/gpg
  volumes: 
  - name: gpg-secret
    secret:
      secretName: gpg-key