Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Casual CI Server
Search
r7kamura
July 24, 2013
Programming
7
1.8k
Casual CI Server
at Testing Casual Talks #1
http://atnd.org/events/40914
r7kamura
July 24, 2013
Tweet
Share
More Decks by r7kamura
See All by r7kamura
Railsアップグレード百景
r7kamura
11
6.5k
個人開発のやっていき方
r7kamura
94
23k
amakanにおける書籍のシリーズ判定方法について 2016-08-21
r7kamura
10
6k
Tenkaichi Bot Butoukai
r7kamura
11
5.2k
Paging in API
r7kamura
3
8.6k
Chanko Hacking Guide
r7kamura
5
1.3k
Making things with something small
r7kamura
1
460
Hidden
r7kamura
0
76
Butsukari Geiko
r7kamura
10
36k
Other Decks in Programming
See All in Programming
Оптимизируем производительность блока Казначейство
lamodatech
0
940
盆栽転じて家具となる / Bonsai and Furnitures
aereal
0
1.6k
見えないメモリを観測する: PHP 8.4 `pg_result_memory_size()` とSQL結果のメモリ管理
kentaroutakeda
0
930
ATDDで素早く安定した デリバリを実現しよう!
tonnsama
1
1.7k
ゼロからの、レトロゲームエンジンの作り方
tokujiros
3
1k
Jaspr Dart Web Framework 박제창 @Devfest 2024
itsmedreamwalker
0
150
どうして手を動かすよりもチーム内のコードレビューを優先するべきなのか
okashoi
3
860
PHPで学ぶプログラミングの教訓 / Lessons in Programming Learned through PHP
nrslib
4
1.1k
DMMオンラインサロンアプリのSwift化
hayatan
0
160
ErdMap: Thinking about a map for Rails applications
makicamel
1
510
menu基盤チームによるGoogle Cloudの活用事例~Application Integration, Cloud Tasks編~
yoshifumi_ishikura
0
200
KMP와 kotlinx.rpc로 서버와 클라이언트 동기화
kwakeuijin
0
290
Featured
See All Featured
Designing for humans not robots
tammielis
250
25k
Why You Should Never Use an ORM
jnunemaker
PRO
54
9.1k
Building Better People: How to give real-time feedback that sticks.
wjessup
366
19k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
160
15k
Into the Great Unknown - MozCon
thekraken
34
1.6k
Raft: Consensus for Rubyists
vanstee
137
6.7k
Site-Speed That Sticks
csswizardry
2
250
Testing 201, or: Great Expectations
jmmastey
41
7.2k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
192
16k
Mobile First: as difficult as doing things right
swwweet
222
9k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
Rebuilding a faster, lazier Slack
samanthasiow
79
8.8k
Transcript
Casual CI Server -Testing Casual Talks #1- by @r7kamura IUUQXXXqJDLSDPNQIPUPTCSPPLXBSETJ[FTM
意識の高い若者の面白プロダクト枠 IUUQXXXqJDLSDPNQIPUPTCSPPLXBSETJ[FTM
自己紹介 -------------------------------------- name: Ryo Nakamura id: r7kamura blog: r7kamura.hatenablog.com at:
COOKPAD Inc.
最近作ったもの -------------------------------------- * Chanko 2.0 - prototyping rails * Autodoc
- auto documenting tool * Chatroid - chatter bot framework * Gig - github as a blog database
今日話すこと -------------------------------------- * あらすじ * JJeennkkiinnssと愉快な仲間達 * AAllttrriiaaつくったよ * AAllttrriiaa
PPlluuggiinnの作り方
あらすじ WWhhyy ccaassuuaall ccii sseerrvveerr??
あらすじ -------------------------------------- あらゆる作業が自動化され、全ての行 動が記録・管理されるようになった時 代。自宅へと投下されるJJeennkkiinnss。だ が、その言語は人々に希望を捨てさせ た。若者の意識は、自分が彼を救おう と決心させる。果たしてカジュアルを 望む人々の物語はどこへ続くのか?
Jenkins Clones JJeennkkiinnssと愉快な仲間達
Jenkins Ukigumo CI Joe Cerberus Intergrity CruiseControll BuildBot Signal
Jenkins 説明不要 JJaavvaa
CI Joe * by defunkt * Ruby (sinatra) * multi-process
* 2 years ago...
Ukigumo * by tokuhirom * Perl (amon2) * client/server
Jenkins Ukigumo CI Joe Cerberus Intergrity CruiseControll BuildBot Signal **
JJeennkkiinnssほど高機能じゃなくて良い ** プラグインで拡張出来る機能は欲しい ** もっとカジュアルにプラグイン書きたい ** ゥチらでRRaaiillss 44盛り上げてこ㽉㽉 ↓ JJeennkkiinnss cclloonneeで一発あてるぞ
Altria Alternative Ruby Integration Application github.com/r7kamura/altria IUUQXXXqJDLSDPNQIPUPTCSPPLXBSETJ[FTM
Altria Summary ------------------------------------------ * Server + Worker + Cron *
Rails 4, Redis, MySQL * HTML view + JSON REST API * Plugin as a gem IUUQXXXqJDLSDPNQIPUPTCSPPLXBSETJ[FTM
Server Worker Queue DB Cron User Altria
Server Worker Queue DB Cron User Altria Rails4
Server Worker Queue DB Cron User Altria Redis
Server Worker Queue DB Cron User Altria MySQL
Server Worker Queue DB Cron User Altria jobs builds
Server Worker Queue DB Cron User Altria 1. HTML 2.
JSON 3. Streaming
Server Worker Queue DB Cron User Altria
Plugins ------------------------------------------------- * Using Rails’ plugin system * Every plugin
is a gem * Modify Gemfile to add plugins # Gemfile gem "altria-git", git: "
[email protected]
:..." gem "altria-pipeline", git: "
[email protected]
:..."
# δϣϒͷઃఆ߲ΛՃ Job.property(:next_job_id) # ϏϧυྃޙʹϑοΫ Job.after_execute do Job.find(next_job_id).enqueue end Example1:
Build Pipeline Plugin
Example2: Processing Time Plugin # viewͷϑοΫՕॴʹHTMLΛຒΊࠐΉ JobsController.before_filter only: :show do
view_context.content_for :jobs_show do render_to_string(partial: "chart").html_safe end end # jobs/_chart.html.slim - άϥϑඳը༻HTML&JS = line_chart @resource.builds.limit(100)
Other examples * altria-pipeline * altria-processing_time * altria-simple_cov * altria-git
* altria-authentication * ...
今回話さなかったこと * RRaaiillss44での実装の長所短所 * 運用事例 ((自宅のBBOOTTと連携等)) * 他のCCIIアプリと比べたときの位置付け * 今後追加予定の機能
IUUQXXXqJDLSDPNQIPUPTCSPPLXBSETJ[FTM
まとめ * AAllttrriiaaというCCII SSeerrvveerrを作りました * 普通のWWeebbアプリと同じように作れるよ * カジュアルにプラグインが書けるよ * 機能要望
&& 開発者を募集しています IUUQXXXqJDLSDPNQIPUPTCSPPLXBSETJ[FTM
IUUQXXXqJDLSDPNQIPUPTCSPPLXBSETJ[FTM ご静聴ありがとうございました ((質問・要望は@@rr77kkaammuurraaまで)) github.com/r7kamura/altria