style: format all files with prettier

This commit is contained in:
Seth Hobson
2026-01-19 17:07:03 -05:00
parent 8d37048deb
commit 56848874a2
355 changed files with 15215 additions and 10241 deletions

View File

@@ -14,6 +14,7 @@ This skill provides step-by-step instructions for building production-ready Helm
## When to Use This Skill
Use this skill when you need to:
- Create new Helm charts from scratch
- Package Kubernetes applications for distribution
- Manage multi-environment deployments with Helm
@@ -24,6 +25,7 @@ Use this skill when you need to:
## Helm Overview
**Helm** is the package manager for Kubernetes that:
- Templates Kubernetes manifests for reusability
- Manages application releases and rollbacks
- Handles dependencies between charts
@@ -35,11 +37,13 @@ Use this skill when you need to:
### 1. Initialize Chart Structure
**Create new chart:**
```bash
helm create my-app
```
**Standard chart structure:**
```
my-app/
├── Chart.yaml # Chart metadata
@@ -67,7 +71,7 @@ apiVersion: v2
name: my-app
description: A Helm chart for My Application
type: application
version: 1.0.0 # Chart version
version: 1.0.0 # Chart version
appVersion: "2.1.0" # Application version
# Keywords for chart discovery
@@ -180,6 +184,7 @@ redis:
**Use Go templating with Helm functions:**
**templates/deployment.yaml:**
```yaml
apiVersion: apps/v1
kind: Deployment
@@ -214,7 +219,8 @@ spec:
### 5. Create Template Helpers
**templates/_helpers.tpl:**
**templates/\_helpers.tpl:**
```yaml
{{/*
Expand the name of the chart.
@@ -263,6 +269,7 @@ app.kubernetes.io/instance: {{ .Release.Name }}
### 6. Manage Dependencies
**Add dependencies in Chart.yaml:**
```yaml
dependencies:
- name: postgresql
@@ -272,12 +279,14 @@ dependencies:
```
**Update dependencies:**
```bash
helm dependency update
helm dependency build
```
**Override dependency values:**
```yaml
# values.yaml
postgresql:
@@ -295,6 +304,7 @@ postgresql:
### 7. Test and Validate
**Validation commands:**
```bash
# Lint the chart
helm lint my-app/
@@ -313,6 +323,7 @@ helm show values ./my-app
```
**Validation script:**
```bash
#!/bin/bash
set -e
@@ -334,12 +345,14 @@ echo "All validations passed!"
### 8. Package and Distribute
**Package the chart:**
```bash
helm package my-app/
# Creates: my-app-1.0.0.tgz
```
**Create chart repository:**
```bash
# Create index
helm repo index .
@@ -350,6 +363,7 @@ aws s3 sync . s3://my-helm-charts/ --exclude "*" --include "*.tgz" --include "in
```
**Use the chart:**
```bash
helm repo add my-repo https://charts.example.com
helm repo update
@@ -369,6 +383,7 @@ my-app/
```
**values-prod.yaml:**
```yaml
replicaCount: 5
@@ -404,6 +419,7 @@ postgresql:
```
**Install with environment:**
```bash
helm install my-app ./my-app -f values-prod.yaml --namespace production
```
@@ -411,6 +427,7 @@ helm install my-app ./my-app -f values-prod.yaml --namespace production
### 10. Implement Hooks and Tests
**Pre-install hook:**
```yaml
# templates/pre-install-job.yaml
apiVersion: batch/v1
@@ -432,6 +449,7 @@ spec:
```
**Test connection:**
```yaml
# templates/tests/test-connection.yaml
apiVersion: v1
@@ -450,6 +468,7 @@ spec:
```
**Run tests:**
```bash
helm test my-app
```
@@ -515,17 +534,20 @@ image: {{ .Values.global.imageRegistry }}/{{ .Values.image.repository }}
## Troubleshooting
**Template rendering errors:**
```bash
helm template my-app ./my-app --debug
```
**Dependency issues:**
```bash
helm dependency update
helm dependency list
```
**Installation failures:**
```bash
helm install my-app ./my-app --dry-run --debug
kubectl get events --sort-by='.lastTimestamp'