Skip to content

Instantly share code, notes, and snippets.

View andrekeller's full-sized avatar

André Keller andrekeller

  • VSHN AG
  • Uster, Zürich, Switzerland
View GitHub Profile
@andrekeller
andrekeller / gist:9382124e5132b97ce253
Created January 17, 2015 16:15
hiera-eyaml build notes
sudo apt-get install git-buildpackage gem2deb
export DEBFULLNAME="André Keller"
export DEBEMAIL="ak@0x2a.io"
git config --global user.name "Andre Keller"
git config --global user.email "ak@0x2a.io"
gem fetch hiera-eyaml
gem2deb hiera-eyaml-*.gem
#!/bin/bash
# Checks whether the last puppet run was recently and didn't fail
maxtime=90
summary="/var/lib/puppet/state/last_run_summary.yaml"
report="/var/lib/puppet/state/last_run_report.yaml"
if [ ! -f ${summary} ] || [ ! -f ${report} ] ; then
echo "UNKNOWN: puppet does not seem to be installed"
openssl req -subj '/CN=*.example.org/C=CH' -new -sha256 -newkey rsa:4096 -days 3650 -nodes -x509 -keyout /etc/ssl/private/example.org.pem -out /etc/ssl/certs/example.org.pem

Keybase proof

I hereby claim:

  • I am andrekeller on github.
  • I am 0x2a (https://keybase.io/0x2a) on keybase.
  • I have a public key whose fingerprint is E579 1E7B E720 71FF 9A16 8FD8 9911 057F 2351 B9E3

To claim this, I am signing this object:

class comrack::profiles::backup::client (
$server = '',
$additional_includes = [],
$cname = $::fqdn,
$configuration = {},
$dedup_group = 'global',
$enable = true,
$encryption_password = undef,
$manage_monitoring = true,
) {
@andrekeller
andrekeller / currency.py
Created January 1, 2018 20:00
django-currency-filter
from django import template
from django.utils.translation import get_language, to_locale
import locale
locale.setlocale(locale.LC_ALL, locale="{}.utf8".format(to_locale(get_language())))
register = template.Library()
@register.filter
def currency(value):

testcase1

freshly deployed project, 2 frontend, 2 backend pods running:

query prefixed URL: should return 404

for i in `seq 1 1000`; do curl -s -I https://dev.viafier.com/de-ch/inventar/rollmaterial/streckenloks/ge-6-6 | grep -E '^(HTTP/1\.1 |X-Viafier-)' | sed -e 'N;N;s/\r\n/|/g'; done | sort -t\| -k1 | uniq -c
    237 HTTP/1.1 404 Not Found|X-Viafier-Backend: viafier-dev-105-5lb5t|X-Viafier-Frontend: viafier-proxy-64-7hd5v
    249 HTTP/1.1 404 Not Found|X-Viafier-Backend: viafier-dev-105-5lb5t|X-Viafier-Frontend: viafier-proxy-64-fxbk4
    264 HTTP/1.1 404 Not Found|X-Viafier-Backend: viafier-dev-105-d9hgc|X-Viafier-Frontend: viafier-proxy-64-7hd5v
    250 HTTP/1.1 404 Not Found|X-Viafier-Backend: viafier-dev-105-d9hgc|X-Viafier-Frontend: viafier-proxy-64-fxbk4
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDR8PUeWJj21hpBzA3+xOJYsNMm/YtqD6ggVE4G/jJb3M4vT9R4FJudpP1CVisSaav3zH2zrU9cgJfSGmoT2GPJ1r43LGbUBDyGNsiNYeCE7iyXjp4N3cP92Vm2M5jq+jjnhXaLEtb8RE8O/Zn/uqeweUxE3VUilAFFWrAA6QjDiN7RxDitWZXD1lu4EuwJr9E8G0NIy+T7BVX43/AbfwzhCA1/M4G2uqjy4VnFYpVNZxoRiE7Y1EFxRyD0nPb/aRNmMBT52BnRhoIQb3PvpB5i1QiDzNvCFjEvkmSwfHuAOwJkR/i+oqGC82Xz44tgI0krAZd/PGqrSRXq/BlcIchhlv86Pz2N9mXi+dAOmoAkaoAo/JcCKDYoHFAxnZFFaWNH2F9BHELUKZR05ydmNTuj3qXt1devxBk6pB5h3PpTOA12aVr+APCUdO6ZSPnu/HkYRXNjDNUxSNpvXCx4TAtbtASKFPip4ki80TTI2bNP2E2AVb8bbP5NEahjsZAGGngdT1qbAal7p/+jUANa6n3COBHTemNn+JWvCulm5yorI6bwyMbZXC4+jJwzNl70yqVzObzQ520tqC0zgIYcXD6zYQ7Xamb3rGhYvydtGkw/nRceBFczl18vOoC2QucBThpSkuBM7EPnQTpRz69R4gFW7wTjNMf0aWEp7X/S075Pcw== .ssh/identityRsa2018
Section "InputClass"
Identifier "Trackpoint Wheel Emulation"
MatchProduct "TPPS/2 IBM TrackPoint|DualPoint Stick|Synaptics Inc. Composite TouchPad / TrackPoint|ThinkPad USB Keyboard with TrackPoint|USB Trackpoint pointing device|Composite TouchPad / TrackPoint"
MatchDevicePath "/dev/input/event*"
Option "EmulateWheel" "true"
Option "EmulateWheelButton" "2"
Option "Emulate3Buttons" "false"
Option "XAxisMapping" "6 7"
Option "YAxisMapping" "4 5"
EndSection
from collections import defaultdict
from dataclasses import dataclass, field
from pprint import pprint
from typing import Any, Dict, Optional, Sequence
HOSTS = {
"host123.example.org": {
"enc": {
"location": "zrh",