name: Maintenance

on:
  # So that PRs touching the same files as the push are updated
  push:
    branches:
      - master
      - next
  # So that the `dirtyLabel` is removed if conflicts are resolved
  # Could put too much strain on rate limit
  # If we hit the rate limit too often remove this event
  pull_request_target:
    branches:
      - master
      - next
    types: [synchronize]

permissions: {}

jobs:
  main:
    # l10nbot creates a lot of commits at once which starves CI.
    # We rely on other pushes to mark these branches as outdated.
    if: ${{ github.actor != 'l10nbot' }}
    runs-on: ubuntu-latest
    permissions:
      contents: read
      pull-requests: write
    steps:
      - run: echo "${{ github.actor }}"
      - name: check if prs are dirty
        uses: eps1lon/actions-label-merge-conflict@fd1f295ee7443d13745804bc49fe158e240f6c6e # v2.1.0
        with:
          dirtyLabel: 'PR: out-of-date'
          removeOnDirtyLabel: 'PR: ready to ship'
          repoToken: '${{ secrets.GITHUB_TOKEN }}'
          retryAfter: 130
          retryMax: 10