Skip to content

#75: Upgrade to Metabase v.0.48.0 #211

#75: Upgrade to Metabase v.0.48.0

#75: Upgrade to Metabase v.0.48.0 #211

name: Integration tests
on:
push:
branches:
- main
pull_request:
jobs:
integration-test:
strategy:
fail-fast: true
matrix:
exasol_version: ["7.1.17", "8.18.1"] # Must be supported by integration-test-docker-environment
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}-${{ matrix.exasol_version }}
cancel-in-progress: true
name: "Build with Exasol ${{ matrix.exasol_version }}"
runs-on: ubuntu-latest
env:
METABASE_TAG: v0.48.0
steps:
- name: Free Disk Space
run: |
sudo rm -rf /usr/local/lib/android
sudo rm -rf /usr/share/dotnet
- name: Checkout the repository
uses: actions/checkout@v4
with:
fetch-depth: 1
path: 'metabase-driver'
- name: Checkout the Metabase repository at tag ${{ env.METABASE_TAG }}
uses: actions/checkout@v4
with:
fetch-depth: 1
repository: 'metabase/metabase'
path: 'metabase'
ref: ${{ env.METABASE_TAG }}
- name: Checkout integration test docker environment
uses: actions/checkout@v4
with:
fetch-depth: 1
repository: 'exasol/integration-test-docker-environment'
ref: "2.0.0"
path: 'integration-test-docker-environment'
- name: Set up JDK 11
uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: 11
- name: Install clojure tools
uses: DeLaGuardo/setup-clojure@12.1
with:
cli: '1.11.1.1262'
- name: Cache Maven repository
uses: actions/cache@v3
with:
path: ~/.m2/repository
key: ${{ runner.os }}-maven-${{ hashFiles('metabase-driver/deps.edn', 'metabase-driver/scripts/run-integration-tests.sh', 'metabase/**/deps.edn') }}
restore-keys: |
${{ runner.os }}-maven-
- name: Cache node modules
uses: actions/cache@v3
with:
path: '**/node_modules'
key: ${{ runner.os }}-modules-${{ hashFiles('**/yarn.lock') }}
restore-keys: |
${{ runner.os }}-modules-
- name: Log versions
run: |
java --version
echo Clojure: $(clojure -M --eval "(clojure-version)")
clojure --version
- name: Build Metabase static viz
run: |
cd "$GITHUB_WORKSPACE/metabase"
yarn build-static-viz
- name: Spawn Exasol environment
run: |
./start-test-env spawn-test-environment \
--environment-name test \
--database-port-forward 8563 \
--docker-db-image-version ${{ matrix.exasol_version }}
working-directory: integration-test-docker-environment
- name: Run integration tests
run: |
cat $GITHUB_WORKSPACE/integration-test-docker-environment/.build_output/cache/environments/test/environment_info.sh
source $GITHUB_WORKSPACE/integration-test-docker-environment/.build_output/cache/environments/test/environment_info.sh
EXASOL_HOST=$ITDE_DATABASE_HOST \
EXASOL_PORT=$ITDE_DATABASE_DB_PORT \
EXASOL_USER=sys EXASOL_PASSWORD=exasol \
$GITHUB_WORKSPACE/metabase-driver/scripts/run-integration-tests.sh