Skip to content

Instantly share code, notes, and snippets.

@jmcarp
jmcarp / controller-manager
Last active December 14, 2016 19:53
k8s-ebs-debug
------------ STARTING controller-manager_ctl at Wed Dec 14 18:38:00 UTC 2016 --------------
I1214 18:38:00.697691 5417 leaderelection.go:247] lock is held by 306e0ee4-b6a8-454b-b199-6c8547deb849 and has not yet expired
I1214 18:38:04.160237 5417 leaderelection.go:188] sucessfully acquired lease kube-system/kube-controller-manager
I1214 18:38:04.160557 5417 event.go:217] Event(api.ObjectReference{Kind:"Endpoints", Namespace:"kube-system", Name:"kube-controller-manager", UID:"72c92afa-c22c-11e6-ac5f-028961b0177d", APIVersion:"v1", ResourceVersion:"5820764", FieldPath:""}): type: 'Normal' reason: 'LeaderElection' 7ec92627-d913-44ad-b3f7-3ea5c1fb9b65 became leader
I1214 18:38:04.169568 5417 aws.go:746] Building AWS cloudprovider
I1214 18:38:04.169636 5417 aws.go:700] Zone not specified in configuration file; querying AWS metadata service
I1214 18:38:04.171050 5417 replication_controller.go:219] Starting RC Manager
I1214 18:38:04.284034 5417 replication_controller.go:653] Waiting for pods cont
@jmcarp
jmcarp / deployer-account-broker.go
Created October 28, 2016 03:11
deployer account broker
package main
import (
"context"
"errors"
"fmt"
"code.cloudfoundry.org/lager"
"github.com/cloudfoundry-community/go-cfclient"
"github.com/pivotal-cf/brokerapi"
@jmcarp
jmcarp / alerts.clj
Created October 27, 2016 01:08
new adventures in stream processing
;; Goal: Page if the firehose stops sending to riemann, and close pages if it resumes
;; Replace all firehose events with synthetic heartbeat events and index, then merge with existing stream and listen for expiration
;; h/t @sharms
(where (service #"^cf.*")
(smap (fn [ev] (if (= (:state ev) nil) (event {:service "cf.nozzle.heartbeat" :host "internal" :metric 1 :state "ok" :ttl 30}) ev)) index
(where (service "cf.nozzle.heartbeat")
(changed-state {:init "ok"}
(where (state "ok") (:resolve pd)
(else (where (state "expired") (:trigger pd))))))))
meta:
name: (( param "specify name" ))
aws:
bucket: (( param "specify bucket name" ))
access_key_id: (( param "specify access key" ))
secret_access_key: (( param "specify secret key" ))
region: (( param "specify region" ))
tasks:
url: (( param "specify tasks url" ))
branch: (( param "specify tasks branch" ))
@jmcarp
jmcarp / load.py
Created September 9, 2016 04:32
email-load-test
import os
import re
import time
import uuid
import base64
import httplib2
from apiclient import discovery
import oauth2client
from oauth2client import client
@jmcarp
jmcarp / login.py
Created September 8, 2016 19:30
simple-load-test
import os
import faker
import locust
import pyquery
fake = faker.Faker()
username, password = os.getenv('AUTH_USER'), os.getenv('AUTH_PASS')
auth = (username, password) if username and password else ()
@jmcarp
jmcarp / extract.py
Created September 2, 2016 23:18
concourse extract
#!/usr/bin/env python
# encoding: utf-8
import re
import sys
import yaml
parameter = re.compile(r'{{(.+)}}')
def extract(templated, complete):
if isinstance(templated, list):
@jmcarp
jmcarp / jump.sh
Created July 15, 2016 01:22
jumpbox
#!/usr/bin/expect
set timeout 30
set target [lindex $argv 0];
set environment [lindex $argv 1];
spawn ./trigger.sh $target $environment
expect "choose a container"
set lines [split $expect_out(buffer) \n]
#!/bin/bash
set -e -x
TODAY=$(date +%Y.%m.%d)
YESTERDAY=$(date -d "1 day ago" +%Y.%m.%d)
TTL=${TTL:-600}
JQ_PATH=${JQ_PATH:-jq}
INTERVAL=${INTERVAL:-5m}
@jmcarp
jmcarp / travis.js
Last active November 22, 2015 22:54
Store all travis builds for a given repo in mongo
/* global console */
var urijs = require('urijs');
var Promise = require('bluebird');
var request = Promise.promisifyAll(require('request'));
var mongodb = Promise.promisifyAll(require('mongodb'));
var baseUrl = 'https://api.travis-ci.org';
var client = mongodb.MongoClient.connect('mongodb://localhost:27017/dashboard');