くりにっき

フルスタックキュアエンジニアです

Jenkins

久しぶりにJenkinsプラグインをリリースしようとしたら謎のエラーで失敗した

Qiitaや会社ブログにはエントリ書いてたけどこっちのブログは1ヶ月間更新無しとかマジか。(挨拶) 前置き tl;dr エラー内容 原因 ソース org.jenkins-ci.plugins.pluginのバージョンを上げるとBetamaxがうまく動かない問題 前置き 先日自分がメンテしてるJe…

Jenkinsを安全にアップデートする方法

手持ちのJenkinsをいくつかアップデートすることがあったので備忘がてらまとめておきます。*1 Jenkins 1系 -> 2系などの大幅アップデートに限らず、プラグインのアップデートでも使えると思います。 事前にやるべきこと Jenkins本体のバックアップ jenkins.w…

Gitlab Merge Request Builder Plugin で Could not merge が出た時の対処法

tl;dr 使ってるバージョン エラー詳細 エラーが発生してる場所 設定をいろいろいじった 対処法 Before After しばらく運用してみた tl;dr Jenkins上でマージするのを諦めよう github.com 使ってるバージョン Jenkins v1.643 Gitlab Merge Request Builder Pl…

Jenkinsを使った最高のマトリックステスト(2016年版)

マトリックステストとは? マトリックステストの行い方 実行結果 問題点 軸の設定をジョブにハードコーディングする必要がある 除外設定が面倒 俺はTravis CIみたいにリポジトリにコミットしたymlファイルでテストしたいんじゃああああああ!!!11111 …

Gitlab Merge Request Builder Pluginをv2.0.0に上げる場合には注意が必要

忙しい人のためのまとめ 経緯 v1とv2で設定の互換性がない理由 アップデート方法 v2.0.0の目玉機能 忙しい人のためのまとめ v1とv2で設定ファイルに互換性がないので注意すべし 経緯 この辺 GitLab Merge Request Builder plugin さん、v1.2.4からv2.0.0にア…

Jenkins Yaml Axis Pluginを作った

正月休みから作ってたやつが完成したので公開しました Jenkins Yaml Axis Pluginについて 使い方 1. リポジトリにyamlファイルをコミット 2. 軸を設定でyamlファイルとkeyを設定する 3. 実際にビルドするとyamlの値で軸が作られる その他 今回初めてGroovy …

Jenkins GitLab Logo Plugin をリリースしました

リフレッシュ休暇中にJenkinsプラグインを作ってました。 なにげに初Jenkinsプラグイン公開です*1 jenkinsci/gitlab-logo-plugingithub.com GitLab Logo Plugin - Jenkins - Jenkins Wiki JenkinsのダッシュボードにGitLabのプロジェクトに設定されているア…

ドリコムを支える課金ライブラリを支えるJenkins

16新卒向けの勉強会でLTしたのですが、会社から許可がおりたので公開します。*1 ご査収ください。 スライド ドリコムを支える課金ライブラリを支えるJenkins from Go Sueyoshi (a.k.a sue445) 合わせて読みたい(関連エントリ) スライドの元ネタ ドリコムを…

Jenkinsをdebパッケージからインストールする

よく忘れるしググってもなかなか見つからないので自分用にメモ。 はじめに apt-get install jenkins でJenkinsをインストールすると最新版しかインストールできないのが不便なので僕はdebパッケージからインストールしています。 参考 $ apt-cache show jenk…

Sebastian-badgeを作った

Sebastian-badgeとは Jenkins pluginの埋め込みバッジをホスティングするサイトです http://sebastian-badge.info/ RubyGems.org とかのバッジにインスパイアされて作りました。開発期間1週間くらい Jenkins pluginの埋め込みバッジって? こういうの 自分で…

Jenkins Workflow Pluginでパラメータ付で別のジョブを実行する方法

ググってもなかなか見つからなかったので自分用にメモ ハマった スニペットだと build 'yourJobNameToBuild' しか出ないのでジョブ名とパラメータを両方渡す方法が分からずにハマった。 やり方 こんな感じでやればいいらしい build job: 'yourJobNameToBuild…

Jenkins Chatwork Pluginのメンテナになった

突然ですが Jenkins Chatwork Plugin のメンテナになりました https://wiki.jenkins-ci.org/display/JENKINS/ChatWork+Plugin https://github.com/jenkinsci/chatwork-plugin ChatWork用のJenkinsプラグインを作ってみた | nanapi TechBlog 今北産業 半年く…

JenkinsのFailed to serializeに半年くらい悩まされてようやく解決した

忙しい人の1行まとめ 入れてるプラグインがtransientつけ忘れ 概要 Jenkinsのグローバル設定やジョブの設定を保存する時に高確率で「Failed to serialize」エラーが出てその度にJenkinsが激おこになる現象が発生 エラーの内容 javax.servlet.ServletExceptio…

