Files
dbgate/workflow-templates/run-tests.yaml
2025-01-09 08:27:24 +01:00

137 lines
3.0 KiB
YAML

name: Run tests
on:
push:
branches:
- master
- develop
- 'feature/**'
jobs:
test:
runs-on: ubuntu-latest
steps:
- name: Use Node.js 18.x
uses: actions/setup-node@v1
with:
node-version: 18.x
- name: Install dependencies for cypress
run: |
apt-get update
apt-get install -y xvfb libgtk2.0-0 libgtk-3-0 libgbm-dev libnotify-dev libnss3 libxss1 libasound2 libxtst6
- uses: actions/checkout@v3
with:
fetch-depth: 1
- name: yarn install
run: |
yarn install
# - name: Build packer dist for cypress
# run: |
# yarn prepare:packer
# - name: yarn install cypress
# run: |
# cd e2e-tests
# yarn install
# - name: Run Cypress tests
# run: |
# cd e2e-tests
# yarn test:ci
- name: Integration tests
run: |
cd integration-tests
yarn test:ci
- name: Filter parser tests
if: always()
run: |
cd packages/filterparser
yarn test:ci
- name: Datalib (perspective) tests
if: always()
run: |
cd packages/datalib
yarn test:ci
- uses: tanmen/jest-reporter@v1
if: always()
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
result-file: integration-tests/result.json
action-name: Integration tests
- uses: tanmen/jest-reporter@v1
if: always()
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
result-file: packages/filterparser/result.json
action-name: Filter parser test results
- uses: tanmen/jest-reporter@v1
if: always()
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
result-file: packages/datalib/result.json
action-name: Datalib (perspectives) test results
services:
postgres:
image: postgres
env:
POSTGRES_PASSWORD: Pwd2020Db
options: >-
--health-cmd pg_isready
--health-interval 10s
--health-timeout 5s
--health-retries 5
ports:
- 15000:5432
mysql:
image: mysql:8.0.18
env:
MYSQL_ROOT_PASSWORD: Pwd2020Db
ports:
- 15004:3306
mssql:
image: mcr.microsoft.com/mssql/server
env:
ACCEPT_EULA: Y
SA_PASSWORD: Pwd2020Db
MSSQL_PID: Express
ports:
- 15002:1433
clickhouse:
image: bitnami/clickhouse:24.8.4
env:
CLICKHOUSE_ADMIN_PASSWORD: Pwd2020Db
ports:
- 15005:8123
oracle:
image: gvenzl/oracle-xe:21-slim
env:
ORACLE_PASSWORD: Pwd2020Db
ports:
- 15006:1521
mysql-ssh-login:
image: ghcr.io/dbgate/mysql-ssh-login:latest
mysql-ssh-keyfile:
image: ghcr.io/dbgate/mysql-ssh-keyfile:latest
dex:
image: ghcr.io/dbgate/dex:latest