xima / xima-deployer-extended-typo3
Common deployer configuration for TYPO3 projects
Package info
github.com/xima-media/xima-deployer-extended-typo3
pkg:composer/xima/xima-deployer-extended-typo3
Requires
- helhum/dotenv-connector: ^3.2.0
- helhum/typo3-console: ^8.2.3
- sourcebroker/deployer-extended: ^24.0.0
- sourcebroker/deployer-typo3-database: ^1.0.0
- sourcebroker/deployer-typo3-deploy-ci: ^2.0.0
- sourcebroker/deployer-typo3-media: ^1.0.0
This package is auto-updated.
Last update: 2026-06-21 10:15:58 UTC
README
This package uses different sourcebroker/deployer-* packages to create deployment configurations for TYPO3 projects. It provides a set of default values and commands to simplify the deployment process.
Highlights
- Default values for typical server environment
- Feature-Branch Deployment with new
base_branchoption - Non-git deployment
- New commands
dep launch&dep sequelace
Installation
composer require xima/xima-deployer-extended-typo3
Create a deploy.php file in the root of your project and include the following code:
deploy.php
<?php namespace Deployer; require_once './vendor/autoload.php'; new \Xima\XimaDeployerExtendedTypo3\Loader(); function defineTestHost($branchName, $stage) { host('example-' . strtolower($branchName)) ->setHostname('192.168.0.1') ->setRemoteUser('username') ->set('labels', ['stage' => $stage]) ->set('branch', $branchName) ->set('public_urls', ['https://' . strtolower($branchName) . '.example.com']) ->set('deploy_path', '/var/www/html/example_' . strtolower($branchName)); } // feature branch hosts for ($i = 1; $i <= 999; $i++) { $branchName = 'TICKET-' . $i; defineTestHost($branchName, 'feature'); } // main host defineTestHost('main', 'live');
Default values
Configuration covers typical permission, shared and writable directory settings. See config.php for default values.
To extend a default values array, use the following set command:
set('shared_dirs', [ ...get('shared_dirs'), 'newDir', ]);
Feature-Branch deployment
There is a new command db:init which runs right before db:truncate. This command checks for the txBaseBranch option:
vendor/bin/dep deploy-fast example-ticket-001 --options=txBaseBranch:main
If this option is set, the command checks if the current feature instance has been initialized before. In case of an empty database, the db:copy command is triggert to fetch a database copy from the given base branch.
Non-git deployment
All files become uploaded via rsync and can be configured via upload_paths.