J( 'ー`)し「たかしへ。Gitlab Merge Request Builder Pluginを入れてみたわよ」

Gitlab Merge Request Builder PluginはGitlabのMergeRequest(以降MR)をビルドして結果をレスしてくれるJenkinsプラグインです Travis CIとかCircle CIのGitlab + Jenkins版 以前社内で発表したことを社内Gitlabでやりたいなぁと思って探したら見つかりま…

Jenkinsのジョブごとにdatabase.ymlを動的生成する

database.ymlって書いてますがファイルならなんでもいけます 前提 自分のビルドスクリプトだとこういう風にすることが多いです # 最初にJenkins用のDB接続情報が書かれたdatabase.ymlを作る cp config/database.yml.jenkins config/database.yml # あとは普…

JenkinsとGroovyで低レベルなトラブルシューティングをする

昨日会社でJenkins立てた時に .ssh/config が読めなくてハマってました。 読めなかった原因というのはJenkinsを動かしてるtomcat7ユーザのホームディレクトリ*1とJenkinsが見ているホームディレクトリ*2 が食い違ってたためなのですが、そこに至るまでの原因…

Jenkinsで使うシェルスクリプトは-xeつけた方がよかった

忙しい人のためのまとめ で指定するシェルスクリプトには #!/bin/bash -xe か #!/bin/sh -xe つけるべき 経緯 Jenkins周りで調べることがあってたまたま下記のエントリを発見 Jenkinsのシェルの実行について - Qiita シェルの途中でこけても処理が続行される…

Jenkinsに入れているプラグインまとめ(Rails中心)

ふと思いついたので会社のJenkinsで使ってるプラグインをまとめてみます。 RailsでJenkins運用してる人の参考になれば幸いです。(入れてるけどあまり使ってないのは端折ってます) 他に便利なプラグインあったらコメントやブコメで教えてくださいw Ruby/Ra…

jenkins-backup-scriptを作りました

会社でそういう需要があったので作りました https://github.com/sue445/jenkins-backup-script Jenkinsのバックアップ方法を探していて Backup Plugin というのはあったのですが、これだと手動バックアップしかできなかったので、Jenkinsのジョブ上で定期実…

社内でJenkins勉強会を開催しました

他の会社だと1つのJenkinsをみんなで使うという運用(な気がする)ですが、うちの会社の場合だと個人やアプリで好き勝手にJenkinsを乱立させてます。 他の人はどんな風にJenkinsを使ってるのかなーと思って何人かに声をかけて開催してみました。 登壇者は自…

Twitter API 1.1でも CI したい

以前LTでしゃべった内容をブログ用に再構成してみます 冒頭に結論 Twitter API 1.1対応は廃止されたAPIだけ対応してもダメ ことの発端 AZusaar!!のテストにて 1テストケースずつ -> GREEN テストスイート一括実行 -> RED という事象が発生 WHY ? RateLimitに…

Jenkinsにスローテストのグラフを表示する

RSpecでは --profile オプションをつけることで $ rspec --profileTop 10 slowest examples (17.92 seconds, 65.4% of total time): AndroidMarket use stub content behaves like android_market_base_examples #get_overall_top_selling_new_paid_apps 1.9…

Jenkinsのビルド後にgh-pagesにpushする

以前書いた GithubのリポジトリでJavaDocを公開する - sue445's Blog というエントリでJavaDocをgh-pagesに公開する方法書いていましたが、それをJenkinsで自動化してみます。 0. 前提 上記のエントリを参考にmavenでJavaDocが作られるようにしておいてくだ…

JenkinsのXFDを作ってました

XFD自体は結構前に作ってたのですがブログのネタに困ったので今更紹介してみます ソースコード sue445/jenkins_xfd · GitHub https://github.com/sue445/jenkins_xfd 使い方 ZIPでダウンロード または git clone git@github.com:sue445/jenkins_xfd.gitconfi…

個人でJenkinsを入れるために比較したこと

個人でJenkinsを入れてみたかったのでいろいろ調べてました 料金体系は個人の小遣いで使える範囲(月数千円)でしか比較していません 為替レートは $1 = 90円 で計算しています CloudBees: The Java PaaS Company Jenkinsのクラウドサービスで「DEV@cloud」と…

JenkinsでJavaScriptのテストをやってみる

調べてたらphantomjsを使うかnodeを使うかの2つが主流だったのですが、自分の場合元々phantomjsでの自動テストの仕組みがあったため前者でいくことにしました。phantomjsでのJavaScriptのテストの自動化については過去のエントリを御覧くださいAZusaar! を全…

さくらVPSにnginx + Tomcat7の構成でJenkinsを入れてみる

さくらVPSにJenkinsを入れた時のメモ。 さくらVPSを使うかAmazon EC2を使うか迷ってたのですが、その辺の経緯はまた別の機会に書きます。 1. さくらVPSに登録する http://vps.sakura.ad.jp/ お好みのプランを選択。僕は2Gを選びましたログイン情報がメールで…