Skip to content

Instantly share code, notes, and snippets.


Julian C. Dunn juliandunn

View GitHub Profile



Waiving meetings

In some cases the IC might determine that a PM meeting for the incident isn't needed. If the IC decides to waive the meeting please replace the Meeting section with a note indicating the meeting has been waived (example: Meeting waived: Paul Mooring)

juliandunn /
Last active Feb 17, 2021
Notes on PostgreSQL performance optimization on RDS

Deep Dive: PostgreSQL on AWS

When loading data

  • disable backups (backup_retention=0)
  • disable multi-AZ and autovacuum
  • pg_dump -Fc (compressed) and pg_restore -j (parallel)
  • Increase maintenance_work_mem
juliandunn / my.cnf
Created Jun 30, 2016
default my.cnf inside the mysql container
View my.cnf
# cat my.cnf
# Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; version 2 of the License.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
juliandunn /
Last active Feb 21, 2019
Script to set up IBM PDP AIX machines
# Note: On AIX, /bin/sh is Korn Shell. Don't use Bashisms here!
# Partitions are too small to be useful. Expand them.
chfs -a size=+2000000 /usr
chfs -a size=+2000000 /opt
chfs -a size=+2000000 /home
chfs -a size=+2000000 /var
chfs -a size=+2000000 /tmp
juliandunn / micros-pos-example.rb
Created Sep 14, 2018
Example, untested InSpec code for evaluating Micros POS systems against CVE-2018-2636
View micros-pos-example.rb
# Original Python:
control 'Check Micros POS for CVE-2018-2636' do
impact 1.0
title 'Check whether your Micros POS is vulnerable to CVE-2018-2636'
desc 'CVE-2018-2636 is a remote-execution vulnerability that gives unauthenticated attackers unrestricted access to the POS system.'
describe http('',
headers: {'Content-Type' => 'application/dime',
'SOAPAction' => '""',
View graph_profile.out
This file has been truncated, but you can view the full file.
Measure Mode: wall_time
Thread ID: 70311047589620
Fiber ID: 70311054514500
Total Time: 42.438698053359985
Sort by: total_time
%total %self total self wait child calls name
100.00% 0.00% 42.439 0.000 0.000 42.439 1 Chef::Client#run
juliandunn /
Created Feb 24, 2015
Doing integration testing on Travis CI with Test Kitchen and DigitalOcean

Setting up Travis-CI Test Harness

These notes were cribbed from the work that Sean O'Meara did for the Yum cookbook.

  • Ensure Travis integration is on in GitHub.
  • Set up Gemfile, Rakefile like the ones here
  • Set up
  • Set up a .travis.yml without all the encrypted secrets but with the tasks, matrix, etc. This .travis.yml needs to have env vars like DIGITAL_OCEAN_SSH_KEY_PATH set up unencrypted in the env->global section.
  • Install the Travis gem on your workstation. Encrypt the secrets you will use. This is the trickiest part:
juliandunn / awsha.rb
Last active Jan 25, 2018
Demo script for AWSAdvent 2014 blog post
View awsha.rb
require 'fog'
require 'json'
require 'open-uri'
module AWSAdvent
class Demo
attr_reader :instance, :compute, :server
View KittenRandomController.cs
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class KittenRandomController : MonoBehaviour {
public float speed;
private int frameupdaterate; // only change the kitten velocity every FrameUpdateRate frames
private float framecounter = 0;
# Set up an AIX 6.1 server to have all the prerequisites to run Omnibus.
# Authors: Scott Hain (<>), Julian Dunn (<>)
# Notes:
# 1. /bin/sh is actually ksh. Your bashisms ain't gonna work here, sonny!
# 2. Run this script as superuser.
# 3. I've tried to be clear about what requires GNU Make and what requires BSD make