-
Notifications
You must be signed in to change notification settings - Fork 4
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
Initial E2E tests infrastructure #29
Conversation
What environment? Should this be a long-running serverless project? A few long-lived serverless projects are running at the moment. Otherwise, we use some |
Preferably long running, our UI tests scope to per run service names so are designed to share a single serverless observability project. |
Awesome. @kuisathaverat, can we use the keep serverless projects? If so, can I use the vault secrets as usual? @Mpdreamz , If possible, I'd say to use the production-canary one for now. Unless you wanna use staging explicitly. |
yes, the name must start with
We all remove it soon, the Google Cloud Secrets Manager is already in place, and we duplicate the secrets in Vault for the moment. As soon as I finish the changes I will stop creating Vault secrets. All the tools will be adapted at that point, so the change will be transparent for CI. |
What's the GitHub action that will run for this e2e? The oblt-cli-cluster-credentials is the GitHub action that can help to read the secrets for any long-running project in Elastic Cloud/Serverless. For instance, this snippet illustrates how we test the above GitHub action. NOTE: bear in mind, There are a few serverless projects:
If possible, I'd say to use one of the existing secrets rather than @Mpdreamz , how do you wanna proceed? |
#32 is configuring the env variables to access the serverless projects. Let me know what you think |
Ready for review, e2e temporarily disabled. Since its now bootstrapping successfully I'll move to a new PR with less folks participating to keep the noise down. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A couple of minor questions for discussion, but otherwise looks good.
examples/Example.Elastic.OpenTelemetry.AspNetCore/Properties/launchSettings.json
Show resolved
Hide resolved
examples/Example.Elastic.OpenTelemetry.AspNetCore/appsettings.Development.json
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
E2E Tests: Elastic's .NET OpenTelemetry Distribution
Target Environment
Requires an already running serverless observability project on cloud.
The configuration can be provided either as asp.net secrets or environment variables.
The equivalent environment variables are
E2E__ENDPOINT
andE2E__AUTHORIZATION
. For local development settingsecrets is preferred.
This ensures the instrumented applications will send OTLP data.
Browser authentication
The tests require a headless browser to login. This requires a non OAuth login to be setup on your serverless
observability project.
To do this is to invite an email address you own to your organization:
https://cloud.elastic.co/account/members
This user only needs instance access to the
Target Environment
.NOTE: since you can only be part of a single organization on cloud be sure that the organization you are part of is
not used for any production usecases and you have clearance from the organization owner.
By default accounts on cloud are part of their own personal organization.
Once invited and accepted the invited email can be used to login during the automated tests.
These can be provided again as user secrets:
or environment variables (
E2E__BROWSEREMAIL
andE2E__BROWSERPASSWORD
).