mmflokati/.drone.yml

59 lines
2.3 KiB
YAML

pipeline:
prebuild:
image: golang:1.9
commands:
- IMAGE=dr.dnix.de/$DRONE_REPO_NAME
- REV=$(git rev-list HEAD --count)
- BUILDDATE=$(date)
- BRANCH=$DRONE_COMMIT_BRANCH
- VERSIONGO=version.go
- TAGS=.tags
- echo "Building image $IMAGE:$BRANCH-$REV"
- echo "package main" >$VERSIONGO
- echo "" >>$VERSIONGO
- echo "const (" >>$VERSIONGO
- echo -n " FlokatiVersion = \"" >>$VERSIONGO
- echo -n "$BRANCH" >>$VERSIONGO
- echo "\"" >>$VERSIONGO
- echo -n " FlokatiBuild = \"" >>$VERSIONGO
- echo -n "$REV" >>$VERSIONGO
- echo "\"" >>$VERSIONGO
- echo -n " FlokatiBuilddate = \"" >>$VERSIONGO
- echo -n "$BUILDDATE" >>$VERSIONGO
- echo "\"" >>$VERSIONGO
- echo ")" >>$VERSIONGO
- cat $VERSIONGO
- echo -n "$BRANCH-$REV" >$TAGS
- cat $TAGS
build_docker:
image: plugins/docker
repo: dr.dnix.de/${DRONE_REPO_NAME}
tags:
- latest
deploy:
image: ubuntu:16.04
secrets:
- K8S_SSH_PRIVATE_KEY
- K8S_SSH_PUBLIC_KEY
commands:
- apt update
- apt -y upgrade
- apt install -y git
- IMAGE=dr.dnix.de/$DRONE_REPO_NAME
- BRANCH=$DRONE_COMMIT_BRANCH
- REV=$(git rev-list HEAD --count)
- echo "Deploying image $IMAGE:$BRANCH-$REV"
- cd ~
- mkdir .ssh
- chmod 700 .ssh
- echo "$K8S_SSH_PRIVATE_KEY" >.ssh/id_rsa
- chmod 600 .ssh/id_rsa
- echo "$K8S_SSH_PUBLIC_KEY" >.ssh/id_rsa.pub
- chmod 600 .ssh/id_rsa.pub
- ssh -oStrictHostKeyChecking=no root@master01 "kubectl set image deployment/mmflokati-flokati mmflokati-flokati=dr.dnix.de/mmflokati:$BRANCH-$REV -n northbrigade"
- ssh -oStrictHostKeyChecking=no root@master01 "kubectl set image deployment/mmflokati-armleuchter mmflokati-armleuchter=dr.dnix.de/mmflokati:$BRANCH-$REV -n northbrigade"
- ssh -oStrictHostKeyChecking=no root@master01 "kubectl rollout status deployment/mmflokati-flokati -n northbrigade"
- ssh -oStrictHostKeyChecking=no root@master01 "kubectl rollout status deployment/mmflokati-armleuchter -n northbrigade"