name: build-ci

on: [pull_request, push]

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - name: Use Node.js
        uses: actions/setup-node@v3
        with:
          node-version: '16.x'
      - name: Install libraries
        id: setuptools
        run: npm install
        continue-on-error: true
      - name: Build all files
        id: buildall
        run: npm run buildall
        continue-on-error: true
      - name: Failure check
        env:
          STEPS_CONTEXT: ${{ toJson(steps) }}
          DISCORD_WEBHOOK_URL: ${{ secrets.DISCORD_WEBHOOK_URL }}
        if: steps.setuptools.outcome == 'failure' || steps.buildall.outcome == 'failure'
        run: bash ./.github/ci/final-check.sh "$GITHUB_RUN_ID" "failure"
      - name: Success check
        env:
          DISCORD_WEBHOOK_URL: ${{ secrets.DISCORD_WEBHOOK_URL }}
        if: steps.setuptools.outcome == 'success' && steps.buildall.outcome == 'success'
        run: bash ./.github/ci/final-check.sh "$GITHUB_RUN_ID" "success"
