Simple Setup for using deployer for TYPO3

Deployer is a useful and my favorite tool for deploying php applications. I'm using it to deploy TYPO3 and Symfony sites. It comes with a lot of recipies for spefic frameworks which actually never fit my requirements or sometimes even don't work.

1. Install deployer with ddev

First we need to install deployer. I recommend using the composer installation inside our ddev environment. To do so excute the follwing command.

ddev composer require --dev deployer/deployer

Why not directly installing it or using the command outside the ddev? -> be sure to use the right php version and have the same setup for ervyone

2. Run deployer

You can now run deployer with

ddev vendor/bin/dep init

You t

#!/bin/bash## Description: Run deployer inside the web container in the root of the project## Usage: dep## Example: "dep deploy"## ExecRaw: truephp vendor/bin/dep "$@"
import:   - recipe/common.phpconfig:  repository: ''  keep_releases: 3  writable_mode: chmod  bin/php: php  bin/composer: composer  shared_dirs:    - 'public/fileadmin'    - 'public/typo3temp'    - 'var'  shared_files:    - '.env'    - 'public/.htaccess'    - 'public/typo3conf/AdditionalConfiguration.php'  writable_dirs:    - 'public/fileadmin'    - 'public/typo3temp'  clear_paths:    - '.git'    - '.ddev'hosts:  production:    branch: main    hostname:    remote_user: p635072    deploy_path: '~/html/seefischmarkt/production'  development:    branch: development    hostname:    remote_user: p635072    deploy_path: '~/html/seefischmarkt/development'tasks:  deploy:    - deploy:prepare    - deploy:vendors    - deploy:clear_paths    - deploy:publish  typo3:language:    - run: "cd {{release_path}} && php vendor/bin/typo3 language:update"  typo3:cache:      - run: "cd {{release_path}} && php vendor/bin/typo3 cache:flush"      - run: "cd {{release_path}} && php vendor/bin/typo3 cache:warmup"after:  deploy:vendors: typo3:language  deploy:language: typo3:cache  deploy:failed: deploy:unlock