❤️ ABS is one of the five Certified Kubernetes Service Providers in India ❤️

Make and Share your own Helm package on GitHub Pages

Helm packages, also known as charts, are a collection of pre-configured Kubernetes resources bundled together. Here’s a step-by-step guide to create and share your Helm package on GitHub Pages:

Prerequisites:
  • Helm
  • GitHub Account
Step 1: Create a Helm Chart

Create a directory structure for your Helm chart. A basic structure might look like this:

my-helm-chart/

├── charts/

├── templates/

├── values.yaml

├── Chart.yaml

  • charts/: This directory can contain subcharts if your chart depends on other charts.
  • templates/: Place your Kubernetes resource templates (e.g., YAML files) in this directory.
  • values.yaml: Define default configuration values for your chart.
  • Chart.yaml: Provide metadata about your chart.
Step 2: Package Your Helm Chart

To package your Helm chart into a distributable package (tgz file), run the following command from the directory containing your chart:

				
					helm package .
				
			

This command will create a .tgz file in the current directory, which contains your Helm chart.

Step 3: Create a GitHub Repository

Create a new GitHub repository to host your Helm chart. Make sure it’s public or accessible to your intended audience.

Step 4: Publish Your Helm Chart on GitHub Pages

Here’s how to publish your Helm chart on GitHub Pages. Create a branch (e.g., gh-pages) in your GitHub repository

				
					git checkout -b gh-pages

				
			

Move your .tgz Helm chart package to this branch and commit it

				
					mv my-helm-chart-*.tgz index.tgz
git add index.tgz
git commit -m "Add Helm chart package"

				
			

Push the changes to your GitHub repository

				
					git push origin gh-pages
				
			

After pushing, you can access your Helm chart package via the GitHub Pages URL. The URL structure is typically

				
					https://.github.io//index.tgz

				
			

For example, if your GitHub username is “myuser” and your repository is “my-helm-chart-repo,” the URL would be:

				
					https://myuser.github.io/my-helm-chart-repo/index.tgz
				
			
Step 5: Use the Helm Chart

To use your Helm chart, others can add your GitHub Pages URL as a Helm chart repository:

				
					helm repo add my-helm-chart-repo https://myuser.github.io/my-helm-chart-repo
				
			

They can then install your Helm chart as they would with any other Helm chart

				
					helm install my-release my-helm-chart-repo/my-helm-chart
				
			

Now, your Helm chart is available for others to use and share by adding your Helm chart repository to their Helm configurations.