Skip to content

Commit a76270d

Browse files
committed
Test validation adjustments, workflow adjustments
update emf dimensions, add resourcedetection processor switch to otlp endpoint update collector config tmp use jj22ee script for ocb use generic platform, update test validations to remove some expected metadata expected UnmappedOperation, maybe expect no RemoteEnvironment, RemoteService uses IP --remote-service-ip addition client-call has only 1 EMF entry update metrics with UnmappedOperation query RemoteServiceIp remove local InternalOperation in client-call change region to us-east-1 change otel col test cluster name fix update validations for traces update metadata in entity trace touch-ups workflow touch ups undo hardcoded region cron job wip additions update account to use, update region cron job
1 parent 3cc5c2e commit a76270d

20 files changed

+363
-822
lines changed

.github/workflows/java-eks-otlp-ocb-canary.yml

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -8,13 +8,9 @@
88
## Logs, metrics, and traces are all validated.
99
name: Java EKS OTLP/OCB Enablement Canary Test
1010
on:
11-
# TODO: Reintroduce cron-job
12-
# schedule:
13-
# - cron: '12,37 * * * *' # run the workflow at 12th and 37th minute of every hour
11+
schedule:
12+
- cron: '12,37 * * * *' # run the workflow at 12th and 37th minute of every hour
1413
workflow_dispatch: # be able to run the workflow on demand
15-
push:
16-
branches:
17-
- otlp-ocb
1814

1915
permissions:
2016
id-token: write
@@ -25,8 +21,8 @@ jobs:
2521
strategy:
2622
fail-fast: false
2723
matrix:
28-
aws-region: ['us-west-1']
29-
# TODO: Reintroduce all regions (one more first, then all except eu-central-2, then eu-central-2 when infra is deployed)
24+
aws-region: ['us-east-1']
25+
# TODO: Reintroduce all regions
3026
# aws-region: ['af-south-1','ap-east-1','ap-northeast-1','ap-northeast-2','ap-northeast-3','ap-south-1','ap-south-2','ap-southeast-1',
3127
# 'ap-southeast-2','ap-southeast-3','ap-southeast-4','ca-central-1','eu-central-1','eu-central-2','eu-north-1',
3228
# 'eu-south-1','eu-south-2','eu-west-1','eu-west-2','eu-west-3','il-central-1','me-central-1','me-south-1', 'sa-east-1',

.github/workflows/java-eks-otlp-ocb-test.yml

Lines changed: 18 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -30,9 +30,9 @@ on:
3030
type: string
3131
outputs:
3232
job-started:
33-
value: ${{ jobs.metric-limiter.outputs.job-started }}
33+
value: ${{ jobs.java-eks-otlp-ocb.outputs.job-started }}
3434
validation-result:
35-
value: ${{ jobs.metric-limiter.outputs.validation-result }}
35+
value: ${{ jobs.java-eks-otlp-ocb.outputs.validation-result }}
3636

3737
permissions:
3838
id-token: write
@@ -54,7 +54,7 @@ env:
5454
TEST_RESOURCES_FOLDER: ${GITHUB_WORKSPACE}
5555

5656
jobs:
57-
test:
57+
java-eks-otlp-ocb:
5858
runs-on: ubuntu-latest
5959
timeout-minutes: 30
6060
outputs:
@@ -90,14 +90,6 @@ jobs:
9090
max_retry: 3
9191
sleep_time: 60
9292

