Skip to content
This repository has been archived by the owner on Mar 18, 2022. It is now read-only.

roots/bedrock-capistrano

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

bedrock-capistrano

These are the Capistrano configs for deploying Bedrock projects.

Capistrano is a remote server automation and deployment tool. It will let you deploy or rollback your application in one command:

Screencast (:moneybag:): Deploying WordPress with Capistrano

Status: This project is stable, feature complete, and production ready. This means that we won't be adding new features. Only fixing existing bugs and ensuring that base functionality works.

Requirements

  • Ruby >= 1.9

Required Gems:

  • capistrano (> 3.1.0)
  • capistrano-composer

These can be installed manually with gem install <gem name> but it's highly suggested you use Bundler to manage them. Bundler is basically the Ruby equivalent to PHP's Composer. Just as Composer manages your PHP packages/dependencies, Bundler manages your Ruby gems/dependencies. Bundler itself is a Gem and can be installed via gem install bundler (sudo may be required).

The Gemfile in the root of this repo specifies the required Gems (just like composer.json). Once you have Bundler installed, run bundle install to install the Gems in the Gemfile. When using Bundler, you'll need to prefix the cap command with bundle exec as seen below (this ensures you're not using system Gems which can cause conflicts).

See http://capistranorb.com/documentation/getting-started/authentication-and-authorisation/ for the best way to set up SSH key authentication to your servers for password-less (and secure) deploys.

Installation/configuration

  1. Copy the following files into the root of your Bedrock project:
  • Capfile
  • Gemfile
  • Gemfile.lock
  1. Copy the following files/folders into your config directory:
  • config/deploy/*
  • config/deploy.rb
  1. Edit your config/deploy/ stage/environment configs to set the roles/servers and connection options.
  2. Before your first deploy, run bundle exec cap <stage> deploy:check to create the necessary folders/symlinks.
  3. Add your .env file to shared/ in your deploy_to path on the remote server for all the stages you use (ex: /srv/www/example.com/shared/.env)
  4. Run the normal deploy command: bundle exec cap <stage> deploy
  5. Enjoy one-command deploys!

Usage

  • Deploy: cap production deploy
  • Rollback: cap production deploy:rollback

Composer support is built-in so when you run a deploy, composer install is automatically run. Capistrano has a great deploy flow that you can hook into and extend it.

Contributing

Contributions are welcome from everyone. We have contributing guidelines to help you get started.

Support

Use the Roots Discourse forum to ask questions and get support.

About

Capistrano configs/integration for Bedrock

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Sponsor this project

 

Packages

No packages published

Languages