Skip to content

Instantly share code, notes, and snippets.

View juliedavila's full-sized avatar
🎃
Content

Julie Davila juliedavila

🎃
Content
View GitHub Profile
@juliedavila
juliedavila / tier_rtV2.py
Last active August 29, 2015 14:24
Tier Route Tables for Ansible 2+
from __future__ import (absolute_import, division, print_function)
__metaclass__ = type
import boto
import boto.vpc
import boto.ec2
from ansible.plugins.lookup import LookupBase
from ansible.errors import AnsibleError
from ansible.module_utils.ec2 import *
@juliedavila
juliedavila / tier_subnetsV1.py
Last active August 29, 2015 14:24
Subnets in a tier
## Usage: lookup('tier_subnetsV1', 'vpc_id=vpc-2344 tier=dmz1')
import boto
import boto.vpc
import boto.ec2
from ansible import utils
class LookupModule(object):
def __init__(self, basedir=None, **kwargs):
self.basedir = basedir
@juliedavila
juliedavila / tier_subnetsV2.py
Last active August 29, 2015 14:24
Get all the subnets in a particular vpc tier
## Usage "{{ lookup('tier_subnets', 'vpc_id=vpc-7fb0841a tier=dmz1') }}"
from __future__ import (absolute_import, division, print_function)
__metaclass__ = type
import boto
import boto.vpc
import boto.ec2
from ansible.plugins.lookup import LookupBase
from ansible.errors import AnsibleError
@juliedavila
juliedavila / template_url.py
Created July 8, 2015 13:57
Filter to be able to specify a url for the ansible template module for Ansible 2.*
from __future__ import (absolute_import, division, print_function)
__metaclass__ = type
import urllib2
import tempfile
import os
from ansible.errors import AnsibleError
from ansible.plugins.lookup import LookupBase
from ansible.module_utils.urls import open_url, ConnectionError, SSLValidationError
@juliedavila
juliedavila / var_leak.yml
Created June 29, 2015 18:36
Variable leakage example
---
- hosts: all
gather_facts: no
connection: local
vars:
varname: "from_vars"
rolevar: "from_vars"
pre_tasks:
@juliedavila
juliedavila / bms.py
Last active August 29, 2015 14:22
BMS Module
#!/usr/bin/python
import os
from stat import *
def exec_bms_action(module, bms_home, bms_options, overrides, bms_module, command, command_opts):
cmd_str = '%s bms' % bms_home
cmd = [cmd_str]
if bms_options:
@juliedavila
juliedavila / sample.j2
Created May 8, 2015 15:47
simply jinja
{{ lookup_test }}
@juliedavila
juliedavila / facts.py
Created March 22, 2015 17:35
facts sample
def get_memory_facts(self):
# Here we declare a new list
memstats = {}
if not os.access("/proc/meminfo", os.R_OK):
return
for line in open("/proc/meminfo").readlines():
data = line.split(":", 1)
key = data[0]
@juliedavila
juliedavila / websockets.py
Created March 22, 2015 17:16
websockets file for tutorial
# Copyright (c) 2014, Matt Makai
# All rights reserved.
# Full License can be read here: http://bit.ly/1qBgqzn
from flask.ext.socketio import emit
from . import socketio
@socketio.on('connect', namespace='/presentation')
def test_connect():
@juliedavila
juliedavila / views.py
Created March 22, 2015 17:05
views for interactive prez blog
# Copyright (c) 2014, Matt Makai
# All rights reserved.
# Full License can be read here: http://bit.ly/1qBgqzn
import cgi
from flask import render_template, abort, request
from jinja2 import TemplateNotFound
from twilio import twiml
from twilio.rest import TwilioRestClient