These are common GitHub Actions workflows used across multiple of BellFlight's repositories.
To use a workflow in another, reference it like so:
jobs:
job1:
uses: bellflight/github-actions/.github/workflows/<workflow>.yml@main
with:
...File: avr_build_and_push_container.yml
This will build a Docker container, tag it with the date and time it was built,
and push it to GitHub Container Registry.
The container is only pushed when the workflow is run on a push to the main branch.
container_name(Required): Name to assign to container. This will be prefixed byghcr.io/bellflight/avr/.platforms: Comma-seperated string of platforms to build the container for. Defaults tolinux/amd64,linux/arm64.
File: avr_python_checks.yml
This installs Python dependencies using Poetry,
then runs Pre-Commit. This utilizes the configuration
defined in the repository's .pre-commit-config.yaml file.
This workflow attempts to determine the Python version to use, by parsing the
Dockerfile in the repository. This is either by using a FROM image with
python in the name, or explicitly setting an environment variable called
PYTHON_VERSION. Whatever the last found version specifier will be used.
File: avr_python_tests.yml
This installs Python dependencies using Poetry, then runs pytest with the pytest-cov plugin.
This workflow attempts to determine the Python version to use, by parsing the
Dockerfile in the repository. This is either by using a FROM image with
python in the name, or explicitly setting an environment variable called
PYTHON_VERSION. Whatever the last found version specifier will be used.
coverage_directory: Directory to record coverage for. Defaults tosrc/.
File: pre-commit_update.yml
This updates the repositories referenced in the repository's
.pre-commit-config.yaml file and creates a pull request.
target_branch: Branch to checkout and create the pull request into. Defaults todevelop.