This repository has been archived by the owner on Sep 23, 2024. It is now read-only.
Update PyPi uploader to automate new versions (#183) #218
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: CI | |
on: | |
pull_request: | |
push: | |
branches: | |
- master | |
- main | |
jobs: | |
lint_and_test: | |
name: Linting and Testing | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
python-version: [ 3.7, 3.8, 3.9 ] | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v2 | |
- name: Set up Python ${{ matrix.python-version }} | |
uses: actions/setup-python@v2 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Setup virtual environment | |
run: make venv | |
- name: Pylinting | |
run: make pylint | |
- name: Unit Tests | |
run: make unit_test | |
integration_test_mariadb: | |
name: Intergation tests with MariaDB database | |
runs-on: ubuntu-20.04 | |
strategy: | |
matrix: | |
python-version: [ 3.7, 3.8 ] | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v2 | |
- name: Build db test container | |
run: docker-compose up -d mariadb_server1 | |
- name: Set up Python ${{ matrix.python-version }} | |
uses: actions/setup-python@v2 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Setup virtual environment | |
run: make venv | |
- name: Integration Tests | |
env: | |
TAP_MYSQL_PORT: 3306 | |
TAP_MYSQL_USER: replication_user | |
TAP_MYSQL_PASSWORD: secret123passwd | |
TAP_MYSQL_HOST: localhost | |
TAP_MYSQL_ENGINE: mariadb | |
LOGGING_CONF_FILE: ./sample_logging.conf | |
run: make integration_test extra_args=--cover-min-percentage=85 | |
- name: Shutdown db test container | |
run: docker-compose down mariadb_server1 | |
integration_test_mysql: | |
name: Intergation tests with Mysql database | |
runs-on: ubuntu-20.04 | |
strategy: | |
matrix: | |
python-version: [ 3.7, 3.8 ] | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v2 | |
- name: Build db test container | |
run: docker-compose up -d mysql_server | |
- name: Set up Python ${{ matrix.python-version }} | |
uses: actions/setup-python@v2 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Setup virtual environment | |
run: make venv | |
- name: Integration Tests | |
env: | |
TAP_MYSQL_PORT: 3307 | |
TAP_MYSQL_USER: replication_user | |
TAP_MYSQL_PASSWORD: secret123passwd | |
TAP_MYSQL_HOST: localhost | |
TAP_MYSQL_ENGINE: mysql | |
LOGGING_CONF_FILE: ./sample_logging.conf | |
run: make integration_test extra_args=--cover-min-percentage=84 | |
- name: Shutdown db test container | |
run: docker-compose down mysql_server |