name: Javascript Formatting # This action works with pull requests and pushes on: push: paths: - web/** pull_request_target: paths: - web/** jobs: formatting: name: Javascript code formatting runs-on: ubuntu-latest defaults: run: working-directory: ./web steps: - id: skip_check uses: fkirc/skip-duplicate-actions@v5 with: concurrent_skipping: 'same_content_newer' - name: Checkout uses: actions/checkout@v3 with: # Make sure the actual branch is checked out when running on pull requests ref: ${{ github.event.pull_request.head.ref }} repository: ${{ github.event.pull_request.head.repo.full_name }} fetch-depth: 0 - name: Get changed files id: changed-files uses: tj-actions/changed-files@v37 with: files_yaml: | src: - '**.js' - '**.ts' - '**.tsx' - '**.jsx' - '**.css' - '**.md' - name: Install Dependencies run: npm install - name: Lint if: steps.changed-files.outputs.any_changed == 'true' run: npx eslint --fix ${{ steps.changed-files.outputs.all_changed_files }} - name: Prettier if: steps.changed-files.outputs.any_changed == 'true' run: npx prettier --write ${{ steps.changed-files.outputs.all_changed_files }} - name: Commit changes if: steps.changed-files.outputs.any_changed == 'true' uses: EndBug/add-and-commit@v9 with: author_name: Owncast author_email: owncast@owncast.online message: 'Javascript formatting autofixes' pull: '--rebase --autostash' unused-code: name: Test for unused code runs-on: ubuntu-latest defaults: run: working-directory: ./web steps: - id: skip_check uses: fkirc/skip-duplicate-actions@v5 with: concurrent_skipping: 'same_content_newer' - name: Checkout uses: actions/checkout@v3 with: # Make sure the actual branch is checked out when running on pull requests ref: ${{ github.event.pull_request.head.ref }} repository: ${{ github.event.pull_request.head.repo.full_name }} fetch-depth: 0 - name: Install Dependencies run: npm install - name: Check for unused JS code and dependencies run: npx knip --include dependencies,files,exports