Add Symfony to the question models and handlers so that detected
Symfony projects get proper configuration instead of falling back
to GenericStack or redirecting to Symfony CLI.
In non-interactive mode (as used by source-integration-apps), Symfony
projects now produce a config with symfony-build/symfony-deploy hooks,
/var/cache and /var/log tmp mounts, and public/ web root.
In interactive mode, the Symfony CLI prompt is preserved. If declined,
the stack is now set to Symfony instead of Generic.
Changes:
- models/stack.go: add Symfony constant, Title, RuntimeForStack (PHP)
- models/answer.go: add Symfony case in getStack()
- stack.go: set Symfony stack in both non-interactive and interactive
decline paths
- build_steps.go: use Symfony Cloud configurator (symfony-build)
- deploy_command.go: use symfony-deploy
- mounts.go: /var/cache and /var/log as tmp mounts
- locations.go: root: public, passthru: /index.php
Closes [SIA-20: Implement Symfony configuration in platformify](https://linear.app/platformsh/issue/SIA-20/implement-symfony-configuration-in-platformify)
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Summary
Symfony stack configuration
When a Symfony project is detected (via symfony.lock or symfony/framework-bundle):
Reference: configuration-sampler/data/symfony-v7.2.yaml
🤖 Generated with Claude Code