【python】selenium + chromeでスクリーンショットを撮影する

Kibanaを使い始めたはいいんだけど、毎週そのグラフを画像化して所定の場所に置く必要に迫られた。愚直に作業手順を考えてみると、WEBブラウザ開いて、ウインドウのサイズをいい感じに調整して、Alt+Printscreenして、mspaint開いてCtrl+Vで貼り付け、Ctrl+Sで所定の場所にpngで保存…とか地味にめんどくさい作業だ。といったところで、そんな作業はJenkin寿司に任せちゃいたいよね。

そこで色々とGoogle先生に調べてもらったところ、「selenium」なるものを使えばプログラムからWEBブラウザを意のままに操れて、スクリーンショットまで撮れちゃうらしいパねえ!seleniumを操れる環境は色々あるらしいんだが、マイフェイバリット言語であるpython3でやってみる事にした。ちなみに俺の試したアレは、以下のとおり。
 

OS Windows7 64bit
Python 3.4
Selenium 3.6.0
ChromeDriver 2.33

続きを読む 【python】selenium + chromeでスクリーンショットを撮影する

【Jenkins】ジョブにパラメータをつける

そこら辺のサイトでさんざっぱら情報転がってるが、自分なりにメモ。Jenkinsのジョブでgitのリポジトリを監視してpythonスクリプトを走らせてるのだが、今までmasterブランチのpushをトリガに走らせてたやつを、別ブランチのpushでも走らせる必要が出てきた。あと、厄介なことに別ブランチ用に特別な処理があったりもする。しかし、大半の処理はmasterと同じなので、うまいことスクリプトを使いまわせないかなぁ・・・という所で色々調べてたどり着いたのが、ジョブのパラメータ化だ。
続きを読む 【Jenkins】ジョブにパラメータをつける

【Jenkins】ファイルの更新をトリガにする

特定のファイルを監視して、そいつが更新されたらお仕事を始めるようにしたい事が稀によくある。最初は自力で監視スクリプト組んで定期的にJenkinsからそいつを呼んでいたのだが、どうもしっくりこなくて探してみたら世の中には車輪がたくさん転がっていたというオチ。俺が使ってみたのは「FSTrigger Plugin」。こいつでファイルの更新を監視してみよう。
続きを読む 【Jenkins】ファイルの更新をトリガにする

【Jenkins】ビルドログを解析して成功/失敗を判定

基本的にジョブの成否はビルドツールの戻り値で判定させてるんだけども、ログに「エラーでんがな」と出してるのに成功した事にしちゃう困ったちゃんも居たりする。こりゃあどうしたもんかねぇ、というところで色々と調べ回った結果「ビルドログを解析して特定の文字があったら失敗扱いにできるよ!」というプラグインがあるらしい。よっしゃよっしゃ、さっそく試してみようじゃねーの。今回使うのは「Log Parser Plugin」。もう、名前からしてやってくれる感あるよね。

続きを読む 【Jenkins】ビルドログを解析して成功/失敗を判定

Jenkinsおじさんの奴隷になろう

会社の環境で「Jenkins使ってSCM監視でビルドしよう!」と思い立ったのだが、コンパイラだとか開発基材のライセンスに制限があって、サーバ側でビルドができない。となると、ビルドは必然的にクライアント側でやらざるを得ないわけで、サーバ側で働いてるJenkinsおじさんは何すればいいのさ?ってなってしまう。そこで困って色々とググり回った結果、どうやら「スレーブ」という代打マンが設定できるらしい。で、代打マンがビルドした結果をマスターに報告するような感じっぽい。わかった!僕、Jenkinsおじさんの奴隷になるよ!
続きを読む Jenkinsおじさんの奴隷になろう