Skip to content

Instantly share code, notes, and snippets.

View seansummers's full-sized avatar
:octocat:
South Bend, IN

Sean Summers seansummers

:octocat:
South Bend, IN
View GitHub Profile
@seansummers
seansummers / 01_export_aws_managed_policies.py
Created June 5, 2018 21:23 — forked from gene1wood/aws_iam_managed_policies_2019-02-12.json
Script to export all AWS IAM managed policies
import boto3
import json
client = boto3.client('iam')
paginator = client.get_paginator('list_policies')
response_iterator = paginator.paginate(Scope='AWS')
managed_policies = []
for response in response_iterator:
for policy in response['Policies']:
"""Attempt to remove a VPC by removing the minimum resources required first.
Defaults to removing all default vpcs in all regions.
"""
import logging
import boto3
logging.basicConfig(level = logging.INFO)
@seansummers
seansummers / ec2.yml
Created March 29, 2018 17:40 — forked from ssummer3/ec2.yml
AWS LIBND
AWSTemplateFormatVersion: '2010-09-09'
Description: Template to create libnd EC2
Conditions:
HasNetworkInterfaceId: !Not [!Equals [!Ref NetworkInterfaceId, '']]
HasPrivateIpAddress: !Not [!Equals [!Ref PrivateIpAddress, '']]
Parameters:
AMI:
ConstraintDescription: must be an AMI available in the EC2 instance's region
Default: ami-6869aa05
Description: Base AMI
@seansummers
seansummers / create_and_attach_volume.yaml
Created March 29, 2018 17:40 — forked from ssummer3/create_and_attach_volume.yaml
AWS: Create and Attach a Volume to an EC2 Instance
AWSTemplateFormatVersion: '2010-09-09'
Description: Create a Volume from scratch and attach it to an instance.
Metadata:
AWS::CloudFormation::Interface:
@seansummers
seansummers / convert.json
Created March 29, 2018 17:39 — forked from ssummer3/convert.json
Contentful Stuffs
{
"universityarchives": "5561",
"reservesmicrotextandmediadesk": "5557",
"medievalinstitutelibrary": "5558",
"circulationservicedesk": "1483",
"engineeringlibrary": "5566",
"architecturelibrary": "5563",
"kelloggkroclibrary": "5567",
"mahaffeybusinesslibrary": "5564",
"chemistryphysicslibrary": "5565",
@seansummers
seansummers / codebuild.py
Created March 29, 2018 17:39 — forked from ssummer3/codebuild.py
Local CodeBuild
#! /usr/bin/env python
""" local codebuild implementation
Parses buildspec.yml files, and executes them locally, as per:
http://docs.aws.amazon.com/codebuild/latest/userguide/build-spec-ref.html#build-spec-ref-example
"""
from __future__ import print_function
import functools
import glob
import os
@seansummers
seansummers / json2yaml.py
Created December 18, 2017 19:09
YAML, JSON, etc...
#! /usr/bin/env python
from __future__ import print_function
import argparse
import contextlib
import functools
import json
import os
import sys
@seansummers
seansummers / codebuild.py
Created December 8, 2017 05:33
AWS Python
#! /usr/bin/env python
""" local codebuild implementation
Parses buildspec.yml files, and executes them locally, as per:
http://docs.aws.amazon.com/codebuild/latest/userguide/build-spec-ref.html#build-spec-ref-example
"""
from __future__ import print_function
import argparse
import contextlib
import functools
@seansummers
seansummers / newbase60.py
Last active December 4, 2017 21:11
Python implementation of Tantek's NewBase60
''' newbase60.py - Python implementation of Tantek's NewBase60
http://ttk.me/w/NewBase60
by Sean Summers <seansummers@gmail.com>
License: https://creativecommons.org/licenses/by/4.0/
'''
import functools
import itertools
import string
AMBIGUOUS_CHARACTERS = {
@seansummers
seansummers / instance_verifier.py
Last active May 23, 2017 12:27
EC2 instance verifier
"""
ssh_key=$(cut -f2 -d\ /etc/ssh/ssh_host_ed25519_key.pub)
document=$(curl -s http://169.254.169.254:/latest/dynamic/instance-identity/document |base64 -w 0)
signature=$(curl -s http://169.254.169.254:/latest/dynamic/instance-identity/signature |tr -d '\n')
curl -s http://169.254.169.254/latest/dynamic/instance-identity/signature |base64 -d |openssl rsautl -verify -inkey AWS.rsa -certin
"""
import json
from os import environ