Skip to content

glotzerlab/workflows

Repository files navigation

Workflows

glotzerlab/workflows houses reusable GitHub actions and workflows that are in common use across glotzerlab software packages.

prek

prek installs prek and executes prek run --all-files.

In your action workflow, use the prek composite action:

steps:
- name: Checkout
  uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
  with:
    path: code
- name: prek
  uses: glotzerlab/workflows/prek@1fe577d5430222a9793694a14cdb316cf8f720e1 # 0.9.0
  with:
    path: code

setup-uv

setup-uv installs uv and optionally installs all the packages in a given lockfile.

To generate a lockfile, run:

uv pip compile --python-version=3.13 requirements.in --output-file=requirements.txt

and add both requirements.in and requirements.txt to the git repository.

Renovate can keep the requirements.txt up to date.

In your action workflow, create a Python environment and then call setup-uv:

steps:
- name: Checkout
  uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
- name: Set up Python
  uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
  with:
    python-version: "3.13"
- name: Set up Python environment
  uses: glotzerlab/workflows/setup-uv@1fe577d5430222a9793694a14cdb316cf8f720e1 # 0.9.0
  with:
    lockfile: "requirements.txt"

setup-mdbook

setup-mdbook installs mdbook.

In your action workflow:

steps:
- name: Set up mdbook
  uses: glotzerlab/workflows/setup-mdbook@1fe577d5430222a9793694a14cdb316cf8f720e1 # 0.9.0

See setup-mdbook/action.yaml for all options.

setup-cargo-bundle-licenses

setup-cargo-bundle-licenses installs cargo-bundle-licenses.

In your action workflow:

steps:
- name: Set up cargo-bundle-licenses
  uses: glotzerlab/workflows/setup-cargo-bundle-licenses@1fe577d5430222a9793694a14cdb316cf8f720e1 # 0.9.0

See setup-cargo-bundle-licenses/action.yaml for all options.

setup-row

setup-row installs row.

In your action workflow:

steps:
- name: Set up row
  uses: glotzerlab/workflows/setup-row@1fe577d5430222a9793694a14cdb316cf8f720e1 # 0.9.0

See setup-row/action.yaml for all options.

stale

To reuse the standard stale workflow, create a workflow stale.yaml with the contents:

name: Close stale issues and PRs

on:
  schedule:
    - cron: '0 19 * * *'

  workflow_dispatch:

jobs:
  stale:
    uses: glotzerlab/workflows/.github/workflows/stale.yaml@1fe577d5430222a9793694a14cdb316cf8f720e1 # 0.9.0

update-conda-lockfiles

update-conda-lockfiles is no longer maintained. Use Pixi and Renovate instead.

update-uv-lockfiles

update-uv-lockfiles is no longer maintained. Use Renovate instead.

About

House commonly used GitHub actions and workflows.

Resources

License

Stars

Watchers

Forks

Contributors 4

  •  
  •  
  •  
  •