156 lines
3.5 KiB
YAML
156 lines
3.5 KiB
YAML
name: Integration and unit tests
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- master
|
|
- develop
|
|
- 'feature/**'
|
|
- hotfix/**
|
|
|
|
concurrency:
|
|
group: ${{ github.workflow }}-${{ github.ref }}
|
|
cancel-in-progress: true
|
|
|
|
jobs:
|
|
all-tests:
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
- name: Use Node.js 22.x
|
|
uses: actions/setup-node@v1
|
|
with:
|
|
node-version: 22.x
|
|
|
|
- uses: actions/checkout@v3
|
|
with:
|
|
fetch-depth: 1
|
|
|
|
- name: yarn install
|
|
run: |
|
|
yarn install
|
|
|
|
- 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
|
|
|
|
- name: Tools tests
|
|
if: always()
|
|
run: |
|
|
cd packages/tools
|
|
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-integr:
|
|
image: postgres
|
|
env:
|
|
POSTGRES_PASSWORD: Pwd2020Db
|
|
options: >-
|
|
--health-cmd pg_isready
|
|
--health-interval 10s
|
|
--health-timeout 5s
|
|
--health-retries 5
|
|
ports:
|
|
- 15000:5432
|
|
|
|
mysql-integr:
|
|
image: mysql:8.0.18
|
|
env:
|
|
MYSQL_ROOT_PASSWORD: Pwd2020Db
|
|
ports:
|
|
- 15001:3306
|
|
|
|
mssql-integr:
|
|
image: mcr.microsoft.com/mssql/server
|
|
env:
|
|
ACCEPT_EULA: Y
|
|
SA_PASSWORD: Pwd2020Db
|
|
MSSQL_PID: Express
|
|
ports:
|
|
- 15002:1433
|
|
|
|
clickhouse-integr:
|
|
image: bitnamilegacy/clickhouse:24.8.4
|
|
env:
|
|
CLICKHOUSE_ADMIN_PASSWORD: Pwd2020Db
|
|
ports:
|
|
- 15005:8123
|
|
|
|
oracle-integr:
|
|
image: gvenzl/oracle-xe:21-slim
|
|
env:
|
|
ORACLE_PASSWORD: Pwd2020Db
|
|
ports:
|
|
- 15006:1521
|
|
|
|
cassandradb:
|
|
image: cassandra:5.0.2
|
|
ports:
|
|
- 15942:9042
|
|
|
|
libsql:
|
|
image: ghcr.io/tursodatabase/libsql-server:latest
|
|
ports:
|
|
- '8080:8080'
|
|
|
|
firebird:
|
|
image: firebirdsql/firebird:latest
|
|
env:
|
|
FIREBIRD_DATABASE: mydatabase.fdb
|
|
FIREBIRD_USER: dbuser
|
|
FIREBIRD_PASSWORD: dbpassword
|
|
ISC_PASSWORD: masterkey
|
|
FIREBIRD_TRACE: false
|
|
FIREBIRD_USE_LEGACY_AUTH: true
|
|
ports:
|
|
- '3050:3050'
|
|
|
|
mongodb:
|
|
image: mongo:4.0.12
|
|
ports:
|
|
- '27017:27017'
|
|
restart: always
|
|
volumes:
|
|
- mongo-data:/data/db
|
|
- mongo-config:/data/configdb
|
|
|
|
dynamodb:
|
|
image: amazon/dynamodb-local
|
|
ports:
|
|
- '8000:8000'
|
|
restart: always
|