https://github.com/fnichol/capistrano-fanfare
https://github.com/fnichol/capistrano-fanfare
Last synced: 2 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/fnichol/capistrano-fanfare
- Owner: fnichol
- License: mit
- Created: 2012-01-04T23:33:30.000Z (over 13 years ago)
- Default Branch: master
- Last Pushed: 2012-08-24T20:53:38.000Z (almost 13 years ago)
- Last Synced: 2025-04-10T09:57:02.448Z (2 months ago)
- Language: Ruby
- Homepage: http://fnichol.github.com/capistrano-fanfare/
- Size: 273 KB
- Stars: 21
- Watchers: 3
- Forks: 3
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Capistrano::Fanfare [](http://travis-ci.org/fnichol/capistrano-fanfare) [](https://gemnasium.com/fnichol/capistrano-fanfare) [](https://codeclimate.com/github/fnichol/capistrano-fanfare)
**Notice:** This README is under active development.
Coming soon...
Add this line to your application's Gemfile:
gem 'capistrano-fanfare'
And then execute:
$ bundle
Create a `Capfile` that looks like:
load 'deploy'
require 'capistrano/fanfare'
fanfare_recipe 'defaults'
fanfare_recipe 'multistage'
fanfare_recipe 'git_style'
fanfare_recipe 'bundler'
fanfare_recipe 'assets'
fanfare_recipe 'db_seed'fanfare_recipe 'foreman'
fanfare_recipe 'database_yaml'fanfare_recipe 'info'
fanfare_recipe 'colors'
fanfare_recipe 'ssh'
fanfare_recipe 'console'
fanfare_recipe 'log'
fanfare_recipe 'campfire'
fanfare_recipe 'airbrake'Dir['vendor/plugins/*/recipes/*.rb'].each { |plugin| load(plugin) }
load 'config/deploy'
Pick and choose your fanfare recipes in `Capfile`--they are designed to work
independently but also build off each other.Create a `config/deploy.rb` that looks like:
set :application, "myappname"
set :repository, "[email protected]:myappname.git"set :campfire_options, :account => 'cfireaccount',
:room => 'Dev room',
:token => '010010010100101',
:ssl => trueCreate a `config/deploy/staging.rb` (assuming the *multistage* recipe) that
looks like:deploy_server = "myserver.example.com"
role :web, deploy_server
role :app, deploy_server
role :db, deploy_server, :primary => true
role :db, deploy_serverThere are several optional recipes that need additional gems in your Gemfile:
gem 'airbrake'
group :development do
gem 'capistrano-fanfare'
gem 'campy'
end**Foundational**
* [git_style](#recipes-git-style):
GitHub-style deployments, fully compatible with third party recipes.
* [foreman](#recipes-foreman):
Forget Unicorns, Resque workers, and God. Think processes.
* [bundler](#recipes-bundler):
Binstub `PATH`-aware deployments with custom shebangs and more.**Core**
* [defaults](#recipes-defatuls):
Common baseline defaults and an augmented `deploy:cold`.
* [multistage](#recipes-multistage):
Deploy to multiple environments like `"staging"` and `"production"`.
* [assets](#recipes-assets):
Rails asset pipeline support: done!
* [database_yaml](#recipes-database-yaml):
No more database password baked in your code, leave that up to the server.
* [db_seed](#recipes-db-seed):
Seeding your Rails database, autowired into `deploy:cold`.**Gravy**
* [ssh](#recipes-ssh):
Connect to your infrastructure nodes without thinking.
* [console](#recipes-console):
Rails 2/3, Sinatra, and Rack consoles, running in one command.
* [log](#recipes-log):
Ability to tail logs and load logs into a local editor.
* [colors](#recipes-colors):
Deploys, but prettier.
* [campfire](#recipes-campfire):
Notify your team of deployment and maintenace events.
* [airbrake](#recipes-airbrake):
Track your deployments in Airbrake/Hoptoad/Errbit
* [info](#recipes-info):
Deployment configuration information, available at a glance.> GitHub-style deployments, fully compatible with third party recipes.
A Git style deployment strategy based on GitHub's
[Deployment Script Spring Cleaning][github_spring] blog post.> Forget Unicorns, Resque workers, and God. Think processes.
> Binstub `PATH`-aware deployments with custom shebangs and more.
Uses the delivered [Bundler][cap_bundler] implementation with support for
shebangs, binstubs `PATH` inclusion, and a generated `bin/bundle` binstub
script file.> Common baseline defaults and an augmented `deploy:cold`.
> Deploy to multiple environments like `"staging"` and `"production"`.
Uses the delivered [Capistrano multistage][cap_multistage] implementation with
a few additional helpers.> Rails asset pipeline support: done!
> Tracking deployments in Airbrake
> No more database password baked in your code, leave that up to the server.
> Connect to your infrastructure nodes without thinking.
> Rails 2/3, Sinatra, and Rack consoles, running in one command.
> Ability to tail logs and load logs into a local editor.
> Deploys, but prettier.
> Rails console, ready for input in one command.
> Notify your team of deployment and maintenace events.
> Track your deployments in Airbrake/Hoptoad/Errbit
> Deployment configuration, available at a glance.
* Source hosted at [GitHub][repo]
* Report issues/questions/feature requests on [GitHub Issues][issues]Pull requests are very welcome! Make sure your patches are well tested.
Ideally create a topic branch for every separate change you make. For
example:1. Fork the repo
2. Create your feature branch (`git checkout -b my-new-feature`)
3. Commit your changes (`git commit -am 'Added some feature'`)
4. Push to the branch (`git push origin my-new-feature`)
5. Create new Pull RequestCreated and maintained by [Fletcher Nichol][fnichol] ()
MIT (see [LICENSE][license])
[defaults_src]: https://github.com/fnichol/capistrano-fanfare/blob/master/lib/capistrano/fanfare/defaults.rb
[multistage_src]: https://github.com/fnichol/capistrano-fanfare/blob/master/lib/capistrano/fanfare/multistage.rb
[git_style_src]: https://github.com/fnichol/capistrano-fanfare/blob/master/lib/capistrano/fanfare/git_style.rb
[bundler_src]: https://github.com/fnichol/capistrano-fanfare/blob/master/lib/capistrano/fanfare/bundler.rb
[assets_src]: https://github.com/fnichol/capistrano-fanfare/blob/master/lib/capistrano/fanfare/assets.rb
[db_seed_src]: https://github.com/fnichol/capistrano-fanfare/blob/master/lib/capistrano/fanfare/db_seed.rb
[foreman_src]: https://github.com/fnichol/capistrano-fanfare/blob/master/lib/capistrano/fanfare/foreman.rb
[database_yaml_src]: https://github.com/fnichol/capistrano-fanfare/blob/master/lib/capistrano/fanfare/database_yaml.rb
[info_src]: https://github.com/fnichol/capistrano-fanfare/blob/master/lib/capistrano/fanfare/info.rb
[colors_src]: https://github.com/fnichol/capistrano-fanfare/blob/master/lib/capistrano/fanfare/colors.rb
[ssh_src]: https://github.com/fnichol/capistrano-fanfare/blob/master/lib/capistrano/fanfare/ssh.rb
[console_src]: https://github.com/fnichol/capistrano-fanfare/blob/master/lib/capistrano/fanfare/console.rb
[campfire_src]: https://github.com/fnichol/capistrano-fanfare/blob/master/lib/capistrano/fanfare/campfire.rb
[airbrake_src]: https://github.com/fnichol/capistrano-fanfare/blob/master/lib/capistrano/fanfare/airbrake.rb[cap_assets]: https://github.com/capistrano/capistrano/blob/master/lib/capistrano/recipes/deploy/assets.rb
[cap_bundler]: https://github.com/carlhuda/bundler/blob/master/lib/bundler/capistrano.rb
[cap_multistage]: https://github.com/capistrano/capistrano/blob/master/lib/capistrano/ext/multistage.rb
[github_spring]: https://github.com/blog/470-deployment-script-spring-cleaning
[license]: https://github.com/fnichol/capistrano-fanfare/blob/master/LICENSE[fnichol]: https://github.com/fnichol
[repo]: https://github.com/fnichol/capistrano-fanfare
[issues]: https://github.com/fnichol/capistrano-fanfare/issues
[contributors]: https://github.com/fnichol/capistrano-fanfare/contributors