-
Notifications
You must be signed in to change notification settings - Fork 532
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
feat(ci): Add e2e tests against latest docker images #22576
base: main
Are you sure you want to change the base?
Conversation
Server folks (@znewton , @pradeepvairamani, tag anyone else that could/should chime in), I'm interested in your thoughts on the changes to the docker compose files and the routerlicious config. I'm not familiar with any workflows you guys might have with these files, but I think everything here is safe and/or necessary for a fully functional local environment (including supporting older FF client versions). |
# THIS VOLUMES IS FOR LOCAL TESTING, IT SHOULD NOT GET MERGED | ||
volumes: | ||
- ./routerlicious/packages/routerlicious/config/config.json:/usr/src/server/packages/routerlicious/config/config.json |
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.
Used this locally to validate running e2e tests against the latest server image, but with whole summary upload enabled (the image itself doesn't do it). This will go away before merging.
# volumes: | ||
# - ./routerlicious/packages/routerlicious/config/config.json:/home/node/server/packages/routerlicious/config.json |
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.
Will remove too, this was also for local testing.
${{ if parameters.env }}: | ||
env: | ||
${{ parameters.env }} |
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.
The new stage doesn't use it right now, and if nothing is passed this ends up being a syntax error with the current code.
Description
Adds a new stage for e2e tests against a local routerlicious environment spun up with docker in the build agent. This exercises our e2e tests against the current version (head of
main
) of all server code (vs the tests we run against the internal routerlicious deployment in AKS, which runs not-terribly-old-but-never-head-of-main docker images of the server components), which should help get us some confidence that the current version of server isn't breaking something (which in fact already seems to have happened; keep reading).For this, a few adjustments (and fixes?) were necessary in the docker setup, server configuration, and the e2e tests pipeline:
server/docker-compose.yml
, with the nginx configuration defined in the repo. This is necessary so recent changes that cause alfred to redirect certain requests to nexus are in place. Otherwise older FF versions do not work against this environment.Reviewer Guidance
The review process is outlined on this wiki page.
This sample run (msft internal) was done with only the new stage. Runtimes are pretty good and no tests failed. And this run is more recent (18a1ae0) and with a more final version of this PR; all tests still passing.