Skip to content
This repository has been archived by the owner on Jan 31, 2023. It is now read-only.

brainglobe/actions

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

32 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

⚠️ This repository is now archived. A maintained fork is available at https://github.com/neuroinformatics-unit/actions

Re-usable GitHub Action Workflows

This repository contains a number of GitHub Actions composite actions that can be used for running continuous integration across BrainGlobe repositories. If you are using Github Actions you are probably already

test

Runs Python tests using tox, and uploads a coverage report to codecov. A tox.ini file must be present in the root of the repository.

Example usage for running tests across a matrix of operating systems and Python versions:

jobs:
  test:
    name: ${{ matrix.platform }} py${{ matrix.python-version }}
    runs-on: ${{ matrix.platform }}
    strategy:
      matrix:
        platform: [ubuntu-latest, windows-latest, macos-latest]
        python-version: [3.9, 3.10]

    steps:
      - uses: brainglobe/actions/test@main
        with:
          python-version: ${{ matrix.python-version }}

lint

Lints code using pre-commit. A .pre-commit-config.yaml file must be present in the root of the repository.

Example usage:

jobs:
  linting:
    name: Run linting
    runs-on: ubuntu-latest
    steps:
      - uses: brainglobe/actions/lint@main

manifest

Checks that no files are missing from the source distribution using pip-manifest.

Example usage:

jobs:
  manifest:
    name: Check manifest
    runs-on: ubuntu-latest
    steps:
      - uses: brainglobe/actions/check_manifest@main

Releasing a new version

  1. Create a new release through the GitHub releases UI. Make sure you add the appropriate tag to the release.
  2. If not incrementing a major version (ie. going from 2.1 > 2.2), move the major tag (e.g. =v2) to the most recent tag:
git push origin :refs/tags/<tagname>
git tag -fa <tagname>
git push upstream main --tags

This means any actions specifying (e.g.) v2 will automatically use the new minor version of the actions.

Contributing

Contributions are more than welcome. Please see the contributing guide.

About

Re-usable GitHub Action scripts

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Contributors 3

  •  
  •  
  •