Add e2e test workflow #16
Open
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.
This PR introduces an end-to-end test that performs the following sequence:
ingress-controller-conformanceechoserverThe test suite is based on Contour's e2e test suite and scripts, using Go and Ginkgo test framework. While it currently contains only a single minimal test case, it must be admitted this approach is not minimal. At this stage, a shell script could have been sufficient, but re-using Contour's test framework could be useful if more tests are expected in future. Some parts are not directly copied from Contour. For example, instead of using
sigs.k8s.io/controller-runtime/pkg/client, it executeskubectlCLI (currently used for namespace creation and to deploy echoserver), since I assume there is no need for detailed programmatic access to Kubernetes resources.Additional changes:
Makefileto start the test.maketarget for checks, currently limited to Go linting (xref Feature: Add coding style and linting for the project #14)I've included IPv6 related e2e scripts from Contour but IPv6 is not currently used in the test suite.
TODO
Fixes #13