New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support Helm charts #15

Open
richarddli opened this Issue Jun 29, 2017 · 1 comment

Comments

2 participants
@richarddli
Copy link
Contributor

richarddli commented Jun 29, 2017

Forge can output Helm charts, and not just the deployment manifests

@mumoshu

This comment has been minimized.

Copy link
Contributor

mumoshu commented Jan 25, 2018

FWIW, I'm experimenting on an another way of integrating forge with Helm charts - something like this:

  if [ -d k8s/ ]; then
    echo removing directory k8s/...
    rm -rf k8s/
  fi
  mkdir k8s/
  echo rendering k8s/manifests-from-helm-template.yaml...
  helm-secrets template \
    --name '{{build.name}}' \
    --set 'image.repository=\{\{build.images[\"Dockerfile\"]\
.split(\":\")[0]\}\},image.tag=\{\{build.images[\"Dockerfile\
\"].split(\":\")[1]\}\}' . \
    -f values.yaml \
    -f secrets.yaml \
    > k8s/manifests-from-helm-template.yaml
  forge build manifest
  kubectl apply -f  .forge/k8s/$service_name/manifests-from-helm-template.yaml --prune ...

Basically, it works like:

  • forge computes and passes dynamic values(like image tag) to helm
  • Then, helm(-secrets) combines decrypted secrets + raw config values to produce forge-style k8s manifests under k8s/.
  • forge renders k8s manifests into .forge/k8s/$service_name/manifests-from-helm-template.yaml.
  • kubectl apply to apply the rendered k8s manifests into the cluster
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment