Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Paraduct䜢䜶䜽䝇䝖䝸䞊䝮䝸䝸䞊䝇 
䛧䜎䛩 
Copyright Drecom Co., Ltd. All Rights Reserved. 
@sue445 
2014/11/01 ShibuyaRubyKaigi
⮬ᕫ⤂௓ 
@sue445 
● drecom 
○ 䝋䞊䝅䝱䝹䝀䞊䝮䛸䛛 
○ ♫ෆ䝒䞊䝹䛸䛛♫ෆ䝷䜲䝤䝷䝸䛸䛛䝃䞊䝞䝃䜲䝗 
඲⯡ぢ䛶䜛 
● ῰㇂.rb 
○ 䜋䜌ẖᅇ⮬స䝒䞊䝹䜔⮬సgem䛾Ⓨ⾲䛧䛶 
䛔䜛 
○ RubyKaja 20...
RubyKaja2014 
Copyright Drecom Co., Ltd. All Rights Reserved.
䝽䝍䝅䝝䚷䝔䝇䝖䚷䝏䝵䝑䝖䝕䜻䝹 
https://suzuri.jp/sue445/62900/t-shirt/s/brightgreen 
Copyright Drecom Co., Ltd. All Rights Reserved.
௒ᮇ䛾᎑䠖䜻䝳䜰䝝䝙䞊 
Copyright Drecom Co., Ltd. All Rights Reserved.
ᮏጔ䠖䜻䝳䜰䝢䞊䝇 
Copyright Drecom Co., Ltd. All Rights Reserved.
᮶ᮇ䛾䝥䝸䜻䝳䜰᝟ሗ 
Next Precure is (maybe) “Go! 䝥䝸䞁䝉䝇䝥䝸䜻䝳䜰” , 
and my name is Go . 
Copyright Drecom Co., Ltd. All Rights Reserve...
Agenda 
● Paraduct is ఱ䠛 
● ⌧≧☜ㄆ 
● ᴫせ 
● 䜶䜽䝇䝖䝸䞊䝮䝸䝸䞊䝇 
Copyright Drecom Co., Ltd. All Rights Reserved.
Paraduct 䛸䛿 
Copyright Drecom Co., Ltd. All Rights Reserved.
Paraduct 䛸䛿 
䝬䝖䝸䜽䝇䝔䝇䝖䛾䛯 
䜑䛾gem䛷䛩 
Copyright Drecom Co., Ltd. All Rights Reserved.
⌧≧☜ㄆ 
Copyright Drecom Co., Ltd. All Rights Reserved.
⌧≧☜ㄆ 
䜘䛟䛒䜛♫ෆgem (acts_as_xxxxxxxxx) 
● 䝃䝫䞊䝖䛩䜛Ruby䛾䝞䞊䝆䝵䞁 
○ Ruby 2.0⣔ 
○ Ruby 2.1⣔ 
● 䝃䝫䞊䝖䛩䜛Rails䛾䝞䞊䝆䝵䞁 
○ Rails 3.2⣔ 
○ Ra...
Jenkins䛾䝆䝵䝤ቑ䛘䛩䛞ၥ㢟 
2 x 3 = 6䝆䝵䝤 (;´Д䠼) 
Copyright Drecom Co., Ltd. All Rights Reserved.
Travis CI䜏䛯䛔䛻yaml䛷⡆༢䛻䝬䝖䝸䜽 
䝇䝔䝇䝖䛧䛯䛔 
Copyright Drecom Co., Ltd. All Rights Reserved.
Travis CI䛾ၥ㢟Ⅼ 
● push䛧䛶䛛䜙ᐇ㝿䛻䝔䝇䝖䛜ᐇ⾜䛥䜜䜛䜎䛷䛻᫬㛫䛜䛛䛛䜛 
○ push䛧䛶䛛䜙䝆䝵䝤䛜ጞ䜎䜛䜎䛷䛻ᩘศ䛛䛛䜛䛣䛸䜒䛒䜛 
● github䛷䛧䛛౑䛘䛺䛔 
○ ᘢ♫ is Gitlab 
● (CaaS඲⯡...
䛭䛣䛷 
䝬䝖䝸䜽䝇䝔䝇䝖䜢ᡭ 
㍍䛻ᐇ⾜䛯䜑䛾gem 
䜢స䛳䛯 
Copyright Drecom Co., Ltd. All Rights Reserved.
Paraductᴫせ 
● Paraduct = parallel + parameterize + 
product(᥃䛡⟬䛾✚) 
● 」ᩘ䛾䝟䝷䝯䞊䝍䜢᥃䛡䛒䜟䛫䛶୪⾜䛧䛶䝔 
䝇䝖ᐇ⾜䛩䜛 
● gem䛰䛡䛹ruby௨እ䛾䝔䝇䝖䜒䛷䛝䜎...
タᐃ䝣䜯䜲䝹 
Copyright Drecom Co., Ltd. All Rights Reserved.
タᐃ䝣䜯䜲䝹 
Copyright Drecom Co., Ltd. All Rights Reserved. 
実行するスクリプト 
掛け合わせるパラメータ
タᐃ䝣䜯䜲䝹 
Copyright Drecom Co., Ltd. All Rights Reserved. 
実行するスクリプト 
掛け合わせるパラメータ 
export RUBY=xxxxx; export GEMFILE=xxxxx; ...
䝔䝇䝖䛾௙⤌䜏 
app 
Copyright Drecom Co., Ltd. All Rights Reserved.
䝁䝬䞁䝗ᐇ⾜ 
$ paraduct test 
app 
Copyright Drecom Co., Ltd. All Rights Reserved.
䝣䜯䜲䝹䜢ู䛾䝕䜱䝺䜽䝖䝸䛻䝁䝢䞊䛩䜛 
app 
tmp/RUBY_2.0_RAILS_3.2 
tmp/RUBY_2.0_RAILS_4.0 
Copyright Drecom Co., Ltd. All Rights Reserved. ...
䝟䝷䝯䞊䝍䜢Ώ䛧䛶䝔䝇䝖䜢୪ิᐇ⾜ 
app 
tmp/RUBY_2.0_RAILS_3.2 
RUBY=2.0 RAILS=3.2 ./build.sh 
tmp/RUBY_2.0_RAILS_4.0 
RUBY=2.0 RAILS=4.0 ...
඲㒊⤊஢䛩䜛䜎䛷ᚅ䛴 
app 
tmp/RUBY_2.0_RAILS_3.2 
RUBY=2.0 RAILS=3.2 ./build.sh 
tmp/RUBY_2.0_RAILS_4.0 
RUBY=2.0 RAILS=4.0 ./build...
Paraduct䛿䝟䝷䝯䞊䝍䜢⤌䜏 
ྜ䜟䛫䛶䝇䜽䝸䝥䝖䜢ᐇ⾜䛩䜛䛯 
䜑䛾䝷䝑䝟䞊 
Copyright Drecom Co., Ltd. All Rights Reserved.
䝅䜵䝹䛜౑䛘䜜䜀ruby௨እ䛾 
䝔䝇䝖䜒ฟ᮶䜎䛩 
Copyright Drecom Co., Ltd. All Rights Reserved.
gem install䛷䛝䜜䜀 
Jenkins௨እ䛷䜒paraduct౑䛘 
Copyright Drecom Co., Ltd. All Rights Reserved. 
䜎䛩 
䠄Circle CI䛷ືస☜ㄆ῭䠅
䛺䛬gem䛛䠛 
䝅䜵䝹䜢ᐇ⾜䛩䜛䛰䛡䛺䛾䛷䜆䛳䛱䜓䛢Ruby䛨䜓䛺䛟䛶䜘䛛䛳 
䛯䜣䛰䛡䛹 
● 㓄ᕸ䛧䜔䛩䛥 (Rubygems) 
● 䜲䞁䝇䝖䞊䝹䛧䜔䛩䛥 (Rubygems) 
● 䝸䝸䞊䝇䛾䛧䜔䛩䛥 (rake release) 
...
䝕䝯䝸䝑䝖䠄᪤▱䛾ၥ㢟䠅 
● travis䛸㐪䛔඲㒊䝻䞊䜹䝹䛷ᐇ⾜䛩䜛䛾䛷䝆䝵䝤䛤䛸䛾᤼௚ 
ไᚚ䛜㞴䛧䛔 
○ scriptෆ䛷vagrant❧䛱ୖ䛢䛶⊂❧䛧䛯⎔ቃ䛷ື䛛䛫䜀 
䛔䛡䛭䛖 
● ඲㒊䝻䞊䜹䝹䛷ᐇ⾜䛩䜛䛾䛷CPU㈇Ⲵ䛛䛛䜛 
...
䜎䛸䜑 
● Paraduct䜢౑䛘䜀Travis CI௨እ䛷䜒䝬䝖䝸䜽 
䝇䝔䝇䝖䛜䛷䛝䜛 
● Paraduct䜢౑䛘䜀Jenkins䛾䝆䝵䝤䜢ῶ䜙䛫 
䜛 
Copyright Drecom Co., Ltd. All Rights Re...
䜶䜽䝇䝖䝸䞊䝮䝸䝸䞊䝇 
Copyright Drecom Co., Ltd. All Rights Reserved.
0.0.1.beta17 -> 0.0.1 
Copyright Drecom Co., Ltd. All Rights Reserved.
䛤Ύ⫈䛒䜚䛜䛸䛖䛤䛦䛔䜎䛧䛯䟿 
http://rubygems.org/gems/paraduct 
Copyright Drecom Co., Ltd. All Rights Reserved.
Upcoming SlideShare
Loading in …5
×

Paraductをエクストリームリリースします #428rk01

3,483 views

Published on

渋谷Ruby会議01( http://regional.rubykaigi.org/shibuya01/ )で話したスライドです

http://rubygems.org/gems/paraduct
https://github.com/sue445/paraduct

  • Be the first to comment

Paraductをエクストリームリリースします #428rk01

  1. 1. Paraduct䜢䜶䜽䝇䝖䝸䞊䝮䝸䝸䞊䝇 䛧䜎䛩 Copyright Drecom Co., Ltd. All Rights Reserved. @sue445 2014/11/01 ShibuyaRubyKaigi
  2. 2. ⮬ᕫ⤂௓ @sue445 ● drecom ○ 䝋䞊䝅䝱䝹䝀䞊䝮䛸䛛 ○ ♫ෆ䝒䞊䝹䛸䛛♫ෆ䝷䜲䝤䝷䝸䛸䛛䝃䞊䝞䝃䜲䝗 ඲⯡ぢ䛶䜛 ● ῰㇂.rb ○ 䜋䜌ẖᅇ⮬స䝒䞊䝹䜔⮬సgem䛾Ⓨ⾲䛧䛶 䛔䜛 ○ RubyKaja 2014 ● 䝥䝸䜻䝳䜰䛚䛨䛥䜣 ○ ᭱㏆䝣䝹䝇䝍䝑䜽䜻䝳䜰䜶䞁䝆䝙䜰䛻䛺䛳䛯䠄TV 䝅䝸䞊䝈䛸๻ሙ∧᏶㉮䠅 Copyright Drecom Co., Ltd. All Rights Reserved.
  3. 3. RubyKaja2014 Copyright Drecom Co., Ltd. All Rights Reserved.
  4. 4. 䝽䝍䝅䝝䚷䝔䝇䝖䚷䝏䝵䝑䝖䝕䜻䝹 https://suzuri.jp/sue445/62900/t-shirt/s/brightgreen Copyright Drecom Co., Ltd. All Rights Reserved.
  5. 5. ௒ᮇ䛾᎑䠖䜻䝳䜰䝝䝙䞊 Copyright Drecom Co., Ltd. All Rights Reserved.
  6. 6. ᮏጔ䠖䜻䝳䜰䝢䞊䝇 Copyright Drecom Co., Ltd. All Rights Reserved.
  7. 7. ᮶ᮇ䛾䝥䝸䜻䝳䜰᝟ሗ Next Precure is (maybe) “Go! 䝥䝸䞁䝉䝇䝥䝸䜻䝳䜰” , and my name is Go . Copyright Drecom Co., Ltd. All Rights Reserved.
  8. 8. Agenda ● Paraduct is ఱ䠛 ● ⌧≧☜ㄆ ● ᴫせ ● 䜶䜽䝇䝖䝸䞊䝮䝸䝸䞊䝇 Copyright Drecom Co., Ltd. All Rights Reserved.
  9. 9. Paraduct 䛸䛿 Copyright Drecom Co., Ltd. All Rights Reserved.
  10. 10. Paraduct 䛸䛿 䝬䝖䝸䜽䝇䝔䝇䝖䛾䛯 䜑䛾gem䛷䛩 Copyright Drecom Co., Ltd. All Rights Reserved.
  11. 11. ⌧≧☜ㄆ Copyright Drecom Co., Ltd. All Rights Reserved.
  12. 12. ⌧≧☜ㄆ 䜘䛟䛒䜛♫ෆgem (acts_as_xxxxxxxxx) ● 䝃䝫䞊䝖䛩䜛Ruby䛾䝞䞊䝆䝵䞁 ○ Ruby 2.0⣔ ○ Ruby 2.1⣔ ● 䝃䝫䞊䝖䛩䜛Rails䛾䝞䞊䝆䝵䞁 ○ Rails 3.2⣔ ○ Rails 4.0⣔ ○ Rails 4.1⣔ Copyright Drecom Co., Ltd. All Rights Reserved.
  13. 13. Jenkins䛾䝆䝵䝤ቑ䛘䛩䛞ၥ㢟 2 x 3 = 6䝆䝵䝤 (;´Д䠼) Copyright Drecom Co., Ltd. All Rights Reserved.
  14. 14. Travis CI䜏䛯䛔䛻yaml䛷⡆༢䛻䝬䝖䝸䜽 䝇䝔䝇䝖䛧䛯䛔 Copyright Drecom Co., Ltd. All Rights Reserved.
  15. 15. Travis CI䛾ၥ㢟Ⅼ ● push䛧䛶䛛䜙ᐇ㝿䛻䝔䝇䝖䛜ᐇ⾜䛥䜜䜛䜎䛷䛻᫬㛫䛜䛛䛛䜛 ○ push䛧䛶䛛䜙䝆䝵䝤䛜ጞ䜎䜛䜎䛷䛻ᩘศ䛛䛛䜛䛣䛸䜒䛒䜛 ● github䛷䛧䛛౑䛘䛺䛔 ○ ᘢ♫ is Gitlab ● (CaaS඲⯡䛻ゝ䛘䜛䛡䛹)♫እ䛛䜙♫ෆ䛻䝩䝇䝔䜱䞁䜾䛧䛶䜛 gem䜢䛸䛳䛶䛣䜜䛺䛔 ○ proxy⤒⏤䛧䛺䛔䛸gem install䛷䛝䛺䛔 Copyright Drecom Co., Ltd. All Rights Reserved.
  16. 16. 䛭䛣䛷 䝬䝖䝸䜽䝇䝔䝇䝖䜢ᡭ ㍍䛻ᐇ⾜䛯䜑䛾gem 䜢స䛳䛯 Copyright Drecom Co., Ltd. All Rights Reserved.
  17. 17. Paraductᴫせ ● Paraduct = parallel + parameterize + product(᥃䛡⟬䛾✚) ● 」ᩘ䛾䝟䝷䝯䞊䝍䜢᥃䛡䛒䜟䛫䛶୪⾜䛧䛶䝔 䝇䝖ᐇ⾜䛩䜛 ● gem䛰䛡䛹ruby௨እ䛾䝔䝇䝖䜒䛷䛝䜎䛩䠄ᚋ ㏙䠅 https://github.com/sue445/paraduct Copyright Drecom Co., Ltd. All Rights Reserved.
  18. 18. タᐃ䝣䜯䜲䝹 Copyright Drecom Co., Ltd. All Rights Reserved.
  19. 19. タᐃ䝣䜯䜲䝹 Copyright Drecom Co., Ltd. All Rights Reserved. 実行するスクリプト 掛け合わせるパラメータ
  20. 20. タᐃ䝣䜯䜲䝹 Copyright Drecom Co., Ltd. All Rights Reserved. 実行するスクリプト 掛け合わせるパラメータ export RUBY=xxxxx; export GEMFILE=xxxxx; ./build.sh
  21. 21. 䝔䝇䝖䛾௙⤌䜏 app Copyright Drecom Co., Ltd. All Rights Reserved.
  22. 22. 䝁䝬䞁䝗ᐇ⾜ $ paraduct test app Copyright Drecom Co., Ltd. All Rights Reserved.
  23. 23. 䝣䜯䜲䝹䜢ู䛾䝕䜱䝺䜽䝖䝸䛻䝁䝢䞊䛩䜛 app tmp/RUBY_2.0_RAILS_3.2 tmp/RUBY_2.0_RAILS_4.0 Copyright Drecom Co., Ltd. All Rights Reserved. : : 1. rsync
  24. 24. 䝟䝷䝯䞊䝍䜢Ώ䛧䛶䝔䝇䝖䜢୪ิᐇ⾜ app tmp/RUBY_2.0_RAILS_3.2 RUBY=2.0 RAILS=3.2 ./build.sh tmp/RUBY_2.0_RAILS_4.0 RUBY=2.0 RAILS=4.0 ./build.sh Copyright Drecom Co., Ltd. All Rights Reserved. : : 2. run scripts
  25. 25. ඲㒊⤊஢䛩䜛䜎䛷ᚅ䛴 app tmp/RUBY_2.0_RAILS_3.2 RUBY=2.0 RAILS=3.2 ./build.sh tmp/RUBY_2.0_RAILS_4.0 RUBY=2.0 RAILS=4.0 ./build.sh Copyright Drecom Co., Ltd. All Rights Reserved. : : All successful or Even one failure 3. finish
  26. 26. Paraduct䛿䝟䝷䝯䞊䝍䜢⤌䜏 ྜ䜟䛫䛶䝇䜽䝸䝥䝖䜢ᐇ⾜䛩䜛䛯 䜑䛾䝷䝑䝟䞊 Copyright Drecom Co., Ltd. All Rights Reserved.
  27. 27. 䝅䜵䝹䛜౑䛘䜜䜀ruby௨እ䛾 䝔䝇䝖䜒ฟ᮶䜎䛩 Copyright Drecom Co., Ltd. All Rights Reserved.
  28. 28. gem install䛷䛝䜜䜀 Jenkins௨እ䛷䜒paraduct౑䛘 Copyright Drecom Co., Ltd. All Rights Reserved. 䜎䛩 䠄Circle CI䛷ືస☜ㄆ῭䠅
  29. 29. 䛺䛬gem䛛䠛 䝅䜵䝹䜢ᐇ⾜䛩䜛䛰䛡䛺䛾䛷䜆䛳䛱䜓䛢Ruby䛨䜓䛺䛟䛶䜘䛛䛳 䛯䜣䛰䛡䛹 ● 㓄ᕸ䛧䜔䛩䛥 (Rubygems) ● 䜲䞁䝇䝖䞊䝹䛧䜔䛩䛥 (Rubygems) ● 䝸䝸䞊䝇䛾䛧䜔䛩䛥 (rake release) ● 䝔䝇䝖䛧䜔䛩䛥 (RSpec) ● ⮬ศ䛾䝇䜻䝹䝉䝑䝖 (Java, Groovy, Ruby, JavaScript) 䜢ຍ࿡䛧䛶Ruby䜢㑅ᢥ Copyright Drecom Co., Ltd. All Rights Reserved.
  30. 30. 䝕䝯䝸䝑䝖䠄᪤▱䛾ၥ㢟䠅 ● travis䛸㐪䛔඲㒊䝻䞊䜹䝹䛷ᐇ⾜䛩䜛䛾䛷䝆䝵䝤䛤䛸䛾᤼௚ ไᚚ䛜㞴䛧䛔 ○ scriptෆ䛷vagrant❧䛱ୖ䛢䛶⊂❧䛧䛯⎔ቃ䛷ື䛛䛫䜀 䛔䛡䛭䛖 ● ඲㒊䝻䞊䜹䝹䛷ᐇ⾜䛩䜛䛾䛷CPU㈇Ⲵ䛛䛛䜛 ○ 10䝥䝻䝉䝇䛷bundle install䛩䜛䛸䛝䛴䛔䡓 ○ ྠ᫬䛻ᐇ⾜䛩䜛䝇䝺䝑䝗ᩘ䛾ୖ㝈䛿タᐃ䛷䛝䜛 ● ᭱ప㝈ື䛟ᐇ⿦䛧䛛䛺䛔䛾䛷䛛䜖䛔䛸䛣䜝䛻ᡭ䛜ᒆ䛟䜸䝥 䝅䝵䞁䛜䛺䛔 ○ travis䛾allow_failures䛸䛛 Copyright Drecom Co., Ltd. All Rights Reserved.
  31. 31. 䜎䛸䜑 ● Paraduct䜢౑䛘䜀Travis CI௨እ䛷䜒䝬䝖䝸䜽 䝇䝔䝇䝖䛜䛷䛝䜛 ● Paraduct䜢౑䛘䜀Jenkins䛾䝆䝵䝤䜢ῶ䜙䛫 䜛 Copyright Drecom Co., Ltd. All Rights Reserved.
  32. 32. 䜶䜽䝇䝖䝸䞊䝮䝸䝸䞊䝇 Copyright Drecom Co., Ltd. All Rights Reserved.
  33. 33. 0.0.1.beta17 -> 0.0.1 Copyright Drecom Co., Ltd. All Rights Reserved.
  34. 34. 䛤Ύ⫈䛒䜚䛜䛸䛖䛤䛦䛔䜎䛧䛯䟿 http://rubygems.org/gems/paraduct Copyright Drecom Co., Ltd. All Rights Reserved.

×