errbot-cloudfront: first¶
PyCon JPのプロポーザル選考速報を見た悲しみでガーッと作りました。おおまかな動作は確認済み。
何をするものか?¶
Errbotのプラグインで、これを導入するとerrbot経由でCloudFrontのディストリビューションの一覧取得と、 ID指定によるオブジェクトの無効化ができるようになります。
どうやって使うか¶
事前に必要なもの¶
Errbotが動いている環境
CloudFrontを扱える、AWSのIAMアカウント(AccessIDとSecretKey)
インストールする¶
インストール自体はErrbotプラグインの例に漏れず、 GitHubのようなGitリポジトリで管理している分については、
!repos install https://github.com/attakei/errbot-cloudfront.git
とErrbotに対して命令を出すだけで完了します。
ただし、バージョンや環境によってはrequirements.txtを読み込まないケースがあるので、 その場合はErrbotを動かしている環境下にboto3をインストールしてあげてください。
使う¶
現時点で持っている機能は2+1個
cloudfront list
上記のアカウントが読み取り可能なディストリビューション設定の一覧表示
上記のアカウントが指示可能な、ディストリビューションに対するキャッシュ無効化
cloudfront invalidate
キャッシュ無効化の状況確認
cloudfront status
list コマンドはあくまでディストリビューションIDを表示するのが目的で、 メインの機能はキャッシュの無効化命令を出す部分です。
状況確認のコマンドもあるにはありますが、基本的には無効化確認を自動で行い、 無効化処理が"Completed"になった時点で指示を出した人宛にメンションを出す仕様なので、 実質的に cloudfront invalidate だけあればほぼ十分になっています。
あとがき¶
社内でこんなのあれば便利じゃね?
ちょっと個人でプロダクト作るときに便利かも?
地に足ついたOSS活動しておこう
などの悪魔合体的に作った産物ですが、そこそこ便利だとおもうのと、「わかりやすく作る」を多少は意識しています。 Errbotに興味をもった人やErrbotプラグインを作ろうと思った人がいたら、ぜひ使ってもらえればと思います。
Update: errbot-cloudfront
errbot-pomodoro-timerの修正メモ