Chart fidelity
Examples below match Universal Helm Chart application 0.4.3 keys from values.yaml and docs/configuration.md. Replace ghcr.io/example-org/* images and hostnames with your own.
One reusable chart covers a .NET web app: listen port via env, ConfigMap/secret refs, and Gateway API exposure.
Examples below match Universal Helm Chart application 0.4.3 keys from values.yaml and docs/configuration.md. Replace ghcr.io/example-org/* images and hostnames with your own.
args / multi-port / service.enabledFrom application 0.4.3: main container args (default []); Deployment revisionHistoryLimit (default 10); multi-port via containerPorts and service.ports; optional chart-managed Service via service.enabled (default true). When service.ports is set, Ingress / simple HTTPRoute / NOTES use the first entry (templates/_helpers.tpl application.servicePort). Legacy single-port service.name / service.port / service.protocol / service.appProtocol remain supported. Set service.enabled: false when the workload does not need a chart-managed Service. Do not invent other port keys.
helm repo add universal https://chaser100.github.io/u-helm-chart helm repo update helm search repo universal/application --versions
Package: Artifact Hub · universal-helm-chart/application.
Copy from the reference example, then replace the image registry and hostname. Keys below are valid chart values (see linked example page for the full file).
replicaCount: 2
image: ghcr.io/example-org/aspnet
imageTag: "1.0.0"
imagePullPolicy: IfNotPresent
service:
port: 8080
securityContext:
runAsNonRoot: true
runAsUser: 10001
runAsGroup: 10001
allowPrivilegeEscalation: false
readOnlyRootFilesystem: true
capabilities:
drop: ["ALL"]
podSecurityContext:
seccompProfile:
type: RuntimeDefault
env:
- name: ASPNETCORE_ENVIRONMENT
value: Production
- name: ASPNETCORE_URLS
value: http://+:8080
envFrom:
- configMapRef:
name: aspnet-config
envSecrets:
enableEnv: true
envs:
- name: ConnectionStrings__Main
secretName: aspnet-secrets
secretKey: ConnectionStrings__Main
configMaps:
- name: aspnet-config
data:
Logging__LogLevel__Default: Information
resources:
requests: {cpu: 100m, memory: 128Mi}
limits: {cpu: 500m, memory: 512Mi}
readinessProbe:
httpGet: {path: /health, port: http}
livenessProbe:
httpGet: {path: /health, port: http}
route:
enabled: true
gateway: external
gatewayNamespace: gateway-system
sectionName: https
hostname: aspnet.example.comKeep service.port aligned with ASPNETCORE_URLS. Probe port http is the Service port name (chart default service.name: http), not a free-form string.
helm upgrade --install aspnet universal/application --version 0.4.3 \ --namespace apps --create-namespace \ --values values.yaml
helm status aspnet -n apps kubectl get pods,svc,httproute -n apps -l app.kubernetes.io/instance=aspnet kubectl get httproute -n apps # After DNS/Gateway attachment: # curl -fsS https://YOUR_HOSTNAME/health
GitOps: point an Argo CD Application at chart repo https://chaser100.github.io/u-helm-chart, chart application, and this values file.
Open the full reference example → · Gateway API guide → · Getting started →