- create a slack webhook integration - copy the webhook url
- add following to top of ~/.ssh/config
Host *
PermitLocalCommand yes
- add
LocalCommand
to host entry
Host production.example.com
User ubuntu
Host *
PermitLocalCommand yes
LocalCommand
to host entryHost production.example.com
User ubuntu
# MIT License | |
class Interfaxer | |
include HTTParty | |
base_uri "https://rest.interfax.net" | |
headers 'Content-Type' => 'application/pdf' | |
def initialize(username, password) | |
self.class.basic_auth(username, password) | |
end |
var parser = document.createElement('a'); | |
parser.href = "http://example.com:3000/pathname/?search=test#hash"; | |
parser.protocol; // => "http:" | |
parser.hostname; // => "example.com" | |
parser.port; // => "3000" | |
parser.pathname; // => "/pathname/" | |
parser.search; // => "?search=test" | |
parser.hash; // => "#hash" | |
parser.host; // => "example.com:3000" |
# in response to https://twitter.com/#!/avdi/status/138513455622791168 | |
# Yes, resque's enqueue API is wacky, but in practice it's not a problem, | |
# because it's trivial to route around. | |
# This is untested, and skips any resque enqueue hooks you might have setup. | |
# but those aren't major hurdles to fix. | |
class ResqueQueueWrapper | |
def initialize(queue, resque=Resque) | |
@queue = queue |
# | |
# Cookbook Name:: delayed_job | |
# Recipe:: default | |
# | |
node[:applications].each do |app_name, data| | |
user = node[:users].first | |
case node[:instance_role] | |
when "solo", "app", "app_master" |