This repository has been archived by the owner on Sep 23, 2024. It is now read-only.
Notice of PipelineWise being shrank #224
Workflow file for this run
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 |