I hereby claim:
- I am tserong on github.
- I am tserong (https://keybase.io/tserong) on keybase.
- I have a public key whose fingerprint is 9409 2010 12EC F0E3 F918 B284 DB7E 03BB B43C 2BA9
To claim this, I am signing this object:
I hereby claim:
To claim this, I am signing this object:
#!/bin/sh | |
[ -n "$(crm_mon -1 -n 2>/dev/null | sed -ne '/^Failed actions:/ q; /^Node '$(crm_node -n)':/,/^Node/ { /^Node/ d; p }')" ] \ | |
&& echo 'this node is hosting resources' \ | |
|| echo 'this node is slacking off, doing nothing' |
#!/usr/bin/env ruby | |
# | |
# Go to http://vtr.aec.gov.au/SenateDownloadsMenu-17496-csv.htm and get | |
# | |
# * First Preferences by Division by Vote Type | |
# http://vtr.aec.gov.au/Downloads/SenateFirstPrefsByDivisionByVoteTypeDownload-17496.csv | |
# | |
# * Votes by Division | |
# http://vtr.aec.gov.au/Downloads/SenateVotesCountedByDivisionDownload-17496.csv | |
# |
#!/bin/bash | |
# | |
# Polls the ZCell BMS REST API once per second and prints the | |
# voltage, bus voltage and warning indicator status if they've | |
# changed since the last poll. Runs indefinitely. | |
# Requires `curl` and `jq`. | |
# | |
# Note: this only looks at the first battery in the system | |
# (".list[0]" in the `jq` invocation). | |
# |
#!/bin/bash | |
# | |
# Polls the ZCell BMS REST API once per second and prints the | |
# state of the Charge, Discharge and Energy Extrator (Strip) | |
# contactors if they've changed since the last poll. Will | |
# run forever, or until all three contactors are open at the | |
# same time, whichever comes first. | |
# Requires `curl` and `jq`. | |
# | |
# Note: this only looks at the first battery in the system |
#!/bin/bash | |
# | |
# Polls the ZCell BMS REST API once per minute and prints the | |
# current state of charge. Runs indefinitely. | |
# Requires `curl` and `jq`. | |
# | |
# Note: this only looks at the first battery in the system | |
# (".list[0]" in the `jq` invocation). | |
# |
#!/usr/bin/env python3 | |
# | |
# Set scheduled charges on a single ZCell, to generally keep the | |
# battery full except for peak electricity usage times, and maintenance | |
# cycle days. Peak electricity usage times are 07:00-10:00 and | |
# 16:00-21:00 per Aurora Energy in Tasmania. This will need adjusting | |
# by one hour if used during daylight savings time. | |
# | |
# This script is designed to be run on the GX from cron at 07:00 each | |
# day (just as peak electricity starts), because that makes the scheduled |
#!/bin/sh | |
if ! grep -q 'sched\.py' /etc/crontab; then | |
mount | grep -q 'on / .*ro' | |
is_ro=$? | |
if [ $is_ro -eq 0 ]; then | |
mount -o remount,rw / | |
fi | |
cat >> /etc/crontab <<EOF | |
# Set scheduled charges based on zcell maintenance cycle |
#!/usr/bin/env python3 | |
# | |
# This script sets the osdspec_affinity (i.e. drive group) for the given OSDs | |
# on the host on which it is executed. | |
# | |
# For example, to set osdspec_affinity=foo for OSDs 1, 2 and 3, you'd run: | |
# | |
# ./set-osdspec-affinity.py foo 1 2 3 | |
# | |
# For each OSD specified, it will: |