Skip to content

Database Spanner Integration Tests #90

Database Spanner Integration Tests

Database Spanner Integration Tests #90

# Copyright 2022 Goldman Sachs
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
name: Database Spanner Integration Tests
env:
CI_DEPLOY_USERNAME: ${{ secrets.CI_DEPLOY_USERNAME }}
CI_DEPLOY_PASSWORD: ${{ secrets.CI_DEPLOY_PASSWORD }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
on:
schedule:
- cron: "0 0 * * *" # every day at 00:00 on default/base branch
workflow_dispatch:
inputs:
pullRequestId:
description: "Pull request id"
required: false
jobs:
build:
# NOTE: we cannot run this action in fork because secrets are not accessible from forks
# See https://community.sonarsource.com/t/github-action-ci-build-fail-with-set-the-sonar-token-env-variable/38997
if: github.repository == 'finos/legend-engine'
runs-on: ubuntu-latest
steps:
- name: Checkout repo
uses: actions/checkout@v2
- name: Set up JDK
uses: actions/setup-java@v1
with:
java-version: 11
server-id: ossrh
server-username: CI_DEPLOY_USERNAME
server-password: CI_DEPLOY_PASSWORD
- name: Configure git
run: |
git config --global committer.email "[email protected]"
git config --global committer.name "FINOS Admin"
git config --global author.email "${GITHUB_ACTOR}@users.noreply.github.com"
git config --global author.name "${GITHUB_ACTOR}"
- name: Download patch
if: github.event.inputs.pullRequestId != ''
run: |
wget --output-document=run.diff http://patch-diff.githubusercontent.com/raw/finos/legend-engine/pull/${{ github.event.inputs.pullRequestId }}.diff
git apply run.diff
- name: Print out mvn version
run: mvn -v
- name: Download deps and plugins
run: mvn de.qaware.maven:go-offline-maven-plugin:resolve-dependencies
- name: Configure GCP credentials With Github Actions
uses: google-github-actions/auth@v0
with:
credentials_json: ${{ secrets.SPANNER_INTEGRATION_TEST_RO1_JSON }}
- name: "Set up Cloud SDK"
uses: "google-github-actions/setup-gcloud@v0"
- name: "Use gcloud CLI"
run: "gcloud info"
- name: Build
env:
MAVEN_OPTS: -Xmx4g
run: mvn -pl legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-spanner/legend-engine-xt-relationalStore-spanner-execution-tests -am clean install -DskipTests=true
- name: Run Connection Protocol Integration Tests
env:
MAVEN_OPTS: -Xmx4g
run: mvn -pl legend-engine-xts-relationalStore/legend-engine-xt-relationalStore-dbExtension/legend-engine-xt-relationalStore-spanner/legend-engine-xt-relationalStore-spanner-execution-tests -Dtest=ExternalIntegration*Spanner test