Skip to content

Instantly share code, notes, and snippets.

View csouls's full-sized avatar

Yusuke Tanaka csouls

View GitHub Profile
@csouls
csouls / deploy.rb
Created April 29, 2014 12:48
config/deploy.rb on simple deploy
namespace :deploy do
set :db_user, 'set_db_user'
set :db_password, 'set_db_password'
set(:environment) { rails_env }
set :master, 'localhost'
set :slaves, []
set :database_name, "dbprefix_#{rails_env}"
# memcached config => [hostname:port]
set :memcache_servers, ['localhost:11211']
@csouls
csouls / capistrano_extensions.rb
Last active August 29, 2015 14:00
Extension of capistrano command on simple deploy
require 'erubis'
require 'aws-sdk'
module CapistranoExtentions
# Run a git command in the `current_path` directory
def git(command)
run "cd #{current_path} && umask 002 && git #{command}"
end
# Capture the result of a git command run within the `current_path` directory
@csouls
csouls / deploy.rb
Created July 19, 2013 08:00
AWSの"Role"タグからデプロイ対象のサーバを取得
# config/deploy.rb
def tagged_servers(tag_key, tag_value, default=[])
@ec2 ||= AWS::EC2.new(ec2_endpoint: 'ec2.ap-northeast-1.amazonaws.com')
ret = @ec2.instances.map do |instance|
next if instance.tags[tag_key] != tag_value
next if instance.status != :running
instance.dns_name.empty? ? instance.ip_address : instance.dns_name
end.compact
return default if ret.empty?
ret
@csouls
csouls / meigen.rb
Last active December 16, 2015 18:20
GitのCommit logに"fix"とか書くくらいだったら名言書いとこうってことで、http://www.meigensyu.com/ から名言をランダムで取ってくるRuby script。
require 'rubygems'
require 'mechanize'
require 'rainbow'
m = Mechanize.new
m.get('http://www.meigensyu.com/quotations/view/random/') do |random|
m.get(random.uri) do |page|
text = page.parser.xpath('//div[@class="meigenbox"]/div[@class="text"]').text
puts Rainbow(text).color(:blue)
end