CI fixes #4
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-22.04 | |
strategy: | |
matrix: | |
python-version: [ 3.11, 3.12 ] | |
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-22.04 | |
strategy: | |
matrix: | |
python-version: [ 3.11, 3.12 ] | |
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-22.04 | |
strategy: | |
matrix: | |
python-version: [ 3.11, 3.12 ] | |
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 |