Files
ghstats/action.yml
T
tiennm99 7c081ac591 feat: let commits-per-repo 0 mean every commit
The pagination guard broke on seen >= maxPerRepo, so a cap of 0 stopped
before the first page and rendered empty productive-time,
productive-weekday and most-commit-language cards. That inverted the
meaning 0 carries for top-repos, where it already means unlimited.

Treat a cap of 0 or less as no cap. Verified against a real repo: a cap
of 100 still stops at 100, while 500 and 0 both walk the full 382-commit
history.
2026-08-13 14:19:41 +07:00

81 lines
2.6 KiB
YAML

name: ghstats-cards
description: Generate GitHub profile summary SVG cards (profile, languages, stats, productive time, contributions)
author: tiennm99
branding:
icon: bar-chart-2
color: purple
inputs:
user:
description: GitHub username to summarize
required: true
token:
description: |
Personal access token (classic PAT) with at least `read:user` and `repo` scopes.
The default GITHUB_TOKEN works for public repos but has no access to private stats.
required: false
default: ${{ github.token }}
out:
description: Output directory for the generated SVG cards
required: false
default: output
themes:
description: Comma-separated theme ids, or `all` to render every theme
required: false
default: dracula
tz:
description: IANA timezone for the productive-time heatmap (e.g. Asia/Saigon)
required: false
default: UTC
start_of_week:
description: First day of week for heatmap rows and weekday bars (sunday|monday|tuesday|…)
required: false
default: sunday
top_repos:
description: Optional cap on seed repos probed for commit history (0 = unlimited)
required: false
default: "0"
commits_per_repo:
description: Max commits sampled per repo, `0` for every commit (covers last-year and all-time aggregates)
required: false
default: "500"
include_forks:
description: Include forked repos in stats and commit probing
required: false
default: "true"
include_private:
description: Include private repos (requires PAT with repo scope; silently no-op otherwise)
required: false
default: "true"
include_org_repos:
description: |
Count org-owned repos you administer toward stars, repo count, repos-per-language
and top-starred. Off by default because it changes those totals; commit-based cards
already include org repos either way. Needs a PAT with `read:org`.
required: false
default: "false"
commit_changes:
description: Whether to commit the generated cards back to the repo
required: false
default: "false"
commit_message:
description: Commit message used when commit_changes is true
required: false
default: "chore: update ghstats cards"
commit_branch:
description: Branch to commit to (defaults to the current ref)
required: false
default: ""
author_name:
description: Git author name for auto-commit
required: false
default: "github-actions[bot]"
author_email:
description: Git author email for auto-commit
required: false
default: "41898282+github-actions[bot]@users.noreply.github.com"
runs:
using: docker
image: Dockerfile