Aam-Digital/ndb-core

View on GitHub
.github/workflows/master-push.yml

Summary

Maintainability
Test Coverage
name: Master Update
on:
  push:
    branches:
      - master

jobs:
  create-and-deploy-compodoc:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3
      - name: Install dependencies
        run: npm install @compodoc/compodoc
      - name: Run compodoc
        run: npm run compodoc
      - name: Deploy on pages
        uses: peaceiris/actions-gh-pages@v3
        with:
          github_token: ${{ secrets.GITHUB_TOKEN }}
          publish_dir: doc/compodoc
          destination_dir: documentation
          force_orphan: true
  run-tests:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3
      - name: Login to DockerHub
        uses: docker/login-action@v2
        with:
          username: ${{ secrets.DOCKER_USERNAME }}
          password: ${{ secrets.DOCKER_PASSWORD }}
      - name: Set up Docker Buildx
        id: buildx
        uses: docker/setup-buildx-action@v2
      - name: Get time of commit
        run: echo "TIME=$(git log -1 --pretty=format:%ct)" >> $GITHUB_ENV
      - name: Run tests and upload coverage
        uses: docker/build-push-action@v3
        with:
          context: ./
          file: ./build/Dockerfile
          builder: ${{ steps.buildx.outputs.name }}
          target: builder
          tags: test-image
          build-args: |
            UPLOAD_COVERAGE=${{ true }}
            GIT_COMMIT_SHA=${{ github.sha }}
            GIT_BRANCH=master
            GIT_COMMITTED_AT=${{ env.TIME }}
            CC_TEST_REPORTER_ID=${{ secrets.CODE_CLIMATE_ID }}
          cache-from: type=gha
          cache-to: type=gha,mode=max
  check-dependencies:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3
      - name: Run Snyk to check for vulnerabilities
        uses: snyk/actions/node@master
        continue-on-error: true # To make sure that SARIF upload gets called
        env:
          SNYK_TOKEN: ${{ secrets.SNYK_TOKEN }}
        with:
          args: --sarif-file-output=snyk.sarif
      - name: Upload result to GitHub Code Scanning
        uses: github/codeql-action/upload-sarif@v2
        with:
          sarif_file: snyk.sarif