fix version file #113
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: Run Tox Suite | |
on: [push, pull_request, workflow_dispatch] | |
jobs: | |
py310: | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
env: | |
DB_CONNSTRING: 'mysql+pymysql://root:dbroot@127.0.0.1:13306/budgettest?charset=utf8mb4' | |
MYSQL_HOST: 127.0.0.1 | |
MYSQL_PORT: '13306' | |
MYSQL_USER: root | |
MYSQL_PASS: dbroot | |
MYSQL_DBNAME: budgettest | |
MYSQL_DBNAME_LEFT: alembicLeft | |
MYSQL_DBNAME_RIGHT: alembicRight | |
services: | |
mariadb: | |
image: 'mariadb:10.4.7' | |
ports: | |
- 13306:3306 | |
env: | |
MYSQL_ROOT_PASSWORD: dbroot | |
MYSQL_ROOT_HOST: '%' | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Set up Python | |
uses: actions/setup-python@v4 | |
with: | |
python-version: "3.10" | |
- name: Install dependencies | |
run: python -m pip install --upgrade pip && pip install tox pymysql | |
- name: Setup test DB | |
run: python dev/setup_test_db.py | |
- name: Run tests | |
run: tox -e ${{ github.job }} | |
- name: Archive code coverage results | |
uses: actions/upload-artifact@v3 | |
if: ${{ always() }} | |
with: | |
name: test-results-and-coverage-${{ github.job }} | |
path: | | |
results/ | |
coverage.xml | |
htmlcov/ | |
- name: CodeCov Upload | |
uses: codecov/codecov-action@v3 | |
with: | |
flags: unittests | |
name: coverage-${{ github.job }} | |
fail_ci_if_error: true | |
docs: | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Set up Python | |
uses: actions/setup-python@v4 | |
with: | |
python-version: "3.10" | |
- name: Install dependencies | |
run: python -m pip install --upgrade pip && pip install tox | |
- name: Run tests | |
run: tox -e ${{ github.job }} | |
jsdoc: | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Set up Python | |
uses: actions/setup-python@v4 | |
with: | |
python-version: "3.10" | |
- name: Install dependencies | |
run: python -m pip install --upgrade pip && pip install tox && npm install -g jsdoc | |
- name: Run tests | |
run: tox -e ${{ github.job }} | |
screenshots: | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
env: | |
DB_CONNSTRING: 'mysql+pymysql://root:dbroot@127.0.0.1:13306/budgettest?charset=utf8mb4' | |
MYSQL_HOST: 127.0.0.1 | |
MYSQL_PORT: '13306' | |
MYSQL_USER: root | |
MYSQL_PASS: dbroot | |
MYSQL_DBNAME: budgettest | |
MYSQL_DBNAME_LEFT: alembicLeft | |
MYSQL_DBNAME_RIGHT: alembicRight | |
services: | |
mariadb: | |
image: 'mariadb:10.4.7' | |
ports: | |
- 13306:3306 | |
env: | |
MYSQL_ROOT_PASSWORD: dbroot | |
MYSQL_ROOT_HOST: '%' | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Set up Python | |
uses: actions/setup-python@v4 | |
with: | |
python-version: "3.10" | |
- name: Install dependencies | |
run: python -m pip install --upgrade pip && pip install tox pymysql | |
- name: Setup test DB | |
run: python dev/setup_test_db.py | |
- name: Run tests | |
run: tox -e ${{ github.job }} | |
acceptance: | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
env: | |
DB_CONNSTRING: 'mysql+pymysql://root:dbroot@127.0.0.1:13306/budgettest?charset=utf8mb4' | |
MYSQL_HOST: 127.0.0.1 | |
MYSQL_PORT: '13306' | |
MYSQL_USER: root | |
MYSQL_PASS: dbroot | |
MYSQL_DBNAME: budgettest | |
MYSQL_DBNAME_LEFT: alembicLeft | |
MYSQL_DBNAME_RIGHT: alembicRight | |
services: | |
mariadb: | |
image: 'mariadb:10.4.7' | |
ports: | |
- 13306:3306 | |
env: | |
MYSQL_ROOT_PASSWORD: dbroot | |
MYSQL_ROOT_HOST: '%' | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Set up Python | |
uses: actions/setup-python@v4 | |
with: | |
python-version: "3.10" | |
- name: Install dependencies | |
run: python -m pip install --upgrade pip && pip install tox pymysql | |
- name: Setup test DB | |
run: python dev/setup_test_db.py | |
- name: Run tests | |
run: tox -e ${{ github.job }} | |
- name: Archive code coverage results | |
uses: actions/upload-artifact@v3 | |
if: ${{ always() }} | |
with: | |
name: test-results-and-coverage-${{ github.job }} | |
if-no-files-found: ignore | |
path: | | |
results/ | |
coverage-acceptance.xml | |
htmlcov-acceptance/ | |
- name: CodeCov Upload | |
uses: codecov/codecov-action@v3 | |
with: | |
flags: acceptance | |
files: ./coverage-acceptance.xml | |
name: coverage-${{ github.job }} | |
fail_ci_if_error: true | |
plaid: | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
env: | |
DB_CONNSTRING: 'mysql+pymysql://root:dbroot@127.0.0.1:13306/budgettest?charset=utf8mb4' | |
MYSQL_HOST: 127.0.0.1 | |
MYSQL_PORT: '13306' | |
MYSQL_USER: root | |
MYSQL_PASS: dbroot | |
MYSQL_DBNAME: budgettest | |
MYSQL_DBNAME_LEFT: alembicLeft | |
MYSQL_DBNAME_RIGHT: alembicRight | |
PLAID_CLIENT_ID: ${{ secrets.PLAID_CLIENT_ID }} | |
PLAID_COUNTRY_CODES: ${{ secrets.PLAID_COUNTRY_CODES }} | |
PLAID_ENV: ${{ secrets.PLAID_ENV }} | |
PLAID_PRODUCTS: ${{ secrets.PLAID_PRODUCTS }} | |
PLAID_PUBLIC_KEY: ${{ secrets.PLAID_PUBLIC_KEY }} | |
PLAID_SECRET: ${{ secrets.PLAID_SECRET }} | |
services: | |
mariadb: | |
image: 'mariadb:10.4.7' | |
ports: | |
- 13306:3306 | |
env: | |
MYSQL_ROOT_PASSWORD: dbroot | |
MYSQL_ROOT_HOST: '%' | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Set up Python | |
uses: actions/setup-python@v4 | |
with: | |
python-version: "3.10" | |
- name: Install dependencies | |
run: python -m pip install --upgrade pip && pip install tox pymysql | |
- name: Setup test DB | |
run: python dev/setup_test_db.py | |
- name: Run tests | |
run: tox -e ${{ github.job }} | |
- name: Archive code coverage results | |
uses: actions/upload-artifact@v3 | |
if: ${{ always() }} | |
with: | |
name: test-results-and-coverage-${{ github.job }} | |
if-no-files-found: ignore | |
path: | | |
results/ | |
docker: | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
env: | |
DB_CONNSTRING: 'mysql+pymysql://root:dbroot@127.0.0.1:13306/budgettest?charset=utf8mb4' | |
MYSQL_HOST: 127.0.0.1 | |
MYSQL_PORT: '13306' | |
MYSQL_USER: root | |
MYSQL_PASS: dbroot | |
MYSQL_DBNAME: budgettest | |
MYSQL_DBNAME_LEFT: alembicLeft | |
MYSQL_DBNAME_RIGHT: alembicRight | |
services: | |
mariadb: | |
image: 'mariadb:10.4.7' | |
ports: | |
- 13306:3306 | |
env: | |
MYSQL_ROOT_PASSWORD: dbroot | |
MYSQL_ROOT_HOST: '%' | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Set up Python | |
uses: actions/setup-python@v4 | |
with: | |
python-version: "3.10" | |
- name: Install dependencies | |
run: python -m pip install --upgrade pip && pip install tox pymysql | |
- name: Setup test DB | |
run: python dev/setup_test_db.py | |
- name: Login to Docker Hub if master branch | |
if: github.ref_type == 'branch' && github.ref_name == 'master' | |
uses: docker/login-action@v2 | |
with: | |
username: ${{ secrets.DOCKERHUB_USERNAME }} | |
password: ${{ secrets.DOCKERHUB_TOKEN }} | |
- name: Run tests | |
id: run-tests | |
run: tox -e ${{ github.job }} | |
- name: Archive code coverage results | |
uses: actions/upload-artifact@v3 | |
if: ${{ always() }} | |
with: | |
name: test-results-and-coverage-${{ github.job }} | |
if-no-files-found: ignore | |
path: | | |
results/ | |
coverage.xml | |
htmlcov/ | |
- name: Docker Push if master | |
if: github.ref_type == 'branch' && github.ref_name == 'master' | |
run: | | |
docker push jantman/biweeklybudget:${{ steps.run-tests.outputs.DOCKER_IMG_TAG }} | |
migrations: | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
env: | |
DB_CONNSTRING: 'mysql+pymysql://root:dbroot@127.0.0.1:13306/budgettest?charset=utf8mb4' | |
MYSQL_HOST: 127.0.0.1 | |
MYSQL_PORT: '13306' | |
MYSQL_USER: root | |
MYSQL_PASS: dbroot | |
MYSQL_DBNAME: budgettest | |
MYSQL_DBNAME_LEFT: alembicLeft | |
MYSQL_DBNAME_RIGHT: alembicRight | |
services: | |
mariadb: | |
image: 'mariadb:10.4.7' | |
ports: | |
- 13306:3306 | |
env: | |
MYSQL_ROOT_PASSWORD: dbroot | |
MYSQL_ROOT_HOST: '%' | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Set up Python | |
uses: actions/setup-python@v4 | |
with: | |
python-version: "3.10" | |
- name: Install dependencies | |
run: python -m pip install --upgrade pip && pip install tox pymysql | |
- name: Setup test DB | |
run: python dev/setup_test_db.py | |
- name: Run tests | |
run: tox -e ${{ github.job }} | |
- name: Archive code coverage results | |
uses: actions/upload-artifact@v3 | |
if: ${{ always() }} | |
with: | |
name: test-results-and-coverage-${{ github.job }} | |
if-no-files-found: ignore | |
path: | | |
results/ | |
coverage.xml | |
htmlcov/ | |