name: Update Publix Suffix List data on: workflow_dispatch: schedule: - cron: "0 0 * * 1" jobs: update-publicsuffix-data: runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 # v3.5.3 - name: Accept all SDK licenses shell: bash run: printf 'y\ny\ny\ny\ny\ny\n' | $ANDROID_HOME/tools/bin/sdkmanager --licenses - name: Get build-tools directory id: build-tools-path shell: bash run: echo "dir=${ANDROID_HOME}/build-tools/34.0.0-rc3" >> "${GITHUB_OUTPUT}" - name: Cache build-tools uses: actions/cache@88522ab9f39a2ea568f7027eddc7d8d8bc9d59c8 # v3 with: path: ${{ steps.build-tools-path.outputs.dir }} key: ${{ runner.os }}-34.0.0-rc3 - name: Set up JDK uses: actions/setup-java@5ffc13f4174014e2d4d4572b3d74c3fa61aeb2c2 # v3.11.0 with: distribution: temurin java-version: 18 - name: Download new publicsuffix data uses: gradle/gradle-build-action@749f47bda3e44aa060e82d7b3ef7e40d953bd629 # v2.4.2 with: arguments: updatePSL gradle-home-cache-cleanup: true - name: Check if PR is required run: if [[ $(git status -s) != '' ]]; then echo "UPDATED=true" >> $GITHUB_ENV; fi - name: Verify update publicsuffixes file uses: gradle/gradle-build-action@749f47bda3e44aa060e82d7b3ef7e40d953bd629 # v2.4.2 if: "${{ env.UPDATED == 'true' }}" with: arguments: :autofill-parser:test -PslimTests gradle-home-cache-cleanup: true - name: Create Pull Request id: cpr uses: peter-evans/create-pull-request@153407881ec5c347639a548ade7d8ad1d6740e38 # v5.0.2 if: "${{ env.UPDATED == 'true' }}" with: author: GitHub Actions base: develop body: This is an automated pull request to update the publicsuffixes file to the latest copy from Mozilla branch: bot/update-psl commit-message: "autofill-parser: update publicsuffixes file" labels: A-PSL, S-automerge title: Update Public Suffix List data token: ${{ secrets.PSL_UPDATE_TOKEN }} - name: Enable automerge for PR if: "${{ steps.cpr.outputs.pull-request-operation == 'created' }}" shell: bash run: | gh pr merge --squash --auto "${PR_URL}" env: GITHUB_TOKEN: ${{ secrets.PSL_UPDATE_TOKEN }} PR_URL: ${{ steps.cpr.outputs.pull-request-url }}