diff --git a/.github/workflows/OracleRunParallel.yml b/.github/workflows/OracleRunParallel.yml index 514520dc0..5fbf34c69 100644 --- a/.github/workflows/OracleRunParallel.yml +++ b/.github/workflows/OracleRunParallel.yml @@ -31,7 +31,7 @@ jobs: cache: 'maven' - name: Docker login to retrive Oracle images from private repo - run: docker login "${{ secrets.ARTIFACTORY_URL }}" -u "${{ secrets.ARTIFACTORY_USER }}" -p "${{ secrets.ARTIFACTORY_TOKEN }}" + run: docker login "${{ secrets.REPO_URL }}" -u "${{ secrets.REPO_USER }}" -p "${{ secrets.REPO_PASSWORD }}" - name: Build Oracle Artifactory test infra if: ${{ matrix.plan == '19.3.0' }} diff --git a/.github/workflows/advanced.yml b/.github/workflows/advanced.yml index ee3ee9fa4..b09b693c4 100644 --- a/.github/workflows/advanced.yml +++ b/.github/workflows/advanced.yml @@ -3,7 +3,7 @@ name: Advanced Test Execution on: schedule: - - cron: '0 6 * * *' # Execute every day at noon + - cron: '0 6 * * *' # Execute every day at 6AM UTC workflow_dispatch: inputs: runDescription: @@ -206,9 +206,9 @@ jobs: working-directory: src/test/resources/docker run: ./create-infra.sh ${{ matrix.database }} env: - ARTIFACTORY_URL: ${{ secrets.ARTIFACTORY_URL }} - ARTIFACTORY_USER: ${{ secrets.ARTIFACTORY_USER }} - ARTIFACTORY_TOKEN: ${{ secrets.ARTIFACTORY_TOKEN }} + REPO_URL: ${{ secrets.REPO_URL }} + REPO_USER: ${{ secrets.REPO_USER }} + REPO_PASSWORD: ${{ secrets.REPO_PASSWORD }} - name: Configure Liquibase Version if: needs.setup.outputs.useLiquibaseSnapshot == 'true' diff --git a/.github/workflows/aws-weekly.yml b/.github/workflows/aws-weekly.yml new file mode 100644 index 000000000..fd5c8976f --- /dev/null +++ b/.github/workflows/aws-weekly.yml @@ -0,0 +1,291 @@ +# Terraform Action to test Cloud Databases with test-harness + +name: AWS Weekly Cloud Database Test Execution +concurrency: aws-run +on: + # Triggers the workflow on a schedule for the main branch. Also allows for manual triggers + # Execute every sunday at 6:00 AM + schedule: + - cron: '0 6 * * 0' + workflow_dispatch: + inputs: + testClasses: + type: choice + description: Test Suite or test class to run + options: + - LiquibaseHarnessSuiteTest + - FoundationalHarnessSuiteTest + - AdvancedHarnessSuiteTest + - ChangeObjectTests + - ChangeDataTests + - SnapshotObjectTests + - GenerateChangelogTest + - FoundationalTest + databases: + description: Databases to start up. Comma separated list of "name:version" + required: true + default: "[\"postgresql:12\",\"postgresql:13\",\"postgresql:14\",\"oracle:aws_19\",\"mariadb:aws_10.6\",\"mysql:aws\",\"mysql:aurora\",\"mssql:2019\",\"postgresql:aurora\"]" + +jobs: + setup: + name: Setup + runs-on: ubuntu-latest + outputs: + databases: ${{ github.event.inputs.databases || '["postgresql:12","postgresql:13","postgresql:14","oracle:aws_19","mariadb:aws_10.6","mysql:aws","mysql:aurora","mssql:2019","postgresql:aurora"]' }} + testClasses: ${{ inputs.testClasses || 'LiquibaseHarnessSuiteTest' }} + steps: + - name: Checkout + uses: actions/checkout@v4 + + deploy-ephemeral-cloud-infra: + uses: liquibase/build-logic/.github/workflows/ephemeral-cloud-infra.yml@DAT-17834 + secrets: inherit + with: + deploy: true + aws_test_harness: true + + init-mysql: + runs-on: ubuntu-latest + needs: [deploy-ephemeral-cloud-infra] + container: + image: liquibase/liquibase:latest + env: + LIQUIBASE_PRO_LICENSE_KEY: ${{ secrets.LICENSE_KEY }} + strategy: + fail-fast: false + matrix: + include: + - database: mysql + version: aws + - database: mysql + version: aurora + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Configure AWS Credentials + uses: aws-actions/configure-aws-credentials@v4 + with: + role-to-assume: ${{ secrets.AWS_DEV_GITHUB_OIDC_ROLE_ARN_BUILD_LOGIC }} + aws-region: us-east-1 + + - name: Get AWS secrets + uses: aws-actions/aws-secretsmanager-get-secrets@v2 + with: + secret-ids: | + TH_MYSQLURL_8_0, /testautomation/db_details/aws_mysql_jdbc${{ needs.deploy-ephemeral-cloud-infra.outputs.resources_id }} + TH_AURORA_MYSQLURL, /testautomation/db_details/aurora_mysql_jdbc${{ needs.deploy-ephemeral-cloud-infra.outputs.resources_id }} + TH_ORACLEURL_19, /testautomation/db_details/aws_oracle_19_jdbc${{ needs.deploy-ephemeral-cloud-infra.outputs.resources_id }} + TH_PGRESURL_12, /testautomation/db_details/aws_postgresql_12_jdbc${{ needs.deploy-ephemeral-cloud-infra.outputs.resources_id }} + TH_PGRESURL_13, /testautomation/db_details/aws_postgresql_13_jdbc${{ needs.deploy-ephemeral-cloud-infra.outputs.resources_id }} + TH_PGRESURL_14, /testautomation/db_details/aws_postgresql_14_jdbc${{ needs.deploy-ephemeral-cloud-infra.outputs.resources_id }} + TH_MARIADBURL_10_6, /testautomation/db_details/aws_mariadb_jdbc${{ needs.deploy-ephemeral-cloud-infra.outputs.resources_id }} + TH_MSSQLURL, /testautomation/db_details/aws_mssql_jdbc${{ needs.deploy-ephemeral-cloud-infra.outputs.resources_id }} + TH_AURORA_POSTGRESQLURL, /testautomation/db_details/aurora_postgresql_jdbc${{ needs.deploy-ephemeral-cloud-infra.outputs.resources_id }} + + #This additional init step is required because of mysql driver issue on GH actions + - name: Install Dependencies + run: lpm update && lpm add mysql + + - name: Clean AWS MySQL Database + uses: liquibase-github-actions/drop-all@v4.25.1 + if: ${{ matrix.version == 'aws' }} + with: + url: "${{ env.TH_MYSQLURL_8_0 }}" + username: "${{secrets.TH_DB_ADMIN}}" + password: "${{secrets.TH_DB_PASSWD}}" + licenseKey: "${{secrets.LICENSE_KEY}}" + + - name: Init Database + if: ${{ matrix.version == 'aws' }} + run: liquibase --classpath="src/test/resources/init-changelogs/aws" --changeLogFile="${{ matrix.database }}.sql" --username="${{ secrets.TH_DB_ADMIN }}" --password="${{ secrets.TH_DB_PASSWD }}" --url="${{ env.TH_MYSQLURL_8_0 }}" update + + - name: Clean Aurora MySQL Database + uses: liquibase-github-actions/drop-all@v4.25.1 + if: ${{ matrix.version == 'aurora' }} + with: + url: "${{ env.TH_AURORA_MYSQLURL }}" + username: "${{secrets.TH_DB_ADMIN}}" + password: "${{secrets.TH_DB_PASSWD}}" + licenseKey: "${{secrets.LICENSE_KEY}}" + + - name: Init Database + if: ${{ matrix.version == 'aurora' }} + run: liquibase --classpath="src/test/resources/init-changelogs/aws" --changeLogFile="${{ matrix.database }}.sql" --username="${{ secrets.TH_DB_ADMIN }}" --password="${{ secrets.TH_DB_PASSWD }}" --url="${{ env.TH_AURORA_MYSQLURL }}" update + + test: + needs: [init-mysql, setup] + runs-on: ubuntu-latest + strategy: + fail-fast: false + matrix: + database: ${{ fromJson(needs.setup.outputs.databases) }} + + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Configure Test + id: setup + uses: actions/github-script@v7.0.1 + with: + script: | + let splitValues = "${{ matrix.database }}".split(":") + core.setOutput("databasePlatform", splitValues[0]); + core.setOutput("databaseVersion", splitValues[1]); + + - uses: liquibase-github-actions/drop-all@v4.25.1 + if: ${{ steps.setup.outputs.databasePlatform == 'oracle' }} + with: + url: "${{ env.TH_ORACLEURL_19 }}" + username: "${{secrets.TH_DB_ADMIN}}" + password: "${{secrets.TH_DB_PASSWD}}" + licenseKey: "${{secrets.LICENSE_KEY}}" + + - uses: liquibase/liquibase-github-action@v7 + if: ${{ steps.setup.outputs.databasePlatform == 'oracle' }} + with: + operation: "update" + classpath: "src/test/resources/init-changelogs/aws" + changeLogFile: "oracle.sql" + username: "${{secrets.TH_DB_ADMIN}}" + password: "${{secrets.TH_DB_PASSWD}}" + url: "${{ env.TH_ORACLEURL_19 }}" + + - uses: liquibase-github-actions/drop-all@v4.25.1 + if: ${{ steps.setup.outputs.databasePlatform == 'postgresql' && steps.setup.outputs.databaseVersion != 'aurora' }} + with: + url: "${{ env[format('TH_PGRESURL_{0}', steps.setup.outputs.databaseVersion)] }}" + username: "${{secrets.TH_DB_ADMIN}}" + password: "${{secrets.TH_DB_PASSWD}}" + licenseKey: "${{secrets.LICENSE_KEY}}" + + - uses: liquibase/liquibase-github-action@v7 + if: ${{ steps.setup.outputs.databasePlatform == 'postgresql' && steps.setup.outputs.databaseVersion != 'aurora' }} + with: + operation: "update" + classpath: "src/test/resources/init-changelogs/aws" + changeLogFile: "postgresql.sql" + username: "${{secrets.TH_DB_ADMIN}}" + password: "${{secrets.TH_DB_PASSWD}}" + url: "${{ env[format('TH_PGRESURL_{0}', steps.setup.outputs.databaseVersion)] }}" + + - uses: liquibase-github-actions/drop-all@v4.25.1 + if: ${{ steps.setup.outputs.databasePlatform == 'mariadb' }} + with: + url: "${{ env.TH_MARIADBURL_10_6 }}" + username: "${{secrets.TH_DB_ADMIN}}" + password: "${{secrets.TH_DB_PASSWD}}" + licenseKey: "${{secrets.LICENSE_KEY}}" + + - uses: liquibase/liquibase-github-action@v7 + if: ${{ steps.setup.outputs.databasePlatform == 'mariadb' }} + with: + operation: "update" + classpath: "src/test/resources/init-changelogs/aws" + changeLogFile: "mariadb.sql" + username: "${{secrets.TH_DB_ADMIN}}" + password: "${{secrets.TH_DB_PASSWD}}" + url: "${{ env.TH_MARIADBURL_10_6 }}" + + - uses: liquibase-github-actions/drop-all@v4.25.1 + if: ${{ steps.setup.outputs.databasePlatform == 'mssql' }} + with: + url: "${{ env.TH_MSSQLURL }}" + username: "${{secrets.TH_DB_ADMIN}}" + password: "${{secrets.TH_DB_PASSWD}}" + licenseKey: "${{secrets.LICENSE_KEY}}" + + - uses: liquibase/liquibase-github-action@v7 + if: ${{ steps.setup.outputs.databasePlatform == 'mssql' }} + with: + operation: "update" + classpath: "src/test/resources/init-changelogs/aws" + changeLogFile: "mssql.sql" + username: "${{secrets.TH_DB_ADMIN}}" + password: "${{secrets.TH_DB_PASSWD}}" + url: "${{ env.TH_MSSQLURL }}" + + - uses: liquibase-github-actions/drop-all@v4.25.1 + if: ${{ steps.setup.outputs.databasePlatform == 'postgresql' && steps.setup.outputs.databaseVersion == 'aurora' }} + with: + url: "${{ env.TH_AURORA_POSTGRESQLURL }}" + username: "${{secrets.TH_DB_ADMIN}}" + password: "${{secrets.TH_DB_PASSWD}}" + licenseKey: "${{secrets.LICENSE_KEY}}" + + - uses: liquibase/liquibase-github-action@v7 + if: ${{ steps.setup.outputs.databasePlatform == 'postgresql' && steps.setup.outputs.databaseVersion == 'aurora' }} + with: + operation: "update" + classpath: "src/test/resources/init-changelogs/aws" + changeLogFile: "postgresql.sql" + username: "${{secrets.TH_DB_ADMIN}}" + password: "${{secrets.TH_DB_PASSWD}}" + url: "${{ env.TH_AURORA_POSTGRESQLURL }}" + + - name: Cache local Maven repository + uses: actions/cache@v3 + with: + path: ~/.m2/repository + key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }} + restore-keys: | + ${{ runner.os }}-maven- + + - name: AWS RDS ${{ steps.setup.outputs.databasePlatform }}-${{ steps.setup.outputs.databaseVersion }} Test Run + if: ${{ steps.setup.outputs.databasePlatform == 'postgresql' && steps.setup.outputs.databaseVersion != 'aurora' }} + env: + LIQUIBASE_PRO_LICENSE_KEY: ${{ secrets.LICENSE_KEY }} + run: mvn -Dtest=${{ needs.setup.outputs.testClasses }} -DconfigFile=/harness-config-cloud.yml -DdbName=${{ steps.setup.outputs.databasePlatform }} -DdbVersion=${{ steps.setup.outputs.databaseVersion }} -Dprefix=aws -DdbUsername=${{secrets.TH_DB_ADMIN}} -DdbPassword=${{secrets.TH_DB_PASSWD}} -DdbUrl='${{ env[format('TH_PGRESURL_{0}', steps.setup.outputs.databaseVersion)] }}' test + + - name: AWS RDS ${{ steps.setup.outputs.databasePlatform }}-${{ steps.setup.outputs.databaseVersion }} Test Run + if: ${{ steps.setup.outputs.databasePlatform == 'oracle' }} + env: + LIQUIBASE_PRO_LICENSE_KEY: ${{ secrets.LICENSE_KEY }} + run: mvn -Dtest=${{ needs.setup.outputs.testClasses }} -DconfigFile=/harness-config-cloud.yml -DdbName=${{ steps.setup.outputs.databasePlatform }} -DdbVersion=${{ steps.setup.outputs.databaseVersion }} -DdbUsername=${{secrets.TH_DB_ADMIN}} -DdbPassword=${{secrets.TH_DB_PASSWD}} -DdbUrl='${{ env.TH_ORACLEURL_19 }}' test + + - name: AWS RDS ${{ steps.setup.outputs.databasePlatform }}-${{ steps.setup.outputs.databaseVersion }} Test Run + if: ${{ steps.setup.outputs.databasePlatform == 'mariadb' }} + env: + LIQUIBASE_PRO_LICENSE_KEY: ${{ secrets.LICENSE_KEY }} + run: mvn -Dtest=${{ needs.setup.outputs.testClasses }} -DconfigFile=/harness-config-cloud.yml -DdbName=${{ steps.setup.outputs.databasePlatform }} -DdbVersion=${{ steps.setup.outputs.databaseVersion }} -DdbUsername=${{secrets.TH_DB_ADMIN}} -DdbPassword=${{secrets.TH_DB_PASSWD}} -DdbUrl='${{ env.TH_MARIADBURL_10_6 }}' test + + - name: AWS RDS ${{ steps.setup.outputs.databasePlatform }}-${{ steps.setup.outputs.databaseVersion }} Test Run + if: ${{ steps.setup.outputs.databasePlatform == 'mysql' && steps.setup.outputs.databaseVersion == 'aws' }} + env: + LIQUIBASE_PRO_LICENSE_KEY: ${{ secrets.LICENSE_KEY }} + run: mvn -Dtest=${{ needs.setup.outputs.testClasses }} -DconfigFile=/harness-config-cloud.yml -DdbName=${{ steps.setup.outputs.databasePlatform }} -DdbVersion=${{ steps.setup.outputs.databaseVersion }} -DdbUsername=${{secrets.TH_DB_ADMIN}} -DdbPassword=${{secrets.TH_DB_PASSWD}} -DdbUrl='${{ env.TH_MYSQLURL_8_0 }}' test + + - name: AWS RDS ${{ steps.setup.outputs.databasePlatform }}-${{ steps.setup.outputs.databaseVersion }} Test Run + if: ${{ steps.setup.outputs.databasePlatform == 'mssql' }} + env: + LIQUIBASE_PRO_LICENSE_KEY: ${{ secrets.LICENSE_KEY }} + run: mvn -Dtest=${{ needs.setup.outputs.testClasses }} -DconfigFile=/harness-config-cloud.yml -DdbName=${{ steps.setup.outputs.databasePlatform }} -DdbVersion=${{ steps.setup.outputs.databaseVersion }} -DdbUsername=${{secrets.TH_DB_ADMIN}} -DdbPassword=${{secrets.TH_DB_PASSWD}} -DdbUrl='${{ env.TH_MSSQLURL }}' test + + - name: AWS Aurora ${{ steps.setup.outputs.databasePlatform }} Test Run + if: ${{ steps.setup.outputs.databasePlatform == 'mysql' && steps.setup.outputs.databaseVersion == 'aurora' }} + env: + LIQUIBASE_PRO_LICENSE_KEY: ${{ secrets.LICENSE_KEY }} + run: mvn -Dtest=${{ needs.setup.outputs.testClasses }} -DconfigFile=/harness-config-cloud.yml -DdbName=${{ steps.setup.outputs.databasePlatform }} -DdbVersion=${{ steps.setup.outputs.databaseVersion }} -DdbUsername=${{secrets.TH_DB_ADMIN}} -DdbPassword=${{secrets.TH_DB_PASSWD}} -DdbUrl='${{ env.TH_AURORA_MYSQLURL }}' test + + - name: AWS Aurora ${{ steps.setup.outputs.databasePlatform }} Test Run + if: ${{ steps.setup.outputs.databasePlatform == 'postgresql' && steps.setup.outputs.databaseVersion == 'aurora' }} + env: + LIQUIBASE_PRO_LICENSE_KEY: ${{ secrets.LICENSE_KEY }} + run: mvn -Dtest=${{ needs.setup.outputs.testClasses }} -DconfigFile=/harness-config-cloud.yml -DdbName=${{ steps.setup.outputs.databasePlatform }} -DdbVersion=13 -Dprefix=aurora -DdbUsername=${{secrets.TH_DB_ADMIN}} -DdbPassword=${{secrets.TH_DB_PASSWD}} -DdbUrl='${{ env.TH_AURORA_POSTGRESQLURL }}' test + + - name: Archive AWS RDS ${{ steps.setup.outputs.databasePlatform }}-${{ steps.setup.outputs.databaseVersion }} Test Results + uses: actions/upload-artifact@v4 + with: + name: aws-rds-${{ steps.setup.outputs.databasePlatform }}-${{ steps.setup.outputs.databaseVersion }}-test-results + path: build/spock-reports + + destroy-ephemeral-cloud-infra: + if: always() + needs: [ deploy-ephemeral-cloud-infra, test ] + uses: liquibase/build-logic/.github/workflows/ephemeral-cloud-infra.yml@DAT-17834 + secrets: inherit + with: + destroy: true + stack_id: ${{ needs.deploy-ephemeral-cloud-infra.outputs.stack_id }} + aws_test_harness: true \ No newline at end of file diff --git a/.github/workflows/aws.yml b/.github/workflows/aws.yml index 0cbfb9a7c..83313ce5f 100644 --- a/.github/workflows/aws.yml +++ b/.github/workflows/aws.yml @@ -5,7 +5,7 @@ concurrency: aws-run on: # Triggers the workflow on a schedule for the main branch. Also allows for manual triggers schedule: - - cron: '0 6 * * *' # Execute every day at noon + - cron: '0 6 * * *' # Execute every day at 6AM UTC workflow_dispatch: inputs: testClasses: @@ -75,7 +75,8 @@ jobs: run: | pip install localstack awscli-local docker pull localstack/localstack-pro - DOCKER_FLAGS='-e MSSQL_ACCEPT_EULA=Y' localstack start -d + docker pull mcr.microsoft.com/mssql/server:2019-latest + DOCKER_FLAGS='-e MSSQL_ACCEPT_EULA=Y -e MSSQL_IMAGE=mcr.microsoft.com/mssql/server:2019-latest' localstack start -d echo "Waiting for LocalStack startup..." localstack wait -t 30 echo "Startup complete" @@ -286,4 +287,4 @@ jobs: uses: actions/upload-artifact@v4 with: name: aws-rds-${{ steps.setup.outputs.databasePlatform }}-${{ steps.setup.outputs.databaseVersion }}-test-results - path: build/spock-reports \ No newline at end of file + path: build/spock-reports diff --git a/.github/workflows/gcp.yml b/.github/workflows/gcp.yml index dffcc500f..5362502b7 100644 --- a/.github/workflows/gcp.yml +++ b/.github/workflows/gcp.yml @@ -5,7 +5,7 @@ concurrency: gcp-run on: # Triggers the workflow on a schedule for the main branch. Also allows for manual triggers schedule: - - cron: '0 6 * * *' # Execute every day at noon + - cron: '0 6 * * *' # Execute every day at 6AM UTC workflow_dispatch: inputs: testClasses: @@ -162,4 +162,4 @@ jobs: uses: actions/upload-artifact@v4 with: name: gcp-${{ steps.setup.outputs.databasePlatform }}-${{ steps.setup.outputs.databaseVersion }}-test-results - path: build/spock-reports \ No newline at end of file + path: build/spock-reports diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 3e9c3ac08..d62b935d0 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -265,14 +265,6 @@ jobs: buildOverview="$(mvn -B -q liquibase-sdk:get-build-info '-Dliquibase.sdk.buildInfo.outputKey=overview' '-Dliquibase.sdk.repo=liquibase/liquibase-pro')" echo "::notice :: Installed Snapshot Liquibase-pro $buildOverview" - mvn -B liquibase-sdk:set-commit-status \ - "-Dliquibase.sdk.repo=${{ steps.configure-build.outputs.liquibaseRepo }}" \ - "-Dliquibase.sdk.status.context=Run Test Harness" \ - "-Dliquibase.sdk.status.state=PENDING" \ - "-Dliquibase.sdk.status.url=https://github.com/liquibase/liquibase-test-harness/actions/runs/${{ github.run_id }}" \ - "-Dliquibase.sdk.status.description=Internal functional tests" \ - "-Dliquibase.sdk.status.commit=installed" - - name: Cache installed Liquibase uses: actions/cache@v4 with: @@ -306,9 +298,9 @@ jobs: working-directory: src/test/resources/docker run: ./create-infra.sh ${{ matrix.database }} env: - ARTIFACTORY_URL: ${{ secrets.ARTIFACTORY_URL }} - ARTIFACTORY_USER: ${{ secrets.ARTIFACTORY_USER }} - ARTIFACTORY_TOKEN: ${{ secrets.ARTIFACTORY_TOKEN }} + REPO_URL: ${{ secrets.REPO_URL }} + REPO_USER: ${{ secrets.REPO_USER }} + REPO_PASSWORD: ${{ secrets.REPO_PASSWORD }} - name: Configure Liquibase Version env: diff --git a/.github/workflows/oracle-oci.yml b/.github/workflows/oracle-oci.yml index d9254d940..7cb5c1fd6 100644 --- a/.github/workflows/oracle-oci.yml +++ b/.github/workflows/oracle-oci.yml @@ -5,7 +5,7 @@ concurrency: oracle-oci-run on: # Triggers the workflow on a schedule for the main branch. Also allows for manual triggers schedule: - - cron: '0 6 * * *' # Execute every day at noon + - cron: '0 6 * * *' # Execute every day at 6AM UTC workflow_dispatch: inputs: testClasses: @@ -60,4 +60,4 @@ jobs: uses: actions/upload-artifact@v4 with: name: oracle-oci-test-results - path: build/spock-reports \ No newline at end of file + path: build/spock-reports diff --git a/.github/workflows/snowflake.yml b/.github/workflows/snowflake.yml index cc6e34340..20543a4f3 100644 --- a/.github/workflows/snowflake.yml +++ b/.github/workflows/snowflake.yml @@ -3,7 +3,7 @@ concurrency: snowflake-run on: # Triggers the workflow on a schedule for the main branch. Also allows for manual triggers schedule: - - cron: '0 7 * * *' # Execute every day at noon + - cron: '0 7 * * *' # Execute every day at 7AM UTC workflow_dispatch: jobs: @@ -41,4 +41,4 @@ jobs: uses: actions/upload-artifact@v4 with: name: snowflake-test-results - path: build/spock-reports \ No newline at end of file + path: build/spock-reports diff --git a/src/test/resources/docker/create-infra.sh b/src/test/resources/docker/create-infra.sh index 91d8cb68d..3f92b6cc3 100755 --- a/src/test/resources/docker/create-infra.sh +++ b/src/test/resources/docker/create-infra.sh @@ -14,7 +14,7 @@ case $db in # edb setup requires login to private registry "edb-postgres-9.5"|"edb-postgres-9.6"|"edb-postgres-10"|"edb-postgres-11"|"edb-postgres-12"|"edb-postgres-13"|"edb-postgres-14"|"edb-edb-9.5"|"edb-edb-9.6"|"edb-edb-10"|"edb-edb-11"|"edb-edb-12"|"edb-edb-13"|"edb-edb-14") - docker login $ARTIFACTORY_URL -u $ARTIFACTORY_USER -p $ARTIFACTORY_TOKEN + docker login $REPO_URL -u $REPO_USER -p $REPO_PASSWORD docker compose -f docker-compose.edb.yml up -d $db exit 0 ;; diff --git a/src/test/resources/docker/docker-compose.edb.yml b/src/test/resources/docker/docker-compose.edb.yml index 82ac9a14f..150a0d510 100644 --- a/src/test/resources/docker/docker-compose.edb.yml +++ b/src/test/resources/docker/docker-compose.edb.yml @@ -5,49 +5,49 @@ services: # Liquibase hosts private EDB images built for testing purposes in a private Artifactory repo which is login protected. # If you do not login privileges to this private repo then you will encounter authentication errors if you run `docker compose up` on this docker compose file. edb-postgres-9.5: - image: docker-dev.artifactory.datical.net/datical/datical-enterprisedb-ppas95:latest + image: docker.liquibase.net/datical-enterprisedb-ppas95:latest ports: - "5501:5444" restart: always # no environment or volumes as those were created at image creation edb-postgres-9.6: - image: docker-dev.artifactory.datical.net/datical/datical-enterprisedb-edbas96:latest + image: docker.liquibase.net/datical-enterprisedb-edbas96:latest ports: - "5502:5444" restart: always # no environment or volumes as those were created at image creation edb-postgres-10: - image: docker-dev.artifactory.datical.net/datical/datical-enterprisedb-edbas10:latest + image: docker.liquibase.net/datical-enterprisedb-edbas10:latest ports: - "5503:5444" restart: always # no environment or volumes as those were created at image creation edb-postgres-11: - image: docker-dev.artifactory.datical.net/datical/datical-enterprisedb-edbas11:latest + image: docker.liquibase.net/datical-enterprisedb-edbas11:latest ports: - "5504:5444" restart: always # no environment or volumes as those were created at image creation edb-postgres-12: - image: docker-dev.artifactory.datical.net/datical/datical-enterprisedb-edbas12:latest + image: docker.liquibase.net/datical-enterprisedb-edbas12:latest ports: - "5505:5444" restart: always # no environment or volumes as those were created at image creation edb-postgres-13: - image: docker-dev.artifactory.datical.net/datical/datical-enterprisedb-edbas13:latest + image: docker.liquibase.net/datical-enterprisedb-edbas13:latest ports: - "5506:5444" restart: always # no environment or volumes as those were created at image creation edb-postgres-14: - image: docker-dev.artifactory.datical.net/datical/datical-enterprisedb-edbas14:latest + image: docker.liquibase.net/datical-enterprisedb-edbas14:latest ports: - "5507:5444" restart: always @@ -57,49 +57,49 @@ services: # Without it tests will run in parallel and interfere with each other edb-edb-9.5: - image: docker-dev.artifactory.datical.net/datical/datical-enterprisedb-ppas95:latest + image: docker.liquibase.net/datical-enterprisedb-ppas95:latest ports: - "5508:5444" restart: always # no environment or volumes as those were created at image creation edb-edb-9.6: - image: docker-dev.artifactory.datical.net/datical/datical-enterprisedb-edbas96:latest + image: docker.liquibase.net/datical-enterprisedb-edbas96:latest ports: - "5509:5444" restart: always # no environment or volumes as those were created at image creation edb-edb-10: - image: docker-dev.artifactory.datical.net/datical/datical-enterprisedb-edbas10:latest + image: docker.liquibase.net/datical-enterprisedb-edbas10:latest ports: - "5510:5444" restart: always # no environment or volumes as those were created at image creation edb-edb-11: - image: docker-dev.artifactory.datical.net/datical/datical-enterprisedb-edbas11:latest + image: docker.liquibase.net/datical-enterprisedb-edbas11:latest ports: - "5511:5444" restart: always # no environment or volumes as those were created at image creation edb-edb-12: - image: docker-dev.artifactory.datical.net/datical/datical-enterprisedb-edbas12:latest + image: docker.liquibase.net/datical-enterprisedb-edbas12:latest ports: - "5512:5444" restart: always # no environment or volumes as those were created at image creation edb-edb-13: - image: docker-dev.artifactory.datical.net/datical/datical-enterprisedb-edbas13:latest + image: docker.liquibase.net/datical-enterprisedb-edbas13:latest ports: - "5513:5444" restart: always # no environment or volumes as those were created at image creation edb-edb-14: - image: docker-dev.artifactory.datical.net/datical/datical-enterprisedb-edbas14:latest + image: docker.liquibase.net/datical-enterprisedb-edbas14:latest ports: - "5514:5444" restart: always diff --git a/src/test/resources/docker/oracle-artifactory/docker-compose.yml b/src/test/resources/docker/oracle-artifactory/docker-compose.yml index e63121e17..d1d16bc23 100644 --- a/src/test/resources/docker/oracle-artifactory/docker-compose.yml +++ b/src/test/resources/docker/oracle-artifactory/docker-compose.yml @@ -3,7 +3,7 @@ version: '3.3' services: oracle-ee-19.3.0: - image: docker-dev.artifactory.datical.net/datical/oracle-ee:19.3.0-local + image: docker.liquibase.net/oracle-ee:19.3.0-local ports: - "1521:1521" restart: always