docs: add multi-environment guide, worker troubleshooting, new feature docs#16
Closed
FabienPapet wants to merge 10 commits into
Closed
docs: add multi-environment guide, worker troubleshooting, new feature docs#16FabienPapet wants to merge 10 commits into
FabienPapet wants to merge 10 commits into
Conversation
- Add podSecurityContext and containerSecurityContext to values.yaml injected into deployment, worker, crons, and jobs templates - Add configurable livenessProbe and readinessProbe (opt-in, empty by default) injected into deployment and worker templates - Fix TODO in worker.yaml: use command+args instead of shell-wrapped command array - Update values.schema.json with new field definitions - Add tests/security_context_test.yaml and tests/probes_test.yaml (86 tests pass) - Add examples/12-security.yaml demonstrating hardened deployment Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- Add templates/hpa.yaml for main deployment HPA (autoscaling/v2) - Add templates/worker-hpa.yaml for per-worker HPA via autoscale flag - Add autoscaling section to values.yaml (disabled by default) supports minReplicas, maxReplicas, targetCPU%, targetMemory% - Workers support per-consumer autoscale, minReplicas, maxReplicas, targetCPU%/memory% - Omit replicas from Deployment spec when HPA is enabled - Update values.schema.json with autoscaling and worker HPA fields - Add tests/hpa_test.yaml and tests/worker_hpa_test.yaml (96 tests pass) Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- Add templates/pdb.yaml (policy/v1 PDB targeting main deployment) - Add podDisruptionBudget section to values.yaml (disabled by default) supports minAvailable (default 1) and maxUnavailable - maxUnavailable takes precedence over minAvailable when both are set - Update values.schema.json with podDisruptionBudget fields - Add tests/pdb_test.yaml (103 tests pass) Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- Add CHANGELOG.md in Keep a Changelog format (v0.1.1 through unreleased) - Add docs/guides/troubleshooting.md covering: CrashLoopBackOff, OOMKilled, worker issues, custom PHP ini, ingress/TLS, HPA, PDB, and image pull errors - Update docs/features.md with HPA, PDB, security context, and health probe sections - Update docs/customization.md with security context and health probe examples - Update docs/guides/production.md with PDB, HPA, security, and probe guidance Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- Fix monitoring.yaml: metadata.name was a Go template variable assignment
({{- $name := ... }}) producing an empty name; replace with inline printf
- Fix service.yaml: service type was hardcoded to 'ClusterIP' ignoring
.Values.service.type; now uses the configured value with ClusterIP as default
- Add metadata.name and labels assertions to monitoring_test.yaml
- Add LoadBalancer and NodePort service type tests to service_test.yaml
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…onds
- Add nameOverride and fullnameOverride to values.yaml (already in _helpers.tpl)
- Add podAnnotations: {} to values.yaml (already wired in templates)
- Add terminationGracePeriodSeconds (optional) injected into deployment and worker specs
- Update values.schema.json with all three new fields
- Add podAnnotations tests to deployment_test.yaml
- Add terminationGracePeriodSeconds tests to scheduling_test.yaml (112 tests pass)
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- Add startupProbe: {} to values.yaml (opt-in, empty by default)
- Inject into deployment.yaml and worker.yaml alongside liveness/readiness probes
- Add startupProbe to values.schema.json
- Add Startup Probe and Startup Probe - Workers test suites in probes_test.yaml
- Add examples/13-startup-probe.yaml demonstrating 5-minute startup window
- Update docs/customization.md and docs/features.md with startup probe guidance
- 116 tests pass, all 14 examples validate
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…s; fix template consistency - Add terminationGracePeriodSeconds to crons.yaml and jobs.yaml (already in deployment/worker) - Add topologySpreadConstraints support to all 4 workload templates - Add priorityClassName support to all 4 workload templates - Add initContainers support to all 4 workload templates - Complete values.schema.json: add missing cron/job fields (successfulJobsHistoryLimit, failedJobsHistoryLimit, backoffLimit, restartPolicy, ttlSecondsAfterFinished, per-job resources) - Fix env schema to allow valueFrom objects (secretKeyRef, configMapKeyRef, fieldRef, etc.) - Add 22 new tests (135 total), all passing - Add new values to values.yaml with inline documentation Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…esources - Remove unused empty helm-frankenphp.env helper from _helpers.tpl - Add .yamllint config (excludes Go-template files, allows long lines as warning) - Add yamllint target to Makefile - Add yamllint step to CI workflow (after helm lint, before unit tests) - Update values.yaml jobs comments to document ttlSecondsAfterFinished and per-job resource override feature Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…e docs - Add docs/guides/multi-environment.md: values layering, GitOps (ArgoCD/Flux), helm secrets - Expand docs/guides/troubleshooting.md: worker not processing messages + cronjob not running - Update docs/customization.md: valueFrom env support, initContainers, topologySpreadConstraints, priorityClassName - Update docs/features.md: initContainers, topologySpreadConstraints, priorityClassName sections Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Test results
make lint: PASSmake unit-test: 21 suites, 135 tests — all PASSmake validate: all 14 example files valid (kubeconform k8s 1.29)🤖 Generated with Claude Code