京都で開催した開発合宿の成果発表資料です
։ൃ߹॓Ռൃදݹయ෦ ݉ ͔Δͨ෦@kentana20
View Slide
Agenda• ߹॓Ͱͷඪ• ͬͨ͜ͱ• σϞ• ·ͱΊ
߹॓Ͱͷඪ• ࣗࣾϖʔδΛMiddlemanԽͯ͠Ϟμϯʹ• ژΛָ͠Ή• ͪ;ΔΛ؍Δ• ʹߦ͘
Middleman• Rubyͷ੩తαΠτδΣωϨʔλ• ςϯϓϨʔτΤϯδϯ• ։ൃ༻αʔόʹͳΔ• ෦ςϯϓϨʔτ͑Δ• ྨࣅ: Jekyll, HUGO
ࣗࣾϖʔδ
എܠ• ࣗࣾϖʔδ( http://www.ikyu.co.jp )ͷӡ༻ ੜͷHTMLΛ࡞ͬͯमਖ਼͍ͯͨ͠• ϖʔδͷߋ৽FTPͰπϥ͍• ྨࣅϖʔδίϐϖͰ
എܠ2• ͱ͋Δͷձ• @naoya ʮ࠾༻ϖʔδͬͯͲ͏ͬͯϝϯςͯ͠Δͷʁʯ• @kentana20 ʮFTPͰμϯϩʔυͯ͠मਖ਼ͯ͠ΞοϓͰ͢Ͷʯ• @naoya ʮͦΕπϥ͍ɻ͏ͪΐͬͱϚγʹ͍ͨ͠Ͷʯ• @kentana20 ʮͰ͢Ͷʯ• @naoya ʮMiddlemanͱ͔͓͏Αʯ• @kentana20 ʮ;Ή;Ήʯ
ελʔτ• Middleman৮ͬͨ͜ͱͳ͍• Railsܦݧ͋Δ• ࣗࣾϖʔδͷFTPΞΧϯτ࣋ͬͯΔ
ಋೖͱॳظԽ$ gem install middleman$ middleman init ikyucorp
Ϗϧυ$ middleman build
αʔόىಈ$ middleman server
σΟϨΫτϦߏੜ͞ΕΔ੩తϑΝΠϧbuildԼʹϏϧυલͷerb, sassϑΝΠϧͳͲsourceԼʹ
ศརͳ#1• ෦ςϯϓϨʔτ• ϔομɺϑολͳͲڞ௨෦Λ෦Խ• ෦ςϯϓϨʔτͷม͠(locals)Մೳ<%= partial 'partials/nav_top' %><%= partial 'partials/head_top' %>
ศརͳ#2• LiveReload• ϑΝΠϧΛॻ͖͑ͨλΠϛϯάͰϒϥβΛউखʹϦϩʔυͯ͘͠ΕΔ$ middleman server --livereload
ࣗࣾϖʔδMiddlemanԽ• ରϖʔδ http://www.ikyu.co.jp/recruit/• ϨΠΞτɺ෦ςϯϓϨʔτͳͲͰڞ௨Խͭͭ͠MiddlemanԽ• Γ࢝Ί͔ͯΒ1͘Β͍ͰͰ͖ͨ
HerokuʹσϓϩΠ• αΠτ࡞Δ• Procfile• MiddlemanͷϏϧυͱىಈΛॻ͚ͩ͘web: bundle exec middleman build && middleman server -p $PORT
Circle CIͰࣗಈԽ• HerokuͷσϓϩΠΛࣗಈԽ• master mergeͰൃಈmachine:timezone:Asia/Tokyoruby:version: 2.3.1test:override:- echo "test"deployment:production:branch: masterheroku:appname: ikyucorp-middlemantestͷهड़ඍົ…͚Ͳ੩తαΠτͳͷͰ…
Demo
ΓΔ͜ͱ• HerokuͰΔͷ͔ / ͘͞Βͷ··͔ΛܾΊΔ• HerokuͳΒͦͷ··ɺ͘͞ΒͳΒσϓϩΠํࣜΛม͑Δ• middleman-deploy ͱ͍͏Gem͕FTPͰͷϦϦʔεʹ ରԠ͍ͯ͠Δ• HerokuͳΒ /recruit/ ԼͷΞΫηεΛϦμΠϨΫτͤ͞Δ
Middlemanॴײ• Middleman• Rails͔Β੩తαΠτ࡞Δػೳ͕ൈ͖ग़͞ΕͯΔײ͡Ͱ͍উख͕͍͍• ϏϧυɺσϓϩΠϥΫ• ͜ΕͳΒσβΠφʔʹͬͯΒ͑Δͱࢥ͏• ૣ͘ΕΑ͔ͬͨɻɻ
߹॓ॴײ• ߹ָ͍॓͠• ·ͱ·ͬͨ࣌ؒͰՌग़͍͢͠• ࠓճਓ૿͑ͯخ͍͠(6໊ -> 9໊)• ژͰ༠͕ଟ͗ͯ͢੨य़શ෦͔͚Δͷ͕Ή͔͍ͣ͠• ·ͨΓ·͠ΐ͏
ژΛָ͠Ή
ͪ;ΔΛ؍Δ
͋ͱ