56 lines
1.9 KiB
YAML
56 lines
1.9 KiB
YAML
name: refresh-contributors-wall
|
|
|
|
on:
|
|
# Daily refresh keeps the contributors wall CDN cache moving even when
|
|
# contributor data changes outside pull request merges.
|
|
schedule:
|
|
- cron: '0 1 * * *'
|
|
# Manual trigger: Use when you need to force-refresh the contributors wall
|
|
# outside the daily schedule (e.g., after a bulk contributor update or
|
|
# after fixing the cache_bust pattern in README files).
|
|
workflow_dispatch:
|
|
|
|
permissions:
|
|
contents: write
|
|
pull-requests: write
|
|
|
|
concurrency:
|
|
group: refresh-contributors-wall
|
|
cancel-in-progress: true
|
|
|
|
jobs:
|
|
refresh:
|
|
name: Refresh contributors wall cache bust
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v6.0.2
|
|
|
|
- name: Refresh cache bust date
|
|
run: |
|
|
DATE="$(date -u +%F)"
|
|
MATCHES="$(perl -0ne '$count += () = /cache_bust=\d{4}-\d{2}-\d{2}/g; END { print $count + 0 }' README*.md)"
|
|
if [ "$MATCHES" -eq 0 ]; then
|
|
echo "Warning: No cache_bust patterns found. README format may have changed."
|
|
exit 1
|
|
fi
|
|
perl -0pi -e "s/cache_bust=\d{4}-\d{2}-\d{2}/cache_bust=$DATE/g" README*.md
|
|
|
|
- name: Create refresh pull request
|
|
uses: peter-evans/create-pull-request@v8
|
|
with:
|
|
# Auth mirrors the metrics workflow: prefer a repository token that can
|
|
# create pull requests, with GITHUB_TOKEN as a fallback for repos where
|
|
# Actions-created PRs are allowed.
|
|
token: ${{ secrets.METRICS_TOKEN || secrets.GITHUB_TOKEN }}
|
|
add-paths: 'README*.md'
|
|
branch: automation/refresh-contributors-wall
|
|
delete-branch: true
|
|
commit-message: 'docs(readme): refresh contributors wall'
|
|
title: 'docs(readme): refresh contributors wall'
|
|
body: |
|
|
Refreshes the contributors wall cache bust date in README files.
|
|
|
|
Generated by the scheduled `refresh-contributors-wall` workflow.
|