ci: update alembic revisions #65
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: test | |
env: | |
ENV: true | |
ALGORITHMS: ${{ secrets.ALGORITHMS }} | |
API_AUDIENCE: ${{ vars.API_AUDIENCE }} | |
APP_SECRET_KEY: ${{ secrets.APP_SECRET_KEY }} | |
AUTH0_CLIENT_ID: ${{ secrets.AUTH0_CLIENT_ID }} | |
AUTH0_CLIENT_SECRET: ${{ secrets.AUTH0_CLIENT_SECRET }} | |
AUTH0_DOMAIN: ${{ vars.AUTH0_DOMAIN }} | |
BEARER_TOKEN: ${{ secrets.BEARER_TOKEN }} | |
DB_CONNECTION_STRING: ${{ secrets.DB_CONNECTION_STRING }} | |
ISSUER: ${{ vars.ISSUER }} | |
SECRET_MIDDLEWARE: ${{ secrets.SECRET_MIDDLEWARE }} | |
FGA_API_SCHEME: ${{ vars.FGA_API_SCHEME }} | |
FGA_API_HOST: ${{ vars.FGA_API_HOST }} | |
FGA_STORE_ID: ${{ secrets.FGA_STORE_ID }} | |
FGA_API_TOKEN_ISSUER: ${{ vars.FGA_API_TOKEN_ISSUER }} | |
FGA_API_AUDIENCE: ${{ vars.FGA_API_AUDIENCE }} | |
FGA_CLIENT_ID: ${{ secrets.FGA_CLIENT_ID }} | |
FGA_CLIENT_SECRET: ${{ secrets.FGA_CLIENT_SECRET }} | |
permissions: read-all | |
on: push | |
jobs: | |
test: | |
runs-on: ubuntu-latest | |
steps: | |
#---------------------------------------------- | |
# check-out repo and set-up python | |
#---------------------------------------------- | |
- name: Check out repository | |
uses: actions/checkout@v3 | |
- name: Set up python | |
id: setup-python | |
uses: actions/setup-python@v4 | |
with: | |
python-version: "3.11" | |
#---------------------------------------------- | |
# ----- install & configure poetry ----- | |
#---------------------------------------------- | |
- name: Install Poetry | |
uses: snok/install-poetry@v1 | |
with: | |
virtualenvs-create: true | |
virtualenvs-in-project: true | |
installer-parallel: true | |
#---------------------------------------------- | |
# load cached venv if cache exists | |
#---------------------------------------------- | |
- name: Load cached venv | |
id: cached-poetry-dependencies | |
uses: actions/cache@v3 | |
with: | |
path: .venv | |
key: venv-${{ runner.os }}-${{ steps.setup-python.outputs.python-version }}-${{ hashFiles('**/poetry.lock') }} | |
#---------------------------------------------- | |
# install dependencies if cache does not exist | |
#---------------------------------------------- | |
- name: Install dependencies | |
if: steps.cached-poetry-dependencies.outputs.cache-hit != 'true' | |
run: poetry install --no-interaction --no-root --with dev | |
#---------------------------------------------- | |
# install your root project, if required | |
#---------------------------------------------- | |
- name: Install project | |
run: poetry install --no-interaction --with dev | |
#---------------------------------------------- | |
# lint | |
# --------------------------------------------- | |
- name: Run linter | |
run: | | |
source .venv/bin/activate | |
flake8 | |
#---------------------------------------------- | |
# run unit test suite | |
#---------------------------------------------- | |
- name: Run unit tests | |
run: | | |
source .venv/bin/activate | |
pytest --junit-xml=test-results.xml tests/ | |
- name: Surface failing tests | |
if: always() | |
uses: pmeier/pytest-results-action@main | |
with: | |
# A list of JUnit XML files, directories containing the former, and wildcard | |
# patterns to process. | |
# See @actions/glob for supported patterns. | |
path: test-results.xml | |
# Add a summary of the results at the top of the report | |
# Default: true | |
summary: true | |
# Select which results should be included in the report. | |
# Follows the same syntax as | |
# `pytest -r` | |
# Default: fEX | |
display-options: fEX | |
# Fail the workflow if no JUnit XML was found. | |
# Default: true | |
fail-on-empty: true | |
#---------------------------------------------- | |
# run bdd test suite | |
#---------------------------------------------- | |
- name: Run behavioral driven design (bdd) tests | |
run: | | |
source .venv/bin/activate | |
behave |