-
Notifications
You must be signed in to change notification settings - Fork 0
Add E2E testing using KUTTL and Kind. #123
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
base: main
Are you sure you want to change the base?
Conversation
Important Review skippedDraft detected. Please check the settings in the CodeRabbit UI or the You can disable this status message by setting the ✨ Finishing Touches🧪 Generate Unit Tests
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed help? Create a ticket on our support page for assistance with any issues or questions. Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
…e chart for e2e tests
…to use Makefile commands
…make, update workflow
kubectl cluster-info | ||
kubectl get nodes | ||
|
||
- name: Build and push images |
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.
why not use this approach for setting up the local registry and kind? we won't need the docker registry then
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.
nodes: | ||
- role: control-plane | ||
extraPortMappings: | ||
- containerPort: 30000 |
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.
why these port configurations for control-plane are needed?
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.
This is to auto expose some important ports for Ingress, Prometheus etc. This is still in testing.
It will essentially eliminate the need to port-forward those services.
tests/e2e/Makefile
Outdated
@echo "Setting up Istio..." | ||
@if ! command -v istioctl &> /dev/null; then \ | ||
echo "istioctl not found, installing..."; \ | ||
curl -L https://istio.io/downloadIstio | ISTIO_VERSION=1.20.0 sh -; \ |
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.
lets use 1.25
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.
actually this installed 1.16 on local
@echo "Elasti Operator installed successfully." | ||
|
||
# Setup Prometheus for metrics collection | ||
apply-prometheus: |
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.
lets add versions for each of these chart installations
metadata: | ||
name: target-deployment-ingress | ||
annotations: | ||
nginx.ingress.kubernetes.io/rewrite-target: /$2 |
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.
these annotations shouldn't be needed
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 this, as discussed, later we can have separate tests for Nginx and Istio.
tests/e2e/Makefile
Outdated
.PHONY: all kind-up kind-down e2e-test apply-deps traffic | ||
|
||
setup: start-registry kind-up apply-deps | ||
all: setup e2e-test |
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.
lets add a teardown-all step as well
tests/e2e/Makefile
Outdated
@echo "Setting up Istio..." | ||
@if ! command -v istioctl &> /dev/null; then \ | ||
echo "istioctl not found, installing..."; \ | ||
curl -L https://istio.io/downloadIstio | ISTIO_VERSION=1.20.0 sh -; \ |
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.
actually this installed 1.16 on local
…eview comments | Minor documentation update
Description
This PR add End-to-End (E2E) testing for Elasti using KUTTL (KUbernetes Test TooL). This is to validate Elasti's core functionalities in a realistic Kubernetes environment.
Type of change
Please delete options that are not relevant.
How Has This Been Tested?
Please describe the tests that you ran to verify your changes.
Checklist: