Skip to content

Instantly share code, notes, and snippets.

@lmakarov
lmakarov / lambda-basic-auth.js
Created August 30, 2017 19:15
Basic HTTP Authentication for CloudFront with Lambda@Edge
'use strict';
exports.handler = (event, context, callback) => {
// Get request and request headers
const request = event.Records[0].cf.request;
const headers = request.headers;
// Configure authentication
const authUser = 'user';
const authPass = 'pass';
@buth
buth / chef-server-reindex.sh
Created February 11, 2014 16:32
Rebuild the Chef-SOLR index from the database without dropping existing data.
sudo PATH=/opt/chef-server/embedded/bin:$PATH /opt/chef-server/embedded/service/erchef/bin/reindex-chef-server reindex
@buth
buth / docker-registry.yaml
Created July 10, 2014 20:53
Docker Registry on CoreOS with Cloud-Config
#cloud-config
users:
- name: nytint
coreos-ssh-import-url: https://s3.amazonaws.com/newsdev-ops/keys.json
groups:
- docker
write_files:
- path: /etc/nginx/nginx.conf
@buth
buth / cloud-config.yml
Last active May 2, 2024 05:39
HTTPS etcd with cloud-config
#cloud-config
coreos:
update:
reboot-strategy: etcd-lock
etcd:
discovery: https://discovery.etcd.io/<TOKEN>
addr: $private_ipv4:4001
peer-addr: $private_ipv4:7001
key-file: /etc/etcd-ssl/key.pem
@buth
buth / gist:65708a902828a464ab54
Created November 13, 2014 18:03
Cloud-init script for setting up Elastic Search on Ubuntu
#!/bin/bash
echo "127.0.0.1 `hostname`" >> /etc/hosts
apt-get update
apt-get -y upgrade
apt-get -y install openjdk-7-jre
cd /tmp
wget https://download.elasticsearch.org/elasticsearch/elasticsearch/elasticsearch-1.1.0.deb
dpkg -i elasticsearch-1.1.0.deb
echo 'ES_HEAP_SIZE=6g' >> /etc/default/elasticsearch
echo 'cluster.name: awesomecluster
@buth
buth / gist:9fcef2c106e3cc630c16
Created February 12, 2015 21:46
MongoDB authenticated Replica Set via environment variables
[Unit]
Description=mongodb
Requires=docker.service
After=docker.service
[Service]
Restart=always
RestartSec=5s
TimeoutStartSec=0
KillMode=none
@buth
buth / cloud-config.yml
Created July 15, 2015 18:17
Autmoatically format and mount a drive with CoreOS Cloud-Config
#cloud-config
coreos:
units:
- name: format-drive.service
command: start
content: |
[Unit]
Description=Formats the drive
After=dev-xvdc.device
@buth
buth / Dockerfile
Created September 2, 2015 21:13
Install PhantomJS
ENV PHANTOMJS_VERSION=1.9.8
RUN \
cd /usr/local && \
curl -fLO https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-$PHANTOMJS_VERSION-linux-x86_64.tar.bz2 && \
tar --strip-components 1 -xjf phantomjs-$PHANTOMJS_VERSION-linux-x86_64.tar.bz2 phantomjs-$PHANTOMJS_VERSION-linux-x86_64/bin/phantomjs && \
rm phantomjs-$PHANTOMJS_VERSION-linux-x86_64.tar.bz2
@buth
buth / dm.bash
Created October 28, 2015 18:42
Bash function for setting the Docker machine environment.
dm() {
status=$(docker-machine status dev)
if [ $? -ne 0 ]; then
echo "Got an error trying to get VM status"
return
fi
case $status in
Stopped)
@buth
buth / iterator.go
Last active May 2, 2024 05:38
Generic Iterator interface and MongoDB implementation
package iterator
type Iterator interface {
Next() (value interface{}, done bool, err error)
}