Add a new picture
This commit is contained in:
parent
0082c9905f
commit
18b5c8811c
@ -316,9 +316,32 @@ First, let's set environment variables:
|
|||||||
|
|
||||||
So after setting all these variables, I can use `envsubst < ./kube/template.yaml` to create a correct generator. After that I only need to append it to one that is already in k8s. *And not to append if it's already there*.
|
So after setting all these variables, I can use `envsubst < ./kube/template.yaml` to create a correct generator. After that I only need to append it to one that is already in k8s. *And not to append if it's already there*.
|
||||||
|
|
||||||
So let's design out pipeline:
|
So my pipeline for a non-main branch looks like that:
|
||||||
|
```YAML
|
||||||
|
- name: Deploy a preview ApplicationSet
|
||||||
|
image: alpine/k8s:1.24.10
|
||||||
|
when:
|
||||||
|
branch:
|
||||||
|
exclude:
|
||||||
|
- main
|
||||||
|
environment:
|
||||||
|
KUBECONFIG_CONTENT:
|
||||||
|
from_secret: KUBECONFIG_CONTENT
|
||||||
|
commands:
|
||||||
|
- mkdir $HOME/.kube
|
||||||
|
- echo $KUBECONFIG_CONTENT | base64 -d > $HOME/.kube/config
|
||||||
|
- apk update --no-cache && apk add yq gettext
|
||||||
|
- export ARGO_APP_CHART_VERSION=`cat chart/Chart.yaml | yq '.version'`
|
||||||
|
- export ARGO_APP_BRANCH=$DRONE_BRANCH
|
||||||
|
- export ARGO_APP_HOSTNAME="${DRONE_BRANCH}-dev.badhouseplants.net"
|
||||||
|
- export ARGO_APP_IMAGE_TAG=$DRONE_COMMIT_SHA
|
||||||
|
- kubectl get -f ./kube/applicationset.yaml -o yaml > /tmp/old_appset.yaml
|
||||||
|
- yq "del(.spec.generators[].list.elements[] | select(.name == \"$ARGO_APP_BRANCH\"))" /tmp/old_appset.yaml > /tmp/clean_appset.yaml
|
||||||
|
- envsubst < ./kube/template.yaml > /tmp/elements.yaml
|
||||||
|
- yq '.spec.generators[].list.elements += load("/tmp/elements.yaml")' /tmp/clean_appset.yaml > /tmp/new_appset.yaml
|
||||||
|
- kubectl apply -f /tmp/new_appset.yaml
|
||||||
|
```
|
||||||
|
|
||||||
1. Get an application set is currently deployed to k8s
|
And even though it's very ugly, I already like it. Because it's working
|
||||||
```BASH
|
|
||||||
kubectl get application-set
|
![Drone pipeline result](/dyn-envs/drone-pipeline.png)
|
||||||
```
|
|
Reference in New Issue
Block a user