update deploy script
This commit is contained in:
parent
8b4c7ee283
commit
b9e2a80636
8
Makefile
8
Makefile
@ -76,14 +76,10 @@ build/%: %
|
|||||||
cp -a $^ $@
|
cp -a $^ $@
|
||||||
|
|
||||||
deploy-api-dev:
|
deploy-api-dev:
|
||||||
curl -X POST https://euphon-alert-23358.famzheng.workers.dev/ -d 'Deploying Emblem API to dev: $(IMAGE)'
|
./scripts/deploy.sh deploy/kubeconfig.dev $(IMAGE)
|
||||||
kubectl --kubeconfig deploy/kubeconfig.dev set image deploy api emblem=$(IMAGE)
|
|
||||||
kubectl --kubeconfig deploy/kubeconfig.dev rollout status --timeout=1h deploy api
|
|
||||||
|
|
||||||
deploy-api-prod:
|
deploy-api-prod:
|
||||||
curl -X POST https://euphon-alert-23358.famzheng.workers.dev/ -d 'Deploying Emblem API to prod: $(IMAGE)'
|
./scripts/deploy.sh deploy/kubeconfig.themblem $(IMAGE)
|
||||||
kubectl --kubeconfig deploy/kubeconfig.themblem set image deploy api emblem=$(IMAGE)
|
|
||||||
kubectl --kubeconfig deploy/kubeconfig.themblem rollout status --timeout=1h deploy api
|
|
||||||
|
|
||||||
test: FORCE
|
test: FORCE
|
||||||
cd api; ./manage.py migrate && ./manage.py test tests
|
cd api; ./manage.py migrate && ./manage.py test tests
|
||||||
|
|||||||
21
scripts/deploy.sh
Executable file
21
scripts/deploy.sh
Executable 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
|
||||||
Loading…
x
Reference in New Issue
Block a user