Skip to content

Update Entur packages #286

Update Entur packages

Update Entur packages #286

# This file was auto-generated by the Firebase CLI
# https://github.com/firebase/firebase-tools
name: Build and deploy
'on':
push:
branches:
- master
jobs:
build:
steps:
- uses: actions/checkout@v3
- name: Cache node modules
id: cache-npm
uses: actions/cache@v3
env:
cache-name: cache-node-modules
with:
# npm cache files are stored in `~/.npm` on Linux/macOS
path: ~/.npm
key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.os }}-build-${{ env.cache-name }}-
${{ runner.os }}-build-
${{ runner.os }}-
- if: ${{ steps.cache-npm.outputs.cache-hit == 'false' }}
name: List the state of node modules
continue-on-error: true
run: npm list
- run: npm ci
- run: npm run check
- run: npm run test -- --coverage
- name: SonarQube Scan
uses: sonarsource/sonarqube-scan-action@master
env:
SONAR_TOKEN: ${{ secrets.ENTUR_SONAR_PASSWORD }}
SONAR_HOST_URL: https://sonarcloud.io
with:
args: >
-Dsonar.organization=enturas-github
-Dsonar.projectKey=entur_udug
-Dsonar.sources=src
-Dsonar.tests=src
-Dsonar.test.inclusions=src/**/*.test.ts
-Dsonar.typescript.lcov.reportPaths=coverage/lcov.info
- run: npm run build
env:
REACT_APP_VERSION: ${{ github.sha }}
- name: Archive production artifacts
uses: actions/upload-artifact@v3
with:
name: build
path: |
build
runs-on: ubuntu-latest
deploy_dev:
runs-on: ubuntu-latest
needs: [build]
environment: 'dev'
steps:
- uses: actions/checkout@v3
- name: Download all workflow run artifacts
uses: actions/download-artifact@v3
- uses: FirebaseExtended/action-hosting-deploy@v0
with:
repoToken: '${{ secrets.GITHUB_TOKEN }}'
firebaseServiceAccount: '${{ secrets.FIREBASE_SERVICE_ACCOUNT_UDUG_DEV }}'
channelId: live
projectId: udug-dev
deploy_staging:
runs-on: ubuntu-latest
needs: [deploy_dev]
environment: 'staging'
steps:
- uses: actions/checkout@v3
- name: Download all workflow run artifacts
uses: actions/download-artifact@v3
- uses: FirebaseExtended/action-hosting-deploy@v0
with:
repoToken: '${{ secrets.GITHUB_TOKEN }}'
firebaseServiceAccount: '${{ secrets.FIREBASE_SERVICE_ACCOUNT_UDUG_STAGING }}'
channelId: live
projectId: udug-staging
deploy_prod:
runs-on: ubuntu-latest
needs: [deploy_dev, deploy_staging]
environment: 'prod'
steps:
- uses: actions/checkout@v3
- name: Download all workflow run artifacts
uses: actions/download-artifact@v3
- uses: FirebaseExtended/action-hosting-deploy@v0
with:
repoToken: '${{ secrets.GITHUB_TOKEN }}'
firebaseServiceAccount: '${{ secrets.FIREBASE_SERVICE_ACCOUNT_UDUG_PROD }}'
channelId: live
projectId: udug-prod