Skip to content

IndrajeetPatil/workflows

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 

Repository files navigation

Reusable GitHub Actions Workflows

Reusable GitHub Actions workflows for IndrajeetPatil repositories.

All external actions are pinned to commit SHAs to prevent supply chain attacks. Most R package workflows are check-only — they validate code but never modify or auto-commit changes. Some workflows do perform deployment or release actions, including pkgdown.yaml, which deploys the pkgdown site to gh-pages, and submit-cran.yaml, which builds a source tarball, creates a GitHub Release, and submits the package to CRAN.

Usage

Reference a reusable workflow from your repository:

on:
  push:
    branches: [main, master]
  pull_request:
    branches: [main, master]

jobs:
  style:
    uses: IndrajeetPatil/workflows/.github/workflows/style.yaml@main

For workflows with inputs:

jobs:
  R-CMD-check:
    uses: IndrajeetPatil/workflows/.github/workflows/R-CMD-check.yaml@main
    with:
      error-on: '"note"'

Python Packages

Workflow Description Inputs
python-docs.yaml Build & deploy Python package documentation to GitHub Pages
python-qa.yaml Code Quality checks, including build, test coverage, and README render
python-release.yaml Create GitHub Release and Publish to PyPI
python-test.yaml Run Tests across multiple OS and Python versions
check-link-rot.yaml Check for broken links using lychee

R Packages

Workflow Description Inputs
R-CMD-check.yaml R CMD check across multiple OS/R versions error-on, extra-packages
R-CMD-check-hard.yaml R CMD check with hard (Imports) dependencies only extra-packages
check-extra.yaml Parallel extra checks: no-warnings, random test order, spelling, link rot, README render extra-packages, http-user-agent
lint.yaml Package linting with {lintr}
pkgdown.yaml Build & deploy pkgdown site; use no-suggests: true for a hard-deps-only CI check no-suggests, pkgdown-source
pre-commit.yaml Run pre-commit hooks; fails if hooks would modify files
style.yaml Check code style with {styler}; fails if any file needs reformatting
submit-cran.yaml Build source tarball, create GitHub Release, and submit package to CRAN extra-packages
test-coverage.yaml Two parallel coverage jobs: unit tests (enforces 100%) + examples/vignettes (enforces 100%) runner-os
check-link-rot.yaml Check for broken links using lychee

Presentations

Workflow Description Inputs
build-presentation-python.yaml Build & deploy Python/UV Quarto RevealJS presentation to GitHub Pages
build-presentation-r.yaml Build & deploy R Quarto RevealJS presentation to GitHub Pages
check-link-rot.yaml Check for broken links using lychee

License

MIT

About

Reusable GitHub Actions workflows for IndrajeetPatil repositories

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors