reanme SanityFaneinnhold til Faneinnhold #5680
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: CI/CD (mr-admin-flate) | |
on: | |
push: | |
paths: | |
- .github/workflows/mr-admin-flate.yaml | |
- package.json | |
- package-lock.json | |
- turbo.json | |
- frontend/mr-admin-flate/** | |
- mulighetsrommet-api/src/main/resources/web/openapi.yaml | |
workflow_dispatch: | |
inputs: | |
environment: | |
type: choice | |
description: Environment | |
required: true | |
default: dev | |
options: | |
- dev | |
- dev_and_prod | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref }} | |
cancel-in-progress: true | |
env: | |
CI: true | |
TZ: Europe/Amsterdam | |
jobs: | |
ci: | |
name: CI | |
runs-on: ubuntu-latest | |
container: | |
image: mcr.microsoft.com/playwright:v1.41.1-jammy | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Setup frontend | |
uses: ./.github/actions/setup-frontend | |
- name: Test | |
run: npx turbo run lint test:ci playwright --filter=mr-admin-flate | |
deploy-dev: | |
name: Deploy (dev) | |
runs-on: ubuntu-latest | |
needs: [ci] | |
permissions: | |
id-token: "write" # Used to authenticate with Google Cloud | |
if: github.event_name == 'push' && github.ref_name == 'main' || github.event_name == 'workflow_dispatch' | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Setup frontend | |
uses: ./.github/actions/setup-frontend | |
- name: Build | |
run: npx turbo run build --filter=mr-admin-flate | |
- name: Authenticate to Google Cloud | |
uses: google-github-actions/auth@v2 | |
with: | |
workload_identity_provider: projects/932652929200/locations/global/workloadIdentityPools/github/providers/github-action | |
service_account: [email protected] | |
- name: Set up gcloud | |
uses: google-github-actions/setup-gcloud@v2 | |
- name: Upload files to GCS | |
run: gsutil -m rsync -r /home/runner/work/mulighetsrommet/mulighetsrommet/frontend/mr-admin-flate/dist gs://mr-admin-flate-dev | |
deploy-demo: | |
name: Deploy (demo) | |
runs-on: ubuntu-latest | |
needs: [ci] | |
permissions: | |
id-token: "write" # Used to authenticate with Google Cloud | |
if: github.event_name == 'push' && github.ref_name == 'main' || github.event_name == 'workflow_dispatch' | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Setup frontend | |
uses: ./.github/actions/setup-frontend | |
- name: Build | |
run: npx turbo run build:demo --filter=mr-admin-flate | |
- name: Authenticate to Google Cloud | |
uses: google-github-actions/auth@v2 | |
with: | |
workload_identity_provider: projects/932652929200/locations/global/workloadIdentityPools/github/providers/github-action | |
service_account: [email protected] | |
- name: Set up gcloud | |
uses: google-github-actions/setup-gcloud@v2 | |
- name: Upload files to GCS | |
run: gsutil -m rsync -r /home/runner/work/mulighetsrommet/mulighetsrommet/frontend/mr-admin-flate/dist gs://mr-admin-flate-demo | |
deploy-prod: | |
name: Deploy (prod) | |
runs-on: ubuntu-latest | |
needs: [ci, deploy-dev, deploy-demo] | |
permissions: | |
id-token: "write" # Used to authenticate with Google Cloud | |
if: github.event_name == 'push' && github.ref_name == 'main' || github.event_name == 'workflow_dispatch' && github.event.inputs.environment == 'dev_and_prod' | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Setup frontend | |
uses: ./.github/actions/setup-frontend | |
- name: Build | |
run: npx turbo run build --filter=mr-admin-flate | |
- name: Authenticate to Google Cloud | |
uses: google-github-actions/auth@v2 | |
with: | |
workload_identity_provider: projects/380520190028/locations/global/workloadIdentityPools/github/providers/github-action | |
service_account: prod-deploy@team-mulighetsrommet-prod-5492.iam.gserviceaccount.com | |
- name: Set up gcloud | |
uses: google-github-actions/setup-gcloud@v2 | |
- name: Upload files to GCS | |
run: gsutil -m rsync -r /home/runner/work/mulighetsrommet/mulighetsrommet/frontend/mr-admin-flate/dist gs://mr-admin-flate-prod |