-
Notifications
You must be signed in to change notification settings - Fork 17
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Updated E2E DotNet Operation after route template fix #306
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
AsakerMohd
force-pushed
the
dotnetE2ERouteFix
branch
from
November 21, 2024 19:01
8a2bea1
to
cf3fbe9
Compare
vastin
approved these changes
Nov 21, 2024
Jeel-mehta
pushed a commit
to Jeel-mehta/aws-application-signals-test-framework
that referenced
this pull request
Dec 24, 2024
…ity#306) *Description of changes:* Made changes to APIs to fix failing E2E tests after updating the aws.local.operation to have the proper route template. *Rollback procedure:* >Can we safely revert this commit if needed Yes. *Ensure you've run the following tests on your changes and include the link below:* To do so, create a `test.yml` file with `name: Test` and workflow description to test your changes, then remove the file for your PR. Link your test run in your PR description. This process is a short term solution while we work on creating a staging environment for testing. NOTE: TESTS RUNNING ON A SINGLE EKS CLUSTER CANNOT BE RUN IN PARALLEL. See the [needs](https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idneeds) keyword to run tests in succession. - Run Java EKS on `e2e-playground` in us-east-1 and eu-central-2 - Run Python EKS on `e2e-playground` in us-east-1 and eu-central-2 - Run metric limiter on EKS cluster `e2e-playground` in us-east-1 and eu-central-2 - Run EC2 tests in all regions - Run K8s on a separate K8s cluster (check IAD test account for master node endpoints; these will change as we create and destroy clusters for OS patching) By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license. Enable runtime metrics in canaries (aws-observability#326) *Description of changes:* 1. Enable runtime metrics in existing Python and Java canaries. 2. Upgrade ECR image to use G1GC as default GC. 3. Use `Always` ImagePullPolicy for k8s workloads. *Rollback procedure:* <Can we safely revert this commit if needed? If not, detail what must be done to safely revert and why it is needed.> *Ensure you've run the following tests on your changes and include the link below:* ECR https://github.com/aws-observability/aws-application-signals-test-framework/actions/runs/11967144237 Python eks https://github.com/aws-observability/aws-application-signals-test-framework/actions/runs/11963840109 Python ec2 https://github.com/aws-observability/aws-application-signals-test-framework/actions/runs/11963729958 Python ecs https://github.com/aws-observability/aws-application-signals-test-framework/actions/runs/11963731839 Python k8s https://github.com/aws-observability/aws-application-signals-test-framework/actions/runs/11963859634 Java eks https://github.com/aws-observability/aws-application-signals-test-framework/actions/runs/11977537794 Java ec2 https://github.com/aws-observability/aws-application-signals-test-framework/actions/runs/11964002141 Java ecs https://github.com/aws-observability/aws-application-signals-test-framework/actions/runs/11967188838 Java k8s https://github.com/aws-observability/aws-application-signals-test-framework/actions/runs/11967448835 By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license. Co-authored-by: Harry <[email protected]> Test Test Build image version 6.0 Trying to handle different versions dynamically Test for dynamic language version Uploading images to main and remote services Updating image tag Deploy traffic generator Testing version 6.0 Cancelling scheduled runs stopping scheduled runs Testing version 6.0 e2e test Testing version 8.0 Testing s3 deployment Test Testing Testing ec2 setup Testing EC2 Test EC2 Testing default EC2 Testing default EC2 setup Testing eks Testing EKS with Dotnet version 8.0 Testing EC2 setup for version 6.0 Testing EC2 setup for version 6.0 Testing default Ec2 setup for version 6.0 Running default EC2 e2e test Testing default EC2 test for version 6.0 Final test on ec2 cluster with version 6.0 Final test on ec2 with version 8.0 Dynamically handling both versions for ec2 instance Testing dynamic handling of language versions for sample app Deploying sample apps for both version Running e2e test on ec2 instance Trying e2e ec2 test Testing 1 Testing ec2 default test [OTLP/OCB] Add e2e canary tests running on Java/EKS using OTLP endpoint (aws-observability#328) *Issue description:* Add test case for OTLP+OCB testing - Add e2e test Canary running in IAD in new OTLP specific test accounts - Added validation files - Note - The diffs compared to non-OTLP are numerous. [See majority of the diffs here](aws-observability@5622948). - Added terraform files - Include test resources specific for OTLP+OCB testing: - `terraform/java/eks-otlp-ocb/util/appsignals-collector.yaml` - Contains OCB Collector and auto-instrumentation configurations for use on EKS - `terraform/java/eks-otlp-ocb/util/enable-app-signals-ocb.sh` - Enablement script to install OpenTelemetry Operator in EKS cluster and sets up IAM Service Account. Update Validator - support `remoteServiceIp` input - if provided, query metrics for remoteServiceNames with `remoteServiceIp` - Changes to `validator/src/main/java/com/amazon/aoc/models/xray/Entity.java` - Validate `metadata` as Map<String, Object> instead of Map<String, Map<String, Object>>. This change is needed for OTLP+OCB test cases, and has been validated to work with the existing non-OTLP test cases. *Description of changes:* *Rollback procedure:* - We safely revert this commit if needed *Ensure you've run the following tests on your changes and include the link below:* - Test ran in new OTLP account (Java+EKS): https://github.com/aws-observability/aws-application-signals-test-framework/actions/runs/12058149370 - Run Java EKS on `e2e-playground` in us-east-1 https://github.com/aws-observability/aws-application-signals-test-framework/actions/runs/12061315729 - Run Python EKS on `e2e-playground` in us-east-1 https://github.com/aws-observability/aws-application-signals-test-framework/actions/runs/12061315729 - ~~Run metric limiter on EKS cluster `e2e-playground` in us-east-1 and eu-central-2~~ - Run EC2 tests in all regions https://github.com/aws-observability/aws-application-signals-test-framework/actions/runs/12060250860/job/33630333497 - ~~Run K8s on a separate K8s cluster (check IAD test account for master node endpoints; these will change as we create and destroy clusters for OS patching)~~ By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license. --------- Co-authored-by: Mahad Janjua <[email protected]> Update validation result success condition for OTLP/OCB (aws-observability#329) *Issue description:* *Description of changes:* - In `"Save test results"` of OCB+OTLP EKS workflow, update logic for setting `"validation-result=success"` to be more similar to other workflows. - [Current OTLP Java EKS test ](https://github.com/aws-observability/aws-application-signals-test-framework/blob/3a14868c977cdad993100ed03a5f365ff0751bbb/.github/workflows/java-eks-otlp-ocb-test.yml#L339) - [Compared to regular Java EKS](https://github.com/aws-observability/aws-application-signals-test-framework/blob/3a14868c977cdad993100ed03a5f365ff0751bbb/.github/workflows/java-eks-test.yml#L455) *Rollback procedure:* N/A *Ensure you've run the following tests on your changes and include the link below:* https://github.com/aws-observability/aws-application-signals-test-framework/actions/runs/12188286530/job/34000954449#step:31:1 By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license. Changed volume size from 5 to 35GB for Windows EC2 tests (aws-observability#331) *Description of changes:* Windows EC2 tests were failing due to capacity issues. Updated the terraform script to increase the capacity and did a test run and it's now passing: https://github.com/aws-observability/aws-application-signals-test-framework/actions/runs/12243621218/job/34153583025 By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license. Bump path-to-regexp and express in /sample-apps/node/remote-service (aws-observability#330) Update node express version - dependabot security (aws-observability#334) *Issue description:* Dependabot security telling us to upgrade express version for node, but it is unable to generate the PR. https://github.com/aws-observability/aws-application-signals-test-framework/security/dependabot/17 *Description of changes:* Updated express to 4.21.2, matching PR as this one: https://github.com/aws-observability/aws-application-signals-test-framework/pull/330/files By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license. Added Dotnet Lambda E2E Tests (aws-observability#332) *Description of changes:* This change adds workflow files and terraform scripts that builds the infrastructure (lambda function and lambda layer) for DotNet lambda layer. For now, the cron schedule in [dotnet-lambda-canary.yml](https://github.com/aws-observability/aws-application-signals-test-framework/compare/dotnetLambdaE2E?expand=1#diff-7f7da6fc2394c58665b91c661888dfc9afec0edf64c1a53701e56a7fcdf943bd) is disabled which means that tests won't run yet. We will need to wait until we officially release the lambda layer. However, I updated the aws-otel-dotnet-instrumentation build workflow to run the lambda tests on main build/merge. Testing: Check this run for details, especially dotnet-lambda-default step: https://github.com/aws-observability/aws-otel-dotnet-instrumentation/actions/runs/12283246401/job/34276401374. This verifies that E2E tests work and that it runs as part of the main build for the `aws-otel-dotnet-instrumentation`. (I disabled other E2E tests for the run above just to save time.) By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license. [EKS] Fix: Ensure concurrency tag includes cluster name (aws-observability#335) Ensure concurrency tag includes cluster name so that if the cluster is used in another branch the tests still don't run at the same time. Revert PR By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license. Fixed lambda sample app upload workflow (aws-observability#337) *Description of changes:* While doing some tests, found out that the lambda sample app workflow upload wasn't working as expected. I fixed it in this PR and tested it here: https://github.com/aws-observability/aws-application-signals-test-framework/actions/runs/12398929067/job/34612754042 By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license. Update E2E test to ADOT Java V2.x change (aws-observability#336) *Description of changes:* This PR update the Java E2E test to match with existing ADOT Java v1.x agent as well as upcoming ADOT Java v2.x agent with the following change: 1.Enable controller telemetry using env variable `OTEL_INSTRUMENTATION_COMMON_EXPERIMENTAL_CONTROLLER_TELEMETRY_ENABLED`, which is disabled by default. https://opentelemetry.io/docs/zero-code/java/agent/disable/#suppressing-controller-andor-view-spans 2. update `http.request.url` in trace validator. As in v2.x, the http.target attribute is deprecated, the parameter won't be propagated into `http.request.url`. ([Related CW agent code](https://github.com/amazon-contributing/opentelemetry-collector-contrib/blob/8e059f1441dbfc24b52d9716a95a7799565679de/exporter/awsxrayexporter/internal/translator/http.go#L74)) 3. Comment out the check for `aws.xray. auto_instrumentation`, it is created from [CWagent](https://github.com/amazon-contributing/opentelemetry-collector-contrib/blob/8e059f1441dbfc24b52d9716a95a7799565679de/exporter/awsxrayexporter/internal/translator/aws.go#L254), which is depend on upstream attribute telemetry.auto.version , but upstream recently rename it to telemetry.distro.version. Uncomment after the CW agent is updated to read new attribute. <Can we safely revert this commit if needed? If not, detail what must be done to safely revert and why it is needed.> Yes *Ensure you've run the following tests on your changes and include the link below:* Running the E2E test with existing Java v1.x agent: - EC2: https://github.com/aws-observability/aws-application-signals-test-framework/actions/runs/12383147122 - EKS: https://github.com/aws-observability/aws-application-signals-test-framework/actions/runs/12383150295/job/34565294933 (Only succeed in us-east-1 as the playground cluster is only exist in IAD) - K8S: https://github.com/aws-observability/aws-application-signals-test-framework/actions/runs/12383258067 - ECS: https://github.com/aws-observability/aws-application-signals-test-framework/actions/runs/12383148625 Running the E2E test with new Java v2.x agent: - EC2: https://github.com/aws-observability/aws-application-signals-test-framework/actions/runs/12378967612 - EKS: https://github.com/aws-observability/aws-application-signals-test-framework/actions/runs/12382416662 - K8S: https://github.com/aws-observability/aws-application-signals-test-framework/actions/runs/12378972156 - ECS: https://github.com/aws-observability/aws-application-signals-test-framework/actions/runs/12378968843 By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license. Stopping java eks oltp ocb canary Sample app deployment for ec2 Reverting back changes on this branch
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description of changes:
Made changes to APIs to fix failing E2E tests after updating the aws.local.operation to have the proper route template.
Rollback procedure:
Yes.
Ensure you've run the following tests on your changes and include the link below:
To do so, create a
test.yml
file withname: Test
and workflow description to test your changes, then remove the file for your PR. Link your test run in your PR description. This process is a short term solution while we work on creating a staging environment for testing.NOTE: TESTS RUNNING ON A SINGLE EKS CLUSTER CANNOT BE RUN IN PARALLEL. See the needs keyword to run tests in succession.
e2e-playground
in us-east-1 and eu-central-2e2e-playground
in us-east-1 and eu-central-2e2e-playground
in us-east-1 and eu-central-2By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.