aboutsummaryrefslogtreecommitdiffstats
path: root/.github/workflows/build-deploy.yaml
diff options
context:
space:
mode:
authorGravatar Sebastiaan Zeeff <[email protected]>2020-11-24 00:30:22 +0100
committerGravatar Sebastiaan Zeeff <[email protected]>2020-11-24 00:30:22 +0100
commitad84a56bf14f4c491d43f67abb6895c13dfb02e5 (patch)
tree52d3f88cb388a0e03d28ca111fcf614049d184f6 /.github/workflows/build-deploy.yaml
parentChange seasonalbot to sir-lancebot in test data (diff)
Restructure Build & Deploy sequence in CI
I've restructured the build & deploy sequence in our GitHub Actions CI workflow: - There's now a separate workflow to deploy to our cluster - The Build workflow has an additional `if` check to ensure we're only starting the build & deploy sequences for pushes to master - We now checkout the python-discord/kubernetes repo to fetch the deployment.yaml file located in there
Diffstat (limited to '.github/workflows/build-deploy.yaml')
-rw-r--r--.github/workflows/build-deploy.yaml70
1 files changed, 0 insertions, 70 deletions
diff --git a/.github/workflows/build-deploy.yaml b/.github/workflows/build-deploy.yaml
deleted file mode 100644
index c00f7f6a..00000000
--- a/.github/workflows/build-deploy.yaml
+++ /dev/null
@@ -1,70 +0,0 @@
-name: Build & Deploy
-
-on:
- workflow_run:
- workflows: ["Lint & Test"]
- branches:
- - master
- types:
- - completed
-
-jobs:
- build-and-deploy:
- name: Build and Deploy to Kubernetes
- if: github.event.workflow_run.conclusion == 'success'
- runs-on: ubuntu-latest
-
- steps:
- # Create a commit SHA-based tag for the container repositories
- - name: Create SHA Container Tag
- id: sha_tag
- run: |
- tag=$(cut -c 1-7 <<< $GITHUB_SHA)
- echo "::set-output name=tag::$tag"
-
- - name: Checkout code
- uses: actions/checkout@v2
-
- # The current version (v2) of Docker's build-push action uses
- # buildx, which comes with BuildKit features that help us speed
- # up our builds using additional cache features. Buildx also
- # has a lot of other features that are not as relevant to us.
- #
- # See https://github.com/docker/build-push-action
- - name: Set up Docker Buildx
- uses: docker/setup-buildx-action@v1
-
- - name: Login to Github Container Registry
- uses: docker/login-action@v1
- with:
- registry: ghcr.io
- username: ${{ secrets.GHCR_USER }}
- password: ${{ secrets.GHCR_TOKEN }}
-
- # Build the container, including an inline cache manifest to
- # allow us to use the registry as a cache source.
- - name: Build and push
- uses: docker/build-push-action@v2
- with:
- context: .
- file: ./Dockerfile
- push: true
- cache-from: type=registry,ref=ghcr.io/python-discord/site:latest
- cache-to: type=inline
- tags: |
- ghcr.io/python-discord/site:latest
- ghcr.io/python-discord/site:${{ steps.sha_tag.outputs.tag }}
-
- - name: Authenticate with Kubernetes
- uses: azure/k8s-set-context@v1
- with:
- method: kubeconfig
- kubeconfig: ${{ secrets.KUBECONFIG }}
-
- - name: Deploy to Kubernetes
- uses: Azure/k8s-deploy@v1
- with:
- manifests: |
- deployment.yaml
- images: 'ghcr.io/python-discord/site:${{ steps.sha_tag.outputs.tag }}'
- kubectl-version: 'latest'