Skip to content

Instantly share code, notes, and snippets.

@andywirv
andywirv / output.tf
Created November 3, 2017 16:16
Multi-line Output for Terraform
output "SSH Config" {
value = <<SSHCONFIG
### START Auto-gen SSH Config for ${random_pet.cluster_id.id} ###
Host ${random_pet.cluster_id.id}-bastion
User core
Hostname ${aws_instance.bastion.public_ip}
IdentityFile ~/.ssh/${random_pet.cluster_id.id}.key
Host ${random_pet.cluster_id.id}-agent
@andywirv
andywirv / log
Last active April 16, 2019 21:23
Packer early SSH issue
packer build template.json
2016/12/01 14:55:23 [INFO] Packer version: 0.12.0
2016/12/01 14:55:23 Packer Target OS/Arch: darwin amd64
2016/12/01 14:55:23 Built with Go Version: go1.7.3
2016/12/01 14:55:23 Detected home directory from env var: /Users/user
2016/12/01 14:55:23 Using internal plugin for parallels-iso
2016/12/01 14:55:23 Using internal plugin for vmware-vmx
2016/12/01 14:55:23 Using internal plugin for googlecompute
2016/12/01 14:55:23 Using internal plugin for qemu
2016/12/01 14:55:23 Using internal plugin for amazon-chroot
@andywirv
andywirv / gist:f312d561c9702522f6d4ede1fe2750bd
Created November 22, 2016 19:58
Update Lambda function configuration, specifically the environment variables. AWS Cli version aws-cli/1.11.20
#quotes on json, single around entire object and double on each property
aws lambda update-function-configuration --function-name=[lambda function name] --environment '{"Variables":{"abc":"124"}}'
@andywirv
andywirv / rollme.scpt
Last active April 6, 2018 14:55
Spotify Rick Roll
on ApplicationIsRunning(appName)
tell application "System Events" to set appNameIsRunning to exists (processes where name is appName)
return appNameIsRunning
end ApplicationIsRunning
repeat
if ApplicationIsRunning("Spotify") then
tell application "Spotify"
try
if player state is playing and player position is greater than 30 and track is not "spotify:track:4uLU6hMCjMI75M1A2tKUQC" then
@andywirv
andywirv / zk.sh
Last active January 29, 2018 14:06
Run zk cli on DC/OS instance
export JAVA_HOME=/opt/mesosphere/
cd /opt/mesosphere/bin/
./zkCli.sh -server leader.mesos:2181
@andywirv
andywirv / akamai.tf
Last active January 25, 2018 13:55
Add an AWS Security group for Akamai Siteshield
locals {
"akamai_siteshield_ranges" = [
"11.22.33.41/24",
"11.22.33.42/24",
"11.22.33.45/24"
]
}
resource "aws_security_group" "akamai_siteshield_ranges" {
name = "aws-europe-s1486.akamaiedge.ne"
@andywirv
andywirv / leaders.sh
Created January 12, 2018 11:18
Consul leaders
fss_sandbox=consul.sandbox.fss
fss_production=consul.production.fss
apps=consul-apps.hashicorp
url=domain/v1/operator/raft/configuration?stale=true
declare -a consuls=($fss_sandbox $fss_production $apps)
for consul in "${consuls[@]}"; do
printf "%s Leader is: " "$consul";
curl -s "http://$consul.$url\\n" |jq '.Servers[] | select(.Leader==true) | .Address'
@andywirv
andywirv / SSH_config
Created December 11, 2017 15:41
SSH Tunnel via multiple hosts making use of ~/.ssh/config
Host tunnel
Hostname [host_with_access]
ProxyJump [bastion_host]
LocalForward [local_port] [remote_host]:[remote_port]
#Start tunnel with ssh -N tunnel
@andywirv
andywirv / elb_IP-query.sh
Created August 7, 2017 09:27
Query internal IP(s) of AWS ELB
andyirvine$ aws ec2 describe-network-interfaces --filters "Name=description,Values=[ELB Interface description]" |jq '.NetworkInterfaces[] .PrivateIpAddress'
@andywirv
andywirv / gist:bb66dc7e2c03749936b24e8383a5aa1d
Created June 1, 2017 09:10
Forward port 443 to port 8080 on localhost. Workaround for Virtualbox NAT port forwarding of ports <1024
# N.B does not persist across reboots
echo "
rdr pass inet proto tcp from any to any port 443 -> 127.0.0.1 port 8080
" | sudo pfctl -ef -