Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

ChatOps@研究室

2,305 views

Published on

第1回 Hubot×ChatOps勉強会
http://hubot-chatops.connpass.com/event/9370/

Published in: Technology
  • Be the first to comment

ChatOps@研究室

  1. 1. ChatOps@研究室 @hiconyan  香川大学大学院 工学研究科  信頼性情報システム工学専攻  堀内 晨彦
  2. 2. 自己紹介 l  堀内 晨彦 ほりうち あきひこ l  うどん大学 情報系 M1 l  普段はクラウド上のロードバランスや オートスケールについて研究中。 研究室のサーバ管理と掃除を担当。 2
  3. 3. もくじ 1.  ChatOpsとの出会い 2.  チャットサービス移行大事件 3.  ChatOps事例紹介@研究室 4.  デモンストレーション 5.  HuboLaboの紹介 3
  4. 4. もくじ 1.  ChatOpsとの出会い 2.  チャットサービス移行大事件 3.  ChatOps事例紹介@研究室 4.  デモンストレーション 5.  HuboLaboの紹介 4
  5. 5. Hubot、ChatOpsとの出会い l  7月のJANOG34@高松にて... 「情報共有ツールの情報共有」 l  ささけんさん、 「メール無双は終わった!」 「チャットしようぜ!」 5
  6. 6. メールが抱える問題 l  大量のメール処理... 奪われる時間、増え続けるスパム l  謎のビジネス定型文 l  メールはコミュニケーションツール。 もっと良いツールは無いのか? 6 JANOG34 Meeting 「情報共有ツールの情報共有」より
  7. 7. チャットの良いところ l  メールより気軽、リアルタイム。 無視することができる。 l  アーカイブして後から検索できる。 絵文字も送れる、APIもある。 l  情報共有しつつ作業ログが残る。 7 JANOG34 Meeting 「情報共有ツールの情報共有」より
  8. 8. ChatOpsことはじめ l  研究室でチャット使ってた。 l  Hubotを使えば良いらしい。 l  JavaScript?CoffeeScript? 「とりあえず、やってみよう!」 8
  9. 9. もくじ 1.  ChatOpsとの出会い 2.  チャットサービス移行大事件 3.  ChatOps事例紹介@研究室 4.  デモンストレーション 5.  HuboLaboの紹介 9
  10. 10. ChatWorkを使ってたが... l  アルバイト、サークル、研究室で ChatWorkを使っていた。 l  ChatWorkのadapterあった! l  が、メッセージ取得APIが未実装... Hubotがチャットに反応できない。 10
  11. 11. どこに移るか l  世はチャット乱立時代 HipChat、Slack、Typetalk、Idobata l  条件は「完全無料」であること。 もちろん、adapterもあること。 l  最終的にTypetalkに決定! 11
  12. 12. ところが... l  Typetalkには「招待機能」が無い! メンバの追加は管理者が手動で... l  ただ、メンバー追加APIはある! l  メアド入力ページを作成。 Hubotからメンバー追加APIを叩く。 12
  13. 13. Typetalk招待機能 13
  14. 14. もくじ 1.  ChatOpsとの出会い 2.  チャットサービス移行大事件 3.  ChatOps事例紹介@研究室 4.  デモンストレーション 5.  HuboLaboの紹介 14
  15. 15. Hubot構成 15 GitLab 研究室 学生プロジェクト GitHub サークル
  16. 16. Hubot「Huboco」 l  ささけんさん 「ボットには女の子の名前を付ける」 「やる気が出る」 l  ボスも居るので問題無い名前を... l  「Hubot + 子」でHuboco 16
  17. 17. 1Botで複数ルーム対応 l  どのルームでも提供内容は同じ。 l  Herokuのアプリ数制限(5個)... l  1つのBotを全部のルームに入れちゃえ! 通知するルーム番号を指定する。 17 http://huboco.herokuapp.com/github/hook?room=7853 http://huboco.herokuapp.com/sensu?room=8018
  18. 18. GitHub・GitLab l  GitHubやGitLabのWebhookを利用。 push、プルリクなどを通知。 l  WebhookからのJSONをパース・整形。 18 GitLabGitHub
  19. 19. Sensu l  Sensu:モダンなサーバ監視ツール。 アラートをHubotでチャットに流す。 l  アラート(JSON)をHubotにPOST。 19
  20. 20. coffeelint便利! l  CoffeeScriptに書き慣れてない。 先輩「改造したいけど読みにくい。」 l  rubocop的なのはないの? "coffeelint"があった! l  jslintのcoffee版。 構文チェックとかしてくれる。 20
  21. 21. もくじ 1.  ChatOpsとの出会い 2.  チャットサービス移行大事件 3.  ChatOps事例紹介@研究室 4.  デモンストレーション 5.  HuboLaboの紹介 21
  22. 22. 22 Hubocoデモンストレーション! http://github.com/hico-horiuchi/huboco
  23. 23. もくじ 1.  ChatOpsとの出会い 2.  チャットサービス移行大事件 3.  ChatOps事例紹介@研究室 4.  デモンストレーション 5.  HuboLaboの紹介 23
  24. 24. Hubot始めたころ... l  Hubotについて聞ける場所が無い... Hubotコミュニティとか無いのかな。 l  ささけんさん「作ったもの勝ち!」 l  Hubotコミュニティ 「HuboLabo」の立ち上げ。 24
  25. 25. HuboLabo
  26. 26. HubotLaboについて l  作成したbot、script、adapterの 情報をまとめられる・共有できる場所。 l  チャットルームで意見交換。 もちろんHubotにも参加して欲しい! l  http://hubo-labo.herokuapp.com/ 26
  27. 27. まとめ。
  28. 28. まとめ l  JANOGでChatOpsとの出会い。 l  Hubotを使うためにTypetalkに移行。 l  GitHubやSensuと連携! l  Hubotのコミュニティ作ったよ。 28
  29. 29. これからやりたいこと l  チャットの発言をチケット化。 l  ゼミの前日になると通知。 発表者にはリプライを飛ばす。 l  チャットからAnsibleの実行。 l  チャットからRailsのデプロイ。 (プルリクmergeで発火?) 29
  30. 30. ありがとうございました!

×