Skip to content

Instantly share code, notes, and snippets.

View afirth's full-sized avatar

Alastair Firth afirth

View GitHub Profile
# If you come from bash you might have to change your $PATH.
# export PATH=$HOME/bin:/usr/local/bin:$PATH
# Path to your oh-my-zsh installation.
export ZSH="$HOME/.oh-my-zsh"
# Golang
which go > /dev/null && \
export GOPATH=$(go env GOPATH) && \
export PATH=$GOPATH/bin:$PATH
@afirth
afirth / helm.sh
Created January 26, 2019 16:58
tillerless helm
#!/usr/bin/env bash
# this starts a local tiller service with secret storage driver, then runs helm commands against it
# setting $TILLER_NAMESPACE is strongly recommended
# usage: ./helm.sh <valid helm args>
# afirth 2018
set -eu -o pipefail
# default to use if TILLER_NAMESPACE is not set
# kube-system (the default) is not a great idea
@afirth
afirth / github_subpath_download.sh
Created January 26, 2019 14:31
save a subpath of a github repository
#!/usr/bin/env bash
set -eux -o pipefail
tarflags=--strip-components=2
# --wildcards required on linux but not osx
if [ "$(uname)" == "Linux" ]; then
tarflags+=--wildcards
fi
@afirth
afirth / latest_github_released_tag.sh
Created January 26, 2019 14:28
get latest github release tag
#!/usr/bin/env bash
set -eux -o pipefail
helmrelease=$(curl -sL "https://api.github.com/repos/helm/helm/releases/latest" | awk -F '"' '/tag_name/{print $4}')
echo using latest helm $helmrelease
@afirth
afirth / gcblogs.sh
Created December 22, 2018 17:44
Tail logs of latest build from google cloud builder
gcloud beta builds list --limit=1 --format=value\(extract\(id\)\) | xargs gcloud beta builds log --stream
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
brew install ack && \
brew install bash && \
brew install bash-completion && \
brew install docker && \
brew install fzf && \
brew install git && \
brew install gnutls && \
brew install graphviz && \
brew install jq && \
@afirth
afirth / git-matching-branches.pl
Last active August 2, 2018 03:01
looks for git branches whose head is the same ref as HEAD
#!/usr/bin/env perl
##### git-matching-branches #####
# aws codebuild checks out webhook payloads in a detached head state
# This script looks for branches whose head is the same ref as HEAD
# It prints the short branch names, newline separated, and should play nicely with xargs
# e.g. ./git-matching-branches | xargs -n1 -I '{}' cp tarball_version.tar.gz tarball_version-'{}'.tar.gz
#
# N.B. Branches whose name does not satisfy semver 2.0.0 item 9 will cause this script to exit abnormally
# and probably break the build [0-9A-Za-Z.-]
### Keybase proof
I hereby claim:
* I am afirth on github.
* I am alfirth (https://keybase.io/alfirth) on keybase.
* I have a public key whose fingerprint is 0BA0 4ED7 9617 5CEB 0EBD 37A5 8865 923E 7B56 94C7
To claim this, I am signing this object:
@afirth
afirth / gist:aa53ade4f7d61ac5659b667bd4754bdb
Created April 8, 2016 01:21
find merge commit containing a commit, for each local git branch
for i in $( git branch | perl -pe's/\*/ /' ); do echo $i $( git find-merge e299e $i ); done
#uses find-merge alias
#!/bin/bash
# From http://spargelkohl.livejournal.com/65263.html - 2016-04-08 -AF]
# This script creates a RAMFS disk with an HFS+ partition on it and
# mounts it so it is visible in the OS X filesystem (including the
# Finder).
PATH=/sbin:/usr/sbin:/bin:/usr/bin:/opt/local/bin:$HOME/bin
umask 077