Skip to content

Instantly share code, notes, and snippets.

View dkavanagh's full-sized avatar

David Kavanagh dkavanagh

View GitHub Profile
@dkavanagh
dkavanagh / foundation.abide.js.patch
Created July 15, 2014 12:54
foundation abide patch to allow skipping validation for a form cancel button
index 9898eac..44eab0e 100644
--- a/eucaconsole/static/js/thirdparty/foundation/foundation.abide.js
+++ b/eucaconsole/static/js/thirdparty/foundation/foundation.abide.js
@@ -53,7 +53,8 @@
events : function (scope) {
var self = this,
form = $(scope).attr('novalidate', 'novalidate'),
- settings = form.data('abide-init');
+ settings = form.data('abide-init'),
+ cancel_target = form.attr('cancel-target');
@dkavanagh
dkavanagh / confg_cloud_volumes.sh
Created August 28, 2014 17:03
adjust cloud properties for larger volumes
yum install -y http://downloads.eucalyptus.com/software/eucalyptus/nightly/4.0/centos/6/x86_64/eucalyptus-4.0.0-0.0.1051.el6.x86_64.rpm
yum install -y http://downloads.eucalyptus.com/software/eucalyptus/nightly/4.0/centos/6/x86_64/eucalyptus-admin-tools-4.0.0-0.0.1051.el6.noarch.rpm
source eucarc
euca-modify-property -p PARTI00.storage.maxvolumesizeingb=25
euca-modify-property -p PARTI01.storage.maxvolumesizeingb=25
euca-modify-property -p PARTI00.storage.maxtotalvolumesizeingb=250
euca-modify-property -p PARTI01.storage.maxtotalvolumesizeingb=250
@dkavanagh
dkavanagh / eucaconsole-template.cfn
Last active April 27, 2016 13:37
Cloud Formation template for deploying the Eucalyptus Management Console on Eucalyptus
{
"AWSTemplateFormatVersion" : "2010-09-09",
"Description" : "Deploy Eucalyptus Management Console with ELB, Autoscaling.",
"Parameters" : {
"ImageId" : {
"Description" : "The ID of the image to use for the console",
"Type" : "String",
"ConstraintDescription" : "Must be the ID of a CentOS image on the cloud."
@dkavanagh
dkavanagh / deploy-console.sh
Last active July 20, 2016 18:46
This script generates a self-signed SSL cert and creates a Eucalyptus Management Console deployment using it (with ELB and AS services). It pulls in a CloudFormations template as well https://gist.github.com/dkavanagh/8cc932f0688b909547fe
#!/bin/bash
# params passed to cloud formation template
CLOUD_IP=10.111.5.150
SSH_KEY=dak-ssh-key
IMAGE_ID=emi-bc44e9e6
# create a self-signed ssl cert and install it via IAM
C=US
ST=CA
L="Santa Barbara"
@dkavanagh
dkavanagh / get_cloud_ssl_cert.sh
Created September 10, 2015 16:27
extract eucalyptus default ssl cloud cert
keytool -exportcert -alias eucalyptus -file cloud-ssl.crt -keystore /var/lib/eucalyptus/keys/euca.p12 -storepass eucalyptus -storetype pkcs12 -rfc
@dkavanagh
dkavanagh / cloud-init-reqgen.txt
Created September 16, 2015 16:56
cloud init script for setting up a request generator against eucaconsole. Note: modify the endpoint on line 13
#cloud-config
# vim: syntax=yaml
#
# This config installs the eucalyptus and epel repos, then installs and
# configures the eucaconsole package
runcmd:
- [ yum, -y, install, wget, python-pip ]
- [ pip, install, requests, cachecontrol, beautifulsoup4 ]
- [ pip, install, --upgrade, urllib3, requests ]
@dkavanagh
dkavanagh / reqgen-scale.cfn
Created November 13, 2015 21:45
Setup request generator for eucaconsole for scale testing. Each instance in scaling group generates 100 users sessions.
{
"AWSTemplateFormatVersion" : "2010-09-09",
"Description" : "Deploy request generator for console with Autoscaling.",
"Parameters" : {
"ImageId" : {
"Description" : "The ID of the image to use for the console",
"Type" : "String",
"ConstraintDescription" : "Must be the ID of a CentOS 7 image on the cloud."
@dkavanagh
dkavanagh / gen_metric_data.sh
Created January 11, 2016 20:13
Generate some custom metric data for testing
#!/bin/bash
while true
do
euwatch-put-data --metric-name RequestCount --namespace dak --dimensions "User=dak" --timestamp `date +%Y-%m-%dT%H:%M:%SZ` -v `expr $RANDOM / 2500`
sleep 5
done
@dkavanagh
dkavanagh / dual-pwm.ino
Created June 10, 2016 13:48
Dual Pwm controller w/ display
/*
This sketch illustrates how to use an arduino to provide 2 PWM signals for motor
controllers. The LCD display shows the values as driven by pot inputs. It also has
the ability to lock the two outputs to the left input pot.
The circuit:
* LCD RS pin to digital pin 12
* LCD Enable pin to digital pin 11
* LCD D4 pin to digital pin 5
* LCD D5 pin to digital pin 4
@dkavanagh
dkavanagh / decodetest.java
Created September 13, 2016 17:57
performance testing guava and apache commons-codec base64 decoding.
import com.google.common.io.BaseEncoding;
import org.apache.commons.codec.binary.Base64;
public class decodetest {
public static void main(String [] args) {
String encoded = "eyJub25jZSI6bnVsbCwiYXRfaGFzaCI6InNSS0t4akRna2pPd3p1d25BUDBjbEx0NlRsaTh0T3VJb1c2T3lZWTJfZTAiLCJhdWQiOiI2NTkwNjdlYy05Njk4LTQ0YTgtODhlYS1kYjMxZTA3MTQ0N2EiLCJzdWIiOiI2ZjNhMTdkNC01MzhlLTQ0MzEtODg5Yi1mNjFhZWExNWNmMGMiLCJleHAiOjE0NzMzNjk1NzAsImlzcyI6Imh0dHBzOi8vYXV0aC5nbG9idXMub3JnIiwiaWF0IjoxNDczMTk2NzcwLCJwcmVmZXJyZWRfdXNlcm5hbWUiOiJka2F2YW5hZ2hAZ21haWwuY29tIiwiZW1haWwiOiJka2F2YW5hZ2hAZ21haWwuY29tIiwibmFtZSI6IkRhdmlkIEthdmFuYWdoIn0";
//String encoded = "xGB5hkL_VueWstXijYZ8FgtKPD9ZwvlYCcqLswY3qf4-Dm5ZLz67MS9uUhzwHzMwVi_1J-d5BzZvZhbqP_6AboRX4RM4gkTrkjZJMLFVbqsDdU6FnljevlDCpcca_y2XvnZYV9xa_-ugbnaT6CL6opsBfOhXCWJqkKU2Ajw6I087FHIq4XGl7yP2LUEalZqnLpIOD4vJ-Mm9MSHJmtRxKqmF-keDZulc17hY5jeOTdPVWdVWxQY1c-TqZstkIVFS9Xl4rX--A73nV1VWEILTqNXBpoUMC2c8KgmoCfsdk0KBER7hCztmtkY3o633LDZR-aHUxpSvXQjMgua2aAXnOQ==";
long start = Syste