image-factory/docs/chart.md
Mateusz Urbanek 42a1c45849
feat: add helm to kres
Add kres rules for Helm chart management.

Signed-off-by: Mateusz Urbanek <mateusz.urbanek@siderolabs.com>
2026-01-27 10:46:38 +01:00

1.7 KiB

Image Factory Helm Chart

If you want to deploy Image Factory on a Kubernetes cluster, you can use the provided Helm chart located in the deploy/helm/image-factory directory. It is also distributed via the OCI registry.

E2E Tests

Image Factory uses KUTTL (Kubernetes Test Tool) integration tests for the Image Factory Helm chart.

Prerequisites

  1. Install KUTTL:

    make kuttl-plugin-install
    

    This will install the kubectl kuttl plugin using krew.

  2. Helm: Helm v4+ installed

Running Tests

Before running any tests, prepare your development cluster. You can do this by running:

make k8s-up

To tear down the cluster after testing, run:

make k8s-down

Run all tests

export KUBECONFIG="$(pwd)/_out/kubeconfig"
cd deploy/helm/e2e
kubectl kuttl test

Run with custom timeout

kubectl kuttl test --timeout 600

Configuration

Test Suite Settings (kuttl-test.yaml)

  • startKIND: false - Does not start KIND automatically (we do it manually to test on Talos cluster)
  • namespace: image-factory-e2e - Fixed namespace for tests
  • crdDir: ./_crds - Prometheus Operator CRDs installed before tests
  • timeout: 300 - Each step has 300 second timeout
  • parallel: 1 - Tests run sequentially

Debugging

export KUBECONFIG=./_out/kubeconfig
kubectl get all -n image-factory-e2e
kubectl logs -n image-factory-e2e deployment/image-factory

Notes

  • Prometheus Operator CRDs are pre-installed from _crds/
  • Each test step has a 300-second timeout
  • Tests run in fixed namespace image-factory-e2e
  • Tests use --reuse-values for upgrades to maintain state
  • ECPARAM signing key is provided via a pre-generated key file in testdata/