From 3a37d3deced098538fe61b18d698a65af33d6b15 Mon Sep 17 00:00:00 2001 From: Ruslan Forostianov Date: Thu, 2 May 2024 10:22:03 +0200 Subject: [PATCH] Run java integration tests with GH workflows unit tests are already run by maven.yml now --- .../java-commands-integration-tests.yml | 46 +++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 .github/workflows/java-commands-integration-tests.yml diff --git a/.github/workflows/java-commands-integration-tests.yml b/.github/workflows/java-commands-integration-tests.yml new file mode 100644 index 00000000..d69bd26d --- /dev/null +++ b/.github/workflows/java-commands-integration-tests.yml @@ -0,0 +1,46 @@ +name: Run integration tests for java loading commands + +on: [push, pull_request] + +jobs: + build: + runs-on: ubuntu-latest + steps: + - name: 'Checkout Code' + uses: actions/checkout@v4 + with: + path: ./cbioportal-core + + - name: 'Get the cbioportal db version from pom.xml' + working-directory: ./cbioportal-core + run: | + CBIO_DB_VERSION=$(python -c "import xml.etree.ElementTree as ET; tree = ET.parse('pom.xml'); root = tree.getroot(); ns = {'ns': 'http://maven.apache.org/POM/4.0.0'}; print(root.find('.//ns:cbioportal.version', ns).text)") + echo "$CBIO_DB_VERSION=$CBIO_DB_VERSION" | tee -a $GITHUB_ENV + + - name: 'Download cgds.sql with cbioportal db schema of the given version' + working-directory: ./cbioportal-core + run: | + curl -o cgds.sql https://raw.githubusercontent.com/cBioPortal/cbioportal/${{ env.CBIO_DB_VERSION }}/src/main/resources/db-scripts/cgds.sql + + - name: 'Prepare cbioportal db container' + working-directory: ./cbioportal-core + run: | + docker run -p 3306:3306 \ + -v $(pwd)/src/test/resources/seed_mini.sql:/docker-entrypoint-initdb.d/seed.sql:ro \ + -v $(pwd)/cgds.sql:/docker-entrypoint-initdb.d/cgds.sql:ro \ + -e MYSQL_ROOT_PASSWORD=root \ + -e MYSQL_USER=cbio_user \ + -e MYSQL_PASSWORD=somepassword \ + -e MYSQL_DATABASE=cgds_test \ + mysql:5.7 + + - name: 'Run database-dependent tests' + working-directory: ./cbioportal-core + run: mvn test -Dtest="**/integrationTest/**/*" + + - name: Set up JDK 21 + uses: actions/setup-java@v3 + with: + java-version: '21' + distribution: 'temurin' + cache: maven