generated from RedHatInsights/frontend-starter-app
-
Notifications
You must be signed in to change notification settings - Fork 22
RHCLOUD-41924, RHCLOUD-43224: E2E Test Setup #135
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
Draft
catastrophe-brandon
wants to merge
89
commits into
master
Choose a base branch
from
btweed/e2e
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Draft
Conversation
This file contains hidden or 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
Contributor
Author
|
/retest |
1 similar comment
Contributor
Author
|
/retest |
e49d7c2 to
0453d41
Compare
Contributor
Author
|
/retest |
e57029c to
ebd21ab
Compare
Contributor
Author
|
/retest |
1 similar comment
Contributor
Author
|
/retest |
f20007e to
92dd341
Compare
Contributor
Author
|
/retest |
8 similar comments
Contributor
Author
|
/retest |
Contributor
Author
|
/retest |
Contributor
Author
|
/retest |
Contributor
Author
|
/retest |
Contributor
Author
|
/retest |
Contributor
Author
|
/retest |
Contributor
Author
|
/retest |
Contributor
Author
|
/retest |
Contributor
Author
|
/retest with new playwright image for amd64 |
Contributor
Author
|
/retest one last time |
Contributor
|
Caution There are some errors in your PipelineRun template.
|
3c205c4 to
a9c6d85
Compare
Replaced `npm install @playwright/test` with `npm ci --legacy-peer-deps` to: - Install all dependencies in the e2e test environment - Avoid "Tracker 'idealTree' already exists" error by using clean install - Ensure deterministic dependency installation from package-lock.json 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
Switch from npm ci to npm install because package-lock.json is not included in the source artifact. Clean npm cache first to prevent "Tracker 'idealTree' already exists" error. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
Clean up node_modules and package-lock.json before installing to ensure a fresh dependency tree. This prevents the "Tracker 'idealTree' already exists" error by removing any existing npm state. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
Remove /root/.npm entirely and use a unique cache directory per run to completely eliminate any npm state that could cause the "Tracker 'idealTree' already exists" error. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
The Playwright container has Playwright pre-installed, causing the "idealTree" conflict. Using --force bypasses this conflict and allows npm to proceed with installation. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
Match the working tekton-playwright pipeline by using plain npm install with no extra flags. The --force and other flags were causing conflicts with the pre-installed Playwright in the container. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
Switch from using the trusted artifact to cloning the repository directly for e2e tests. This matches the working tekton-playwright pipeline and ensures we have package-lock.json and a clean npm state. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
The corporate proxy interferes with git clone and npm install. Unset proxy variables before cloning and installing dependencies. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
Save proxy values, unset for git clone and npm install, then restore before running Playwright tests which may need the proxy. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
- Add networkidle wait to page.goto for better initial load - Add explicit waitFor on username and password fields - Increase timeout to 60s for initial page load - Add 30s timeout for login form elements to appear 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
Log page URL, title, HTML content, and element counts to help diagnose why the login form isn't appearing in the pipeline environment. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
Testing updated Caddy configuration that uses HTTP proxy for upstream connections to fix 502 errors when reaching external APIs. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
Fixed Caddy configuration to use 'proxy' instead of 'proxy_url'. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
Caddy v2.7+ automatically uses HTTP_PROXY environment variable without any transport configuration needed. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
Contributor
Author
|
/retest |
This fixes 502 errors for API and config endpoints (like /api/chrome-service/* and /config/chrome/*) by adding a catch-all handler that proxies unmatched requests to the staging environment via the configured HCC_ENV_URL. The catch-all uses Caddy's automatic HTTP_PROXY support to route requests through Squid to console.stage.redhat.com. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
Changed from $HCC_ENV_URL to {env.HCC_ENV_URL} so Caddy evaluates the
environment variable at runtime instead of relying on shell expansion.
The proxy-routes-json content is inserted as literal text from a file,
so shell variables aren't expanded. Using Caddy's {env.VAR} syntax
ensures the environment variable is properly resolved.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <[email protected]>
The pipeline already provides a catch-all handler that proxies to $HCC_ENV_URL. Having a duplicate catch-all in proxy-routes-json is redundant and the second one would never be reached. Rely on the pipeline's built-in catch-all handler instead. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
Added verbose curl test to verify proxy connectivity to the staging environment before running Playwright tests. This will help diagnose whether requests are properly routing through the Squid proxy. Requires HCC_ENV_URL to be added to the e2e-tests step environment. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
Contributor
Author
|
/retest |
Re-running pipeline after adding HCC_ENV_URL to e2e-tests environment. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
Re-running pipeline to test proxy debug logging with HCC_ENV_URL. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
Added curl test without proxy to determine if direct connectivity to the staging environment exists. This will help determine whether the Squid proxy is actually required or if network policies allow direct access. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
The enhanced test now: - Follows redirects and captures the final URL - Verifies redirect to sso.stage.redhat.com - Checks for input elements on the page - Shows sample input elements found This will help determine if direct connectivity provides the expected SSO login page. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
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.
No description provided.