chatops@研究室

Post on 08-Jul-2015

433 Views

Category:

Technology

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

「第1回 Hubot×ChatOps勉強会」の発表資料です. ・ JANOG34でChatOpsの話を聞いてHubot触り始めた. ・ 研究室でSensuやGitHubと連携して使ってる. ・ Hubotコミュニティ「HuboLabo」を作ったので紹介.

TRANSCRIPT

ChatOps@研究室 @hiconyan  香川大学大学院 工学研究科  信頼性情報システム工学専攻  堀内 晨彦

自己紹介

l  堀内 晨彦 ほりうち あきひこ

l  うどん大学 情報系 M1

l  普段はクラウド上のロードバランスや オートスケールについて研究中。 研究室のサーバ管理と掃除を担当。

2

もくじ

1.  ChatOpsとの出会い

2. チャットサービス移行大事件

3.  ChatOps事例紹介@研究室

4. デモンストレーション

5.  HuboLaboの紹介

3

もくじ

1.  ChatOpsとの出会い

2. チャットサービス移行大事件

3.  ChatOps事例紹介@研究室

4. デモンストレーション

5.  HuboLaboの紹介

4

Hubot、ChatOpsとの出会い

l  7月のJANOG34@高松にて... 「情報共有ツールの情報共有」

l  ささけんさん、 「メール無双は終わった!」 「チャットしようぜ!」

5

メールが抱える問題

l  大量のメール処理... 奪われる時間、増え続けるスパム

l  謎のビジネス定型文

l  メールはコミュニケーションツール。 もっと良いツールは無いのか?

6

JANOG34 Meeting 「情報共有ツールの情報共有」より

チャットの良いところ

l  メールより気軽、リアルタイム。 無視することができる。

l  アーカイブして後から検索できる。 絵文字も送れる、APIもある。

l  情報共有しつつ作業ログが残る。

7

JANOG34 Meeting 「情報共有ツールの情報共有」より

ChatOpsことはじめ

l  研究室でチャット使ってた。

l  Hubotを使えば良いらしい。

l  JavaScript?CoffeeScript?

「とりあえず、やってみよう!」

8

もくじ

1.  ChatOpsとの出会い

2. チャットサービス移行大事件

3.  ChatOps事例紹介@研究室

4. デモンストレーション

5.  HuboLaboの紹介

9

ChatWorkを使ってたが...

l  アルバイト、サークル、研究室で ChatWorkを使っていた。

l  ChatWorkのadapterあった!

l  が、メッセージ取得APIが未実装... Hubotがチャットに反応できない。

10

どこに移るか

l  世はチャット乱立時代 HipChat、Slack、Typetalk、Idobata

l  条件は「完全無料」であること。 もちろん、adapterもあること。

l  最終的にTypetalkに決定!

11

ところが...

l  Typetalkには「招待機能」が無い! メンバの追加は管理者が手動で...

l  ただ、メンバー追加APIはある!

l  メアド入力ページを作成。 Hubotからメンバー追加APIを叩く。

12

Typetalk招待機能

13

もくじ

1.  ChatOpsとの出会い

2. チャットサービス移行大事件

3.  ChatOps事例紹介@研究室

4. デモンストレーション

5.  HuboLaboの紹介

14

Hubot構成

15

GitLab

研究室

学生プロジェクト

GitHub サークル

Hubot「Huboco」

l  ささけんさん 「ボットには女の子の名前を付ける」 「やる気が出る」

l  ボスも居るので問題無い名前を...

l  「Hubot + 子」でHuboco

16

1Botで複数ルーム対応

l  どのルームでも提供内容は同じ。

l  Herokuのアプリ数制限(5個)...

l  1つのBotを全部のルームに入れちゃえ! 通知するルーム番号を指定する。

17

http://huboco.herokuapp.com/github/hook?room=7853 http://huboco.herokuapp.com/sensu?room=8018

GitHub・GitLab

l  GitHubやGitLabのWebhookを利用。 push、プルリクなどを通知。

l  WebhookからのJSONをパース・整形。

18

GitLab GitHub

Sensu

l  Sensu:モダンなサーバ監視ツール。 アラートをHubotでチャットに流す。

l  アラート(JSON)をHubotにPOST。

19

coffeelint便利!

l  CoffeeScriptに書き慣れてない。 先輩「改造したいけど読みにくい。」

l  rubocop的なのはないの? "coffeelint"があった!

l  jslintのcoffee版。 構文チェックとかしてくれる。

20

もくじ

1.  ChatOpsとの出会い

2. チャットサービス移行大事件

3.  ChatOps事例紹介@研究室

4. デモンストレーション

5.  HuboLaboの紹介

21

22

Hubocoデモンストレーション!

http://github.com/hico-horiuchi/huboco

もくじ

1.  ChatOpsとの出会い

2. チャットサービス移行大事件

3.  ChatOps事例紹介@研究室

4. デモンストレーション

5.  HuboLaboの紹介

23

Hubot始めたころ...

l  Hubotについて聞ける場所が無い... Hubotコミュニティとか無いのかな。

l  ささけんさん「作ったもの勝ち!」

l  Hubotコミュニティ 「HuboLabo」の立ち上げ。

24

HuboLabo

HubotLaboについて

l  作成したbot、script、adapterの 情報をまとめられる・共有できる場所。

l  チャットルームで意見交換。 もちろんHubotにも参加して欲しい!

l  http://hubo-labo.herokuapp.com/

26

まとめ。

まとめ

l  JANOGでChatOpsとの出会い。

l  Hubotを使うためにTypetalkに移行。

l  GitHubやSensuと連携!

l  Hubotのコミュニティ作ったよ。

28

これからやりたいこと

l  チャットの発言をチケット化。

l  ゼミの前日になると通知。 発表者にはリプライを飛ばす。

l  チャットからAnsibleの実行。

l  チャットからRailsのデプロイ。 (プルリクmergeで発火?)

29

ありがとうございました!

top related