book-atlasHow To

Need to interact with your managed environment? This section provides clear instructions on key workflows—such as handling escalations, requesting changes, or understanding monitoring reports. Find step-by-step guidance on how to collaborate with Playground Tech for a seamless cloud experience.

Prerequisites

Many guides in this section use Helm for deploying applications. While we default to Argo CD for deployments to clusters in the cloud environments, it can be very useful to have Helm installed locally for testing and development purposes.

Installing Helm

Install Helm on your local machine:

macOS (Homebrew):

brew install helm

Windows (Chocolatey):

choco install kubernetes-helm

Windows (Scoop):

scoop install helm

Linux (Script):

curl https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | bash

Verify your installation:

helm version

For additional installation methods, see the official Helm documentationarrow-up-right.

Local Development and Validation

Before deploying to a cluster, you can use Helm locally to validate your configuration and preview the Kubernetes resources that will be created.

Setting Up Your Chart

Create a directory structure for your application:

Create Chart.yaml:

Create values.yaml with your configuration (see examples in previous sections).

Pulling the Chart

Download the chart dependency to your local machine:

This creates a charts/ directory containing the pgt-application chart.

To inspect the chart's default values:

Previewing Resources with helm template

Use helm template to render the Kubernetes manifests without deploying:

This outputs all the Kubernetes resources that would be created. To save the output to a file:

Filtering Template Output

To view only specific resources, combine with grep or yq:

Validating Against a Cluster

If you have access to a Kubernetes cluster, use --dry-run to validate the rendered manifests against the cluster's API server without actually creating resources:

This catches issues like:

  • Invalid field names or values

  • Missing required fields

  • API version incompatibilities

  • Resource quota violations

Linting Your Chart

Check for common issues and best practices:

For stricter validation:

Debugging Tips

Debug template rendering issues:

Compare configurations:

When changing values, compare the rendered output to see what changed:

Validate specific values:

Test different configurations without modifying values.yaml:

Last updated

Was this helpful?