diff --git a/workflow-templates/run-tests.yaml b/workflow-templates/run-tests.yaml index d2561fc2b..a3860707a 100644 --- a/workflow-templates/run-tests.yaml +++ b/workflow-templates/run-tests.yaml @@ -1,4 +1,5 @@ name: Run tests + on: push: branches: @@ -7,7 +8,30 @@ on: - 'feature/**' jobs: - test-runner: + build: + runs-on: ubuntu-latest + steps: + - name: Checkout source + uses: actions/checkout@v3 + + - name: Build mysql-ssh image + run: | + docker build -t dbgate/mysql-ssh:latest e2e-tests/mysql-ssh + + - name: Log in to GHCR + uses: docker/login-action@v2 + with: + registry: ghcr.io + username: ${{ github.actor }} + password: ${{ secrets.GITHUB_TOKEN }} + + - name: Push image to GHCR + run: | + docker tag dbgate/mysql-ssh:latest ghcr.io/dbgate/mysql-ssh:latest + docker push ghcr.io/dbgate/mysql-ssh:latest + + test: + needs: build runs-on: ubuntu-latest container: node:18 @@ -16,50 +40,60 @@ jobs: 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@v2 + + - 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 -# yarn wait: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: @@ -68,8 +102,7 @@ jobs: action-name: Datalib (perspectives) test results services: - postgres: - image: postgres + image: postgres env: POSTGRES_PASSWORD: Pwd2020Db options: >- @@ -99,10 +132,7 @@ jobs: image: gvenzl/oracle-xe:21-slim env: ORACLE_PASSWORD: Pwd2020Db - + mysql-ssh: - build: ../../e2e-tests/mysql-ssh + image: ghcr.io/dbgate/mysql-ssh:latest - - # cockroachdb: - # image: cockroachdb/cockroach