name: Update 3rd-party assets (daily)

on:
  schedule:
    - cron: "29 4 * * *"
  workflow_dispatch:

permissions:
  contents: read

jobs:
  publish:
    permissions:
      contents: write  # for Git to git push
    name: Update 3rd-party assets
    runs-on: ubuntu-latest
    steps:
      - name: Repo check
        run: |
          if [[ "$GITHUB_REPOSITORY_OWNER" != "uBlockOrigin" ]]; then
            echo "This GitHub Action is meant to deliver filter lists for uBO."
            echo "You shouldn't need to run this GitHub Action in your fork."
            echo "If you do, please customize the cron expression above."
            exit 1
          fi
          exit 0
      - name: Clone uAssets
        uses: actions/checkout@v3
      - name: Fetch 3rd-party assets
        run: |
          ./tools/update-3rdparties.sh
      - name: Commit changes, if any
        run: |
          if [[ -n $(git diff) ]]; then
            git config user.name "github-actions bot"
            git config user.email "<>"
            git add -u thirdparties/
            git commit -m "Update all 3rd-party assets"
            git push origin master
          fi
