Skip to content

Instantly share code, notes, and snippets.

@danopia
Last active May 21, 2019 00:37
Show Gist options
  • Save danopia/393d71665c9db6b5777d988e68f468af to your computer and use it in GitHub Desktop.
Save danopia/393d71665c9db6b5777d988e68f468af to your computer and use it in GitHub Desktop.
one-command kubernetes application build&deploy
apiVersion: batch/v1
kind: Job
metadata:
name: push-dust-server
labels:
purpose: build
spec:
ttlSecondsAfterFinished: 30
template:
spec:
containers:
- name: docker
image: gcr.io/stardust-156404/build-shell:latest
securityContext:
privileged: true
args:
- bash
- -exc
- >
dockerd --host=unix:///var/run/docker.sock &
git clone https://github.com/stardustapp/dust-server
;cd dust-server
;GitHash="$(git describe --always --long --dirty)"
;Image="gcr.io/stardust-156404/dust-server"
;GitImage="$Image:$GitHash"
;docker build --build-arg GitHash="$GitHash" -t "$GitImage" .
;docker push "$GitImage"
;docker tag "$GitImage" "$Image:latest"
;docker push "$Image:latest"
;kubectl set image deployment.v1.apps/dust-server dust-server="$GitImage"
;kubectl delete job push-dust-server
restartPolicy: Never
nodeSelector:
purpose: build
tolerations:
- key: cloud.google.com/gke-preemptible
operator: Equal
value: "true"
effect: NoSchedule
backoffLimit: 1
$ kubectl create -f push-dust-server.yaml; and kubectl get pods --watch
job.batch/push-dust-server created
NAME READY STATUS RESTARTS AGE
dust-server-f85f867f4-t2m2t 1/1 Running 6 19h
push-dust-server-pqxs9 0/1 Pending 0 0s
push-dust-server-pqxs9 0/1 Pending 0 23s
push-dust-server-pqxs9 0/1 ContainerCreating 0 23s
push-dust-server-pqxs9 1/1 Running 0 60s
dust-server-6bdfdccdc5-sb7xw 0/1 Pending 0 0s
dust-server-6bdfdccdc5-sb7xw 0/1 Pending 0 0s
dust-server-6bdfdccdc5-sb7xw 0/1 ContainerCreating 0 0s
push-dust-server-pqxs9 1/1 Terminating 0 2m44s
push-dust-server-pqxs9 0/1 Terminating 0 2m45s
push-dust-server-pqxs9 0/1 Terminating 0 2m53s
push-dust-server-pqxs9 0/1 Terminating 0 2m53s
dust-server-6bdfdccdc5-sb7xw 0/1 Running 0 17s
dust-server-6bdfdccdc5-sb7xw 1/1 Running 0 43s
dust-server-f85f867f4-t2m2t 1/1 Terminating 6 19h
dust-server-f85f867f4-t2m2t 0/1 Terminating 6 19h
dust-server-f85f867f4-t2m2t 0/1 Terminating 6 19h
dust-server-f85f867f4-t2m2t 0/1 Terminating 6 19h
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment