1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

sue445Advent Calendar 2016

Day 12

Jenkinsプラグインの埋め込みバッジサイト「Sebastian-badge」

Posted at

Sebastian-badgeとは?

Jenkinsプラグインのバージョン情報をGitHubのREADMEなどに埋め込むためのバッジをホスティングするサイトです

image

https://badge.fury.io/ のJenkinsプラグイン版みたいなものだと思ってもらえると。

Jenkins pluginの埋め込みバッジって?

こういうのです。

20150205003327.png

markdownやhtmlなどの形式でいい感じにコピペできます。
githubのREADME.mdに手軽に貼れます。

image

JenkinsプラグインはConfluenceにページ作ることになってるので、Confluence wiki形式でもコピペできるようになっています。

image

技術的なこと

ソース: https://github.com/sue445/sebastian-badge

  • Ruby
  • PostgreSQL
  • Padrino Framewowk
  • Heroku
  • 全文検索に Groonga を利用
  • CircleCI
    • GithubでPRをマージしたらCircleCIでビルドしてHerokuにデプロイする、(僕にとっては)いつもの手の込んだ手抜きデプロイです
  • Deploy to Heroku ボタンに対応してるので誰でも自分のHerokuインスタンスにデプロイできます
    • トピックブランチの確認するのに便利

仕様

  • 1時間に1回 Jenkins Update Center をチェックして更新されたプラグインをDBに保存
  • バッジはsvgで表示
    • テキスト(xml)だけで画像生成できるのでお手軽。ImageMagicなどを使わなくていいのは嬉しい
  • svgが大量に呼ばれてもいいようにキャッシュを頑張った
    • サーバサイドはmemcached
    • クライアントサイドはETagヘッダとLast-Modifiedヘッダ

どうでもいいこと

名前の由来

JenkinsやHudsonが執事に由来しているので、ドキドキ!プリキュアに出てくる執事のセバスチャン(Sebastian)から名前をとっています。

セバスチャン

思い出

tachikoma.ioで毎週bundle updateしていたらgemのバグを見つけた

rroonga(groongaをrubyで使うためのgem)をアップデートした時に、なぜかHerokuへのデプロイが失敗するという事象があってissueで報告した思い出

Heroku deploy is failed with rroonga v6.0.2 · Issue #130 · ranguba/rroonga

  1. 最後にとったのがsue445.net

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?