rch / capistrano-bundle
Continuous deployment for Symfony2+
Installs: 258
Dependents: 0
Suggesters: 0
Security: 0
Stars: 11
Watchers: 1
Forks: 2
Type:symfony-bundle
Requires
- php: >=5.5.9
- symfony/config: ~3.0
- symfony/console: ~3.0
- symfony/dependency-injection: ~3.0
- symfony/filesystem: ~3.0
- symfony/yaml: ~3.0
Requires (Dev)
- fabpot/php-cs-fixer: ^1.11
This package is not auto-updated.
Last update: 2022-02-01 12:56:36 UTC
README
Integrates deployment as part of your development environment.
- Sets up a fast and automated deployment workflow
- Creates stagings in configuration format (YAML, PHP, XML)
- Controls tasks execution order through namespaces
- Generates custom tasks and environment variables.
Prerequisites
- Ruby >= 2.0
This version of the bundle requires Symfony 3+.
For a Symfony version between 2.4.x and the last LTS release, please use the 1.0 branch.
Installation
Download the bundle
$ composer require rch/capistrano-bundle:~2.0
This command requires you to have Composer installed globally, as explained in the installation chapter of the Composer documentation.
Enable the Bundle
Then, enable the bundle by adding it to the list of registered bundles
in the app/AppKernel.php
file of your project:
// app/AppKernel.php $bundles = array( // ... new RCH\CapistranoBundle\RCHCapistranoBundle(), );
Install & Configure Capistrano
Build installation files for capistrano
$ app/console rch:deploy:install
Install dependencies
$ bundle install
Usage
Setup deployment configuration in interactive mode
$ app/console rch:deploy:setup
Build Stagings
# app/config/rch/stagings/[staging].yml # Remote host domain: 'ssh_host' # Remote user user: 'ssh_user' # Remote key keys: '/home/ssh_user/.ssh/id_rsa' # Forward Agent forward_agent: 'false' # Authentication mode auth_methods: 'publickey password' # Deployment path deploy_to: '/path/to/deploy'
Run deployment
$ app/console rch:deploy:run --staging-name=[STAGING-NAME]
Advanced usage
Look at the capistrano documentation.
Contributing
This bundle needs help! For the contribution guidelines, see the CONTRIBUTING.md distributed file.
Todo
-
Command\Generate\GenerateStagingCommand, takes an yaml file as optional argument (even look for an existing if the argument is not set) and generates a staging for capistrano in interactive mode (optional).
-
Make the path of config files (staging, task) configurable using a bundle Extension.
-
Handle XML/PHP in GenerateStagingCommand.