Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore: run multiaz integration tests against latest and default versions #1161

Open
wants to merge 2 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/mysql_advanced_performance.yml
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ jobs:
run: |
./gradlew --no-parallel --no-daemon test-aurora-mysql-advanced-performance
env:
AURORA_CLUSTER_DOMAIN: ${{ secrets.DB_CONN_SUFFIX }}
RDS_CLUSTER_DOMAIN: ${{ secrets.DB_CONN_SUFFIX }}
RDS_DB_REGION: ${{ secrets.AWS_DEFAULT_REGION }}
AWS_ACCESS_KEY_ID: ${{ env.TEMP_AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ env.TEMP_AWS_SECRET_ACCESS_KEY }}
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/mysql_performance.yml
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ jobs:
run: |
./gradlew --no-parallel --no-daemon test-aurora-mysql-performance
env:
AURORA_CLUSTER_DOMAIN: ${{ secrets.DB_CONN_SUFFIX }}
RDS_CLUSTER_DOMAIN: ${{ secrets.DB_CONN_SUFFIX }}
RDS_DB_REGION: ${{ secrets.AWS_DEFAULT_REGION }}
AWS_ACCESS_KEY_ID: ${{ env.TEMP_AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ env.TEMP_AWS_SECRET_ACCESS_KEY }}
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/pg_advanced_performance.yml
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ jobs:
run: |
./gradlew --no-parallel --no-daemon test-aurora-pg-advanced-performance
env:
AURORA_CLUSTER_DOMAIN: ${{ secrets.DB_CONN_SUFFIX }}
RDS_CLUSTER_DOMAIN: ${{ secrets.DB_CONN_SUFFIX }}
RDS_DB_REGION: ${{ secrets.AWS_DEFAULT_REGION }}
AWS_ACCESS_KEY_ID: ${{ env.TEMP_AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ env.TEMP_AWS_SECRET_ACCESS_KEY }}
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/pg_performance.yml
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ jobs:
run: |
./gradlew --no-parallel --no-daemon test-aurora-pg-performance
env:
AURORA_CLUSTER_DOMAIN: ${{ secrets.DB_CONN_SUFFIX }}
RDS_CLUSTER_DOMAIN: ${{ secrets.DB_CONN_SUFFIX }}
RDS_DB_REGION: ${{ secrets.AWS_DEFAULT_REGION }}
AWS_ACCESS_KEY_ID: ${{ env.TEMP_AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ env.TEMP_AWS_SECRET_ACCESS_KEY }}
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/run-autoscaling-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ jobs:
run: |
./gradlew --no-parallel --no-daemon test-autoscaling-only
env:
AURORA_CLUSTER_DOMAIN: ${{ secrets.DB_CONN_SUFFIX }}
RDS_CLUSTER_DOMAIN: ${{ secrets.DB_CONN_SUFFIX }}
AURORA_DB_REGION: ${{ secrets.AWS_DEFAULT_REGION }}
AWS_ACCESS_KEY_ID: ${{ env.TEMP_AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ env.TEMP_AWS_SECRET_ACCESS_KEY }}
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/run-integration-tests-codebuild.yml
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ jobs:
run: |
./gradlew --no-parallel --no-daemon test-all-${{ matrix.environment }}-aurora
env:
AURORA_CLUSTER_DOMAIN: ${{ secrets.DB_CONN_SUFFIX }}
RDS_CLUSTER_DOMAIN: ${{ secrets.DB_CONN_SUFFIX }}
RDS_DB_REGION: ${{ secrets.AWS_DEFAULT_REGION }}
AWS_ACCESS_KEY_ID: ${{ env.TEMP_AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ env.TEMP_AWS_SECRET_ACCESS_KEY }}
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/run-integration-tests-default.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ jobs:
strategy:
fail-fast: false
matrix:
dbEngine: [ "mysql-aurora", "mysql-multi-az", "pg-aurora", "pg-multi-az" ]
dbEngine: [ "mysql-aurora", "pg-aurora" ]
steps:
- name: 'Clone repository'
uses: actions/checkout@v4
Expand Down Expand Up @@ -47,7 +47,7 @@ jobs:
run: |
./gradlew --no-parallel --no-daemon test-all-${{ matrix.dbEngine }}
env:
AURORA_CLUSTER_DOMAIN: ${{ secrets.DB_CONN_SUFFIX }}
RDS_CLUSTER_DOMAIN: ${{ secrets.DB_CONN_SUFFIX }}
RDS_DB_REGION: ${{ secrets.AWS_DEFAULT_REGION }}
AWS_ACCESS_KEY_ID: ${{ env.TEMP_AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ env.TEMP_AWS_SECRET_ACCESS_KEY }}
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/run-integration-tests-latest.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ jobs:
strategy:
fail-fast: false
matrix:
dbEngine: [ "mysql-aurora", "mysql-multi-az", "pg-aurora", "pg-multi-az" ]
dbEngine: [ "mysql-aurora", "pg-aurora"]
steps:
- name: 'Clone repository'
uses: actions/checkout@v4
Expand Down Expand Up @@ -47,7 +47,7 @@ jobs:
run: |
./gradlew --no-parallel --no-daemon test-all-${{ matrix.dbEngine }}
env:
AURORA_CLUSTER_DOMAIN: ${{ secrets.DB_CONN_SUFFIX }}
RDS_CLUSTER_DOMAIN: ${{ secrets.DB_CONN_SUFFIX }}
RDS_DB_REGION: ${{ secrets.AWS_DEFAULT_REGION }}
AWS_ACCESS_KEY_ID: ${{ env.TEMP_AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ env.TEMP_AWS_SECRET_ACCESS_KEY }}
Expand Down
74 changes: 74 additions & 0 deletions .github/workflows/run-integration-tests-multi-az.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
name: Run MultiAZ Integration Tests

