Skip to content

Improve order of deployment commands

The order of the commands that are executed during deployment looks a bit off to me. For example, cache-warmup is executed before the cache is cleared.

https://gitlab.com/gitlab-org/project-templates/typo3-distribution/-/blob/main/packages/site-base/Configuration/DeployerRsync.php?ref_type=heads#L188

I personally use something like this (although in a custom deployment and in yaml syntax):

  deploy:
    # Prepare folder structure
    - deploy:info
    - deploy:setup
    - deploy:lock
    - deploy:release
    - rsync:warmup

    # Copy files
    - rsync
    - deploy:shared
    - typo3:fixfolderstructure
    - deploy:writable

    # Update TYPO3 languages
    - typo3:language_update

    # Publish new version
    - deploy:symlink

    # Clear opcode cache
    - cachetool:clear:opcache

    # Update TYPO3 setup
    - typo3:extension_setup
    - typo3:upgrade_all

    # Clear TYPO3 caches
    - typo3:cache_flush
    - typo3:cache_warmup

    # Finish up deployment
    - deploy:unlock
    - deploy:cleanup
    - deploy:success