update deploy script

This commit is contained in:
Fam Zheng 2025-11-03 07:20:32 +08:00
parent 8b4c7ee283
commit b9e2a80636
2 changed files with 23 additions and 6 deletions

View File

@ -76,14 +76,10 @@ build/%: %
cp -a $^ $@
deploy-api-dev:
curl -X POST https://euphon-alert-23358.famzheng.workers.dev/ -d 'Deploying Emblem API to dev: $(IMAGE)'
kubectl --kubeconfig deploy/kubeconfig.dev set image deploy api emblem=$(IMAGE)
kubectl --kubeconfig deploy/kubeconfig.dev rollout status --timeout=1h deploy api
./scripts/deploy.sh deploy/kubeconfig.dev $(IMAGE)
deploy-api-prod:
curl -X POST https://euphon-alert-23358.famzheng.workers.dev/ -d 'Deploying Emblem API to prod: $(IMAGE)'
kubectl --kubeconfig deploy/kubeconfig.themblem set image deploy api emblem=$(IMAGE)
kubectl --kubeconfig deploy/kubeconfig.themblem rollout status --timeout=1h deploy api
./scripts/deploy.sh deploy/kubeconfig.themblem $(IMAGE)
test: FORCE
cd api; ./manage.py migrate && ./manage.py test tests

21
scripts/deploy.sh Executable file
View File

@ -0,0 +1,21 @@
#!/bin/bash
set -e
KUBECONFIG=$1
IMAGE=$2
if [ -z "$KUBECONFIG" ] || [ -z "$IMAGE" ]; then
echo "Usage: $0 <kubeconfig> <image>"
exit 1
fi
OLD_IMAGE=$(kubectl --kubeconfig $KUBECONFIG get deploy api -o jsonpath='{.spec.template.spec.containers[0].image}' 2>/dev/null)
if [ -z "$OLD_IMAGE" ]; then
echo "Error: Failed to get old image"
exit 1
fi
curl -X POST https://euphon-alert-23358.famzheng.workers.dev/ -d "Deploying Emblem API with $KUBECONFIG: $OLD_IMAGE -> $IMAGE"
kubectl --kubeconfig $KUBECONFIG set image deploy api emblem=$IMAGE
kubectl --kubeconfig $KUBECONFIG rollout status --timeout=1h deploy api