name: ncc

on:
  repository_dispatch:
    types:
      - 'ncc'
  push:
    branches:
      - 'master'
    paths-ignore:
      - '**.md'

jobs:
  ncc:
    runs-on: ubuntu-latest
    steps:
      -
        name: Checkout
        uses: actions/checkout@v2
      -
        name: Build
        run: |
          npm install
          npm run format
          npm run build
      -
        name: Set up Git
        env:
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
        run: |
          git config user.name GitHub
          git config user.email noreply@github.com
          git remote set-url origin https://x-access-token:${GITHUB_TOKEN}@github.com/${GITHUB_REPOSITORY}.git
      -
        name: Commit and push changes
        run: |
          git add .
          if output=$(git status --porcelain) && [ ! -z "$output" ]; then
            git commit --author "github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>" --message "Update generated content"
            git push
          fi