Skip to content

Instantly share code, notes, and snippets.

View r10r's full-sized avatar

Ruben Jenster r10r

  • Drachenfels GmbH
  • Pforzheim
View GitHub Profile
@r10r
r10r / jenkins
Last active November 28, 2016 09:09
gitolite hook to 'run hooks per repository'
#!/bin/bash
server=<server and port>
token=<your token>
job_name=$(basename `readlink -f $GIT_DIR` .git)
job_url=http://${server}/job/${job_name}
echo "Trigger jenkins build ${job_name} at ${job_url}"
exec wget --quiet ${job_url}/build?token=${token} > /dev/null
@r10r
r10r / benchmark_uuid_generation.rb
Created June 6, 2013 14:50
Benchmark UUID generation.
require 'benchmark'
require 'SecureRandom'
measurement = Benchmark.measure do
(0..10000).each { puts SecureRandom.uuid.to_s }
end
@r10r
r10r / json_pretty_print.rb
Created June 5, 2013 08:53
pretty print nested json with inclusions/exclusions
puts JSON.pretty_generate(
JSON.parse(
group.to_json(:include =>
{ :filter_rules =>
{:include =>
{
:filter_rule_action => {:except => [:updated_at, :created_at]},
:filter_rule_condition => {:except => [:updated_at, :created_at]}
},
:except => [:updated_at, :created_at]}},
@r10r
r10r / osx-symlink-xattr.patch
Last active December 17, 2015 14:39
Do not set xattrs for symlinks on OSX.
@r10r
r10r / pulse_dbus.py
Created May 2, 2013 09:19
Listen for pulse sink (device) state changes/updates.
import dbus
import os
from subprocess import call
def pulse_bus_address():
if 'PULSE_DBUS_SERVER' in os.environ:
address = os.environ['PULSE_DBUS_SERVER']
else:
bus = dbus.SessionBus()
server_lookup = bus.get_object("org.PulseAudio1", "/org/pulseaudio/server_lookup1")
@r10r
r10r / dbus_pulseaudio.rb
Last active December 16, 2015 20:59
pulseaudio dbus
require 'dbus'
class DBus::Pulseaudio
attr_accessor :socket_path, :connection
OBJECTS = {
:core => ['org.PulseAudio.Core1','/org/pulseaudio/core1']
}
@r10r
r10r / enable_dnsmasq_on_osx.sh
Last active October 11, 2019 04:27
Installs and configures dnsmasq on osx (for local resolution of development machines e.g virtualbox). Cudos to Alan Ivey http://www.echoditto.com/blog/never-touch-your-local-etchosts-file-os-x-again
# ----------------------
# installing dnsmasq and enable daemon
# ----------------------
brew install dnsmasq
sudo cp -v $(brew --prefix dnsmasq)/homebrew.mxcl.dnsmasq.plist /Library/LaunchDaemons
# ----------------------
# adding resolver for vbox domain
# ----------------------
[ -d /etc/resolver ] || sudo mkdir -v /etc/resolver
sudo bash -c 'echo "nameserver 127.0.0.1" > /etc/resolver/vbox'
@r10r
r10r / script.sql
Created March 7, 2013 09:19
psql must return 1 when a script fails (must be enabled manually)
\set ON_ERROR_STOP 1
@r10r
r10r / authorize_public_key.sh
Last active December 14, 2015 14:39
Authorize one or more public keys.
#!/bin/bash
# usage: cat $HOME/.ssh/id_dsa.pub | $0 [email protected]
PUBLIC_KEY=`cat`
echo "-- Adding public key(s) to account: $@ --"
echo "$PUBLIC_KEY"
ssh -T $@ <<EOF
[ -d \$HOME/.ssh ] || mkdir \$HOME/.ssh
echo "$PUBLIC_KEY" >> \$HOME/.ssh/authorized_keys
@r10r
r10r / veewee_console_type.rb
Created February 21, 2013 11:12
Type something in a veewee box (virtualbox provider). Can be use for testing the :boot_cmd_sequence without rebuilding the box.
require 'veewee'
# see veewee/test/build_realtest.rb
@ve=Veewee::Environment.new({ :definition_dir => '<definitions dir>' })
box = @ve.providers["virtualbox"].get_box('sgg')
box.console_type(['foobar'])