Skip to content

serapeum-org/github-actions

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

183 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Serapeum GitHub Actions

Test pip Test uv Test pixi

Reusable composite GitHub Actions for Python CI/CD workflows. Cross-platform (Windows, macOS, Linux), supporting pip, uv, and pixi package managers.

Actions

Python Setup

Set up Python with your preferred package manager, install dependencies, and configure caching.

Action Usage
pip serapeum-org/github-actions/actions/python-setup/pip@pip/v1
uv serapeum-org/github-actions/actions/python-setup/uv@uv/v1
pixi serapeum-org/github-actions/actions/python-setup/pixi@pixi/v1

Documentation

Action Usage
mkdocs-deploy serapeum-org/github-actions/actions/mkdocs-deploy@mkdocs-deploy/v1

Release

Action Usage
GitHub Release serapeum-org/github-actions/actions/release/github@release-github/v1
PyPI Release serapeum-org/github-actions/actions/release/pypi@release-pypi/v1

Quick Start

name: CI

on: [push, pull_request]

jobs:
  test:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v5

      - uses: serapeum-org/github-actions/actions/python-setup/uv@uv/v1
        with:
          python-version: '3.12'
          install-groups: 'groups: dev test'

      - run: pytest

Dependency Groups Format

The install-groups input (for pip and uv) supports:

# PEP 735 dependency groups
install-groups: 'groups: dev test'

# Optional dependencies (extras)
install-groups: 'extras: aws viz'

# Both combined
install-groups: 'groups: dev, extras: aws'

For pixi, use the environments input instead:

environments: 'default py312'

Versioning

Each action is versioned independently with namespaced tags:

pip/v1.0.0     pip/v1       # Python setup with pip
uv/v1.2.0      uv/v1        # Python setup with uv
pixi/v1.0.0    pixi/v1      # Python setup with pixi

Pin to a major version tag for automatic patch/minor updates:

uses: serapeum-org/github-actions/actions/python-setup/uv@uv/v1

See the Versioning Guide for details.

Documentation

Full documentation is available at the docs site or browse the docs/ directory.

Contributing

  1. Read the test workflows in .github/workflows/test-*.yml
  2. Use test fixtures from tests/data/
  3. Maintain cross-platform compatibility (shell: bash)
  4. Follow semantic versioning

License

See LICENSE for details.

About

github-actions

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages