SlideShare une entreprise Scribd logo
1  sur  14
Télécharger pour lire hors ligne
JenkinsとPull Request
を利用した継続的
Bundle update.
株式会社 adingo
Twitter @_zoo/MisaKondo
発表の背景
RubyKaigi2013で’Continuous gem
dependency updating with Jenkins and
Pull Request'という発表を聞いてきまし
た。
RubyKaigiなのでgemを管理するbundler
ベースのお話でしたが、他言語にも通じる
すごくいい話でした。
Agenda
● What is 'Bundle'?
● Bundle update evey day.
● Must update continuously.
● 'Continuously' is not so easy.
● Automation.
● Visualization.
What is 'Bundle'?
バンドル〖bundle〗
ある製品に別の製品を添付すること。パソ
コンにオペレーティングシステムやアプリ
ケーションソフトをあらかじめ添付するな
ど、販売する製品に関連する製品で使い
勝手を向上させる役割のものが多い。
What is 'Bundle'?
バンドル〖bundle〗
アプリケーションに付属する外部ライブラ
リ群を管理する物。
例)
 RubyだとBundler.
 PHPだとComposer.
 PerlだとCarton.
Bundle update every day.
Must update continuously.
● 古いバージョンを使っているが故のバグ
回避のためのロジック、意図の読みにく
い無駄なコードがなくなる
● 関連しているシステムもupadteできなく
なる
● まとめてやるより、継続的に更新した方
が最終的なコストは低い
'Continuously' is
● モチベーションに依存したオペレーショ
ンは破綻する
● 日々のワークフローに取り入れても忘
れてしまう、人というのはそういうもの
● メールや個人のスケジュールアラーとな
どでの管理は、失敗する第一歩
Automation.
● Jenkins
● GitHub
● Hub
https://github.com/defunkt/hub
Mr. Jenkins's Pull Request
Visualization.
● GitHub、PullRequestを利用した視覚
化
● コードレビューのサイクルに組み込める
● 副次効果として、updateの取り込みをコ
ントロールできる
ご清聴ありがとうご
ざいました。

Contenu connexe

Tendances

The Twelve-Factor (A|M)pp with C#
The Twelve-Factor (A|M)pp with C#The Twelve-Factor (A|M)pp with C#
The Twelve-Factor (A|M)pp with C#Yuta Matsumura
 
Netラボ2012年3月勉強会ライトニングトーク
Netラボ2012年3月勉強会ライトニングトークNetラボ2012年3月勉強会ライトニングトーク
Netラボ2012年3月勉強会ライトニングトークdavid9142
 
.NET Conf の歩き方
.NET Conf の歩き方.NET Conf の歩き方
.NET Conf の歩き方Yuta Matsumura
 
Dotnetcore30forwindesktop
Dotnetcore30forwindesktopDotnetcore30forwindesktop
Dotnetcore30forwindesktopru pic
 
怠惰な私がプログラミングするときに重要だと考えているたった1つのこと
怠惰な私がプログラミングするときに重要だと考えているたった1つのこと怠惰な私がプログラミングするときに重要だと考えているたった1つのこと
怠惰な私がプログラミングするときに重要だと考えているたった1つのことTohru Kobayashi
 
Write slides and books in VSCode + Markdown
Write slides and books in VSCode + MarkdownWrite slides and books in VSCode + Markdown
Write slides and books in VSCode + Markdownロフト くん
 
スタートアップ企業が実践するクラウドネイティブアプリケーションの開発手法
スタートアップ企業が実践するクラウドネイティブアプリケーションの開発手法スタートアップ企業が実践するクラウドネイティブアプリケーションの開発手法
スタートアップ企業が実践するクラウドネイティブアプリケーションの開発手法Yuta Matsumura
 
マイクロサービス開発が捗る Project Tye
マイクロサービス開発が捗る Project Tyeマイクロサービス開発が捗る Project Tye
マイクロサービス開発が捗る Project TyeYuta Matsumura
 
初めての拡張機能リリースまでの歩み / Road to publishing extension for the first time
初めての拡張機能リリースまでの歩み / Road to publishing extension for the first time初めての拡張機能リリースまでの歩み / Road to publishing extension for the first time
初めての拡張機能リリースまでの歩み / Road to publishing extension for the first timeYusuke Yamada
 
Kivy CatalogでKv Languageを知る
Kivy CatalogでKv Languageを知るKivy CatalogでKv Languageを知る
Kivy CatalogでKv Languageを知るDaisuke Saito
 

Tendances (10)

The Twelve-Factor (A|M)pp with C#
The Twelve-Factor (A|M)pp with C#The Twelve-Factor (A|M)pp with C#
The Twelve-Factor (A|M)pp with C#
 
Netラボ2012年3月勉強会ライトニングトーク
Netラボ2012年3月勉強会ライトニングトークNetラボ2012年3月勉強会ライトニングトーク
Netラボ2012年3月勉強会ライトニングトーク
 
.NET Conf の歩き方
.NET Conf の歩き方.NET Conf の歩き方
.NET Conf の歩き方
 
Dotnetcore30forwindesktop
Dotnetcore30forwindesktopDotnetcore30forwindesktop
Dotnetcore30forwindesktop
 
怠惰な私がプログラミングするときに重要だと考えているたった1つのこと
怠惰な私がプログラミングするときに重要だと考えているたった1つのこと怠惰な私がプログラミングするときに重要だと考えているたった1つのこと
怠惰な私がプログラミングするときに重要だと考えているたった1つのこと
 
Write slides and books in VSCode + Markdown
Write slides and books in VSCode + MarkdownWrite slides and books in VSCode + Markdown
Write slides and books in VSCode + Markdown
 
スタートアップ企業が実践するクラウドネイティブアプリケーションの開発手法
スタートアップ企業が実践するクラウドネイティブアプリケーションの開発手法スタートアップ企業が実践するクラウドネイティブアプリケーションの開発手法
スタートアップ企業が実践するクラウドネイティブアプリケーションの開発手法
 
マイクロサービス開発が捗る Project Tye
マイクロサービス開発が捗る Project Tyeマイクロサービス開発が捗る Project Tye
マイクロサービス開発が捗る Project Tye
 
初めての拡張機能リリースまでの歩み / Road to publishing extension for the first time
初めての拡張機能リリースまでの歩み / Road to publishing extension for the first time初めての拡張機能リリースまでの歩み / Road to publishing extension for the first time
初めての拡張機能リリースまでの歩み / Road to publishing extension for the first time
 
Kivy CatalogでKv Languageを知る
Kivy CatalogでKv Languageを知るKivy CatalogでKv Languageを知る
Kivy CatalogでKv Languageを知る
 

Similaire à Jenkinsとpull requestを利用した、継続的なbundle update.

Google for Mobile: コンテナで作るモバイル バックエンド - 福田 潔
Google for Mobile:  コンテナで作るモバイル バックエンド - 福田 潔Google for Mobile:  コンテナで作るモバイル バックエンド - 福田 潔
Google for Mobile: コンテナで作るモバイル バックエンド - 福田 潔Google Cloud Platform - Japan
 
Android アプリ開発における Gradle ビルドシステム
Android アプリ開発における Gradle ビルドシステムAndroid アプリ開発における Gradle ビルドシステム
Android アプリ開発における Gradle ビルドシステムYu Nobuoka
 
Android App Development with Gradle & Android Studio
Android App Development with Gradle & Android StudioAndroid App Development with Gradle & Android Studio
Android App Development with Gradle & Android StudioSoichiro Kashima
 
5 年続く 「はてなブックマーク」 アプリを継続開発する技術
5 年続く 「はてなブックマーク」 アプリを継続開発する技術5 年続く 「はてなブックマーク」 アプリを継続開発する技術
5 年続く 「はてなブックマーク」 アプリを継続開発する技術Yu Nobuoka
 
Visual studio extensibility
Visual studio extensibilityVisual studio extensibility
Visual studio extensibilityTakeshi Fujimoto
 
SpringOne Platform Replay -Pivotal Cloud Foundry-
SpringOne Platform Replay -Pivotal Cloud Foundry-SpringOne Platform Replay -Pivotal Cloud Foundry-
SpringOne Platform Replay -Pivotal Cloud Foundry-CASAREAL, Inc.
 
PhoneGapでWebアプリをスマホアプリ化
PhoneGapでWebアプリをスマホアプリ化PhoneGapでWebアプリをスマホアプリ化
PhoneGapでWebアプリをスマホアプリ化Takashi Okamoto
 
iPadスタッフ教育提案書
iPadスタッフ教育提案書iPadスタッフ教育提案書
iPadスタッフ教育提案書Biz Produce LLC
 
Oprol_Engine_pitch_v1_final
Oprol_Engine_pitch_v1_finalOprol_Engine_pitch_v1_final
Oprol_Engine_pitch_v1_finalRyotaNishimine
 
Dockerで.NET Core 3.0 GUIアプリを動かす話
Dockerで.NET Core 3.0 GUIアプリを動かす話Dockerで.NET Core 3.0 GUIアプリを動かす話
Dockerで.NET Core 3.0 GUIアプリを動かす話You&I
 
Sharing Programming @ wiki
Sharing Programming @ wikiSharing Programming @ wiki
Sharing Programming @ wikiTakashi Yamanoue
 
市場動向並びに弊社製品の今後の展望について
市場動向並びに弊社製品の今後の展望について市場動向並びに弊社製品の今後の展望について
市場動向並びに弊社製品の今後の展望についてKen Azuma
 
OSSを利用したプロジェクト管理
OSSを利用したプロジェクト管理OSSを利用したプロジェクト管理
OSSを利用したプロジェクト管理Tadashi Miyazato
 
Kubernetes 導入から始める DevOps について
Kubernetes 導入から始める DevOps についてKubernetes 導入から始める DevOps について
Kubernetes 導入から始める DevOps についてShigeru Tatsuta
 
市場動向並びに弊社製品の今後の展望について
市場動向並びに弊社製品の今後の展望について市場動向並びに弊社製品の今後の展望について
市場動向並びに弊社製品の今後の展望についてKen Azuma
 
Houdini 製品概要
Houdini 製品概要 Houdini 製品概要
Houdini 製品概要 Ken Taki
 
20111203 gdd2011フィードバック 公開用
20111203 gdd2011フィードバック 公開用20111203 gdd2011フィードバック 公開用
20111203 gdd2011フィードバック 公開用tksyokoyama
 

Similaire à Jenkinsとpull requestを利用した、継続的なbundle update. (20)

Google for Mobile: コンテナで作るモバイル バックエンド - 福田 潔
Google for Mobile:  コンテナで作るモバイル バックエンド - 福田 潔Google for Mobile:  コンテナで作るモバイル バックエンド - 福田 潔
Google for Mobile: コンテナで作るモバイル バックエンド - 福田 潔
 
Alfresco CI
Alfresco CIAlfresco CI
Alfresco CI
 
Android アプリ開発における Gradle ビルドシステム
Android アプリ開発における Gradle ビルドシステムAndroid アプリ開発における Gradle ビルドシステム
Android アプリ開発における Gradle ビルドシステム
 
Android App Development with Gradle & Android Studio
Android App Development with Gradle & Android StudioAndroid App Development with Gradle & Android Studio
Android App Development with Gradle & Android Studio
 
5 年続く 「はてなブックマーク」 アプリを継続開発する技術
5 年続く 「はてなブックマーク」 アプリを継続開発する技術5 年続く 「はてなブックマーク」 アプリを継続開発する技術
5 年続く 「はてなブックマーク」 アプリを継続開発する技術
 
Visual studio extensibility
Visual studio extensibilityVisual studio extensibility
Visual studio extensibility
 
SpringOne Platform Replay -Pivotal Cloud Foundry-
SpringOne Platform Replay -Pivotal Cloud Foundry-SpringOne Platform Replay -Pivotal Cloud Foundry-
SpringOne Platform Replay -Pivotal Cloud Foundry-
 
PhoneGapでWebアプリをスマホアプリ化
PhoneGapでWebアプリをスマホアプリ化PhoneGapでWebアプリをスマホアプリ化
PhoneGapでWebアプリをスマホアプリ化
 
iPadスタッフ教育提案書
iPadスタッフ教育提案書iPadスタッフ教育提案書
iPadスタッフ教育提案書
 
Oprol_Engine_pitch_v1_final
Oprol_Engine_pitch_v1_finalOprol_Engine_pitch_v1_final
Oprol_Engine_pitch_v1_final
 
Dockerで.NET Core 3.0 GUIアプリを動かす話
Dockerで.NET Core 3.0 GUIアプリを動かす話Dockerで.NET Core 3.0 GUIアプリを動かす話
Dockerで.NET Core 3.0 GUIアプリを動かす話
 
Sharing Programming @ wiki
Sharing Programming @ wikiSharing Programming @ wiki
Sharing Programming @ wiki
 
