Category:
Web
GitHub API 経由でリポジトリを一気に Watch したかったので、シェルスクリプト + curl コマンドで試してみました。Basic 認証 + JSON を投げつけるだけでサクッと使えるのがエンジニアに優しくて良い感じですね。API のリファレンス も分かりやすいです。
上記スクリプトは複数のリポジトリを同時に subscribe しているので複雑になっていますが、単に
#!/bin/bash -ue
GH_USER="kmaehashi"
URLS=""
while read REPO; do URLS="${URLS} https://api.github.com/repos/${REPO}/subscription"; done << '_EOF_'
LyricsMaster/macoslib
msgpack/msgpack-rpc
# ここに subscribe したいリポジトリを列挙する
_EOF_
curl --request PUT --data '{"subscribed": "true"}' --user "${GH_USER}" ${URLS}
上記スクリプトは複数のリポジトリを同時に subscribe しているので複雑になっていますが、単に
curl --request PUT --data '{"subscribed": "true"}' --user ${GitHub のユーザ名} ${API の URL}とすれば OK (パスワードはコマンドラインで入力)。API の URL は「https://api.github.com/repos/ユーザ/リポジトリ/subscription」の形式です。
Comments