Skip to content

Instantly share code, notes, and snippets.

Avatar

Steven Ringo stevenringo

View GitHub Profile
@stevenringo
stevenringo / reinvent-2017-youtube.md
Created Dec 3, 2017
Links to YouTube recordings of AWS re:Invent 2017 sessions
View reinvent-2017-youtube.md

| Title | Description

@stevenringo
stevenringo / deploy_stack.sh
Created Sep 11, 2017
Create/update/delete cloudformation stacks with events tailing
View deploy_stack.sh
set -o pipefail
_exit_error() {
message=$1
code=$2
echo "$message" >&2
exit $code
}
_exit_ok() {
@stevenringo
stevenringo / undent.rb
Created May 18, 2017 — forked from ashrithr/undent.rb
Ruby un-indent lines of here document
View undent.rb
class String
def undent
gsub(/^.{#{slice(/^ +/).length}}/, '')
end
end
#Usage:
test = <<-EOS.undent
testing unindent
..another line
@stevenringo
stevenringo / aws-keychain-sts.sh
Created Aug 24, 2016 — forked from lox/aws-keychain-sts.sh
A wrapper for @pda's aws-keychain that generates temporary credentials via STS.
View aws-keychain-sts.sh
#!/bin/bash
set -euo pipefail
: ${AWS_CREDENTIALS_FILE="$HOME/.aws/credentials"}
: ${STS_SESSION_DURATION=36000}
sts_keychain_get_session_token() {
echo generating temporary credentials via sts >&2
aws-keychain exec $1 \
View gist:697d9527e03f11753289e560033966cc
#!/bin/bash
usage()
{
cat <<EOF
Usage: $(basename $0) [options]
This shell script is a simple wrapper around the openssl binary. It uses
s_client to get certificate information from remote hosts, or x509 for local
certificate files. It can parse out some of the openssl output or just dump all
@stevenringo
stevenringo / nginx.conf
Created Mar 1, 2016 — forked from daveslutzkin/nginx.conf
Nginx conf for solid SSL/TLS
View nginx.conf
# Thin serving Rails.
upstream app_server {
server 127.0.0.1:3050 fail_timeout=0;
}
# SSL/TLS certificates - the key should be 4096 bit generated with: 'openssl genrsa -des3 -out server.key 4096'
ssl_certificate_key /var/app/deploy/www.thisisatest.com.key;
ssl_certificate /var/app/deploy/www.thisisatest.com.chained.crt;
# Ideally we'd have only TLSv1.2, but that compromises client support significantly
View Churchill on brevity
Memorandum by the Prime Minister.
To do our work, we all have to read a mass of papers. Nearly all of them are far too long. This wastes time, while energy has to he spent in looking for the essential points.
I ask my colleagues and their staffs to see to it that their Reports are shorter.
(i) The aim should be Reports which set out the main points in a series of short, crisp paragraphs.
(ii) If a Report relies on detailed analysis of some complicated factors, or on statistics, these should be set out in an Appendix.
(iii) Often the occasion is best met by submitting not a full-dress Report, but an Aide-memoire consisting of headings only, which can be expanded orally if needed.
(iv) Let us have an end of such phrases as these:
@stevenringo
stevenringo / gist:8c70bd148ac0d24bff66
Created Sep 15, 2014
Ansible double interpolation
View gist:8c70bd148ac0d24bff66
- name: create required directories
sudo_user: "{{ deploy_user }}"
file: path="{{ item }}" state=directory owner={{ deploy_user }} group={{ deploy_user }} mode=0755
with_items:
- "{{ git_repo_path }}"
- "{{ shared_path }}"
- "{{ archive_path }}"
- "{{ releases_path }}"
View ansible.yml
---
- name: Deploy new site release
user: deployer
hosts: all
tasks:
- name: Fetch repo updates
git: >
repo=git@github.com:my/repo.git
You can’t perform that action at this time.