Skip to content

Instantly share code, notes, and snippets.

View danmayer's full-sized avatar

Dan Mayer danmayer

View GitHub Profile
# regarding : http://gist.github.com/157782
# regarding : http://drawohara.com/post/151193800/ruby-symbol-to-hash
#
class Symbol
def to_h(&block)
Hash[to_sym, block && (block.call || eval(to_s, block))]
end
end
# regarding : http://gist.github.com/157782
# regarding : http://drawohara.com/post/151193800/ruby-symbol-to-hash
#
class Binding
def map *vars
vars.flatten.compact.inject({}){|h,v| h.update v => eval(v.to_s, self)}
end
alias_method '>', 'map'
end
# regarding : http://gist.github.com/157782
# regarding : http://drawohara.com/post/151193800/ruby-symbol-to-hash
#
class Binding
def > *vars
vars.flatten.compact.inject({}){|h,v| h.update v => eval(v.to_s, self)}
end
end
def run!
pid = fork do
exec_pid = fork do
$0 = "heaven[#{Heaven.current_sha}] : executing deployment of #{application_name}"
out_file = File.new(log, "w")
STDIN.reopen("/dev/null")
STDOUT.reopen(out_file)
STDERR.reopen(out_file)
@dorkalev
dorkalev / a start
Last active December 23, 2015 08:29
sentence = "there is a wild rose"
letters = sentence.gsub(' ','').split(//)
@bhb
bhb / fcollections.rb
Last active December 24, 2015 13:09
A toy example of defining filter and sorting operations in one place (on a class) while still keeping collections generic.
# An idea on how to sort and filter Ruby collections in a functional
# style
# Just using Struct for convenience, this could be a normal class.
User = Struct.new(:first_name, :last_name, :admin) do
def self.sort_by_name
# Define a new sort
lambda do |x,y|
# last name, first name DESC
@gilesbowkett
gilesbowkett / compare_branches.bash
Last active December 25, 2015 15:39
script to compare all branches by date of most recent commit. silences `stderr` because otherwise git tells you every time it switches branches
function silencing_stderr() {
$* 2>/dev/null
}
function branch_names() {
git br | awk '{print $1}' | grep -v '*' | xargs
}
function most_recent_commit() {
git log . | grep "Date: " | cut -c 9- | head -1
@mndoci
mndoci / iam_fog.rb
Created May 29, 2011 03:48 — forked from zapnap/iam_fog.rb
Using Amazon IAM with Fog (example)
# via http://blog.zerosum.org/2011/03/02/better-aws-access-control-with-iam-and-fog.html
require 'fog'
username = 'testuser'
bucket = 'uniquebucketname1234'
aws_credentials = {
:aws_access_key_id => 'YOUR-ACCESS-KEY-ID',
:aws_secret_access_key => 'YOUR-SECRET-ACCESS-KEY'
@MrJoy
MrJoy / git_ls_files.rb
Created October 10, 2012 22:42
A VERY partial implementation of .gitignore semantics in Ruby...
#!/usr/bin/env ruby
require 'set'
# This code is meant to demonstrate the difficulty of actually applying .gitignore semantics manually. It supports a key subset of .gitignore
# behaviors, including:
# * Anchored and unanchored patterns/globs.
# * Un-ignoring of patterns/globs, with the same quirky semantics as git.
# * Escaping a leading hash in a pattern.
# * User-wide exclusion list.
# * Top-of-repo .gitignore.