on:
workflow_dispatch:
push:
branches:
- main

jobs:
multiaz-integration-tests:
name: 'Run MultiAZ integration tests'
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
dbEngine: [ "mysql-multi-az", "pg-multi-az" ]
version: [ "default", "latest" ]
steps:
- name: 'Clone repository'
uses: actions/checkout@v4
with:
fetch-depth: 50
- name: 'Set up JDK 8'
uses: actions/setup-java@v4
with:
distribution: 'corretto'
java-version: 8
- name: 'Configure AWS credentials'
uses: aws-actions/configure-aws-credentials@v4
with:
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
aws-region: ${{ secrets.AWS_DEFAULT_REGION }}
- name: 'Set up temp AWS credentials'
run: |
creds=($(aws sts get-session-token \
--duration-seconds 21600 \
--query 'Credentials.[AccessKeyId, SecretAccessKey, SessionToken]' \
--output text \
| xargs));
echo "::add-mask::${creds[0]}"
echo "::add-mask::${creds[1]}"
echo "::add-mask::${creds[2]}"
echo "TEMP_AWS_ACCESS_KEY_ID=${creds[0]}" >> $GITHUB_ENV
echo "TEMP_AWS_SECRET_ACCESS_KEY=${creds[1]}" >> $GITHUB_ENV
echo "TEMP_AWS_SESSION_TOKEN=${creds[2]}" >> $GITHUB_ENV
- name: Run integration tests
run: |
./gradlew --no-parallel --no-daemon test-all-${{ matrix.dbEngine }}
env:
RDS_CLUSTER_DOMAIN: ${{ secrets.DB_CONN_SUFFIX }}
RDS_DB_REGION: ${{ secrets.AWS_DEFAULT_REGION }}
AWS_ACCESS_KEY_ID: ${{ env.TEMP_AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ env.TEMP_AWS_SECRET_ACCESS_KEY }}
AWS_SESSION_TOKEN: ${{ env.TEMP_AWS_SESSION_TOKEN }}
AURORA_MYSQL_DB_ENGINE_VERSION: ${{ matrix.version }}
AURORA_PG_ENGINE_VERSION: ${{ matrix.vresion }}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
AURORA_PG_ENGINE_VERSION: ${{ matrix.vresion }}
AURORA_PG_ENGINE_VERSION: ${{ matrix.version }}

