Skip to content

Commit f359b3c

Browse files
authored
Add retries to e2e tests CI jobs (#2131)
1 parent ac1f9bb commit f359b3c

File tree

1 file changed

+22
-25
lines changed

1 file changed

+22
-25
lines changed

.gitlab-ci.yml

Lines changed: 22 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -191,30 +191,6 @@ build_bundle_image:
191191
- BUNDLE_IMG=$TARGET_IMAGE make bundle-build-push
192192
- if [ -n "$CI_COMMIT_TAG" ]; then docker buildx imagetools create $TARGET_IMAGE --tag $RELEASE_IMAGE; fi
193193

194-
.new_e2e_template:
195-
stage: e2e
196-
tags: ["arch:amd64"]
197-
image: $BUILD_DOCKER_REGISTRY/test-infra-definitions/runner:$TEST_INFRA_DEFINITIONS_BUILDIMAGES
198-
before_script:
199-
# Setup AWS Credentials
200-
- echo "Starting setup for E2E testing..."
201-
- mkdir -p ~/.aws
202-
- aws ssm get-parameter --region us-east-1 --name ci.datadog-operator.agent-qa-profile --with-decryption --query "Parameter.Value" --out text >> ~/.aws/config
203-
- export AWS_PROFILE=agent-qa-ci
204-
# Now all `aws` commands target the agent-qa profile
205-
- echo "Retrieving SSH keys from AWS..."
206-
- aws ssm get-parameter --region us-east-1 --name ci.datadog-operator.ssh_public_key --with-decryption --query "Parameter.Value" --out text > $E2E_AWS_PUBLIC_KEY_PATH
207-
- aws ssm get-parameter --region us-east-1 --name ci.datadog-operator.ssh_private_key --with-decryption --query "Parameter.Value" --out text > $E2E_AWS_PRIVATE_KEY_PATH
208-
# Use S3 backend to store stack status
209-
- echo "Logging in to Pulumi with S3 backend..."
210-
- pulumi login "s3://dd-pulumi-state?region=us-east-1&awssdk=v2&profile=$AWS_PROFILE"
211-
variables:
212-
E2E_AWS_PUBLIC_KEY_PATH: /tmp/agent-qa-ssh-key.pub
213-
E2E_AWS_PRIVATE_KEY_PATH: /tmp/agent-qa-ssh-key
214-
E2E_KEY_PAIR_NAME: ci.datadog-operator
215-
KUBERNETES_MEMORY_REQUEST: 12Gi
216-
KUBERNETES_MEMORY_LIMIT: 16Gi
217-
218194
.on_run_e2e:
219195
# Skip if only .md files are changed
220196
- if: $CI_COMMIT_BRANCH
@@ -250,8 +226,9 @@ trigger_e2e_operator_image:
250226
IMG_REGISTRIES: agent-qa
251227

252228
e2e:
253-
extends: .new_e2e_template
254229
stage: e2e
230+
tags:
231+
- "arch:amd64"
255232
needs:
256233
- "trigger_e2e_operator_image"
257234
rules: !reference [.on_run_e2e]
@@ -267,10 +244,30 @@ e2e:
267244
- "1.30"
268245
- "1.32"
269246
variables:
247+
E2E_AWS_PUBLIC_KEY_PATH: /tmp/agent-qa-ssh-key.pub
248+
E2E_AWS_PRIVATE_KEY_PATH: /tmp/agent-qa-ssh-key
249+
E2E_KEY_PAIR_NAME: ci.datadog-operator
250+
KUBERNETES_MEMORY_REQUEST: 12Gi
251+
KUBERNETES_MEMORY_LIMIT: 16Gi
270252
TARGET_IMAGE: $E2E_DOCKER_REGISTRY:${CI_PIPELINE_ID}-${CI_COMMIT_SHORT_SHA}
253+
image: $BUILD_DOCKER_REGISTRY/test-infra-definitions/runner:$TEST_INFRA_DEFINITIONS_BUILDIMAGES
254+
before_script:
255+
# Setup AWS Credentials
256+
- echo "Starting setup for E2E testing..."
257+
- mkdir -p ~/.aws
258+
- aws ssm get-parameter --region us-east-1 --name ci.datadog-operator.agent-qa-profile --with-decryption --query "Parameter.Value" --out text >> ~/.aws/config
259+
- export AWS_PROFILE=agent-qa-ci
260+
# Now all `aws` commands target the agent-qa profile
261+
- echo "Retrieving SSH keys from AWS..."
262+
- aws ssm get-parameter --region us-east-1 --name ci.datadog-operator.ssh_public_key --with-decryption --query "Parameter.Value" --out text > $E2E_AWS_PUBLIC_KEY_PATH
263+
- aws ssm get-parameter --region us-east-1 --name ci.datadog-operator.ssh_private_key --with-decryption --query "Parameter.Value" --out text > $E2E_AWS_PRIVATE_KEY_PATH
264+
# Use S3 backend to store stack status
265+
- echo "Logging in to Pulumi with S3 backend..."
266+
- pulumi login "s3://dd-pulumi-state?region=us-east-1&awssdk=v2&profile=$AWS_PROFILE"
271267
script:
272268
- echo "Running e2e test with target image $TARGET_IMAGE"
273269
- IMAGE_PULL_PASSWORD=$(aws ecr get-login-password) IMG=$TARGET_IMAGE make e2e-tests
270+
retry: 2
274271

275272
publish_public_main:
276273
stage: release

0 commit comments

Comments
 (0)