Skip to content
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

RouteOptions e2e tests #9470

Merged
merged 20 commits into from May 14, 2024
Merged

RouteOptions e2e tests #9470

merged 20 commits into from May 14, 2024

Conversation

jbohanon
Copy link
Contributor

@jbohanon jbohanon commented May 9, 2024

Description

Rewrite the route options e2e tests for the k8s gateway plugin to match the vhopts patterns.

Additionally, new test cases were added to cover different edge cases.

TODO: open issue to track the open questions left by this effort:

BOT NOTES:
resolves https://github.com/solo-io/solo-projects/issues/6082

@jbohanon jbohanon added the work in progress signals bulldozer to keep pr open (don't auto-merge) label May 9, 2024
@github-actions github-actions bot added the keep pr updated signals bulldozer to keep pr up to date with base branch label May 9, 2024
Copy link

github-actions bot commented May 9, 2024

Visit the preview URL for this PR (updated for commit 7203bd0):

https://gloo-edge--pr9470-jbohanon-rtopts-e2e-0smmv1gi.web.app

(expires Mon, 20 May 2024 23:29:31 GMT)

🔥 via Firebase Hosting GitHub Action 🌎

Sign: 77c2b86e287749579b7ff9cadb81e099042ef677

Copy link
Contributor

@sam-heilbron sam-heilbron left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looking like a great start!

@solo-changelog-bot
Copy link

Issues linked to changelog:
https://github.com/solo-io/solo-projects/issues/6082

@jbohanon
Copy link
Contributor Author

/kick

@jbohanon jbohanon removed the work in progress signals bulldozer to keep pr open (don't auto-merge) label May 13, 2024
// Manually apply our manifests so we can assert that basic rto exists before applying extra rto.
// This is needed because our solo-kit clients currently do not return creationTimestamp
err := s.testInstallation.Actions.Kubectl().ApplyFile(s.ctx, setupManifest)
s.NoError(err, "can apply "+setupManifest)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think the EventuallyObjects exist check is still valid after we apply the test/kubernetes/e2e/features/route_options/testdata/setup.yaml. We don't need it for any of the other manifests, but it would be good to assert the gateway is created by the deployer.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

But none of the features of the route options plugin affect the behavior of the deployer, nor are they contingent upon the deployer's success. Given that, I think it makes more sense to let the routing fail and depend on the deployer tests to catch issues that may arise with that feature.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think it's more similar to the post installation checks where we assert the gloo gateway is present. If we remove this assertion, then if a setup file is missing a gateway or something is rejecting the gateway, the test will continue and fail on the longer curl assertion. If we assert here, it fails earlier.

The deployer tests are checking a different setup file, so they may use a different setup file. I would fine if we removed the assertion and all the tests used the same gateway as the deployer, but that would also limit the flexibility of the tests.

@jbohanon jbohanon enabled auto-merge (squash) May 14, 2024 10:39
@jbohanon jbohanon merged commit 5d0fb71 into main May 14, 2024
23 checks passed
@jbohanon jbohanon deleted the jbohanon/rtopts-e2e-tests branch May 14, 2024 10:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
keep pr updated signals bulldozer to keep pr up to date with base branch
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants