Skip to content

Instantly share code, notes, and snippets.

@zircote
zircote / ec2.py
Last active May 15, 2018 06:48
fixed yo shit
#!/usr/bin/env python
'''
EC2 external inventory script
=================================
Generates inventory that Ansible can understand by making API request to
AWS EC2 using the Boto library.
NOTE: This script assumes Ansible is being executed where the environment
@zircote
zircote / aws_eventhandler.py
Last active August 29, 2015 14:02
Receive AWS/Notifications and fire an event into Salt Stack
from flask import Flask
from flask import request
import os
import logging
import json
log = logging.getLogger(__name__)
app = Flask(__name__)
AWS_CREDENTIALS = {
'access_key': None,
@zircote
zircote / elasticsearch.docker
Last active August 29, 2015 14:00
Experimental dockerfiles
#
# ElasticSearch Dockerfile
FROM centos:6.4
RUN yum install -q -y which java-1.7.0-openjdk java-1.7.0-openjdk-devel
RUN update-alternatives --set java /usr/lib/jvm/jre-1.7.0-openjdk.x86_64/bin/java
RUN yum install -y -q https://download.elasticsearch.org/elasticsearch/elasticsearch/elasticsearch-1.1.1.noarch.rpm
EXPOSE 9200 9300
@zircote
zircote / docker.sh
Last active August 29, 2015 14:00
My Docker Cheat Shit erm Sheet
#/bin/bash
# This is my collection of docker shit as I try to fit it all into my head.
# Feel free to add
### Runs the Registry Container
docker run -d -p 5000:5000 -v /etc/docker:/registry-conf -e DOCKER_REGISTRY_CONFIG=/registry-conf/config.yaml registry
### Removes Stopped Containers
docker rm -f $(docker ps -a -q)
### Removes untagger Containers
class PeriodicInterval(object):
"""
:see: http://en.wikipedia.org/wiki/Iso8601#Durations
"""
def __init__(self, second=None, minute=None, hour=None, day=None, week=None, month=None, year=None):
"""
:param second:
:param minute:
@zircote
zircote / ec2_facts.py
Created April 2, 2014 21:08
provides object instance of iam credentials
#!/usr/bin/python
# -*- coding: utf-8 -*-
# This file is part of Ansible
#
# Ansible is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
@zircote
zircote / ip2long.py
Last active August 29, 2015 13:57
ansible filters
# !/usr/bin/env python
"""
Example Usage:
---
- debug: msg="{{ ansible_eth0.ipv4.address | ip2long }}"
"""
from socket import inet_aton
from struct import unpack
@zircote
zircote / ct2ls.py
Last active June 23, 2016 01:41
A script to manage and import CloudTrail logs into logstash via redis
#!/usr/bin/env python
import boto
from boto.sqs.message import RawMessage
import tempfile
import json
import logging
import argparse
import gzip
import redis
@zircote
zircote / aws-cli.debug
Created March 12, 2014 23:07
aws fails to return instances when filtering on security group-id
$ aws ec2 describe-instances --filter file://filters/elasticsearch.json --debug
2014-03-12 18:01:59,468 - awscli.clidriver - DEBUG - CLI version: aws-cli/1.3.1 Python/2.7.6 Darwin/13.1.0, botocore version: 0.35.0
2014-03-12 18:01:59,468 - botocore.service - DEBUG - Creating service object for: ec2
2014-03-12 18:01:59,468 - botocore.base - DEBUG - Attempting to load: aws/ec2
2014-03-12 18:01:59,536 - botocore.base - DEBUG - Found data file: /usr/local/Cellar/python/2.7.6/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/botocore/data/aws/ec2.json
2014-03-12 18:01:59,536 - botocore.hooks - DEBUG - Event service-data-loaded.ec2: calling handler <function signature_overrides at 0x10bc81a28>
2014-03-12 18:01:59,536 - botocore.hooks - DEBUG - Event service-created: calling handler <function register_retries_for_service at 0x10bc81848>
2014-03-12 18:01:59,536 - botocore.handlers - DEBUG - Registering retry handlers for service: Service(ec2)
2014-03-12 18:01:59,536 - botocore.service - DEBUG - Crea
@zircote
zircote / init_ansible_role.sh
Last active January 8, 2020 04:54
bash function to create a boilerplate ansible role (I am lazy)
#!/bin/sh
function init_ansible_role {
if [[ ! -n $1 ]]; then
echo no init
return
fi
mkdir -p roles/${1}/{defaults,tasks,files,templates,vars,handlers,meta}
for i in defaults tasks vars handlers meta; do
if [[ ! -f roles/${1}/${i}/main.yaml ]]; then
echo creating file: roles/${1}/${i}/main.yaml