Skip to content

Instantly share code, notes, and snippets.

@Yggdrasil
Yggdrasil / gist:163d63a11f0efbc6a13b
Created June 30, 2015 09:35
Fetch and format a list of Pingdom probe servers via bash-scripting
# It can be useful to pull the list of Pingdom probe servers and format it for various applications, such as ACLs or whitelists.
# We simply use the RSS-feed and some Bash-scripting.
# For example, an Apache access-list:
printf "# Pingdom servers at %s\nAllow from " "$(date -u +%F' '%T' '%Z)" ; \
wget -qO- https://my.pingdom.com/probes/feed \
| awk '/IP: / {print $2}' | awk -F';' '{print$1}' | sort -n \
| while read ip; do \
printf "%s " "$ip" ;
done | sed 's/ $//' ; echo

Keybase proof

I hereby claim:

  • I am yggdrasil on github.
  • I am yggdrasil (https://keybase.io/yggdrasil) on keybase.
  • I have a public key whose fingerprint is 8D8F A94C A1CB 4012 C38C AA36 12CC 0B4A DB8A F978

To claim this, I am signing this object:

#!/bin/bash
# Intial git svn clone:
# git svn clone --prefix=svn/ -A ~/.svn2git/authors -s https://svn.wxwidgets.org/svn/wx/wxWidgets wxWidgets
cd ~/svn-git-mirrors/wxWidgets;
if [ -f .sync-running-wxWidgets ]; then exit 1; fi;
touch .sync-running-wxWidgets
@Yggdrasil
Yggdrasil / gist:4051062
Created November 10, 2012 13:31
Puppet virtual users class
# Class: users
#
# This module manages users
#
# Parameters:
#
# Actions:
#
# Requires:
#
@Yggdrasil
Yggdrasil / swap.pp
Created October 19, 2012 14:53
Puppet class to manage a swapfile on a node
# Class: base::swap
#
# This class manages swapspace on a node.
#
# Parameters:
# - $ensure Allows creation or removal of swapspace and the corresponding file.
# - $swapfile Defaults to /mnt which is a fast ephemeral filesystem on EC2 instances.
# This keeps performance reasonable while avoiding I/O charges on EBS.
# - $swapfilesize Size of the swapfile in MB. Defaults to memory size, but see Requires.
#
@Yggdrasil
Yggdrasil / gist:3655448
Created September 6, 2012 11:58
Puppet: Run apt-get update before installing Package
exec { "apt-get update":
refreshonly => true,
schedule => daily,
}
Exec["apt-get update"] -> Package <| |>
location /hooks {
alias /srv/hooks/public;
passenger_enabled on;
}
VERSION="1.9.2"
PATCH="180"
DPKG_BUILD_ARCH="$(dpkg --print-architecture)"
set -e
DESTDIR="$(mktemp -d)"
debra create "$DESTDIR"
trap "debra destroy \"$DESTDIR\"" EXIT