93-
- name: Download enablement script
94-
uses: ./.github/workflows/actions/execute_and_retry
95-
with:
96-
pre-command: "mkdir enablement-script && cd enablement-script"
97-
command: "wget https://raw.githubusercontent.com/aws-observability/application-signals-demo/refs/heads/ocb/scripts/eks/appsignals/enable-app-signals-ocb.sh"
98-
cleanup: "rm -f enable-app-signals-ocb.sh"
99-
post-command: "chmod +x enable-app-signals-ocb.sh"
100-
10193
- name: Configure AWS Credentials
10294
uses: aws-actions/configure-aws-credentials@v4
10395
with:
@@ -108,7 +100,7 @@ jobs:
108100
uses: aws-actions/aws-secretsmanager-get-secrets@v2
109101
with:
110102
secret-ids: |
111-
ACCOUNT_ID, region-account/${{ env.E2E_TEST_AWS_REGION }}
103+
ACCOUNT_ID, otlp-region-account/gamma-${{ env.E2E_TEST_AWS_REGION }}
112104
JAVA_MAIN_SAMPLE_APP_IMAGE, e2e-test/java-main-sample-app-image
113105
JAVA_REMOTE_SAMPLE_APP_IMAGE, e2e-test/java-remote-sample-app-image
114106
@@ -192,7 +184,7 @@ jobs:
192184
- name: Install OTel Operator using enablement script
193185
uses: ./.github/workflows/actions/execute_and_retry
194186
with:
195-
command: "${{ env.TEST_RESOURCES_FOLDER }}/enablement-script/enable-app-signals-ocb.sh \
187+
command: "${{ env.TEST_RESOURCES_FOLDER }}/terraform/java/eks-otlp-ocb/util/enable-app-signals-ocb.sh \
196188
${{ env.CLUSTER_NAME }} \
197189
${{ env.E2E_TEST_AWS_REGION }} \
198190
${{ env.SAMPLE_APP_NAMESPACE }}"
@@ -202,7 +194,9 @@ jobs:
202194
- name: Install OTel Collector
203195
uses: ./.github/workflows/actions/execute_and_retry
204196
with:
205-
command: "cd ${{ env.TEST_RESOURCES_FOLDER }}/terraform/java/eks-otlp-ocb/util && kubectl apply -f ./appsignals-collector.yaml -n ${{ env.SAMPLE_APP_NAMESPACE }}"
197+
command: "cd ${{ env.TEST_RESOURCES_FOLDER }}/terraform/java/eks-otlp-ocb/util && \
198+
sed -i -e 's/${E2E_TEST_AWS_REGION}/${{ env.E2E_TEST_AWS_REGION }}/g' ./appsignals-collector.yaml && \
199+
kubectl apply -f ./appsignals-collector.yaml -n ${{ env.SAMPLE_APP_NAMESPACE }}"
206200
cleanup: "kubectl delete -f ./appsignals-collector.yaml -n ${{ env.SAMPLE_APP_NAMESPACE }} && \
207201
aws eks update-kubeconfig --name ${{ env.CLUSTER_NAME }} --region ${{ env.E2E_TEST_AWS_REGION }}"
208202
max_retry: 3
@@ -271,60 +265,54 @@ jobs:
271265
run: ./gradlew validator:run --args='-c java/eks-otlp-ocb/log-validation.yml
272266
--testing-id ${{ env.TESTING_ID }}
273267
--endpoint http://${{ env.APP_ENDPOINT }}
274-
--region us-west-2
268+
--region ${{ env.E2E_TEST_AWS_REGION }}
275269
--account-id ${{ env.ACCOUNT_ID }}
276270
--metric-namespace ${{ env.METRIC_NAMESPACE }}
277271
--log-group ${{ env.LOG_GROUP_NAME }}
278272
--app-namespace ${{ env.SAMPLE_APP_NAMESPACE }}
279-
--platform-info appsignals-ocb-demo
273+
--platform-info ${{ env.CLUSTER_NAME }}
280274
--service-name sample-application-${{ env.TESTING_ID }}
281275
--remote-service-deployment-name ${{ env.REMOTE_SERVICE_DEPLOYMENT_NAME }}
276+
--remote-service-ip ${{ env.REMOTE_SERVICE_POD_IP }}
282277
--query-string ip=${{ env.REMOTE_SERVICE_POD_IP }}&testingId=${{ env.TESTING_ID }}
283278
--rollup'
284-
# TODO: Undo hardcode
285-
# --platform-info ${{ env.CLUSTER_NAME }}
286-
# --region ${{ env.E2E_TEST_AWS_REGION }}
287279

