Skip to content

Instantly share code, notes, and snippets.

View sideshowcoder's full-sized avatar
💭
🐱

Philipp Fehre sideshowcoder

💭
🐱
View GitHub Profile
@sideshowcoder
sideshowcoder / render_from_model.rb
Last active December 14, 2015 01:49
Render from model in rails
class SomeModel < ActiveRecord::Base
...
def render_pdf
ac = ApplicationController.new
ac.instance_variable_set("@some_variable_needed_in_template", some_variable)
pdf = ac.render_to_string(pdf: "the_pdf_filename", template: 'pdf_templates/filename')
end
end
@sideshowcoder
sideshowcoder / loaded_features_example.rb
Created March 23, 2013 15:53
figure out what has been loaded already
$LOADED_FEATURES.select { |f| f =~ /time/ } #=> []
require 'time' #=> true
$LOADED_FEATURES.select { |f| f =~ /time/ } #=> ["/Users/phil/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/time.rb"]
@sideshowcoder
sideshowcoder / post-receive
Created June 10, 2013 19:32
post-receive agrument handling
#!/bin/bash
while read oldrev newrev ref
do
echo "$oldrev $newrev $ref"
done
@sideshowcoder
sideshowcoder / awesome_report_test.rb
Last active May 12, 2018 01:51
Helper for testing rake tasks in rails using minitest.
require 'test_helper'
# testing rake task app:awesome_report
# defined in file lib/tasks/app/awesome_report.rake
describe 'App::AwesomeReportTaskTest' do
it 'generates the awesomeness report' do
subject.invoke
assert File.exists?('awesomeness_report.csv')
end
@sideshowcoder
sideshowcoder / only_once.rb
Created July 26, 2013 08:29
run only once script in ruby
require 'fileutils'
exit if FileTest.exist?('lock.file')
# create a lock
FileUtils.touch('lock.file')
# do some work
sleep 30
@sideshowcoder
sideshowcoder / Vagrantfile
Created September 4, 2013 16:39
Setting up Riak with Vagrant and Puppet
Vagrant.configure("2") do |config|
config.vm.box = "precise64"
config.vm.box_url = "http://files.vagrantup.com/precise64.box"
# Forward Riak port
config.vm.network :forwarded_port, guest: 8098, host: 8098
# Provision with Puppet
config.vm.provision :puppet, module_path: "puppet/modules" do |puppet|
puppet.manifests_path = "puppet/manifests"
@sideshowcoder
sideshowcoder / unflatten.js
Last active December 24, 2015 21:19
unflatten an array of objects
var _ = require("underscore")
var res = []
var arr = [
{'id':21 ,'name' : 'name1' ,'vehiclename' : 'vehicle1' ,'parentid' : 21},
{'id':21 ,'name' : 'name1' ,'vehiclename' : 'vehicle2' ,'parentid' : 21},
{'id':22 ,'name' : 'name2' ,'vehiclename' : 'vehicle1' ,'parentid' : 22},
{'id':22 ,'name' : 'name2' ,'vehiclename' : 'vehicle2' ,'parentid' : 22},
]
@sideshowcoder
sideshowcoder / get_all.js
Created October 22, 2013 08:04
getAll (JSON) Values from a bucket, via riak-js or curl
var db = require("riak-js").getClient()
var async = require("async")
var kvPairs = [
{ key: "foo0", value: { somthing: "else0" } },
{ key: "foo1", value: { somthing: "else1" } },
{ key: "foo2", value: { somthing: "else2" } },
{ key: "foo3", value: { somthing: "else3" } },
{ key: "foo4", value: { somthing: "else4" } },
{ key: "foo5", value: { somthing: "else5" } },
@sideshowcoder
sideshowcoder / example.sh
Created October 26, 2013 17:37
Testing shell scripts with assert.sh
#!/bin/bash
echo "I do work!"
@sideshowcoder
sideshowcoder / Rakefile
Last active January 2, 2016 20:39
README Driven Development task for Rake
def code_from_markdown file
content = File.read(file)
code_snippets = []
content.scan(/`{3,}ruby\n((.|\n)*?)^`{3,}/) { |m| code_snippets << $1 }
code_snippets
end
namespace :test do
# all code inside ```ruby ``` is executed to uncomment certain examples just
# use ```xruby ``` or alike