php-generic
Generic PHP app chart. Same workload shape as symfony but with toggleable probes so apps that don't expose /health or /ready can disable them.
- Workload kind:
StatefulSet - Container port: 80
- Probes: each can be disabled via
probes.<kind>.enabled: false - Init container: runs
./.container-init.shif present - Migrations:
component-tasks.migrations.commandsrun once per deploy as an ArgoCDSynchook Job
Dependencies
component-traefik-ingresscomponent-pdbcomponent-external-secretcomponent-rediscomponent-databasecomponent-tasks
Toggling probes
probes:
startup: { enabled: false }
readiness: { enabled: true, path: /ready }
liveness: { enabled: false }
If a probe is enabled: false, no probe section is rendered into the container spec.
Shared volumes (RWX)
Cross-pod shared storage is opt-in via global.sharedVolumes. See component-shared-volume for the schema and examples.
global:
sharedVolumes:
- name: uploads
size: 5Gi
mounts:
- path: /var/www/html/public/uploads
Migrations
Database migrations run once per deploy as an ArgoCD Sync hook Job, after the app secrets and database are ready and before any new pod of the app, its workers or its cron jobs starts:
component-tasks:
migrations:
commands:
- ["php", "craft", "up"]
- ["php", "craft", "cacheable/flush/config"]
.container-init.sh then holds only per-pod steps, or goes away entirely. Fields and behaviour: component-tasks → Migrations.