- name: Mask data
run: |
./gradlew --no-parallel --no-daemon maskJunitHtmlReport
- name: Archive junit results for ${{ matrix.dbEngine }}
if: always()
uses: actions/upload-artifact@v4
with:
name: junit-report-default-${{ matrix.dbEngine }}
path: ./wrapper/build/test-results
retention-days: 5
- name: Archive html summary report for ${{ matrix.dbEngine }}
if: always()
uses: actions/upload-artifact@v4
with:
name: html-summary-report-${{ matrix.vresion }}-${{ matrix.dbEngine }}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
name: html-summary-report-${{ matrix.vresion }}-${{ matrix.dbEngine }}
name: html-summary-report-${{ matrix.version }}-${{ matrix.dbEngine }}

path: ./wrapper/build/report
retention-days: 5
29 changes: 9 additions & 20 deletions wrapper/src/test/java/integration/host/TestEnvironment.java
Original file line number Diff line number Diff line change
Expand Up @@ -555,46 +555,35 @@ private static String getRdsEngine(TestEnvironmentRequest request) {
private static String getDbEngineVersion(TestEnvironment env) {
switch (env.info.getRequest().getDatabaseEngineDeployment()) {
case AURORA:
return getAuroraDbEngineVersion(env);
return getRdsEngineVersion(env, "aurora-");
case RDS:
case RDS_MULTI_AZ_CLUSTER:
return getRdsEngineVersion(env.info.getRequest());
return getRdsEngineVersion(env, "");
default:
throw new NotImplementedException(env.info.getRequest().getDatabaseEngineDeployment().toString());
}
}

private static String getAuroraDbEngineVersion(TestEnvironment env) {
private static String getRdsEngineVersion(TestEnvironment env, String engineNamePrefix) {
String engineName;
String systemPropertyVersion;
TestEnvironmentRequest request = env.info.getRequest();
switch (request.getDatabaseEngine()) {
case MYSQL:
engineName = "aurora-mysql";
engineName = engineNamePrefix + "mysql";
systemPropertyVersion = config.auroraMySqlDbEngineVersion;
break;
case PG:
engineName = "aurora-postgresql";
engineName = engineNamePrefix + "postgresql";
systemPropertyVersion = config.auroraPgDbEngineVersion;
break;
default:
throw new NotImplementedException(request.getDatabaseEngine().toString());
}
return findAuroraDbEngineVersion(env, engineName, systemPropertyVersion);
return findDbEngineVersion(env, engineName, systemPropertyVersion);
}

private static String getRdsEngineVersion(TestEnvironmentRequest request) {
switch (request.getDatabaseEngine()) {
case MYSQL:
return "8.0.33";
case PG:
return "15.4";
default:
throw new NotImplementedException(request.getDatabaseEngine().toString());
}
}

private static String findAuroraDbEngineVersion(
private static String findDbEngineVersion(
TestEnvironment env,
String engineName,
String systemPropertyVersion) {
Expand Down Expand Up @@ -1078,8 +1067,8 @@ private static void preCreateEnvironment(int currentEnvIndex) {

if (preCreateInfo.envPreCreateFuture == null
&& (preCreateInfo.request.getDatabaseEngineDeployment() == DatabaseEngineDeployment.AURORA
|| preCreateInfo.request.getDatabaseEngineDeployment() == DatabaseEngineDeployment.RDS
|| preCreateInfo.request.getDatabaseEngineDeployment() == DatabaseEngineDeployment.RDS_MULTI_AZ_CLUSTER)) {
|| preCreateInfo.request.getDatabaseEngineDeployment() == DatabaseEngineDeployment.RDS
|| preCreateInfo.request.getDatabaseEngineDeployment() == DatabaseEngineDeployment.RDS_MULTI_AZ_CLUSTER)) {

// run environment creation in advance
int finalIndex = index;
Expand Down
Loading