@@ -13,6 +13,10 @@ stages:
1313 - notify
1414
1515.snippets :
16+ source-secrets :
17+ - source ./ci/scripts/vault_config.sh
18+ - source ./ci/scripts/get-secret.sh
19+
1620 # macOS AMI will already have cmdline-tools installed
1721 install-android-api-components :
1822 - echo y | ~/android_sdk/cmdline-tools/latest/bin/sdkmanager --install "emulator"
@@ -39,12 +43,12 @@ stages:
3943 - if [[ "$exit_code" -ne 0 ]]; then exit 1; fi
4044 - exit 0
4145 set-publishing-credentials :
42- - aws ssm get-parameter --region us-east-1 --name ci.dd-sdk-android.gradle-properties --with-decryption --query "Parameter.Value" --out text > > ./gradle.properties
43- - export GPG_PRIVATE_KEY=$(aws ssm get-parameter --region us-east-1 --name ci.dd-sdk-android.signing.gpg_private_key --with-decryption --query "Parameter.Value" --out text )
44- - export GPG_PASSWORD=$(aws ssm get-parameter --region us-east-1 --name ci.dd-sdk-android.signing.gpg_passphrase --with-decryption --query "Parameter.Value" --out text )
45- - export CENTRAL_PUBLISHER_USERNAME=$(aws ssm get-parameter --region us-east-1 --name ci.dd-sdk-android.publishing.central_username --with-decryption --query "Parameter.Value" --out text )
46- - export CENTRAL_PUBLISHER_PASSWORD=$(aws ssm get-parameter --region us-east-1 --name ci.dd-sdk-android.publishing.central_password --with-decryption --query "Parameter.Value" --out text )
47- - export GPG_PUBLIC_FINGERPRINT=$(aws ssm get-parameter --region us-east-1 --name ci.dd-sdk-android.signing.gpg_public_key --with-decryption --query "Parameter.Value" --out text | gpg --import --import-options show-only | grep -E -o -e "[A-F0-9]{40}")
46+ - get_secret $DD_ANDROID_SECRET__GRADLE_PROPERTIES > ./gradle.properties
47+ - export GPG_PRIVATE_KEY=$(get_secret $DD_ANDROID_SECRET__SIGNING_GPG_PRIVATE_KEY )
48+ - export GPG_PASSWORD=$(get_secret $DD_ANDROID_SECRET__SIGNING_GPG_PASSPHRASE )
49+ - export CENTRAL_PUBLISHER_USERNAME=$(get_secret $DD_ANDROID_SECRET__PUBLISHING_CENTRAL_USERNAME )
50+ - export CENTRAL_PUBLISHER_PASSWORD=$(get_secret $DD_ANDROID_SECRET__PUBLISHING_CENTRAL_PWD )
51+ - export GPG_PUBLIC_FINGERPRINT=$(get_secret $DD_ANDROID_SECRET__SIGNING_GPG_PUBLIC_KEY | gpg --import --import-options show-only | grep -E -o -e "[A-F0-9]{40}")
4852
4953# CI IMAGE
5054
@@ -116,6 +120,7 @@ analysis:detekt-custom:
116120 - ./gradlew :features:dd-sdk-android-profiling:customDetektRules
117121 - ./gradlew :integrations:dd-sdk-android-coil:customDetektRules
118122 - ./gradlew :integrations:dd-sdk-android-compose:customDetektRules
123+ - ./gradlew :integrations:dd-sdk-android-cronet:customDetektRules
119124 - ./gradlew :integrations:dd-sdk-android-fresco:customDetektRules
120125 - ./gradlew :integrations:dd-sdk-android-glide:customDetektRules
121126 - ./gradlew :integrations:dd-sdk-android-okhttp:customDetektRules
@@ -183,12 +188,13 @@ test:kover:
183188 - cache/caches/
184189 - cache/notifications/
185190 script :
191+ - !reference [.snippets, source-secrets]
186192 - pip3 install datadog
187193 - rm -rf ~/.gradle/daemon/
188194 - export DD_AGENT_HOST="$BUILDENV_HOST_IP"
189- - export DD_API_KEY=$(aws ssm get-parameter --region us-east-1 --name ci.dd-sdk-android.api_key --with-decryption --query "Parameter.Value" --out text )
190- - export DD_APP_KEY=$(aws ssm get-parameter --region us-east-1 --name ci.dd-sdk-android.app_key --with-decryption --query "Parameter.Value" --out text )
191- - CODECOV_TOKEN=$(aws ssm get-parameter --region us-east-1 --name ci.dd-sdk-android.codecov-token --with-decryption --query "Parameter.Value" --out text )
195+ - export DD_API_KEY=$(get_secret $DD_ANDROID_SECRET__API_KEY )
196+ - export DD_APP_KEY=$(get_secret $DD_ANDROID_SECRET__APP_KEY )
197+ - CODECOV_TOKEN=$(get_secret $DD_ANDROID_SECRET__CODECOV_TOKEN )
192198 - GRADLE_OPTS="-Xmx3072m" DD_TAGS="test.configuration.variant:release" ./gradlew :dd-sdk-android-core:koverXmlReportRelease --no-daemon --build-cache --gradle-user-home cache/ -Dorg.gradle.jvmargs=-javaagent:$DD_TRACER_FOLDER/dd-java-agent.jar=$DD_COMMON_AGENT_CONFIG
193199 - GRADLE_OPTS="-Xmx3072m" DD_TAGS="test.configuration.variant:release" ./gradlew :dd-sdk-android-internal:koverXmlReportRelease --no-daemon --build-cache --gradle-user-home cache/ -Dorg.gradle.jvmargs=-javaagent:$DD_TRACER_FOLDER/dd-java-agent.jar=$DD_COMMON_AGENT_CONFIG
194200 - GRADLE_OPTS="-Xmx3072m" DD_TAGS="test.configuration.variant:release" ./gradlew :koverReportFeatures --no-daemon --build-cache --gradle-user-home cache/ -Dorg.gradle.jvmargs=-javaagent:$DD_TRACER_FOLDER/dd-java-agent.jar=$DD_COMMON_AGENT_CONFIG
@@ -373,8 +379,9 @@ test-pyramid:detekt-api-coverage:
373379 stage : test-pyramid
374380 timeout : 1h
375381 script :
382+ - !reference [ .snippets, source-secrets ]
376383 - mkdir -p ./config/
377- - aws ssm get-parameter --region us-east-1 --name ci.dd-sdk-android.gradle-properties --with-decryption --query "Parameter.Value" --out text > > ./gradle.properties
384+ - get_secret $DD_ANDROID_SECRET__GRADLE_PROPERTIES > ./gradle.properties
378385 - GRADLE_OPTS="-Xmx4096M" ./gradlew assembleLibrariesDebug --stacktrace --no-daemon
379386 - GRADLE_OPTS="-Xmx4096M" ./gradlew printSdkDebugRuntimeClasspath --stacktrace --no-daemon
380387 - GRADLE_OPTS="-Xmx4096M" ./gradlew :tools:detekt:jar --stacktrace --no-daemon
@@ -391,14 +398,15 @@ test-pyramid:publish-e2e-synthetics:
391398 only :
392399 - develop
393400 script :
401+ - !reference [ .snippets, source-secrets ]
394402 - mkdir -p ./config/
395- - aws ssm get-parameter --region us-east-1 --name ci.dd-sdk-android.gradle-properties --with-decryption --query "Parameter.Value" --out text > > ./gradle.properties
396- - aws ssm get-parameter --region us-east-1 --name ci.dd-sdk-android.keystore --with-decryption --query "Parameter.Value" --out text | base64 -d > ./sample-android.keystore
397- - aws ssm get-parameter --region us-east-1 --name ci.dd-sdk-android.e2e_config_json --with-decryption --query "Parameter.Value" --out text > ./config/us1.json
398- - export E2E_STORE_PASSWD=$(aws ssm get-parameter --region us-east-1 --name ci.dd-sdk-android.keystore-password --with-decryption --query "Parameter.Value" --out text )
399- - export E2E_DD_API_KEY=$(aws ssm get-parameter --region us-east-1 --name ci.dd-sdk-android.e2e_api_key --with-decryption --query "Parameter.Value" --out text )
400- - export E2E_DD_APP_KEY=$(aws ssm get-parameter --region us-east-1 --name ci.dd-sdk-android.e2e_app_key --with-decryption --query "Parameter.Value" --out text )
401- - export E2E_MOBILE_APP_ID=$(aws ssm get-parameter --region us-east-1 --name ci.dd-sdk-android.e2e_mobile_app_id --with-decryption --query "Parameter.Value" --out text )
403+ - get_secret $DD_ANDROID_SECRET__GRADLE_PROPERTIES > ./gradle.properties
404+ - get_secret $DD_ANDROID_SECRET__KEYSTORE > ./sample-android.keystore
405+ - get_secret $DD_ANDROID_SECRET__E2E_CONFIG_JSON > ./config/us1.json
406+ - export E2E_STORE_PASSWD=$(get_secret $DD_ANDROID_SECRET__KEYSTORE_PWD )
407+ - export E2E_DD_API_KEY=$(get_secret $DD_ANDROID_SECRET__E2E_API_KEY )
408+ - export E2E_DD_APP_KEY=$(get_secret $DD_ANDROID_SECRET__E2E_APP_KEY )
409+ - export E2E_MOBILE_APP_ID=$(get_secret $DD_ANDROID_SECRET__E2E_MOBILE_APP_ID )
402410 - GRADLE_OPTS="-Xmx4096M" ./gradlew assembleLibrariesRelease --stacktrace --no-daemon
403411 - GRADLE_OPTS="-Xmx4096M" ./gradlew :sample:kotlin:packageUs1Release --stacktrace --no-daemon
404412 - npm update -g @datadog/datadog-ci
@@ -418,14 +426,15 @@ test-pyramid:publish-webview-synthetics:
418426 only :
419427 - develop
420428 script :
429+ - !reference [ .snippets, source-secrets ]
421430 - mkdir -p ./config/
422- - aws ssm get-parameter --region us-east-1 --name ci.dd-sdk-android.gradle-properties --with-decryption --query "Parameter.Value" --out text > > ./gradle.properties
423- - aws ssm get-parameter --region us-east-1 --name ci.dd-sdk-android.keystore --with-decryption --query "Parameter.Value" --out text | base64 -d > ./sample-android.keystore
424- - aws ssm get-parameter --region us-east-1 --name ci.dd-sdk-android.webview_config_json --with-decryption --query "Parameter.Value" --out text > ./config/us1.json
425- - export E2E_STORE_PASSWD=$(aws ssm get-parameter --region us-east-1 --name ci.dd-sdk-android.keystore-password --with-decryption --query "Parameter.Value" --out text )
426- - export E2E_DD_API_KEY=$(aws ssm get-parameter --region us-east-1 --name ci.dd-sdk-android.webview_api_key --with-decryption --query "Parameter.Value" --out text )
427- - export E2E_DD_APP_KEY=$(aws ssm get-parameter --region us-east-1 --name ci.dd-sdk-android.webview_app_key --with-decryption --query "Parameter.Value" --out text )
428- - export E2E_MOBILE_APP_ID=$(aws ssm get-parameter --region us-east-1 --name ci.dd-sdk-android.webview_mobile_app_id --with-decryption --query "Parameter.Value" --out text )
431+ - get_secret $DD_ANDROID_SECRET__GRADLE_PROPERTIES > ./gradle.properties
432+ - get_secret $DD_ANDROID_SECRET__KEYSTORE > ./sample-android.keystore
433+ - get_secret $DD_ANDROID_SECRET__WEBVIEW_CONFIG_JSON > ./config/us1.json
434+ - export E2E_STORE_PASSWD=$(get_secret $DD_ANDROID_SECRET__KEYSTORE_PWD )
435+ - export E2E_DD_API_KEY=$(get_secret $DD_ANDROID_SECRET__WEBVIEW_API_KEY )
436+ - export E2E_DD_APP_KEY=$(get_secret $DD_ANDROID_SECRET__WEBVIEW_APP_KEY )
437+ - export E2E_MOBILE_APP_ID=$(get_secret $DD_ANDROID_SECRET__WEBVIEW_MOBILE_APP_ID )
429438 - GRADLE_OPTS="-Xmx4096M" ./gradlew assembleLibrariesRelease --stacktrace --no-daemon
430439 - GRADLE_OPTS="-Xmx4096M" ./gradlew :sample:kotlin:packageUs1Release --stacktrace --no-daemon
431440 - npm update -g @datadog/datadog-ci
@@ -445,14 +454,15 @@ test-pyramid:publish-staging-synthetics:
445454 only :
446455 - develop
447456 script :
457+ - !reference [ .snippets, source-secrets ]
448458 - mkdir -p ./config/
449- - aws ssm get-parameter --region us-east-1 --name ci.dd-sdk-android.gradle-properties --with-decryption --query "Parameter.Value" --out text > > ./gradle.properties
450- - aws ssm get-parameter --region us-east-1 --name ci.dd-sdk-android.keystore --with-decryption --query "Parameter.Value" --out text | base64 -d > ./sample-android.keystore
451- - aws ssm get-parameter --region us-east-1 --name ci.dd-sdk-android.e2e_staging_config_json --with-decryption --query "Parameter.Value" --out text > ./config/staging.json
452- - export E2E_STORE_PASSWD=$(aws ssm get-parameter --region us-east-1 --name ci.dd-sdk-android.keystore-password --with-decryption --query "Parameter.Value" --out text )
453- - export E2E_DD_API_KEY=$(aws ssm get-parameter --region us-east-1 --name ci.dd-sdk-android.e2e_staging_api_key --with-decryption --query "Parameter.Value" --out text )
454- - export E2E_DD_APP_KEY=$(aws ssm get-parameter --region us-east-1 --name ci.dd-sdk-android.e2e_staging_app_key --with-decryption --query "Parameter.Value" --out text )
455- - export E2E_MOBILE_APP_ID=$(aws ssm get-parameter --region us-east-1 --name ci.dd-sdk-android.e2e_staging_mobile_app_id --with-decryption --query "Parameter.Value" --out text )
459+ - get_secret $DD_ANDROID_SECRET__GRADLE_PROPERTIES > ./gradle.properties
460+ - get_secret $DD_ANDROID_SECRET__KEYSTORE > ./sample-android.keystore
461+ - get_secret $DD_ANDROID_SECRET__E2E_STAGING_CONFIG_JSON > ./config/staging.json
462+ - export E2E_STORE_PASSWD=$(get_secret $DD_ANDROID_SECRET__KEYSTORE_PWD )
463+ - export E2E_DD_API_KEY=$(get_secret $DD_ANDROID_SECRET__E2E_STAGING_API_KEY )
464+ - export E2E_DD_APP_KEY=$(get_secret $DD_ANDROID_SECRET__E2E_STAGING_APP_KEY )
465+ - export E2E_MOBILE_APP_ID=$(get_secret $DD_ANDROID_SECRET__E2E_STAGING_APP_ID )
456466 - GRADLE_OPTS="-Xmx4096M" ./gradlew assembleLibrariesRelease --stacktrace --no-daemon
457467 - GRADLE_OPTS="-Xmx4096M" ./gradlew :sample:kotlin:packageStagingRelease --stacktrace --no-daemon
458468 - npm update -g @datadog/datadog-ci
@@ -472,14 +482,15 @@ test-pyramid:publish-benchmark-synthetics:
472482 only :
473483 - develop
474484 script :
485+ - !reference [ .snippets, source-secrets ]
475486 - mkdir -p ./config/
476- - aws ssm get-parameter --region us-east-1 --name ci.dd-sdk-android.gradle-properties --with-decryption --query "Parameter.Value" --out text > > ./gradle.properties
477- - aws ssm get-parameter --region us-east-1 --name ci.dd-sdk-android.keystore --with-decryption --query "Parameter.Value" --out text | base64 -d > ./sample-benchmark.keystore
478- - aws ssm get-parameter --region us-east-1 --name ci.dd-sdk-android.benchmark_config_json --with-decryption --query "Parameter.Value" --out text > ./config/benchmark.json
479- - export BM_STORE_PASSWD=$(aws ssm get-parameter --region us-east-1 --name ci.dd-sdk-android.keystore-password --with-decryption --query "Parameter.Value" --out text )
480- - export BM_DD_API_KEY=$(aws ssm get-parameter --region us-east-1 --name ci.dd-sdk-android.benchmark_api_key --with-decryption --query "Parameter.Value" --out text )
481- - export BM_DD_APP_KEY=$(aws ssm get-parameter --region us-east-1 --name ci.dd-sdk-android.benchmark_app_key --with-decryption --query "Parameter.Value" --out text )
482- - export BM_MOBILE_APP_ID=$(aws ssm get-parameter --region us-east-1 --name ci.dd-sdk-android.benchmark_mobile_app_id --with-decryption --query "Parameter.Value" --out text )
487+ - get_secret $DD_ANDROID_SECRET__GRADLE_PROPERTIES > ./gradle.properties
488+ - get_secret $DD_ANDROID_SECRET__KEYSTORE > ./sample-benchmark.keystore
489+ - get_secret $DD_ANDROID_SECRET__BENCHMARK_CONFIG_JSON > ./config/benchmark.json
490+ - export BM_STORE_PASSWD=$(get_secret $DD_ANDROID_SECRET__KEYSTORE_PWD )
491+ - export BM_DD_API_KEY=$(get_secret $DD_ANDROID_SECRET__BENCHMARK_API_KEY )
492+ - export BM_DD_APP_KEY=$(get_secret $DD_ANDROID_SECRET__BENCHMARK_APP_KEY )
493+ - export BM_MOBILE_APP_ID=$(get_secret $DD_ANDROID_SECRET__BENCHMARK_MOBILE_APP_ID )
483494 - GRADLE_OPTS="-Xmx4096M" ./gradlew assembleLibrariesRelease --stacktrace --no-daemon
484495 - GRADLE_OPTS="-Xmx4096M" ./gradlew :sample:benchmark:packageRelease --stacktrace --no-daemon
485496 - npm update -g @datadog/datadog-ci
@@ -805,6 +816,23 @@ publish:release-compose:
805816 paths :
806817 - integrations/dd-sdk-android-compose/verification-metadata.xml
807818
819+ publish:release-cronet :
820+ tags : [ "arch:amd64" ]
821+ only :
822+ - tags
823+ - develop
824+ image : $CI_IMAGE_DOCKER
825+ stage : publish
826+ timeout : 30m
827+ script :
828+ - !reference [.snippets, set-publishing-credentials]
829+ - ./gradlew :integrations:dd-sdk-android-cronet:publishToSonatype closeSonatypeStagingRepository --stacktrace --no-daemon
830+ artifacts :
831+ when : on_success
832+ expire_in : 7 days
833+ paths :
834+ - integrations/dd-sdk-android-cronet/verification-metadata.xml
835+
808836publish:release-fresco :
809837 tags : [ "arch:amd64" ]
810838 only :
@@ -1107,6 +1135,7 @@ notify:merge-verification-metadata:
11071135 - publish:release-profiling
11081136 - publish:release-coil
11091137 - publish:release-compose
1138+ - publish:release-cronet
11101139 - publish:release-fresco
11111140 - publish:release-glide
11121141 - publish:release-trace-coroutines
0 commit comments