tumblr api つかってみる

まずは register application

OAuth Consumer Key を入手

curl でいろいろしてみる

ブログ情報

curl 'http://api.tumblr.com/v2/blog/to.tumblr.com/info?api_key={OAuth_Consumer_Key}&base-hostname=to.tumblr.com'; echo
{"meta":{"status":200,"msg":"OK"},"response":{"blog":{"title":"to","posts":58771,"name":"to","url":"http:\/\/to.tumblr.com\/","updated":1321989209,"description":"","ask":false}}}

postを取得

curl 'http://api.tumblr.com/v2/blog/to.tumblr.com/posts?api_key={OAuth_Consumer_Key}'

みながらやっつけで kvm host 構築してみてる…

いつのまにか default route 消えてたので追加

[root@hostname network-scripts]# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.0.0     0.0.0.0         255.255.255.0   U     0      0        0 br0
169.254.0.0     0.0.0.0         255.255.0.0     U     1007   0        0 br0
[root@hostname network-scripts]# route add default gw 192.168.0.1
[root@hostname network-scripts]# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.0.0     0.0.0.0         255.255.255.0   U     0      0        0 br0
169.254.0.0     0.0.0.0         255.255.0.0     U     1007   0        0 br0
0.0.0.0         192.168.0.1     0.0.0.0         UG    0      0        0 br0

sinatra init script

sinatraの起動スクリプトかいてみた。といっても大部分は既存の起動スクリプトを見ながら書いてるけど…。
サイトごとに適宜書き換えて、別のサービスとしてchkconfigに追加したりしてる。

しかるべき箇所を書き換えればsinatra以外にも使える……はず。

#!/bin/bash
#
# chkconfig: - 85 15
# description: sinatra-y17-mydns-jp
#

PROG_NAME="sinatra-y17-mydns-jp"
PID_FILE="/tmp/${PROG_NAME}.pid"

LOG_FILE="/opt/domains/y17.mydns.jp/logs/y17-sinatra_log-$(date +%Y%m%d-%H%M%S)"
INIT_COMMAND="/usr/bin/ruby /usr/bin/shotgun -o 127.0.0.1 -p 3080 /opt/domains/y17.mydns.jp/sinatra/y17.rb"

start() {
	if test -e $PID_FILE; then
		PID="$(cat ${PID_FILE})"
		echo "[ERROR] ${PROG_NAME} is already running (pid $PID)"
		exit 1
	fi

	echo -n "Starting ${PROG_NAME} .. "
	nohup ${INIT_COMMAND} > ${LOG_FILE} 2>&1 &
#	PID=$$
	PID=$(ps -o pid,command ax | grep -e "${INIT_COMMAND}" | grep -v grep | head | awk '{print $1}')
	if test $? -eq 0; then
		echo "[  OK  ]"
		echo $PID > "${PID_FILE}"
	else 
		echo -n "[FAILED]"
		exit 1
	fi
}

stop() {
	if test -e ${PID_FILE}; then
		PID="$(cat ${PID_FILE})"
	else
		echo "[ERROR] ${PROG_NAME} is already stopped."	
		exit 1
	fi

	echo -n "Stopping ${PROG_NAME} .. "
	kill ${PID}
	if test $? -eq 0; then
		echo "[  OK  ]"
		rm ${PID_FILE}
	else 
		echo "[FAILED]"
		exit 1
	fi
}

case "$1" in
  start)
  start
  ;;
  stop)
  stop
  ;;
  restart)
  stop
  start
  ;;
  *)
  echo $"Usage: $0 {start|stop|restart}"
  exit 1
esac

日記

他人にほとんど周知していないドメインに乗っているWordPressでちまちま思ったこと書いてるけど、blog自体は公開で、たまにエントリ単位で非公開にしてたりするんだけど、あとで振り返るときに結構めんどう……。なのでblog自体非公開にしたほうがやりやすいよな、と今更思ったりした。しかしたまに見てもらいたいものもあったりするし、などとわがままをいうのである。