name: "Build and deploy app" on: workflow_dispatch: push: branches: - "main" env: "IMAGE": "ghcr.io/${{ github.repository }}:${{ github.sha }}" defaults: run: working-directory: frontend jobs: "build": name: "build" runs-on: "ubuntu-latest" steps: - uses: "actions/checkout@v3" - uses: "actions/setup-node@v3" with: node-version: "18" - name: "Install dependencies" run: "yarn" - name: "Build app" run: "yarn run build" - name: "Login to GitHub Docker Registry" uses: "docker/login-action@v1" with: "registry": "ghcr.io" "username": "${{ github.actor }}" "password": "${{ secrets.GITHUB_TOKEN }}" - name: "Build and push Docker" uses: "docker/build-push-action@v2" with: context: . file: Dockerfile tags: "${{ env.IMAGE }}" push: "true" "deploy": name: "Deploy app" needs: "build" runs-on: "ubuntu-latest" steps: - uses: "actions/checkout@v3" - name: "Deploy app" uses: "nais/deploy/actions/deploy@v1" env: "APIKEY": "${{ secrets.NAIS_DEPLOY_APIKEY }}" "CLUSTER": "dev-gcp" "RESOURCE": "nais.yml"