Magallanes

Another deployment tool for PHP applications written in PHP: https://www.magephp.com/

.mage.yml
magephp:
  log_dir: ./.mage/logs
  composer:
    path: composer
  exclude:
    - ./.ddev
    - ./.git
    - ./.mage
    - ./public/fileadmin
    - ./public/typo3temp
    - ./var
    - ./.mage.yml
    - ./composer.json
    - ./composer.lock
    - ./LICENSE
    - ./README.md
  environments:
    main:
      user: ssh-user
      from: ./
      host_path: /srv/vhosts/target-path/site/mage
      releases: 3
      hosts:
        - production.example.org
      pre-deploy:
        - exec: { cmd: "composer install --no-dev --no-progress --optimize-autoloader"}
      on-deploy:
        - fs/link: { from: "../../../../shared/public/fileadmin", to: "public/fileadmin" }
        - fs/link: { from: "../../../../shared/public/typo3temp", to: "public/typo3temp" }
        - fs/link: { from: "../../../shared/var", to: "var" }
      on-release:
      post-release:
        - exec: { cmd: './bin/typo3 backend:lock', timeout: 9000  }
        - exec: { cmd: './bin/typo3cms database:updateschema *.add,*.change', timeout: 9000  }
        - exec: { cmd: './bin/typo3cms cache:flush', timeout: 9000  }
        - exec: { cmd: './bin/typo3 upgrade:run', timeout: 9000  }
        - exec: { cmd: './bin/typo3 backend:unlock', timeout: 9000  }
      post-deploy: