Skip to main content
In this tutorial, you’ll learn how to use Flux’s Helm Controller to deploy a Helm chart from a Git repository into your Kubernetes cluster. We’ll create Flux sources, overrides, and a HelmRelease to run the block-buster-helm-app version 7.5.0.

Prerequisites

  • A Kubernetes cluster with Flux CD installed
  • kubectl configured for your cluster
  • A Git repository containing your Helm chart

Step 1: Prepare a Git Branch

Switch to the application source and create a new branch called 5-demo based on 4-demo:
This branch contains the block-buster-helm-app chart at version 7.5.0.

Step 2: Inspect the Helm Chart

Open Chart.yaml to view the chart metadata:
Review the default values in values.yaml:
The templates/ directory includes standard Kubernetes manifests like Deployment and Service.

Step 3: Create a GitRepository Source

Tell Flux where to fetch your chart by defining a GitRepository:
Save the following in flux-clusters/dev-cluster/5-demo-source-git-bb-app.yaml:

Step 4: Override Chart Values

Add a 5-demo-values.yaml file in your Flux cluster repo to customize deployment:

Step 5: Define the HelmRelease

Create a HelmRelease that combines your source and values:
Save it alongside the other manifests:
Ensure unique manifest names across your repo to avoid reconciliation conflicts.

Summary of Flux Resources


Step 6: Commit and Reconcile

Push your manifests to the Flux cluster repo:
Verify Flux has detected the resources:

Step 7: Validate in Kubernetes

Check the new namespace and resources:
You should see two replicas and a NodePort service on port 30005:
Confirm the overridden labels:

Step 8: Inspect the Packaged Helm Chart

Flux creates HelmChart artifacts—list and view them:

Step 9: Access the Application

Point your browser to http://<node-ip>:30005. Version 7.5.0 includes a Start Game button to launch the game manually.
The image shows a "Block Buster" game interface with colorful blocks, a paddle, and a ball. It includes game details like pod name, IP, namespace, and version, with a "Start Game" button at the bottom.

References

Watch Video