| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566 |
- name: GitHub Repo Stats
- on:
- schedule:
- - cron: "0 23 * * *"
- workflow_dispatch:
- permissions:
- contents: write
- jobs:
- repo-stats:
- name: repo-stats
- runs-on: ubuntu-latest
- steps:
- - name: run-ghrs
- uses: jgehrcke/github-repo-stats@v1.4.2
- with:
- repository: maziggy/bambuddy
- ghtoken: ${{ secrets.GHRS_GITHUB_API_TOKEN }}
- ghpagesprefix: https://maziggy.github.io/bambuddy
- # Inject ghcr.io container-download stats (cumulative + 30-day
- # sparkline merged into a sidecar CSV so the chart grows beyond
- # the 30-day window GHCR exposes). Runs after jgehrcke regenerates
- # report.html on gh-pages.
- - name: checkout-source
- uses: actions/checkout@v4
- with:
- path: source
- # actions/checkout@v4 was hiding the underlying git stderr behind
- # an opaque "exit code 1" even with the same PAT jgehrcke writes
- # gh-pages with. Direct git clone surfaces the real error if
- # anything goes wrong and avoids the wildcard-refspec dance
- # actions/checkout does for fetch-depth=1.
- - name: checkout-gh-pages
- env:
- GH_PAT: ${{ secrets.GHRS_GITHUB_API_TOKEN }}
- run: |
- git clone --branch gh-pages --depth 1 \
- "https://x-access-token:${GH_PAT}@github.com/${{ github.repository }}.git" \
- gh-pages
- cd gh-pages
- git config user.name "github-actions[bot]"
- git config user.email "41898282+github-actions[bot]@users.noreply.github.com"
- - name: inject-ghcr-pulls
- run: |
- python3 source/.github/scripts/ghcr_inject.py \
- --report gh-pages/maziggy/bambuddy/latest-report/report.html \
- --csv gh-pages/maziggy/bambuddy/ghcr-pulls.csv \
- --owner maziggy \
- --pkg bambuddy
- - name: commit-and-push
- working-directory: gh-pages
- run: |
- if [ -z "$(git status --porcelain)" ]; then
- echo "no changes — skipping commit"
- exit 0
- fi
- git add maziggy/bambuddy/latest-report/report.html \
- maziggy/bambuddy/ghcr-pulls.csv
- git commit -m "ghcr-pulls: refresh container downloads chart"
- git push
|