@@ -77,25 +77,42 @@ create_key:
77
77
78
78
# STATIC ANALYSIS
79
79
80
- static-analysis :
81
- stage : analysis
82
- variables :
83
- DETEKT_PUBLIC_API : " true"
84
- DETEKT_GENERATE_CLASSPATH_BUILD_TASK : " printSdkDebugRuntimeClasspath"
85
- DETEKT_CLASSPATH_FILE_PATH : " sdk_classpath"
86
- FLAVORED_ANDROID_LINT : " :tools:lint:lint"
87
- trigger :
88
- include : " https://gitlab-templates.ddbuild.io/mobile/v34714656-060be019/static-analysis.yml"
89
- strategy : depend
90
-
91
80
analysis:detekt-custom :
92
81
tags :
93
82
- " arch:amd64"
94
83
image : $CI_IMAGE_DOCKER
95
84
stage : analysis
85
+ when : never
96
86
timeout : 1h
97
87
script :
98
- - echo "Skipped"
88
+ - ./gradlew assembleLibrariesRelease --stacktrace
89
+ - ./gradlew unzipAarForDetekt --stacktrace
90
+ - ./gradlew :tools:detekt:jar --stacktrace
91
+ - ./gradlew printDetektClasspath --stacktrace
92
+ - curl -sSLO https://github.com/detekt/detekt/releases/download/v1.23.4/detekt-cli-1.23.4-all.jar
93
+ - ./gradlew :dd-sdk-android-core:customDetektRules
94
+ - ./gradlew :dd-sdk-android-internal:customDetektRules
95
+ - ./gradlew :features:dd-sdk-android-logs:customDetektRules
96
+ - ./gradlew :features:dd-sdk-android-ndk:customDetektRules
97
+ - ./gradlew :features:dd-sdk-android-rum:customDetektRules
98
+ - ./gradlew :features:dd-sdk-android-session-replay:customDetektRules
99
+ - ./gradlew :features:dd-sdk-android-session-replay-material:customDetektRules
100
+ - ./gradlew :features:dd-sdk-android-session-replay-compose:customDetektRules
101
+ - ./gradlew :features:dd-sdk-android-trace:customDetektRules
102
+ - ./gradlew :features:dd-sdk-android-trace-otel:customDetektRules
103
+ - ./gradlew :features:dd-sdk-android-webview:customDetektRules
104
+ - ./gradlew :integrations:dd-sdk-android-coil:customDetektRules
105
+ - ./gradlew :integrations:dd-sdk-android-compose:customDetektRules
106
+ - ./gradlew :integrations:dd-sdk-android-fresco:customDetektRules
107
+ - ./gradlew :integrations:dd-sdk-android-glide:customDetektRules
108
+ - ./gradlew :integrations:dd-sdk-android-okhttp:customDetektRules
109
+ - ./gradlew :integrations:dd-sdk-android-okhttp-otel:customDetektRules
110
+ - ./gradlew :integrations:dd-sdk-android-rum-coroutines:customDetektRules
111
+ - ./gradlew :integrations:dd-sdk-android-rx:customDetektRules
112
+ - ./gradlew :integrations:dd-sdk-android-sqldelight:customDetektRules
113
+ - ./gradlew :integrations:dd-sdk-android-timber:customDetektRules
114
+ - ./gradlew :integrations:dd-sdk-android-trace-coroutines:customDetektRules
115
+ - ./gradlew :integrations:dd-sdk-android-tv:customDetektRules
99
116
100
117
101
118
# TODO RUM-1622 cleanup this section
@@ -106,14 +123,21 @@ test:debug:
106
123
image : $CI_IMAGE_DOCKER
107
124
stage : test
108
125
timeout : 1h
126
+ when : never
109
127
cache :
110
128
key : $CI_COMMIT_REF_SLUG
111
129
paths :
112
130
- cache/caches/
113
131
- cache/notifications/
114
132
policy : pull
115
133
script :
116
- - echo "Skipped"
134
+ - rm -rf ~/.gradle/daemon/
135
+ - export DD_AGENT_HOST="$BUILDENV_HOST_IP"
136
+ - GRADLE_OPTS="-Xmx3072m" DD_TAGS="test.configuration.variant:debug" ./gradlew :dd-sdk-android-core:testDebugUnitTest --no-daemon --build-cache --gradle-user-home cache/ -Dorg.gradle.jvmargs=-javaagent:$DD_TRACER_FOLDER/dd-java-agent.jar=$DD_COMMON_AGENT_CONFIG
137
+ - GRADLE_OPTS="-Xmx3072m" DD_TAGS="test.configuration.variant:debug" ./gradlew :dd-sdk-android-internal:testDebugUnitTest --no-daemon --build-cache --gradle-user-home cache/ -Dorg.gradle.jvmargs=-javaagent:$DD_TRACER_FOLDER/dd-java-agent.jar=$DD_COMMON_AGENT_CONFIG
138
+ - GRADLE_OPTS="-Xmx3072m" DD_TAGS="test.configuration.variant:debug" ./gradlew :unitTestDebugFeatures --no-daemon --build-cache --gradle-user-home cache/ -Dorg.gradle.jvmargs=-javaagent:$DD_TRACER_FOLDER/dd-java-agent.jar=$DD_COMMON_AGENT_CONFIG
139
+ - GRADLE_OPTS="-Xmx3072m" DD_TAGS="test.configuration.variant:debug" ./gradlew :unitTestDebugIntegrations --no-daemon --build-cache --gradle-user-home cache/ -Dorg.gradle.jvmargs=-javaagent:$DD_TRACER_FOLDER/dd-java-agent.jar=$DD_COMMON_AGENT_CONFIG
140
+ - GRADLE_OPTS="-Xmx3072m" DD_TAGS="test.configuration.variant:debug" ./gradlew :unitTestDebugSamples --no-daemon --build-cache --gradle-user-home cache/ -Dorg.gradle.jvmargs=-javaagent:$DD_TRACER_FOLDER/dd-java-agent.jar=$DD_COMMON_AGENT_CONFIG
117
141
artifacts :
118
142
when : always
119
143
expire_in : 1 week
@@ -124,6 +148,7 @@ test:tools:
124
148
tags : [ "arch:amd64" ]
125
149
image : $CI_IMAGE_DOCKER
126
150
stage : test
151
+ when : never
127
152
timeout : 1h
128
153
cache :
129
154
key : $CI_COMMIT_REF_SLUG
@@ -140,6 +165,7 @@ test:kover:
140
165
tags : [ "arch:amd64" ]
141
166
image : $CI_IMAGE_DOCKER
142
167
stage : test
168
+ when : never
143
169
timeout : 1h
144
170
cache :
145
171
key : $CI_COMMIT_REF_SLUG
@@ -170,43 +196,50 @@ test:kover:
170
196
test-pyramid:core-it-min-api :
171
197
tags : [ "macos:sonoma", "specific:true" ]
172
198
stage : test-pyramid
199
+ when : never
173
200
timeout : 1h
174
201
variables :
175
202
ANDROID_API : " 21"
176
203
ANDROID_EMULATOR_IMAGE : " system-images;android-$ANDROID_API;google_apis;${ANDROID_ARCH}"
177
204
ANDROID_PLATFORM : " platforms;android-$ANDROID_API"
178
205
ANDROID_BUILD_TOOLS : " build-tools;$ANDROID_API.0.0"
179
206
script :
180
- - echo "Skipped"
207
+ - !reference [.snippets, install-android-api-components]
208
+ - !reference [.snippets, run-core-it-instrumented]
181
209
182
210
test-pyramid:core-it-latest-api :
183
211
tags : [ "macos:sonoma", "specific:true" ]
184
212
stage : test-pyramid
213
+ when : never
185
214
timeout : 1h
186
215
variables :
187
216
ANDROID_API : " 36"
188
217
ANDROID_EMULATOR_IMAGE : " system-images;android-$ANDROID_API;google_apis;${ANDROID_ARCH}"
189
218
ANDROID_PLATFORM : " platforms;android-$ANDROID_API"
190
219
ANDROID_BUILD_TOOLS : " build-tools;$ANDROID_API.0.0"
191
220
script :
192
- - echo "Skipped"
221
+ - !reference [.snippets, install-android-api-components]
222
+ - !reference [.snippets, run-core-it-instrumented]
193
223
194
224
test-pyramid:core-it-median-api :
195
225
tags : [ "macos:sonoma", "specific:true" ]
196
226
stage : test-pyramid
227
+ when : never
197
228
timeout : 1h
198
229
variables :
199
230
ANDROID_API : " 28"
200
231
ANDROID_EMULATOR_IMAGE : " system-images;android-$ANDROID_API;google_apis;${ANDROID_ARCH}"
201
232
ANDROID_PLATFORM : " platforms;android-$ANDROID_API"
202
233
ANDROID_BUILD_TOOLS : " build-tools;$ANDROID_API.0.0"
203
234
script :
204
- - echo "Skipped"
235
+ - !reference [.snippets, install-android-api-components]
236
+ - !reference [.snippets, run-core-it-instrumented]
205
237
206
238
test-pyramid:single-fit-logs :
207
239
tags : [ "arch:amd64" ]
208
240
image : $CI_IMAGE_DOCKER
209
241
stage : test-pyramid
242
+ when : never
210
243
timeout : 1h
211
244
cache :
212
245
key : $CI_COMMIT_REF_SLUG
@@ -215,7 +248,9 @@ test-pyramid:single-fit-logs:
215
248
- cache/notifications/
216
249
policy : pull
217
250
script :
218
- - echo "Skipped"
251
+ - rm -rf ~/.gradle/daemon/
252
+ - export DD_AGENT_HOST="$BUILDENV_HOST_IP"
253
+ - GRADLE_OPTS="-Xmx3072m" DD_TAGS="test.configuration.variant:release" ./gradlew :reliability:single-fit:logs:testReleaseUnitTest --stacktrace --no-daemon --build-cache --gradle-user-home cache/ -Dorg.gradle.jvmargs=-javaagent:$DD_TRACER_FOLDER/dd-java-agent.jar=$DD_COMMON_AGENT_CONFIG
219
254
artifacts :
220
255
when : always
221
256
expire_in : 1 week
@@ -226,6 +261,7 @@ test-pyramid:single-fit-rum:
226
261
tags : [ "arch:amd64" ]
227
262
image : $CI_IMAGE_DOCKER
228
263
stage : test-pyramid
264
+ when : never
229
265
timeout : 1h
230
266
cache :
231
267
key : $CI_COMMIT_REF_SLUG
@@ -234,7 +270,9 @@ test-pyramid:single-fit-rum:
234
270
- cache/notifications/
235
271
policy : pull
236
272
script :
237
- - echo "Skipped"
273
+ - rm -rf ~/.gradle/daemon/
274
+ - export DD_AGENT_HOST="$BUILDENV_HOST_IP"
275
+ - GRADLE_OPTS="-Xmx3072m" DD_TAGS="test.configuration.variant:release" ./gradlew :reliability:single-fit:rum:testReleaseUnitTest --stacktrace --no-daemon --build-cache --gradle-user-home cache/ -Dorg.gradle.jvmargs=-javaagent:$DD_TRACER_FOLDER/dd-java-agent.jar=$DD_COMMON_AGENT_CONFIG
238
276
artifacts :
239
277
when : always
240
278
expire_in : 1 week
@@ -245,6 +283,7 @@ test-pyramid:single-fit-trace:
245
283
tags : [ "arch:amd64" ]
246
284
image : $CI_IMAGE_DOCKER
247
285
stage : test-pyramid
286
+ when : never
248
287
timeout : 1h
249
288
cache :
250
289
key : $CI_COMMIT_REF_SLUG
@@ -253,7 +292,9 @@ test-pyramid:single-fit-trace:
253
292
- cache/notifications/
254
293
policy : pull
255
294
script :
256
- - echo "Skipped"
295
+ - rm -rf ~/.gradle/daemon/
296
+ - export DD_AGENT_HOST="$BUILDENV_HOST_IP"
297
+ - GRADLE_OPTS="-Xmx3072m" DD_TAGS="test.configuration.variant:release" ./gradlew :reliability:single-fit:trace:testReleaseUnitTest --stacktrace --no-daemon --build-cache --gradle-user-home cache/ -Dorg.gradle.jvmargs=-javaagent:$DD_TRACER_FOLDER/dd-java-agent.jar=$DD_COMMON_AGENT_CONFIG
257
298
artifacts :
258
299
when : always
259
300
expire_in : 1 week
@@ -264,6 +305,7 @@ test-pyramid:single-fit-okhttp:
264
305
tags : [ "arch:amd64" ]
265
306
image : $CI_IMAGE_DOCKER
266
307
stage : test-pyramid
308
+ when : never
267
309
timeout : 1h
268
310
cache :
269
311
key : $CI_COMMIT_REF_SLUG
@@ -272,7 +314,9 @@ test-pyramid:single-fit-okhttp:
272
314
- cache/notifications/
273
315
policy : pull
274
316
script :
275
- - echo "Skipped"
317
+ - rm -rf ~/.gradle/daemon/
318
+ - export DD_AGENT_HOST="$BUILDENV_HOST_IP"
319
+ - GRADLE_OPTS="-Xmx3072m" DD_TAGS="test.configuration.variant:release" ./gradlew :reliability:single-fit:okhttp:testReleaseUnitTest --stacktrace --no-daemon --build-cache --gradle-user-home cache/ -Dorg.gradle.jvmargs=-javaagent:$DD_TRACER_FOLDER/dd-java-agent.jar=$DD_COMMON_AGENT_CONFIG
276
320
artifacts :
277
321
when : always
278
322
expire_in : 1 week
@@ -284,57 +328,84 @@ test-pyramid:single-fit-okhttp:
284
328
test-pyramid:legacy-integration-instrumented-min-api :
285
329
tags : [ "macos:sonoma", "specific:true" ]
286
330
stage : test-pyramid
331
+ when : never
287
332
timeout : 1h
288
333
variables :
289
334
ANDROID_API : " 21"
290
335
ANDROID_EMULATOR_IMAGE : " system-images;android-$ANDROID_API;google_apis;${ANDROID_ARCH}"
291
336
ANDROID_PLATFORM : " platforms;android-$ANDROID_API"
292
337
ANDROID_BUILD_TOOLS : " build-tools;$ANDROID_API.0.0"
293
338
script :
294
- - echo "Skipped"
339
+ - !reference [.snippets, install-android-api-components]
340
+ - !reference [.snippets, run-legacy-integration-instrumented]
295
341
296
342
test-pyramid:legacy-integration-instrumented-latest-api :
297
343
tags : [ "macos:sonoma", "specific:true" ]
298
344
stage : test-pyramid
345
+ when : never
299
346
timeout : 1h
300
347
variables :
301
348
ANDROID_API : " 36"
302
349
ANDROID_EMULATOR_IMAGE : " system-images;android-$ANDROID_API;google_apis;${ANDROID_ARCH}"
303
350
ANDROID_PLATFORM : " platforms;android-$ANDROID_API"
304
351
ANDROID_BUILD_TOOLS : " build-tools;$ANDROID_API.0.0"
305
352
script :
306
- - echo "Skipped"
353
+ - !reference [.snippets, install-android-api-components]
354
+ - !reference [.snippets, run-legacy-integration-instrumented]
307
355
308
356
test-pyramid:legacy-integration-instrumented-median-api :
309
357
tags : [ "macos:sonoma", "specific:true" ]
310
358
stage : test-pyramid
359
+ when : never
311
360
timeout : 1h
312
361
variables :
313
362
ANDROID_API : " 28"
314
363
ANDROID_EMULATOR_IMAGE : " system-images;android-$ANDROID_API;google_apis;${ANDROID_ARCH}"
315
364
ANDROID_PLATFORM : " platforms;android-$ANDROID_API"
316
365
ANDROID_BUILD_TOOLS : " build-tools;$ANDROID_API.0.0"
317
366
script :
318
- - echo "Skipped"
367
+ - !reference [.snippets, install-android-api-components]
368
+ - !reference [.snippets, run-legacy-integration-instrumented]
319
369
320
370
test-pyramid:detekt-api-coverage :
321
371
tags : [ "arch:amd64" ]
322
372
image : $CI_IMAGE_DOCKER
323
373
stage : test-pyramid
374
+ when : never
324
375
timeout : 1h
325
376
script :
326
- - echo "Skipped"
377
+ - mkdir -p ./config/
378
+ - aws ssm get-parameter --region us-east-1 --name ci.dd-sdk-android.gradle-properties --with-decryption --query "Parameter.Value" --out text >> ./gradle.properties
379
+ - GRADLE_OPTS="-Xmx4096M" ./gradlew assembleLibrariesDebug --stacktrace --no-daemon
380
+ - GRADLE_OPTS="-Xmx4096M" ./gradlew printSdkDebugRuntimeClasspath --stacktrace --no-daemon
381
+ - GRADLE_OPTS="-Xmx4096M" ./gradlew :tools:detekt:jar --stacktrace --no-daemon
382
+ - curl -sSLO https://github.com/detekt/detekt/releases/download/v1.23.4/detekt-cli-1.23.4-all.jar
383
+ - java -jar detekt-cli-1.23.4-all.jar --config detekt_test_pyramid.yml --plugins tools/detekt/build/libs/detekt.jar -ex "**/*.kts" --jvm-target 11 -cp $(cat sdk_classpath)
384
+ # For now we just print the uncovered apis, eventually we will fail if it's not empty
385
+ - grep -v -f apiUsage.log apiSurface.log
327
386
328
387
test-pyramid:publish-e2e-synthetics :
329
388
tags : [ "arch:amd64" ]
330
389
image : $CI_IMAGE_DOCKER
331
390
stage : test-pyramid
391
+ when : never
332
392
timeout : 1h
333
393
only :
334
394
- develop
335
395
script :
336
396
- mkdir -p ./config/
337
- - echo "Skipped"
397
+ - aws ssm get-parameter --region us-east-1 --name ci.dd-sdk-android.gradle-properties --with-decryption --query "Parameter.Value" --out text >> ./gradle.properties
398
+ - 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
399
+ - 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
400
+ - 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)
401
+ - 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)
402
+ - 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)
403
+ - 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)
404
+ - GRADLE_OPTS="-Xmx4096M" ./gradlew assembleLibrariesRelease --stacktrace --no-daemon
405
+ - GRADLE_OPTS="-Xmx4096M" ./gradlew :sample:kotlin:packageUs1Release --stacktrace --no-daemon
406
+ - npm update -g @datadog/datadog-ci
407
+ - echo "Using datadog-ci $(npx @datadog/datadog-ci version)"
408
+ - npx @datadog/datadog-ci synthetics upload-application --appKey "$E2E_DD_APP_KEY" --apiKey "$E2E_DD_API_KEY" --mobileApp "sample/kotlin/build/outputs/apk/us1/release/kotlin-us1-release.apk" --mobileApplicationId "$E2E_MOBILE_APP_ID" --versionName "$CI_COMMIT_SHORT_SHA" --latest
338
409
artifacts :
339
410
when : always
340
411
expire_in : 1 week
@@ -345,11 +416,24 @@ test-pyramid:publish-webview-synthetics:
345
416
tags : [ "arch:amd64" ]
346
417
image : $CI_IMAGE_DOCKER
347
418
stage : test-pyramid
419
+ when : never
348
420
timeout : 1h
349
421
only :
350
422
- develop
351
423
script :
352
- - echo "Skipped"
424
+ - mkdir -p ./config/
425
+ - aws ssm get-parameter --region us-east-1 --name ci.dd-sdk-android.gradle-properties --with-decryption --query "Parameter.Value" --out text >> ./gradle.properties
426
+ - 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
427
+ - 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
428
+ - 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)
429
+ - 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)
430
+ - 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)
431
+ - 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)
432
+ - GRADLE_OPTS="-Xmx4096M" ./gradlew assembleLibrariesRelease --stacktrace --no-daemon
433
+ - GRADLE_OPTS="-Xmx4096M" ./gradlew :sample:kotlin:packageUs1Release --stacktrace --no-daemon
434
+ - npm update -g @datadog/datadog-ci
435
+ - echo "Using datadog-ci $(npx @datadog/datadog-ci version)"
436
+ - npx @datadog/datadog-ci synthetics upload-application --appKey "$E2E_DD_APP_KEY" --apiKey "$E2E_DD_API_KEY" --mobileApp "sample/kotlin/build/outputs/apk/us1/release/kotlin-us1-release.apk" --mobileApplicationId "$E2E_MOBILE_APP_ID" --versionName "$CI_COMMIT_SHORT_SHA" --latest
353
437
artifacts :
354
438
when : always
355
439
expire_in : 1 week
@@ -360,11 +444,24 @@ test-pyramid:publish-staging-synthetics:
360
444
tags : [ "arch:amd64" ]
361
445
image : $CI_IMAGE_DOCKER
362
446
stage : test-pyramid
447
+ when : never
363
448
timeout : 1h
364
449
only :
365
450
- develop
366
451
script :
367
- - echo "Skipped"
452
+ - mkdir -p ./config/
453
+ - aws ssm get-parameter --region us-east-1 --name ci.dd-sdk-android.gradle-properties --with-decryption --query "Parameter.Value" --out text >> ./gradle.properties
454
+ - 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
455
+ - 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
456
+ - 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)
457
+ - 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)
458
+ - 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)
459
+ - 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)
460
+ - GRADLE_OPTS="-Xmx4096M" ./gradlew assembleLibrariesRelease --stacktrace --no-daemon
461
+ - GRADLE_OPTS="-Xmx4096M" ./gradlew :sample:kotlin:packageStagingRelease --stacktrace --no-daemon
462
+ - npm update -g @datadog/datadog-ci
463
+ - echo "Using datadog-ci $(npx @datadog/datadog-ci version)"
464
+ - npx @datadog/datadog-ci synthetics upload-application --appKey "$E2E_DD_APP_KEY" --apiKey "$E2E_DD_API_KEY" --mobileApp "sample/kotlin/build/outputs/apk/staging/release/kotlin-staging-release.apk" --mobileApplicationId "$E2E_MOBILE_APP_ID" --versionName "$CI_COMMIT_SHORT_SHA" --latest --datadogSite "datad0g.com"
368
465
artifacts :
369
466
when : always
370
467
expire_in : 1 week
@@ -375,12 +472,24 @@ test-pyramid:publish-benchmark-synthetics:
375
472
tags : [ "arch:amd64" ]
376
473
image : $CI_IMAGE_DOCKER
377
474
stage : test-pyramid
475
+ when : never
378
476
timeout : 1h
379
477
only :
380
478
- develop
381
479
script :
382
480
- mkdir -p ./config/
383
- - echo "Skipped"
481
+ - aws ssm get-parameter --region us-east-1 --name ci.dd-sdk-android.gradle-properties --with-decryption --query "Parameter.Value" --out text >> ./gradle.properties
482
+ - 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
483
+ - 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
484
+ - 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)
485
+ - 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)
486
+ - 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)
487
+ - 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)
488
+ - GRADLE_OPTS="-Xmx4096M" ./gradlew assembleLibrariesRelease --stacktrace --no-daemon
489
+ - GRADLE_OPTS="-Xmx4096M" ./gradlew :sample:benchmark:packageRelease --stacktrace --no-daemon
490
+ - npm update -g @datadog/datadog-ci
491
+ - echo "Using datadog-ci $(npx @datadog/datadog-ci version)"
492
+ - npx @datadog/datadog-ci synthetics upload-application --appKey "$BM_DD_APP_KEY" --apiKey "$BM_DD_API_KEY" --mobileApp "sample/benchmark/build/outputs/apk/release/benchmark-release.apk" --mobileApplicationId "$BM_MOBILE_APP_ID" --versionName "$CI_COMMIT_SHORT_SHA" --latest
384
493
artifacts :
385
494
when : always
386
495
expire_in : 1 week
0 commit comments