市場動向並びに弊社製品の今後の展望について
市場動向並びに弊社製品の今後の展望について市場動向並びに弊社製品の今後の展望について
市場動向並びに弊社製品の今後の展望について
 
OSSを利用したプロジェクト管理
OSSを利用したプロジェクト管理OSSを利用したプロジェクト管理
OSSを利用したプロジェクト管理
 
Kubernetes 導入から始める DevOps について
Kubernetes 導入から始める DevOps についてKubernetes 導入から始める DevOps について
Kubernetes 導入から始める DevOps について
 
Developers Summit 2013【15-B-6】開発者の "資産形成" につながる Action とは?
Developers Summit 2013【15-B-6】開発者の "資産形成" につながる Action とは?Developers Summit 2013【15-B-6】開発者の "資産形成" につながる Action とは?
Developers Summit 2013【15-B-6】開発者の "資産形成" につながる Action とは?
 
市場動向並びに弊社製品の今後の展望について
市場動向並びに弊社製品の今後の展望について市場動向並びに弊社製品の今後の展望について
市場動向並びに弊社製品の今後の展望について
 
Houdini 製品概要
Houdini 製品概要 Houdini 製品概要
Houdini 製品概要
 
20111203 gdd2011フィードバック 公開用
20111203 gdd2011フィードバック 公開用20111203 gdd2011フィードバック 公開用
20111203 gdd2011フィードバック 公開用
 
Google Product
Google ProductGoogle Product
Google Product
 

Plus de Misa Kondo

Application Release Utilizing MCollective
Application Release  Utilizing MCollectiveApplication Release  Utilizing MCollective
Application Release Utilizing MCollectiveMisa Kondo
 
Chefのはじめの一歩
Chefのはじめの一歩Chefのはじめの一歩
Chefのはじめの一歩Misa Kondo
 
バージョン管理
バージョン管理バージョン管理
バージョン管理Misa Kondo
 
Git introduction2
Git introduction2Git introduction2
Git introduction2Misa Kondo
 
Introduction git
Introduction gitIntroduction git
Introduction gitMisa Kondo
 
Capistrano introduction
Capistrano introductionCapistrano introduction
Capistrano introductionMisa Kondo
 
ワンクリックデプロイ見習い勉強会
ワンクリックデプロイ見習い勉強会ワンクリックデプロイ見習い勉強会
ワンクリックデプロイ見習い勉強会Misa Kondo
 
Rubyとの出会いから黒歴史を築くまで
Rubyとの出会いから黒歴史を築くまでRubyとの出会いから黒歴史を築くまで
Rubyとの出会いから黒歴史を築くまでMisa Kondo
 
PinQAでのMongoDB活用事例
PinQAでのMongoDB活用事例PinQAでのMongoDB活用事例
PinQAでのMongoDB活用事例Misa Kondo
 
Coffee script初めの一歩
Coffee script初めの一歩Coffee script初めの一歩
Coffee script初めの一歩Misa Kondo
 

Plus de Misa Kondo (12)

Application Release Utilizing MCollective
Application Release  Utilizing MCollectiveApplication Release  Utilizing MCollective
Application Release Utilizing MCollective
 
Chefのはじめの一歩
Chefのはじめの一歩Chefのはじめの一歩
Chefのはじめの一歩
 
バージョン管理
バージョン管理バージョン管理
バージョン管理
 
Tired to tdd
Tired to tddTired to tdd
Tired to tdd
 
Git introduction2
Git introduction2Git introduction2
Git introduction2
 
Introduction git
Introduction gitIntroduction git
Introduction git
 
Capistrano introduction
Capistrano introductionCapistrano introduction
Capistrano introduction
 
ワンクリックデプロイ見習い勉強会
ワンクリックデプロイ見習い勉強会ワンクリックデプロイ見習い勉強会
ワンクリックデプロイ見習い勉強会
 
Rubyとの出会いから黒歴史を築くまで
Rubyとの出会いから黒歴史を築くまでRubyとの出会いから黒歴史を築くまで
Rubyとの出会いから黒歴史を築くまで
 
PinQAでのMongoDB活用事例
PinQAでのMongoDB活用事例PinQAでのMongoDB活用事例
PinQAでのMongoDB活用事例
 
TDDの神秘
TDDの神秘TDDの神秘
TDDの神秘
 
Coffee script初めの一歩
Coffee script初めの一歩Coffee script初めの一歩
Coffee script初めの一歩
 

Jenkinsとpull requestを利用した、継続的なbundle update.