Skip to content

Merge pull request #39 from Codespice1/develop #13

Merge pull request #39 from Codespice1/develop

Merge pull request #39 from Codespice1/develop #13

# Docs for the Azure Web Apps Deploy action: https://github.com/Azure/webapps-deploy
# More GitHub Actions for Azure: https://github.com/Azure/actions
name: Build and deploy container app to Azure Web App - finance-accumulator-web-app
on:
push:
branches:
- staging
workflow_dispatch:
jobs:
build:
runs-on: 'ubuntu-latest'
steps:
- uses: actions/checkout@v2
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2
- name: Cache Docker layers
uses: actions/cache@v3
with:
path: /tmp/.buildx-cache
key: ${{ runner.os }}-buildx-${{ hashFiles('**/Dockerfile') }}
restore-keys: |
${{ runner.os }}-buildx-
- name: Log in to registry
uses: docker/login-action@v2
with:
registry: https://codespice.azurecr.io/
username: ${{ secrets.AzureAppService_ContainerUsername_7669d7e7e983475bb9b74548501f3331 }}
password: ${{ secrets.AzureAppService_ContainerPassword_e164ffea54304645b9f20458582c99b2 }}
- name: Build, cache and push container image to registry
uses: docker/build-push-action@v3
with:
push: true
tags: codespice.azurecr.io/${{ secrets.AzureAppService_ContainerUsername_7669d7e7e983475bb9b74548501f3331 }}/finance_accumulator_web:${{ github.sha }}
file: ./docker/staging/Dockerfile
cache-from: type=local,src=/tmp/.buildx-cache
cache-to: type=local,dest=/tmp/.buildx-cache,new=true
build-args: |
STRIPE_KEY=${{ secrets.STRIPE_KEY }}
NEXTAUTH_URL=${{ secrets.NEXTAUTH_URL }}
NEXTAUTH_SECRET=${{ secrets.NEXTAUTH_SECRET }}
AUTH_GITHUB_ID=${{ secrets.AUTH_GITHUB_ID }}
AUTH_GITHUB_SECRET=${{ secrets.AUTH_GITHUB_SECRET }}
GOOGLE_CLIENT_ID=${{ secrets.GOOGLE_CLIENT_ID }}
GOOGLE_CLIENT_SECRET=${{ secrets.GOOGLE_CLIENT_SECRET }}
deploy:
runs-on: ubuntu-latest
needs: build
environment:
name: 'production'
url: ${{ steps.deploy-to-webapp.outputs.webapp-url }}
steps:
- name: Deploy to Azure Web App
id: deploy-to-webapp
uses: azure/webapps-deploy@v2
with:
app-name: 'finance-accumulator-web-app'
slot-name: 'production'
publish-profile: ${{ secrets.AzureAppService_PublishProfile_44e8474b2d654e6e84c46bcca2c6a90d }}
images: 'codespice.azurecr.io/${{ secrets.AzureAppService_ContainerUsername_7669d7e7e983475bb9b74548501f3331 }}/finance_accumulator_web:${{ github.sha }}'