View
4.094
Download
3
Category
Preview:
DESCRIPTION
Making an XFD for Jenkins with Arudino and Ethernet Shield.
Citation preview
Making a XFD with Arduino for Jenkins
第2回 大阪Jenkins勉強会
@haradakiro / 原田騎郎 株式会社 情報システム総研
自己紹介
• 原田騎郎 / @haradakiro
• アジャイルコーチ – 認定スクラムプロフェショナル – スクラム道
• ドメインモデラー – DDD 実践編。まもなく勉強会を開始予定@東京
• SCM コンサルタント – サプライチェーンマネジメントのほう
• Maker (←今日はここで)
XFD Extreme Feedback Device とは
• Jenkins 動かしても、ビルドはこけたかどうか見に行かないといけない。 – ステータスページ見るなり – メールみるなり
• 見に行かなくても、見えるようにするデバイス – 「あんどん」といえば、わかるおじさんもいる
材料
• Arduino Uno • Arduino Ethernetshield
• リレーコントロールキット(KIT-‐10733) • キセノンフラッシュランプ • ACアダプタ • 配線、コネクタ類
Arduino とは オープンハードウェア Arduino 言語でプログラミング -‐ アセンブラ書かなくてよい いろいろな入出力 シールドと呼ばれる拡張カードで 拡張可能 今回は、Ethernet Shield と一緒に
リレーキット
• Arduino の5V出力で、大電流のオンオフができます。
• 今回は 12V のスイッチングに使用
パトランプ(他) • パトランプが高価+モーターがうるさかったので、キセノンフラッシュを利用
• スイッチで動かせれば何ででも
• 100V を使うときは絶縁に注意。ヒューズも忘れずに。
Jenkins Remote API • 扱いたい情報のある URL に “/api/”, “/api/xml”, “/api/json” を足してみる。
• 最新のビルド状態を取得
– hYp://example.com/job/projectA/lastCompletedBuild/api/json?tree=result
– {“result”:”SUCCESS”} – {“result”:”UNSTABLE”} – {“result”:”FAILED”}
Arduino Code例 void setup() { // デジタル13ピンを出力用として初期化 // 13ピンには、LED が接続されている pinMode(13, OUTPUT); 13ピンを出力用にする } void loop() { digitalWrite(13, HIGH); // LED 点灯 delay(1000); // 1秒ウェイト digitalWrite(13, LOW); // LED 消灯 delay(1000); // 1秒ウェイト }
Arduino Code 例 Ethernet.begin(mac, ip); Client client(server,80); Serial.begin(9600); Serial.println("conneclng..."); if (client.connect()) { Serial.println("connected"); client.println("GET /search?q=arduino HTTP/1.0"); client.println(); } else { Serial.println("conneclon failed"); }
組み立て、コーディング
デモ
XFD のメリット
• Jenkins の赤をほっとけなくなる。
ありがとうございました
• 質問、コメントなどはこちらにお願いします。 TwiYer: @haradakiro Facebook: www.facebook.com/haradakiro
Recommended