name: CI-verify-outputs

on:
  pull_request:
    types:
      - assigned
      - review_requested
  push:
    branches: 
      - main
    paths:
      - '.github/workflows/**'
      - 'dist/**'

jobs:
  check:
    runs-on: ubuntu-latest
    steps:
    - name: Checkout sources
      uses: actions/checkout@v2
    - name: Build
      run: |
        npm install
        npm run all

    - name: Compare the expected and actual dist/ directories
      run: |
        if [ "$(git diff --ignore-space-at-eol dist/ | wc -l)" -gt "0" ]; then
          echo "Detected uncommitted changes after build.  See status below:"
          git diff
          exit 1
        fi
      id: diff

    # If index.js was different than expected, upload the expected version as an artifact
    - uses: actions/upload-artifact@v2
      if: ${{ failure() && steps.diff.conclusion == 'failure' }}
      with:
        name: dist
        path: dist/
