Skip to content

Instantly share code, notes, and snippets.

View josh-padnick's full-sized avatar

Josh Padnick josh-padnick

View GitHub Profile
@josh-padnick
josh-padnick / get-latest-terraform.sh
Created March 28, 2016 21:50
Auto-update to latest version of Terraform
#!/bin/bash
LATEST_RELEASE=$(curl https://api.github.com/repos/hashicorp/terraform/releases/latest | jq --raw-output '.tag_name' | cut -c 2-)
if [[ ! -e ${LATEST_RELEASE} ]]; then
echo "Installing Terraform ${LATEST_RELEASE}..."
rm terraform-*
rm terraform
wget https://releases.hashicorp.com/terraform/${LATEST_RELEASE}/terraform_${LATEST_RELEASE}_linux_amd64.zip
unzip terraform_${LATEST_RELEASE}_linux_amd64.zip
rm terraform_${LATEST_RELEASE}_linux_amd64.zip
@josh-padnick
josh-padnick / go-test.sh
Created April 1, 2016 23:18
go test all but vendor directory
go test $(go list ./... | grep -v /vendor/)
@josh-padnick
josh-padnick / fish-agent.sh
Last active April 1, 2024 06:28
Run ssh-agent via fish shell
#!/bin/bash
#
# Convert ssh-agent output to fish shell
#
eval "$(ssh-agent)" >/dev/null
echo "set SSH_AUTH_SOCK \"$SSH_AUTH_SOCK\"; export SSH_AUTH_SOCK"
echo "set SSH_AGENT_PID \"$SSH_AGENT_PID\"; export SSH_AGENT_PID"
#!/bin/bash
#
# If there's a new Terraform releases available, delete the current Terraform install and download the new one.
# Must be run from within the directory where terraform binaries should reside
#
LATEST_RELEASE=$(curl https://api.github.com/repos/hashicorp/terraform/releases/latest | jq --raw-output '.tag_name' | cut -c 2-)
if [[ ! -e ${LATEST_RELEASE} ]]; then
echo "Installing Terraform ${LATEST_RELEASE}..."
rm terraform-*
@josh-padnick
josh-padnick / download.sh
Last active May 8, 2024 12:37
Download a private binary release file from GitHub in bash
#!/usr/bin/env bash
#
# This is an adaptation of code I wrote to download a private binary from GitHub. Such...pain.
# Why can't GitHub just offer a standardized URL you can download a release binary from and attach
# your Github Personal Access Token as a header?
#
# Since this code is an adaptation it hasn't been directly tested, but the code it was adapted from works
# and hopefully you can get the missing piece you're after by looking here.
#
@josh-padnick
josh-padnick / terraform_debug_log.txt
Created September 18, 2016 19:15
Terraform Debug Log
2016/09/18 12:14:29 [INFO] Terraform version: 0.7.3 0dd7c657d6d60d2e7392b66ae6f74fb84582cab9
2016/09/18 12:14:29 [INFO] CLI args: []string{"/opt/lib/terraform/terraform", "apply"}
2016/09/18 12:14:29 [DEBUG] Detected home directory from env var: /Users/josh
2016/09/18 12:14:29 [DEBUG] Detected home directory from env var: /Users/josh
2016/09/18 12:14:29 [DEBUG] Attempting to open CLI config file: /Users/josh/.terraformrc
2016/09/18 12:14:29 [DEBUG] File doesn't exist, but doesn't need to. Ignoring.
2016/09/18 12:14:29 [DEBUG] Detected home directory from env var: /Users/josh
2016/09/18 12:14:30 [WARN] Ignoring AWS metadata API endpoint at default location as it doesn't return any instance-id
2016/09/18 12:14:30 [DEBUG] DestroyEdgeInclude: Checking: data.template_file.s3_bucket_policy
2016/09/18 12:14:30 [DEBUG] DestroyEdgeInclude: Checking: aws_s3_bucket.webform
@josh-padnick
josh-padnick / gist.log
Created September 19, 2016 21:20
Terraform Debug Log -- Wrong AWS Account ID crash
2016/09/19 14:19:03 [INFO] Terraform version: 0.7.3 0dd7c657d6d60d2e7392b66ae6f74fb84582cab9
2016/09/19 14:19:03 [INFO] CLI args: []string{"/opt/lib/terraform/terraform", "apply"}
2016/09/19 14:19:03 [DEBUG] Detected home directory from env var: /Users/josh
2016/09/19 14:19:03 [DEBUG] Detected home directory from env var: /Users/josh
2016/09/19 14:19:03 [DEBUG] Attempting to open CLI config file: /Users/josh/.terraformrc
2016/09/19 14:19:03 [DEBUG] File doesn't exist, but doesn't need to. Ignoring.
2016/09/19 14:19:03 [DEBUG] Detected home directory from env var: /Users/josh
2016/09/19 14:19:03 [DEBUG] Checking resource noop: aws_iam_group.admin
2016/09/19 14:19:03 [DEBUG] No diff, not a noop
2016/09/19 14:19:03 [DEBUG] Checking variable noop: var.aws_region
@josh-padnick
josh-padnick / crash.log
Last active September 19, 2016 21:21
Terraform crash log from wrong AWS Account ID
2016/09/19 14:19:03 [INFO] Terraform version: 0.7.3 0dd7c657d6d60d2e7392b66ae6f74fb84582cab9
2016/09/19 14:19:03 [INFO] CLI args: []string{"/opt/lib/terraform/terraform", "apply"}
2016/09/19 14:19:03 [DEBUG] Detected home directory from env var: /Users/josh
2016/09/19 14:19:03 [DEBUG] Detected home directory from env var: /Users/josh
2016/09/19 14:19:03 [DEBUG] Attempting to open CLI config file: /Users/josh/.terraformrc
2016/09/19 14:19:03 [DEBUG] File doesn't exist, but doesn't need to. Ignoring.
2016/09/19 14:19:03 [DEBUG] Detected home directory from env var: /Users/josh
2016/09/19 14:19:03 [TRACE] Preserving existing state lineage "74da3ceb-07b6-42c7-bc7a-cd2f6919d606"
2016/09/19 14:19:03 [TRACE] Preserving existing state lineage "74da3ceb-07b6-42c7-bc7a-cd2f6919d606"
2016/09/19 14:19:03 [TRACE] Graph after step *terraform.ConfigTransformer:
@josh-padnick
josh-padnick / tf.log
Created September 28, 2016 22:13
Terraform Debug Log for S3 Bucket Issue
2016/09/28 15:12:25 [INFO] Terraform version: 0.7.4
2016/09/28 15:12:25 [INFO] CLI args: []string{"/usr/local/Cellar/terraform/0.7.4/bin/terraform", "apply"}
2016/09/28 15:12:25 [DEBUG] Detected home directory from env var: /Users/josh
2016/09/28 15:12:25 [DEBUG] Detected home directory from env var: /Users/josh
2016/09/28 15:12:25 [DEBUG] Attempting to open CLI config file: /Users/josh/.terraformrc
2016/09/28 15:12:25 [DEBUG] File doesn't exist, but doesn't need to. Ignoring.
2016/09/28 15:12:25 [DEBUG] Detected home directory from env var: /Users/josh
2016/09/28 15:12:25 [DEBUG] Checking resource noop: aws_s3_bucket.cloudtrail
2016/09/28 15:12:25 [DEBUG] No diff, not a noop
2016/09/28 15:12:25 [DEBUG] Starting graph walk: walkInput
@josh-padnick
josh-padnick / notes.txt
Last active December 15, 2016 10:58
sample-tf-module layout
SOLR MODULES EXAMPLE
- git repo: infrastructure-live
- dept1
- prod-account
- .terragrunt
- global
- iam-groups
- cloudtrail
- us-west-2
- prod