control-plane
control-plane copied to clipboard
Add a test job for KMC to verify the KMC helm charts and image on PRs
Description
- Currently, on PRs for KMC, no job tries to deploy KMC and check if everything is fine. If you bump a non-existing KMC (or invalid) image in helm chart, then still the PR will be all green.
- there are no integration tests for integration with KEB and EDP
Task(s):
-
Option 1: Only verify that KMC image exists.
- [ ] Add Github action.
- [ ] Render KCP helm chart with KMC enabled.
- [ ] Extract the KMC image from the rendered manifests.
- [ ] Docker pull to verify if the KMC image is valid.
-
Option 2: Deploy KCP with KMC on k3d and test end-to-end.
- [ ] Add Github action.
- [ ] Create a k3d cluster.
- [ ] Create
kcp-system
namespace. - [ ] Create k8s secret (name:
kubeconfig-<runtimeId>
) with kubeconfig for k3d inkcp-system
namespace. - [ ] mock KEB and EDP, and deploy the mock as a pod in
kcp-system
namespace..- [ ] KEB:
- [ ] GET
/runtimes
--> Returns list of runtimes.
- [ ] GET
- [ ] EDP:
- [ ] POST
/namespaces/kyma-dev/datastreams/kmc-consumption-metrics/1/dataTenants/<tenantId>/dev/events
--> Receives event and saves it in-memory. - [ ] GET
/edp/events
--> returns all received events/data.
- [ ] POST
- [ ] KEB:
- [ ] Deploy KMC on k3d in
kcp-system
namespace.. - [ ] Verify if the required data is pushed to mocked EDP.
Acceptance Criteria(s):
- [ ] KMC is tested on PRs.
This ticket is blocked until the KMC is moved to its separate repository. Then we can check if option 1 is already covered by the deployment pipelines.