Skip to content

Instantly share code, notes, and snippets.

View intjonathan's full-sized avatar

Jonathan Owens intjonathan

View GitHub Profile
@intjonathan
intjonathan / nagiosdb.rb
Last active August 29, 2015 13:56 — forked from jfryman/nagiosdb.rb
Update nagios configuration from puppetdb using stock puppet nagios_ resources.
#!/usr/bin/env ruby
#
# Nagios/PuppetDB config generator
# https://gist.github.com/jfryman/6290985
#
# Based on concept from puppetdb-external-naginator
# https://github.com/favoretti/puppetdb-external-naginator
#
# Generates nagios configs from puppet(db) exported resources.
#
@intjonathan
intjonathan / gist:9281646
Created February 28, 2014 22:46
Expect script for sending passwords when upgrading puppet agent
set timeout 60
spawn ./upgrade_nodes_pe3.sh <fqdn> <fqdn> <fqdn>
while {1} {
expect {
eof {break}
"The authenticity of host" {send "yes\r"}
"password for YOURUSER:" {send "PASSWORD\r"}
#"*\]" {send "exit\r"}
}
diff -ur ext/openssl/ossl_pkey_ec.c ext/openssl/ossl_pkey_ec.c
--- ext/openssl/ossl_pkey_ec.c 2012-02-19 06:09:11.000000000 -0800
+++ source/ext/openssl/ossl_pkey_ec.c 2014-01-03 16:37:11.077561351 -0800
@@ -757,8 +757,10 @@
method = EC_GFp_mont_method();
} else if (id == s_GFp_nist) {
method = EC_GFp_nist_method();
+#if !defined(OPENSSL_NO_EC2M)
} else if (id == s_GF2m_simple) {
method = EC_GF2m_simple_method();
@intjonathan
intjonathan / mysql-passwords.rb
Created April 22, 2014 21:19
generate mysql passwords quickly
require 'keepass/password'
10.times do
password = KeePass::Password.generate('[Adbp]{20}', :remove_lookalikes => true);
p password
p `mysql -e 'select password("#{password}")\G'`.match(/\*(\w+)/)[1]
end
@intjonathan
intjonathan / gist:a28f27022854cbb78866
Last active August 29, 2015 14:03
heka syslog with fallback
[rsyslog-with-fallback-decoder]
type = "MultiDecoder"
subs = ['WellFormedRyslogForwardFormatDecoder', 'BestGuessRyslogForwardFormatDecoder', 'SyslogParseFailureDecoder']
cascade_strategy = "first-wins"
[WellFormedRyslogForwardFormatDecoder]
type = "SandboxDecoder"
module_directory = "/usr/share/heka/lua_modules"
filename = "/usr/share/heka/lua_decoders/rsyslog.lua"
>> puts `zip -h`
Copyright (c) 1990-2006 Info-ZIP - Type 'zip "-L"' for software license.
Zip 2.32 (June 19th 2006). Usage:
zip [-options] [-b path] [-t mmddyyyy] [-n suffixes] [zipfile list] [-xi list]
The default action is to add or replace zipfile entries from list, which
can include the special name - to compress standard input.
If zipfile and list are omitted, zip compresses stdin to stdout.
-f freshen: only changed files -u update: only changed or new files
-d delete entries in zipfile -m move into zipfile (delete files)
-r recurse into directories -j junk (don't record) directory names
class CreateStoryTable < ActiveRecord::Migration
def self.up
create_table :stories do |t|
t.string :title
t.integer :journal_id
t.integer :user_id
t.integer :account_id
t.timestamps
end
class AddStoriesCountToJournals < ActiveRecord::Migration
def self.up
add_column :journals, :stories_count, :integer
end
def self.down
remove_column :journals, :stories_count
end
end
@intjonathan
intjonathan / gist:2589851
Created May 3, 2012 22:01
dupe-looking URLs
<item>
<title>[caution] - Memory &gt; 80%</title>
<link>https://rpm.newrelic.comhttps://rpm.newrelic.com/accounts/68507/servers/748391?tw%5Bdur%5D=last_3_hours&amp;tw%5Bend%5D=1335834058</link>
<pubDate>Mon, 30 Apr 2012 22:43:28 +0000</pubDate>
</item>
<item>
<title>[caution] - Memory &gt; 80%</title>
<link>https://rpm.newrelic.comhttps://rpm.newrelic.com/accounts/68507/servers/748391?tw%5Bdur%5D=last_3_hours&amp;tw%5Bend%5D=1335746488</link>
<pubDate>Sun, 29 Apr 2012 21:57:28 +0000</pubDate>
</item>
@intjonathan
intjonathan / pagerduty-ring-through.js
Created September 8, 2012 04:36
on{x} recipe to make pagerduty texts always play ringtone, then play annoying sound every minute until unlocked
// =====================================================================
// Crank up the volume and play an annoying sound every minute when you
// get a text from PagerDuty. Put things back when you unlock the screen.
// @intjonathan
// =====================================================================
var strVersion = 'v0.3';
var lngInterval = 1*60*1000; // 1 minute
var strAlarmFilePath = "file:///mnt/sdcard/Music/Ringer.mp3";