Skip to content

Instantly share code, notes, and snippets.

View ewindisch's full-sized avatar

Erica Windisch ewindisch

View GitHub Profile
@ewindisch
ewindisch / iostat-lvm-swap.sh
Created October 8, 2009 22:00
device mapper alias resolver
#!/bin/bash
for line in $(iostat $(dmsetup ls | sed -n '/swap/{ s/.*, //; s/)//; s/^/dm-/; p; }') | sed 's/\s\+/,/g'); do
if (echo $line | grep ^dm- >/dev/null 2>&1); then
dm=$(echo $line | cut -d, -f1 | cut -d- -f2);
dname=$(dmsetup info -c --noheadings -j 253 -m $dm | cut -d: -f1);
echo $line |
sed "s/^dm-$dm/$dname/; s/,/\t\t/g;";
else
echo "$line" | sed 's/,/\t\t/g;';
fi
@ewindisch
ewindisch / topio
Created January 2, 2010 16:42
Uses iostat to find top (ab)users
#!/bin/bash
#% Title: gt-topio
#% Author: Eric Windisch
#% License: MIT
# default value...
count=20
filter='.'
set -- `getopt c:d:e: $@` >/dev/null 2>&1
@ewindisch
ewindisch / domU-xenstore-ls
Created February 1, 2010 21:54
Get details of your Xen guest from inside an instance.
#!/bin/bash
for i in $(seq 0 1024); do x=$(cut -d/ -f3 <(xenstore-read /local/domain/$i/vm 2>/dev/null)); if [ $x ] && [ $x == $(cat /sys/hypervisor/uuid) ] ; then xenstore-ls /local/domain/$i ; fi ; done
@ewindisch
ewindisch / gt-topiosar
Created March 24, 2010 21:31
Uses sar to find top io (ab)users.
#!/bin/bash
#% Title: gt-topiosar
#% Author: Eric Windisch
#% License: MIT
# default value...
count=20
#expr="p;"
filter='.'
# AGPLv3, Eric Windisch. GrokThis.net / VPS Village.com
# This is an snippet / extract from a larger application.
# I don't necessarily expect this to work all on its lonesome.
use Locale::TextDomain ('CloudShell');
our $ginterp;
our %interpcache;
my $prompt;
# Execute main subroutine, unless we're being subclassed...
@ewindisch
ewindisch / openstack_foundation_affiliations.py
Created August 2, 2012 00:51
LinkedIn OpenStack Foundation Members Mapping
print "Importing."
from pprint import pprint
from urllib2 import urlopen
from bs4 import BeautifulSoup
# LinkedIn API code
import re
from ConfigParser import SafeConfigParser
import oauth2 as oauth
@ewindisch
ewindisch / glacier.py
Created August 21, 2012 21:10
glacier python client
#!/usr/bin/env python
#
# Copyright (c) 2012 Eric Windisch <eric@cloudscaling.com>
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
# in the Software without restriction, including without limitation the rights
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
# copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
@ewindisch
ewindisch / gist:3955156
Created October 25, 2012 20:21
Obama Romney tax script
#!/usr/bin/env python
import sys
def calc_tax(agi, multiplier=1):
tax=0
table = {
0: [ 17400, 10 ],
17400: [ 70700, 15 ],
70700: [142700, 25 ],
142700: [ 217450, 28 ],
@ewindisch
ewindisch / log.py
Created January 8, 2013 21:43
openstack common (oslo) log.py
# vim: tabstop=4 shiftwidth=4 softtabstop=4
# Copyright 2011 OpenStack LLC.
# Copyright 2010 United States Government as represented by the
# Administrator of the National Aeronautics and Space Administration.
# All Rights Reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
@ewindisch
ewindisch / life.py
Created March 22, 2013 11:21
Hashed Game of life in Python
#!/usr/bin/env python2.7
def mkboard(seed):
columns = {}
# Need not be efficient while seed is small.
for i in seed:
column = set()
while seed[i].count(1) > 0:
e = seed[i].index(1)