This repository has been archived on 2024-07-19. You can view files and clone it, but cannot push or open issues or pull requests.
rotini/.github/workflows/backend-pipeline.yml
Marc Cataford da2bf786d5
feat(backend): handle settings by environment (#13)
* build(backend): db provisioning tooling

* feat(backend): split application configuration by env

* docs(backend): update mention of local db setup
2023-08-12 15:56:52 -04:00

92 lines
2.6 KiB
YAML

name: Backend Pipeline
on:
workflow_call:
inputs:
task-version:
required: true
type: string
env:
ROTINI_CI: 1
jobs:
setup:
runs-on: ubuntu-latest
name: Setup
defaults:
run:
working-directory: backend
steps:
- uses: actions/checkout@v3
- name: get-python-version
run: |
echo "python_version=$(cat .python-version)" >> $GITHUB_OUTPUT
- uses: actions/setup-python@v3
with:
python-version: ${{ steps.get-python-version.outputs.python_version }}
- uses: actions/cache@v3
id: cache-restore
with:
path: |
backend/.venv
key: ${{ runner.os }}-${{ hashFiles('**/requirements*.txt') }}-${{ steps.get-python-version.outputs.python_version }}
- name: Install dependencies
if: steps.cache-restore.outputs.cache-hit != 'true'
run: . script/bootstrap
lint:
runs-on: ubuntu-latest
name: Lint
needs: setup
defaults:
run:
working-directory: backend
steps:
- uses: actions/checkout@v3
- name: get-python-version
run: |
echo "python_version=$(cat .python-version)" >> $GITHUB_OUTPUT
- uses: actions/setup-python@v3
with:
python-version: ${{ steps.get-python-version.outputs.python_version }}
- name: Setup Task
uses: arduino/setup-task@v1
with:
version: ${{ inputs.task-version }}
- uses: actions/cache@v3
id: cache-restore
with:
path: |
backend/.venv
key: ${{ runner.os }}-${{ hashFiles('**/requirements*.txt') }}-${{ steps.get-python-version.outputs.python_version }}
- name: Lint
run: |
task be:lint
test:
runs-on: ubuntu-latest
name: Test
needs: setup
defaults:
run:
working-directory: backend
steps:
- uses: actions/checkout@v3
- name: get-python-version
run: |
echo "python_version=$(cat .python-version)" >> $GITHUB_OUTPUT
- uses: actions/setup-python@v3
with:
python-version: ${{ steps.get-python-version.outputs.python_version }}
- name: Setup Task
uses: arduino/setup-task@v1
with:
version: ${{ inputs.task-version }}
- uses: actions/cache@v3
id: cache-restore
with:
path: |
backend/.venv
key: ${{ runner.os }}-${{ hashFiles('**/requirements*.txt') }}-${{ steps.get-python-version.outputs.python_version }}
- name: Test
run: |
task be:test