chef-soloの勉強をしつつ、色々触っている。
いくつかCOOKBOOKを作成したのですが、新しい環境で使って、その場で手を入れようとすると、毎回環境ごとに公開鍵を設定する必要がある。
そこで、最初に考えたのが、秘密鍵の共有。→だめだろと即却下。
色々調べて、GitHubのAPIを使うことにした。
GitHub APIの日本語のドキュメントって少ない。最初どうやればいいのかわからなくてハマりました。
以下が今回利用したUser Public Keys APIの詳細
http://developer.github.com/v3/users/keys/
他のGitHub API
http://developer.github.com/
できたてホヤホヤな環境で使うため、shellで作ってみた。
やったことはcurlでGitHub APIを叩く!だけ。
access_tokenの取得
curl -u "username:password" -d "{"scopes":["user"]}" https://api.github.com/authorizationsSSHの設定をする
curl -H "Authorization: token 上記で得たトークン" https://api.github.com/user/keys -d "{ "title":"SSH鍵の名称", "key":"公開鍵" }"
JSONでやり取りしてるのだからperlでやるべきだった。
他にもGitHub APIで便利なのがあったらperlで書き直す!(今のところ、ない・・・。)