Updated CI kubernetes deploy environment perperation

This commit is contained in:
2024-02-11 11:16:06 +01:00
parent a9957a43b8
commit fde88fd655
2 changed files with 15 additions and 15 deletions

View File

@@ -12,7 +12,7 @@ steps:
image: plugins/docker image: plugins/docker
settings: settings:
registry: ghcr.io registry: ghcr.io
repo: ghcr.io/kevinmidboe/cloudflare-ddns repo: ghcr.io/kevinmidboe/${DRONE_REPO_NAME}
dockerfile: Dockerfile dockerfile: Dockerfile
username: username:
from_secret: GITHUB_USERNAME from_secret: GITHUB_USERNAME
@@ -43,9 +43,15 @@ platform:
steps: steps:
- name: Prepare kubernetes environment - name: Prepare kubernetes environment
image: alpine/k8s:1.25.15 image: alpine/k8s:1.25.15
environment:
VAULT_TOKEN:
from_secret: VAULT_TOKEN
VAULT_HOST:
from_secret: VAULT_HOST
commands: commands:
- mkdir -p /root/.kube - mkdir -p /root/.kube
- echo "NAMESPACE=${DRONE_REPO_NAME}" > /root/.kube/variables.env - echo "IMAGE=ghcr.io/kevinmidboe/${DRONE_REPO_NAME}:${DRONE_COMMIT_SHA}" > /root/.kube/.env
- echo "NAMESPACE=${DRONE_REPO_NAME}" >> /root/.kube/.env
- 'curl -s - 'curl -s
-H "X-Vault-Token: $VAULT_TOKEN" -H "X-Vault-Token: $VAULT_TOKEN"
$VAULT_HOST/v1/schleppe/data/kazan/_infra $VAULT_HOST/v1/schleppe/data/kazan/_infra
@@ -53,16 +59,13 @@ steps:
- 'curl -s - 'curl -s
-H "X-Vault-Token: $VAULT_TOKEN" -H "X-Vault-Token: $VAULT_TOKEN"
$VAULT_HOST/v1/schleppe/data/kazan/_infra $VAULT_HOST/v1/schleppe/data/kazan/_infra
| jq -r ".data | .data | .[\"ghcr-login-secret\"]" > /root/.kube/dockerconfig.json' | jq -cr ".data.data | .[\"ghcr-login-secret\"] | @base64" > /root/.kube/dockerconfig.json'
- echo "DOCKER_CONFIG=$(cat /root/.kube/dockerconfig.json)" >> /root/.kube/.env
- 'curl -s - 'curl -s
-H "X-Vault-Token: $VAULT_TOKEN" -H "X-Vault-Token: $VAULT_TOKEN"
$VAULT_HOST/v1/schleppe/data/kazan/${DRONE_REPO_NAME} $VAULT_HOST/v1/schleppe/data/kazan/${DRONE_REPO_NAME}
| jq -cr ".data.data | to_entries[] | .key + \"=\" + (.value | @base64)" >> /root/.kube/variables.env' | jq -cr ".data.data | to_entries[] | .key + \"=\" + (.value | @base64)" >> /root/.kube/.env'
environment: - sed -i '/^$/!s/^/export /' /root/.kube/.env
VAULT_TOKEN:
from_secret: VAULT_TOKEN
VAULT_HOST:
from_secret: VAULT_HOST
volumes: volumes:
- name: kube-config - name: kube-config
path: /root/.kube path: /root/.kube
@@ -70,10 +73,7 @@ steps:
- name: Deploy to kubernetes - name: Deploy to kubernetes
image: alpine/k8s:1.25.15 image: alpine/k8s:1.25.15
commands: commands:
- export DOCKER_CONFIG_BASE64=$(cat /root/.kube/dockerconfig.json | tr -d "\n\t " | base64 -w 0) - source /root/.kube/.env > /dev/null 2>&1
- export IMAGE="ghcr.io/kevinmidboe/${DRONE_REPO_NAME}:${DRONE_COMMIT_SHA}"
- sed -i '/^$/!s/^/export /' /root/.kube/variables.env
- source /root/.kube/variables.env > /dev/null 2>&1
- cat .kubernetes/*.yml - cat .kubernetes/*.yml
| envsubst | envsubst
| kubectl --kubeconfig=/root/.kube/config apply -f - | kubectl --kubeconfig=/root/.kube/config apply -f -
@@ -99,6 +99,6 @@ volumes:
--- ---
kind: signature kind: signature
hmac: 4b290c54b9fb5f4951a6501ce97c14ffb79fd57464547e4dda75560ed0d57e7c hmac: d3088aaf784f4eaac3223f43a86a19bfccff416fd854351c527d785002ae2c26
... ...

View File

@@ -5,5 +5,5 @@ metadata:
name: ghcr-login-secret name: ghcr-login-secret
namespace: ${NAMESPACE} namespace: ${NAMESPACE}
data: data:
.dockerconfigjson: ${DOCKER_CONFIG_BASE64} .dockerconfigjson: ${DOCKER_CONFIG}
type: kubernetes.io/dockerconfigjson type: kubernetes.io/dockerconfigjson