control-plane icon indicating copy to clipboard operation
control-plane copied to clipboard

Add a test job for KMC to verify the KMC helm charts and image on PRs

Open mfaizanse opened this issue 1 year ago • 1 comments

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 in kcp-system namespace.
    • [ ] mock KEB and EDP, and deploy the mock as a pod in kcp-system namespace..
      • [ ] KEB:
        • [ ] GET /runtimes --> Returns list of runtimes.
      • [ ] 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.
    • [ ] 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.

mfaizanse avatar Jan 26 '24 10:01 mfaizanse

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.

mfaizanse avatar Feb 08 '24 10:02 mfaizanse