Skip to content

Commit c8b5e0e

Browse files
authored
Add Application Signals E2E Test Coverage (#897)
*Issue #, if available:* We currently do not have full test coverage over our ADOT artifacts. We need to ensure that ADOT is compatible with Java versions, CPU architecture and different platforms before we release them. *Description of changes:* - Adding language version tests for Java 8, 17, 21, 22 - Adding CPU architecture test for ARM64 Java 8 currently does not work because the /mysql test case has a bug. Will follow up on fixing it in another PR Test run: Test run for EKS: https://github.com/aws-observability/aws-otel-java-instrumentation/actions/runs/11149306942 Test run for rest: https://github.com/aws-observability/aws-otel-java-instrumentation/actions/runs/11148995161 By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
1 parent 4b13e06 commit c8b5e0e

File tree

1 file changed

+141
-10
lines changed

1 file changed

+141
-10
lines changed

.github/workflows/application-signals-e2e-test.yml

Lines changed: 141 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -38,53 +38,184 @@ jobs:
3838
- name: Upload main-build adot.jar to s3
3939
run: aws s3 cp ./aws-opentelemetry-agent-*-SNAPSHOT.jar s3://adot-main-build-staging-jar/aws-opentelemetry-agent.jar
4040

41-
java-ec2-default-e2e-test:
41+
#
42+
# PACKAGED DISTRIBUTION LANGUAGE VERSION COVERAGE
43+
# DEFAULT SETTING: {Java Version}, EC2, AMD64, AL2
44+
#
45+
46+
default-v8-amd64:
4247
needs: [ upload-main-build ]
4348
uses: aws-observability/aws-application-signals-test-framework/.github/workflows/java-ec2-default-test.yml@main
4449
secrets: inherit
4550
with:
4651
aws-region: us-east-1
4752
caller-workflow-name: 'main-build'
53+
java-version: '8'
54+
cpu-architecture: 'x86_64'
4855

49-
java-ec2-asg-e2e-test:
56+
default-v11-amd64:
5057
needs: [ upload-main-build ]
51-
uses: aws-observability/aws-application-signals-test-framework/.github/workflows/java-ec2-asg-test.yml@main
58+
uses: aws-observability/aws-application-signals-test-framework/.github/workflows/java-ec2-default-test.yml@main
59+
secrets: inherit
60+
with:
61+
aws-region: us-east-1
62+
caller-workflow-name: 'main-build'
63+
java-version: '11'
64+
cpu-architecture: 'x86_64'
65+
66+
default-v17-amd64:
67+
needs: [ upload-main-build ]
68+
uses: aws-observability/aws-application-signals-test-framework/.github/workflows/java-ec2-default-test.yml@main
69+
secrets: inherit
70+
with:
71+
aws-region: us-east-1
72+
caller-workflow-name: 'main-build'
73+
java-version: '17'
74+
cpu-architecture: 'x86_64'
75+
76+
default-v21-amd64:
77+
needs: [ upload-main-build ]
78+
uses: aws-observability/aws-application-signals-test-framework/.github/workflows/java-ec2-default-test.yml@main
79+
secrets: inherit
80+
with:
81+
aws-region: us-east-1
82+
caller-workflow-name: 'main-build'
83+
java-version: '21'
84+
cpu-architecture: 'x86_64'
85+
86+
default-v22-amd64:
87+
needs: [ upload-main-build ]
88+
uses: aws-observability/aws-application-signals-test-framework/.github/workflows/java-ec2-default-test.yml@main
5289
secrets: inherit
5390
with:
5491
aws-region: us-east-1
5592
caller-workflow-name: 'main-build'
93+
java-version: '22'
94+
cpu-architecture: 'x86_64'
95+
96+
#
97+
# DOCKER DISTRIBUTION LANGUAGE VERSION COVERAGE
98+
# DEFAULT SETTING: {Java Version}, EKS, AMD64, AL2
99+
#
56100

57-
java-eks-e2e-test:
101+
eks-v8-amd64:
58102
uses: aws-observability/aws-application-signals-test-framework/.github/workflows/java-eks-test.yml@main
59103
secrets: inherit
60104
with:
61105
aws-region: us-east-1
62106
test-cluster-name: 'e2e-adot-test'
63107
adot-image-name: ${{ inputs.adot-image-name }}
64108
caller-workflow-name: 'main-build'
109+
java-version: '8'
65110

66-
java-metric-limiter-e2e-test:
67-
needs: [ java-eks-e2e-test ]
68-
uses: aws-observability/aws-application-signals-test-framework/.github/workflows/metric-limiter-test.yml@main
111+
eks-v11-amd64:
112+
needs: eks-v8-amd64
113+
uses: aws-observability/aws-application-signals-test-framework/.github/workflows/java-eks-test.yml@main
114+
secrets: inherit
115+
with:
116+
aws-region: us-east-1
117+
test-cluster-name: 'e2e-adot-test'
118+
adot-image-name: ${{ inputs.adot-image-name }}
119+
caller-workflow-name: 'main-build'
120+
java-version: '11'
121+
122+
eks-v17-amd64:
123+
needs: eks-v11-amd64
124+
uses: aws-observability/aws-application-signals-test-framework/.github/workflows/java-eks-test.yml@main
69125
secrets: inherit
70126
with:
71127
aws-region: us-east-1
72128
test-cluster-name: 'e2e-adot-test'
73129
adot-image-name: ${{ inputs.adot-image-name }}
74130
caller-workflow-name: 'main-build'
131+
java-version: '17'
75132

76-
java-k8s-e2e-test:
133+
eks-v21-amd64:
134+
needs: eks-v17-amd64
135+
uses: aws-observability/aws-application-signals-test-framework/.github/workflows/java-eks-test.yml@main
136+
secrets: inherit
137+
with:
138+
aws-region: us-east-1
139+
test-cluster-name: 'e2e-adot-test'
140+
adot-image-name: ${{ inputs.adot-image-name }}
141+
caller-workflow-name: 'main-build'
142+
java-version: '21'
143+
144+
eks-v22-amd64:
145+
needs: eks-v21-amd64
146+
uses: aws-observability/aws-application-signals-test-framework/.github/workflows/java-eks-test.yml@main
147+
secrets: inherit
148+
with:
149+
aws-region: us-east-1
150+
test-cluster-name: 'e2e-adot-test'
151+
adot-image-name: ${{ inputs.adot-image-name }}
152+
caller-workflow-name: 'main-build'
153+
java-version: '22'
154+
155+
#
156+
# PACKAGED DISTRIBUTION PLATFORM COVERAGE
157+
# DEFAULT SETTING: Java 11, {Platform}, AMD64, AL2
158+
#
159+
160+
asg-v11-amd64:
161+
needs: [ upload-main-build ]
162+
uses: aws-observability/aws-application-signals-test-framework/.github/workflows/java-ec2-asg-test.yml@main
163+
secrets: inherit
164+
with:
165+
aws-region: us-east-1
166+
caller-workflow-name: 'main-build'
167+
java-version: '11'
168+
169+
#
170+
# DOCKER DISTRIBUTION PLATFORM COVERAGE
171+
# DEFAULT SETTING: Java 11, {Platform}, AMD64, AL2
172+
#
173+
174+
k8s-v11-amd64:
77175
uses: aws-observability/aws-application-signals-test-framework/.github/workflows/java-k8s-test.yml@main
78176
secrets: inherit
79177
with:
80178
aws-region: us-east-1
81179
adot-image-name: ${{ inputs.adot-image-name }}
82180
caller-workflow-name: 'main-build'
181+
java-version: '11'
83182

84-
java-ecs-e2e-test:
183+
184+
ecs-v11-amd64:
85185
uses: aws-observability/aws-application-signals-test-framework/.github/workflows/java-ecs-test.yml@main
86186
secrets: inherit
87187
with:
88188
aws-region: us-east-1
89189
adot-image-name: ${{ inputs.adot-image-name }}
90-
caller-workflow-name: 'main-build'
190+
caller-workflow-name: 'main-build'
191+
java-version: '11'
192+
193+
#
194+
# CPU ARCHITECTURE COVERAGE
195+
# DEFAULT SETTING: Java 11, EC2, {CPU Architecture}, AL2
196+
#
197+
198+
default-v11-arm64:
199+
needs: [ upload-main-build ]
200+
uses: aws-observability/aws-application-signals-test-framework/.github/workflows/java-ec2-default-test.yml@main
201+
secrets: inherit
202+
with:
203+
aws-region: us-east-1
204+
caller-workflow-name: 'main-build'
205+
java-version: '11'
206+
cpu-architecture: 'arm64'
207+
208+
#
209+
# Other Functional Test Case
210+
#
211+
212+
metric-limiter-v11-amd64:
213+
needs: [ eks-v22-amd64 ]
214+
uses: aws-observability/aws-application-signals-test-framework/.github/workflows/metric-limiter-test.yml@main
215+
secrets: inherit
216+
with:
217+
aws-region: us-east-1
218+
test-cluster-name: 'e2e-adot-test'
219+
adot-image-name: ${{ inputs.adot-image-name }}
220+
caller-workflow-name: 'main-build'
221+
java-version: '11'

0 commit comments

Comments
 (0)