288280
- name: Call endpoints and validate generated metrics
289281
id: metric-validation
290282
if: (steps.deploy-sample-app.outcome == 'success' || steps.log-validation.outcome == 'failure') && !cancelled()
291283
run: ./gradlew validator:run --args='-c java/eks-otlp-ocb/metric-validation.yml
292284
--testing-id ${{ env.TESTING_ID }}
293285
--endpoint http://${{ env.APP_ENDPOINT }}
294-
--region us-west-2
286+
--region ${{ env.E2E_TEST_AWS_REGION }}
295287
--account-id ${{ env.ACCOUNT_ID }}
296288
--metric-namespace ${{ env.METRIC_NAMESPACE }}
297289
--log-group ${{ env.LOG_GROUP_NAME }}
298290
--app-namespace ${{ env.SAMPLE_APP_NAMESPACE }}
299-
--platform-info appsignals-ocb-demo
291+
--platform-info ${{ env.CLUSTER_NAME }}
300292
--service-name sample-application-${{ env.TESTING_ID }}
301293
--remote-service-name sample-remote-application-${{ env.TESTING_ID }}
302294
--remote-service-deployment-name ${{ env.REMOTE_SERVICE_DEPLOYMENT_NAME }}
295+
--remote-service-ip ${{ env.REMOTE_SERVICE_POD_IP }}
303296
--query-string ip=${{ env.REMOTE_SERVICE_POD_IP }}&testingId=${{ env.TESTING_ID }}
304297
--rollup'
305-
# TODO: Undo hardcodes:
306-
# --platform-info ${{ env.CLUSTER_NAME }}
307-
# --region ${{ env.E2E_TEST_AWS_REGION }}
308298

309299
- name: Call endpoints and validate generated traces
310300
id: trace-validation
311301
if: (steps.deploy-sample-app.outcome == 'success' || steps.log-validation.outcome == 'failure' || steps.metric-validation.outcome == 'failure') && !cancelled()
312302
run: ./gradlew validator:run --args='-c java/eks-otlp-ocb/trace-validation.yml
313303
--testing-id ${{ env.TESTING_ID }}
314304
--endpoint http://${{ env.APP_ENDPOINT }}
315-
--region us-west-2
305+
--region ${{ env.E2E_TEST_AWS_REGION }}
316306
--account-id ${{ env.ACCOUNT_ID }}
317307
--metric-namespace ${{ env.METRIC_NAMESPACE }}
318308
--log-group ${{ env.LOG_GROUP_NAME }}
319309
--app-namespace ${{ env.SAMPLE_APP_NAMESPACE }}
320-
--platform-info appsignals-ocb-demo
310+
--platform-info ${{ env.CLUSTER_NAME }}
321311
--service-name sample-application-${{ env.TESTING_ID }}
322312
--remote-service-deployment-name ${{ env.REMOTE_SERVICE_DEPLOYMENT_NAME }}
313+
--remote-service-ip ${{ env.REMOTE_SERVICE_POD_IP }}
323314
--query-string ip=${{ env.REMOTE_SERVICE_POD_IP }}&testingId=${{ env.TESTING_ID }}
324315
--rollup'
325-
# TODO: Undo hardcode
326-
# --platform-info ${{ env.CLUSTER_NAME }}
327-
# --region ${{ env.E2E_TEST_AWS_REGION }}
328316

329317
- name: Refresh AWS Credentials
330318
if: ${{ github.event.repository.name == 'aws-application-signals-test-framework' }}
@@ -353,14 +341,11 @@ jobs:
353341
run: |
354342
aws eks update-kubeconfig --name ${{ env.CLUSTER_NAME }} --region ${{ env.E2E_TEST_AWS_REGION }}
355343
eksctl delete iamserviceaccount --name cloudwatch-agent --namespace amazon-cloudwatch --cluster ${{ env.CLUSTER_NAME }} --region ${{ env.E2E_TEST_AWS_REGION }}
344+
kubectl delete -f ./appsignals-collector.yaml -n ${{ env.SAMPLE_APP_NAMESPACE }}
356345
kubectl delete ns opentelemetry-operator-system
357-
kubectl delete service appsignals-collector -n ${{ env.SAMPLE_APP_NAMESPACE }}
358-
kubectl delete service appsignals-collector-headless -n ${{ env.SAMPLE_APP_NAMESPACE }}
359-
kubectl delete service appsignals-collector-monitoring -n ${{ env.SAMPLE_APP_NAMESPACE }}
360346
kubectl delete deploy --all -n ${{ env.SAMPLE_APP_NAMESPACE }}
361347
kubectl delete service sample-remote-app-service -n ${{ env.SAMPLE_APP_NAMESPACE }}
362348
kubectl delete service sample-app-service -n ${{ env.SAMPLE_APP_NAMESPACE }}
363-
kubectl delete -f ./appsignals-collector.yaml -n ${{ env.SAMPLE_APP_NAMESPACE }}
364349
aws eks update-kubeconfig --name ${{ env.CLUSTER_NAME }} --region ${{ env.E2E_TEST_AWS_REGION }}
365350
366351
- name: Terraform destroy

0 commit comments

Comments
 (0)