Capistrano Tasks for Alchemy CMS
Adds the Alchemy
uploads folder to Capistranos
linked_dirs array in order to survive deployments.
In addition, it offers several tasks to synchronize your uploads folder and your database between environments.
Add this line to your application's Gemfile:
gem 'capistrano-alchemy', '~> 1.0', group: :development, require: false
And then execute:
Or install it yourself as:
$ gem install capistrano-alchemy
If your application is not prepared for capistrano yet, you need to do so now:
$ bundle exec cap install
You have to add the
Capistrano::Alchemy and Rails specific tasks to your
require 'capistrano/rails' require 'capistrano/alchemy'
We have a task to run the alchemy upgrader on your servers.
$ bundle exec cap staging alchemy:upgrade
CAUTION: Please be sure to run the upgrader locally before running this untested on your production system!
Cloning the production data to your local dev env is advised before running the upgrader. This can easily be done with the next command.
Synchronize your data
Alchemy Capistrano receipts offer much more then only deployment related tasks. We also have tasks to make your local development easier. To get a list of all receipts type:
$ bundle exec cap -T alchemy
Import data from server
$ bundle exec cap staging alchemy:import:all
This imports your staging server's data onto your local development machine. This is very handy if you want to clone the current server state. Replace
production if you need the production data.
Export data to server
That even works the other way around:
$ bundle exec cap staging alchemy:export:all
NOTE: This will overwrite the database on your
staging server. But calm down my dear friend, Alchemy will ask you to perform a backup before overwriting it.
- Fork it ( https://github.com/[my-github-username]/capistrano-alchemy/fork )
- Create your feature branch (
git checkout -b my-new-feature)
- Commit your changes (
git commit -am 'Add some feature')
- Push to the branch (
git push origin my-new-feature)
- Create a new Pull Request