Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
CircleCIとwercker
Search
ryonext
May 21, 2014
Programming
1.3k
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
CircleCIとwercker
ryonext
May 21, 2014
More Decks by ryonext
See All by ryonext
AWS Lambda の Ruby 対応
ryonext
0
280
TwitterのList編集しやすいやつ作った
ryonext
0
1.8k
validationについて
ryonext
1
870
AWS Lambda と API GatewayでRails使わずに済んだ話
ryonext
8
4.4k
capistrano-bundle_rsync使ったらオートスケールが高速化した話
ryonext
8
2.6k
PumaとUnicornで最近自分が理解したこと
ryonext
13
9.6k
Hubot事例
ryonext
1
1.7k
Redisでバッチ処理を冗長化しつつ排他制御
ryonext
0
2.2k
rubykaigi 3day interactive white board
ryonext
2
410
Other Decks in Programming
See All in Programming
re:Inventに行く前に知っておきたい現地参加のノウハウ
nokomoro3
0
460
PumaからFalconに移行したRailsアプリケーションでの実践
falcon8823
0
190
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
330
コードレビューのボトルネックを"する側"と"される側"の両面から解消する
yub0n
2
1.6k
dotNET_vulnclicker_intro.pdf
deka_morita
0
150
ハーネス設計入門 〜 基礎知識の整理から実務へのステップアップ 〜
kinopeee
28
34k
半永久的に提供し続けられるプライベートクラウドを目指して ― 利用者の認知負荷を抑えるAPI抽象化とハードウェア世代交代の基盤設計
tomokon
0
510
[2026-10-14](C)Re:ゼロから始める異世界生活〜始まりの終わりと終わりの始まり〜
tosite
0
140
全ての永続トークンを、生まれる前に消し去りたい!
sylph01
2
1.1k
残高管理から台帳サービスへの進化
artoy
1
210
コーディング自動化の次へ。人の介入をゼロにするファクトリーとサポートAIによる実践
timakin
5
4.2k
最近”作らせてる” ローカルAIアプリの話
akit37
0
490
Featured
See All Featured
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
460
Context Engineering - Making Every Token Count
addyosmani
9
1.2k
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
69
67k
Side Projects
sachag
456
43k
What does AI have to do with Human Rights?
axbom
PRO
1
2.5k
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
2
2k
Exploring anti-patterns in Rails
aemeredith
4
540
HDC tutorial
michielstock
2
970
Why You Should Never Use an ORM
jnunemaker
PRO
61
10k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.9k
Fashionably flexible responsive web design (full day workshop)
malarkey
409
67k
Skip the Path - Find Your Career Trail
mkilby
1
260
Transcript
CircleCIͱwercker ryonext
ࣗݾհ @ryonext ࠷ۙiPhoneΛམͱͯ͠ΨϥεΛׂΓ·͠ ͨ
ϒϩάॻ͖·ͨ͠ http://ryonext.hatenablog.com/entry/ 2014/05/20/093828
CircleCI
ಋೖʹࢸͬͨܦҢ ҎલҰ൪͍҆ϓϥϯ($19/݄)ͩͱ1 private repository͔͠ϏϧυͰ͖ͳ͔ͬ ͨͷ͕ɺແ੍ݶʹͳͬͨ ಉ࣮࣌ߦδϣϒͰ՝ۚʹͳͬͨ
ྑ͍ privateϦϙδτϦΛϏϧυ͢Δͷ͕ϝΠϯͷUXʹͳ͍ͬͯΔ ͍ʢJenkinsΛ AWS m1.smallͰಈ͔͢ΑΓ2ഒఔ͍ʣ ಋೖ͕؆୯ JenkinsͷΑ͏ͳWebUIͰͷδϣϒೖྗɺymlͰͷδϣϒొͷ྆ํαϙʔ τ ͓ࢼ͠Web͔Βͬͯɺ͏·͘ಈ͍ͨΒymlΛϦϙδτϦʹೖΕΔɺͱ ͍͏͜ͱ͕Ͱ͖Δ
࡞ͬͨΠϝʔδʹ͠Β͘sshͰ͖ΔͷͰղੳ͕ḿΔ αϙʔτ͕खް͍
ѱ͍ sudoͰ͖ͳ͍ ͦͯ͠ຊlocale͕ೖͬͯͳ͍
ͦͷଞɺJenkinsൺͰྑ͍ ӡ༻ͷ৺͕ͳ͍ ֓Ͷඞཁͦ͏ͳػೳ࠷ॳ͔Βೖ͍ͬͯ ΔʢϏϧυɺ௨࿈ܞʣ pushͨ͠Β͙͢ςετͯ͘͠ΕΔͷͰ pull req͢Δࠒʹ͏Ϛʔδͯ͠OK͔ Θ͔Δ
Jenkins͡Όͳ͍ͱ͍͠ ͱ͜Ζ Ϗϧυ࣌ؒʹ੍ݶ͕͋Δ ࡉ͔͍ύΠϓϥΠϯࢦఆͳͲͰ͖ͳ ͍ cronͱͯ͠͏
werckerࢼͯ͠Έͨ
ྑ͔ͬͨ sudoՄೳ ίϯςφ֤࣮ߦίϚϯυ͕ϓϥΨϒϧʹ ͳ͓ͬͯΓɺݸਓͷ։ൃऀ͕ՃػೳΛ ߘՄೳ ͜Ε͔Β৳ͼ͍͖ͯͦ͏ ·ͩϕʔλͳͷͰແྉ
ѱ͔ͬͨ OSSΛओ࣠ʹͨ͠UXɻpublicʹ͢ΔϘλϯ͕ৗʹग़ ͯΔ αΠτ͕མͪΔ DB͕localhostʹͳ͍ ڥมͰࢦఆ͢Δherokuํࣜ Ұ෦ͷίϚϯυ͕ಠࣗDSL
ಠࣗDSLৄ͘͠ bundle install Λ bundle-install ͱॻ͔ͳ ͍ͱ͍͚ͳ͍ͱ͔ ҰԠɺscriptͱ͍͏ͦͷ··γΣϧΛॻ ͚ΔίϚϯυ͋Γ
wercker·ͱΊ ·ͩϕʔλͳͷͰ҆ఆੑѱ͍ͷํͳ͍ ͜Ε͔Β৳ͼͦ͏ ࠓݟͨ͜ͷهࣄ໘ന͔ͬͨ bitbucketͱwerckerͰ̌ԁCIΛ͢Δ - razokulover publog http://razokulover.hateblo.jp/entry/ 2014/05/21/000306
ʢJenkinsͰͰ͖Δ͚Ͳʣ pull reqσϓϩΠͬͯΈͨ naoya͞ΜͷهࣄΛࢀߟʹ GitHub ࣌ͷσϓϩΠઓུ - naoyaͷ ͯͳμΠΞϦʔ http://d.hatena.ne.jp/
naoya/20140502/1399027655
͜͏͍͏ͷ feature => developʹ pull reqͯ͠Ϛʔδ stagingʹσϓϩ Π develop =>
master ʹ pull reqͯ͠Ϛʔδ ຊ൪ʹσϓϩΠ
ײ ͜ͷϘλϯԡͨ͠ΒσϓϩΠ͞ΕΔʂͬ ͯͷ͕͍͋ͬͯ͢͝ϫΫϫΫ͢Δɻ
ͬͯΈͨ݁Ռ
Failed!
͜ ͷ ͋ ͱ ͪ Ό Μ ͱ म ਖ਼
͠ ͨ
·ͱΊ AWSͷsmall instanceͰJenkinsͯ͠ΔͳΒ֎෦ͷ CIαʔϏεͬͯΈΔͱྑ͍ Jenkinsͬͯͳ͍ͳΒͳ͓͞Β ϑϧΧελϜJenkinsࢯͷΘΓʹͳΓͮΒ͍ pull reqͯ͠Ϛʔδͯ͠σϓϩΠ͞ΕΔͷϚδͰ ྑ͍͔ΒΔ͖