From f3d84485da9b61759c5171a55d0501ed20917dca Mon Sep 17 00:00:00 2001 From: Martin McKeaveney Date: Thu, 26 May 2022 13:58:17 +0100 Subject: [PATCH] CI job for staging deploy --- .github/workflows/release-develop.yml | 53 +++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) diff --git a/.github/workflows/release-develop.yml b/.github/workflows/release-develop.yml index d4050ab40e..324774cde5 100644 --- a/.github/workflows/release-develop.yml +++ b/.github/workflows/release-develop.yml @@ -72,3 +72,56 @@ jobs: env: DOCKER_USER: ${{ secrets.DOCKER_USERNAME }} DOCKER_PASSWORD: ${{ secrets.DOCKER_API_KEY }} + + - name: Get the latest budibase release version + id: version + run: | + release_version=$(cat lerna.json | jq -r '.version') + echo "RELEASE_VERSION=$release_version" >> $GITHUB_ENV + + - name: Tag and release Proxy service docker image + run: | + docker login -u $DOCKER_USER -p $DOCKER_PASSWORD + yarn build:docker:proxy:preprod + docker tag proxy-service budibase/proxy:$STAGING_TAG + docker push budibase/proxy:$STAGING_TAG + env: + DOCKER_USER: ${{ secrets.DOCKER_USERNAME }} + DOCKER_PASSWORD: ${{ secrets.DOCKER_API_KEY }} + STAGING_TAG: k8s-staging + + - name: Pull values.yaml from budibase-infra + run: | + curl -H "Authorization: token ${{ secrets.GH_PERSONAL_TOKEN }}" \ + -H 'Accept: application/vnd.github.v3.raw' \ + -o values.preprod.yaml \ + -L https://api.github.com/repos/budibase/budibase-infra/contents/kubernetes/budibase-staging/values.yaml + wc -l values.staging.yaml + + - name: Deploy to Staging Environment + uses: glopezep/helm@v1.7.1 + with: + release: budibase-staging + namespace: budibase + chart: charts/budibase + token: ${{ github.token }} + helm: helm3 + values: | + globals: + appVersion: v${{ env.RELEASE_VERSION }} + ingress: + enabled: true + nginx: true + value-files: >- + [ + "values.staging.yaml" + ] + env: + KUBECONFIG_FILE: '${{ secrets.STAGING_KUBECONFIG }}' + + - name: Discord Webhook Action + uses: tsickert/discord-webhook@v4.0.0 + with: + webhook-url: ${{ secrets.PROD_DEPLOY_WEBHOOK_URL }} + content: "Preprod Deployment Complete: ${{ env.RELEASE_VERSION }} deployed to Budibase Staging." + embed-title: ${{ env.RELEASE_VERSION }} \ No newline at end of file