Skip to content

Instantly share code, notes, and snippets.

View greggersh's full-sized avatar

Greg Gershman greggersh

View GitHub Profile
@greggersh
greggersh / gist:2771074
Created May 22, 2012 19:20
Stubbing Nokogiri
doc = Nokogiri::XML(open(Rails.root + 'spec/support/tesoriere.xml'))
Nokogiri::XML::Document.stub!(:parse)
Nokogiri::XML::Document.should_receive(:parse).and_return(doc)
# from http://tesoriere.com/2011/05/19/testing-with-remote-xml-in-rails-3.1-using-nokogiri-and-stubs/
@greggersh
greggersh / oauth-request
Created August 27, 2012 17:25
Making an OAuth request with the OAuth2 gem
require 'oauth2'
client_id = "REDACTED"
client_secret = "REDACTED"
# In this case, we have a single URL for authorization and issuing codes
client = OAuth2::Client.new(client_id, client_secret, :site => 'http://my.com', :token_url => "/oauth/authorize")
client.auth_code.authorize_url(:redirect_uri => 'http://example.com/')
# the above outputs a URL that ends in #AUTH_CODE, which is used below.
token = client.auth_code.get_token(auth_code, :redirect_uri => 'http://example.com/')
response = token.get('/api/endpoint')
@greggersh
greggersh / ruby-1.9.3-on-ubuntu
Created August 28, 2012 17:29
Installing Ruby 1.9.3 on Ubuntu
sudo apt-get install ruby1.9.1 ruby1.9.1-dev \
rubygems1.9.1 irb1.9.1 ri1.9.1 rdoc1.9.1 \
build-essential libopenssl-ruby1.9.1 libssl-dev zlib1g-dev
sudo update-alternatives --install /usr/bin/ruby ruby /usr/bin/ruby1.9.1 400 \
--slave /usr/share/man/man1/ruby.1.gz ruby.1.gz \
/usr/share/man/man1/ruby1.9.1.1.gz \
--slave /usr/bin/ri ri /usr/bin/ri1.9.1 \
--slave /usr/bin/irb irb /usr/bin/irb1.9.1 \
--slave /usr/bin/rdoc rdoc /usr/bin/rdoc1.9.1
@greggersh
greggersh / setup.sh
Last active October 9, 2015 11:58 — forked from benbalter/setup.sh
Basic (Ubuntu) LAMP/Rails stack setup (e.g. AWS)
sudo apt-get -y update
sudo apt-get -y upgrade
sudo apt-get install -y apache2 qmail sendmail git-core ack
sudo a2enmod rewrite
sudo a2enmod headers
sudo a2enmod ssl
sudo service apache2 restart
sudo apt-get install -y mysql-client
sudo apt-get install -y openssl
sudo apt-get install -y libcurl4-openssl-dev apache2-prefork-dev libapr1-dev libaprutil1-dev
@greggersh
greggersh / gist:4556868
Created January 17, 2013 15:43
Redact a file from git repository
git filter-branch --index-filter 'git rm --cached --ignore-unmatch config/initializers/secret_token.rb' --prune-empty --tag-name-filter cat -- --all
git push origin master --force
git push origin production --force
git push origin discovery --force
git push origin rec --force
git push origin related --force
rm -rf .git/refs/original/
git reflog expire --expire=now --all
git gc --prune=now
git gc --aggressive --prune=now
@greggersh
greggersh / setup.sh
Last active December 14, 2015 05:58
Script for setting up a CGI web server
ssh-keygen -t rsa -C "your_email@something.com"
sudo mkdir /var/www/mygov-discovery
sudo chown ggershm3 /var/www/mygov-discovery/
sudo chgrp ggershm3 /var/www/mygov-discovery/
sudo rpm -Uvh http://dl.fedoraproject.org/pub/epel/5/x86_64/epel-release-5-4.noarch.rpm
sudo yum install git
sudo rvm pkg install openssl
sudo rvm pkg install readline
sudo rvm reinstall 1.9.3 --with-readline-dir=$rvm_path/usr

Keybase proof

I hereby claim:

  • I am greggersh on github.
  • I am greggersh (https://keybase.io/greggersh) on keybase.
  • I have a public key whose fingerprint is BFEE AC2A 351D 4C46 ACE3 6323 3100 6E80 3D89 178F

To claim this, I am signing this object: