Skip to content

Orchestrate ETL, data processing pipeline for Hacktoberfest PR statistical analysis. Exclusive to October and GitHub PRs.

License

Notifications You must be signed in to change notification settings

Hacktoberfest-Stats/hacktoberfest-stats-tap

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 

Repository files navigation

GitHub Hacktoberfest Stats "Tap"

Not for code contributions - the source code is remote.

Orchestrate ETL and data processing pipeline for Hacktoberfest GitHub PR statistical analysis:

  • Regularly between YYYY-09-30-10:00:00 and YYYY-11-01-14:00:00 UTC for
    • valid PRs merged to repos
    • accepted valid PRs not merged to repos
  • Valid PRs are
    • to repositories with the hacktoberfest topic or have the hacktoberfest-accepted label, and
    • created between YYYY-09-30-10:00:00 and YYYY-11-01-14:00:00 UTC, and
    • not be labelled either spam or invalid if not labelled hacktoberfest-accepted, and
    • not a draft PR
  • Accepted PRs must be valid and, between YYYY-09-30-10:00:00 and YYYY-11-01-14:00:00 UTC, either
    • merged, or
    • open and labelled with hacktoberfest-accepted
  • Excludes PR review acceptance criteria on assumption of being merged if all code owners approve
  • Does not account for PR disqualification aside for PR labels spam and invalid
  • Assumes included repositories meet other requirements to be valid for hacktoberfest
    • includes fork repos, owned by PR creators or not, assuming they meet acceptance criteria
    • accepted PR data for repos removed following API-fetching day(s) will be included in the stats

Instructions

  • For i in {1,...,4}, create a repository Action named GH_TOKEN_<i> using a unique personal access token with:
    • Public repositories
    • note: i must match the job matrix in .github/workflows/sync_parallel_step.yml
  • Create a repository Action named REPO_NAME using the <owner/repository> name the source code is hosted in.
  • Create a repository Action named REPO_TOKEN using a personal access token with:
    • the Resource owner matching the owner in the <owner/repository> name set to the REPO_NAME action
    • Only select repositories:
      • the repository matching the <owner/repository> name set to REPO_NAME
    • Add permissions:
      • Contents:
        • Read and write
  • Create a repository Action named KEY using a base64-encoded random key 🔑:
    base64.urlsafe_b64encode(key=os.urandom(32)).decode()

About

Orchestrate ETL, data processing pipeline for Hacktoberfest PR statistical analysis. Exclusive to October and GitHub PRs.

Resources

License

Stars

Watchers

Forks