Share
Embed
CI Study with Vagrant & Chef
「CakePHPで学ぶ継続的インテグレーション」( http://book.impress.co.jp/books/1114101035 ) を読みながら、Chapter 04を最近のバージョンに置き換えて実践してみました。
kazweda
January 27, 2017
Transcript
34 slides
-
Agile459 CIษڧձ in দࢁ ϗετଆ(macOS sierra)ʹඞཁͳͷ ‣ 7JSUVBM#PYIUUQTXXXWJSUVBMCPYPSH ‣ 7BHSBOUIUUQTXXXWBHSBOUVQDPN
QMVHJO4BIBSB WBHSBOUPNOJCVT WBHSBOUDBDIJFS ‣ $IFGCVOEMFS 3VCZӘԹԫԙդԠ☛ⅈԬդՓ ӑԌ՛ԡդՓ HFNJOTUBMMCVOEMFS ‣ 7BHSBOUCPYѫIUUQTHJUIVCDPNDIFGCFOUP ‣ HJU YDPEFTFMFDUJOTUBMM -
Agile459 CIษڧձ in দࢁ git YDPEFTFMFDU049.BO1BHFT IUUQTHPPHM%7CQ YDPEFTFMFDUJOTUBMM XIJDIHJU VTSCJOHJU
HJUWFSTJPO HJUWFSTJPO "QQMF(JU -
Agile459 CIษڧձ in দࢁ SourceTree ീ⢰ѷ(JU)VCӕ44)ᝇ❰ӑҷӵӲҰӕӃӵᢅᴿѸ IUUQTHPPHM+F7- 4PVSDF5SFFӑ(JU)VCӕQVTIӃӵӒԐՑդѭ 1FSNJTTJPOEFOJFE QVCMJDLFZ
ǟ⽇⼊㒎ӘԽԉԌՓൻӼ➰㗶 JE@STB@IPHF ӃӵӒ⨿ҹӔҮ ǟ_TTIDPOGJHӮIPHFIPHFHJUDPOGJHӼ⽠ӽӑҹӶӔҮ ⽇⼊㒎ӘԽԉԌՓൻӼԯԽԑՓӕӁӐҴҹѭ _TTIJE@STB _TTIJE@STBQVC -
Agile459 CIษڧձ in দࢁ VagrantΛಈ͔ͯ͠ΈΔ WBHSBOUCPYӼ㈲ౢ 63-PSMPDBMGJMFPSCPYൻ WBHSBOUCPYBEE<CPYൻ><CPYᒉ୩> ਃᬟ⇹ԽԑՓԨӼਃᘻӁӐ┅ಌ
WBHSBOUJOJU<CPYൻ> WBHSBOUVQ WBHSBOUTTI -
Agile459 CIษڧձ in দࢁ VagrantΛಈ͔ͯ͠ΈΔ ‣ 7BHSBOUGJMF⻱㈨ਦ 7"(3"/5'*-&@"1*@7&34*0/ 7BHSBOUDPOGJHVSF 7"(3"/5'*-&@"1*@7&34*0/
EP]DPOGJH] DPOGJHWNCPYPQTDPEFVCVOUV DPOGJHWNOFUXPSLQSJWBUF@OFUXPSL JQ FOE ‣ ゼಌ WBHSBOUVQ ‣ ՕԘԌ՛ WBHSBOUTTI ‣ ુ᱑ WBHSBOUIBMU -
Agile459 CIษڧձ in দࢁ ԾڥΛ࡞ΔͨΊͷڥઃఆ ‣ 7BHSBOU $IFG4PMPӕӲӵ⧞ಌԿՕԻԠՏԳ՛Ԙ CVOEMFSѫ3VCZӘԹԫԙդԠ☛ⅈԬդՓ ӼਜӍӐѬ
DIFG LOJGFTPMP CFSLTIFMG ӼԌ՛ԡդՓӃӵӉӫӕ(FNGJMFӼ➰㗶 -
Agile459 CIษڧձ in দࢁ ԾڥΛ࡞ΔͨΊͷڥઃఆ $ gem install bundler Fetching:
bundler-1.13.7.gem (100%) ERROR: While executing gem ... (Gem::FilePermissionError) You don't have write permissions for the /Library/Ruby/ Gems/2.0.0 directory. $ which gem /usr/bin/gem できれば、sudo でシステム(OS)領域を触りたくない。 -
Agile459 CIษڧձ in দࢁ ԾڥΛ࡞ΔͨΊͷڥઃఆ ユーザ領域にインストール。 $ gem install --user-install
bundler $ which bundler /usr/local/rbenv/shims/bundler -
Agile459 CIษڧձ in দࢁ ԾڥΛ࡞ΔͨΊͷڥઃఆ MTMVTS UPUBM ESXYSYSYSPPUXIFFMCJO ESXYSYSYSPPUXIFFMJODMVEF ESXYSYSYSPPUXIFFMMJC
ESXYSYSYSPPUXIFFMMJCFYFD ESXYSYSYSPPUXIFFMMPDBM 㮢⍋∪㮣 MTMVTSMPDBM UPUBM ESXYSYSYIPHFVTFSTUBGGCJO ESXYSXYSYSPPUBENJOMJC -
Agile459 CIษڧձ in দࢁ ԾڥΛ࡞ΔͨΊͷڥઃఆ XIJDICVOEMFS VTSMPDBMSCFOWTIJNTCVOEMFS XIJDISVCZ VTSCJOSVCZ SVCZW
SVCZQ SFWJTJPO ǘ ӬҰӁՕդԓՓӔ↯ဩӕӁӉҮѭ -
Agile459 CIษڧձ in দࢁ ԾڥΛ࡞ΔͨΊͷڥઃఆ IUUQTHPPHM7VF BOZFOWӼਜӍӐөӉѭ HJUDMPOFIUUQTHJUIVCDPNSJZXPBOZFOW_BOZFOW FDIPFYQPSU1"5))0.&BOZFOWCJO1"5)_CBTI@QSPGJMF FDIPFWBM
BOZFOWJOJU _CBTI@QSPGJMF TPVSDF_CBTI@QSPGJMF ǟBOZFOWӘӼႌӁӐ⽠ө㈆өӃӶӚѬԟԡԮՈӘSVCZ↯ဩӕᙛӶӨӃѭ -
Agile459 CIษڧձ in দࢁ ԾڥΛ࡞ΔͨΊͷڥઃఆ XIJDISVCZ 6TFSTIPHFVTFSBOZFOWFOWTSCFOWTIJNTSVCZ MTN_BOZFOWFOWTSCFOWTIJNT CFSLT CVOEMF
CVOEMFS DIFGBQQMZ DIFGDMJFOU DIFG TIFMM DIFGTPMP DIFG[FSP FSC FSVCJT GGJZBKMCFODI HFN IUNMEJGG IUUQDMJFOU JSC LOJGF MEJGG NJOJUBS PIBJ QJSC QSVCZ SBDLVQ SBLF SEPD SJ STQFD SVCZ TFSWFSTQFDJOJU UIPS ҽӶӑԬդՓҶᡖҮӨӁӉѭ -
Agile459 CIษڧձ in দࢁ ։ൃ༻Ծαʔόͷߏங ‣ ԿՕԻԠՏԳ՛ԘӘṍ૨ CVOEMFFYFDLOJGFTPMPJOJUCFSLTIFMG ᒨ⺙ӔԯԋՔԗՒ᭜㉏ҶਃᘻҿӶӨӃѭ ‣
CVOEMFFYFD (FNGJMFӕ⻱㈨ӁӉ↯ဩӑᇴ ‣ LOJGFTPMPJOJU SFDJQFӼਃӵӉӫӘԯԋՔԗՒ᭜㉏Ӽਃᘻ JFLJUDIFO IUUQTNBUTDIBGGFSHJUIVCJPLOJGFTPMP ‣ CFSLTIFMG DPPLCPPLTӘਸ਼ᆼ㕉ੋ☛ⅈԬդՓ -
Agile459 CIษڧձ in দࢁ ։ൃ༻Ծαʔόͷߏங ‣ "CPVU#FSLTIFMG IUUQTEPDTDIFGJPCFSLTIFMGIUNM ‣ ᰪӘਃᬟ
Ճԡ04Ԛԡ04㔿ӘԯԋՔԗՒஈ 1)1 OHJOY .Z42-Ԍ՛ԡդՓ -
Agile459 CIษڧձ in দࢁ ։ൃ༻Ծαʔόͷߏங ‣ ԯԋՔԗՒஈ 7BHSBOUGJMFӼ➰㗶 IUUQTHPPHM3+UEXF WBHSBOUSFMPBEEFWFMPQ
Ճԡ04ӘԓՔ՛ԯԋՔԗՒBQQMJDBUJPOԽԑՓԨҶ শᕵԝդԸ EFWFMPQ Ә WBSXXXBQQMJDBUJPODVSSFOU ӒஈҿӶӨӃѭ -
Agile459 CIษڧձ in দࢁ ։ൃ༻Ծαʔόͷߏங ‣ 1)1ѬOHJOYӘԌ՛ԡդՓӒ⼀ᇰ CVOEMFFYFDLOJGFDPPLCPPLDSFBUFQIQFOWPTJUFDPPLCPPLT TJUFDPPLCPPLTQIQFOWSFDJQFEFGBVMUSCӼ➰㗶 ⼳✦әҽӋӳ
IUUQTHPPHM1$YV%2 ‣ "UUSJCVUFTӕӎҮӐ IUUQTEPDTDIFGJPBUUSJCVUFTIUNM -
Agile459 CIษڧձ in দࢁ ։ൃ༻Ծαʔόͷߏங - େ·͔ͳखॱ 1 / 2
‣ 1)1Ѭ.Z42-Ѭ/HJOYӘԌ՛ԡդՓӒ⼀ᇰ TJUFDPPLCPPLTQIQFOWSFDJQFEFGBVMUSC ‣ ൵┣⼀ᇰӘఉᦆઙӼ➰㗶 TJUFDPPLCPPLTQIQFOWBUUSJCVUFTEFGBVMUSC ‣ /HJOYӘԯԽԑՓԝԌ⼀ᇰ TJUFDPPLCPPLTQIQFOWUFNQMBUFTEFGBVMUEFGBVMUFSC ǟFUDOHJOYTJUFTBWBJMBCMFEFGBVMUҶ⇰ᘻҿӶӵѭ ‣ /HJOYӘԮԡ⇹ԸդԩՋՓՃԡ⼀ᇰ TJUFDPPLCPPLTQIQFOWUFNQMBUFTEFGBVMUUFTUFSC ‣ /HJOYӘԱԕՍՉ՛Փդӕ㌔⡕ӃӵJOEFYQIQ TJUFDPPLCPPLTQIQFOWUFNQMBUFTEFGBVMUJOEFYQIQFSC -
Agile459 CIษڧձ in দࢁ ։ൃ༻Ծαʔόͷߏங - େ·͔ͳखॱ 2 / 2
నӘԡՑԌԱӑ௲ᦸञҶӍӉՔԟԼӼӬӒӕѬ 7BHSBOUGJMFӼ➰㗶ӁӐ ԿՕԻԠՏԳ՛ԘӼᇴ WBHSBOUQSPWJTJPOEFWFMPQ ǟԯդԧՁդԡӔӓӃӣӐఉᦆೂҿӶӵӘӑҾᵍᖌӼѭ -
Agile459 CIษڧձ in দࢁ JenkinsͷखಈΠϯετʔϧ ▸ BQU⇹ӘԕդӼ㈲ౢ XHFUR0IUUQQLHKFOLJOTDJPSHEFCJBO KFOLJOTDJPSHLFZ]TVEPBQULFZBEE ▸
BQUӕ+FOLJOTӘՒՅԠՒӼ㈲ౢ FDIPEFCIUUQQLHKFOLJOTDJPSHEFCJBOCJOBSZ] TVEPUFFBFUDBQUTPVSDFTMJTU ▸ Ԍ՛ԡդՓ TVEPBQUHFUVQEBUF TVEPBQUHFUJOTUBMMZKFOLJOT -
Agile459 CIษڧձ in দࢁ JenkinsखಈΠϯετʔϧ࣌ͷΤϥʔ W: Can't drop privileges for
downloading as file '/var/lib/ apt/lists/partial/ us.archive.ubuntu.com_ubuntu_dists_xenial_InRelease' couldn't be accessed by user '_apt'. - pkgAcquire::Run (13: Permission denied) ‣ ରॲ $ sudo chmod 777 /var/lib/apt/lists/partial -
Agile459 CIษڧձ in দࢁ JenkinsࣗಈΠϯετʔϧ - ࣦഊฤ TJUFDPPLCPPLTKFOLJOTSFDJQFTEFGBVMUSCӼ➰㗶 BQU@SFQPTJUPSZKFOLJOTEP VSJIUUQTQLHKFOLJOTJPEFCJBOCJOBSZ
LFZIUUQTQLHKFOLJOTJPEFCJBOKFOLJOTJPLFZ SFUSJFT SFUSZ@EFMBZ BDUJPOBEE FOE ❰ҹ -
Agile459 CIษڧձ in দࢁ JenkinsࣗಈΠϯετʔϧ - ࣦഊฤ Ԛԡ04 DJ ӕՕԘԌ՛
WBHSBOUTTIDJ NPSFFUDBQUTPVSDFTMJTUEKFOLJOTMJTU EFCIUUQQLHKFOLJOTDJPSHEFCJBOCJOBSZ ҽӘԨԾՓԗԒդҶ㊶㢕ӑԌ՛ԡդՓҶ㉜ӨӔҮѭ ǟFUDBQUTPVSDFTMJTUӑҬӶӚ0, ӜӒӨӄTIFMMTDSJQUӑ༪㊙ѭ -
Agile459 CIษڧձ in দࢁ JenkinsࣗಈΠϯετʔϧ - shell scriptฤ TJUFDPPLCPPLTKFOLJOTSFDJQFTEFGBVMUSCӼ➰㗶 CBTIKFOLJOTEP
DPEF&0) XHFUR0IUUQTQLHKFOLJOTJPEFCJBOKFOLJOTJPLFZ ]TVEPBQULFZBEE TVEPFDIPEFCIUUQQLHKFOLJOTDJPSHEFCJBOCJOBSZ FUDBQUTPVSDFTMJTUEKFOLJOTMJTU &0) FOE ❰ҹ -
Agile459 CIษڧձ in দࢁ $IFGӘീ⢰7$$8 _W http://vccw.cc/ ʮQiita: VCCW v3Ͱͷมߋͱ৽ػೳ·ͱΊʯ
https://goo.gl/fH3UMU v2·ͰChef͕ΘΕ͍ͯͨɻv3Ansibleɻ VCCW(~v2) Ͱ SiteGuard WP Plugin Λ͍͍ͨɻ -> FreeType ͕ඞཁɻ site-cookbooks/vccw/templates/default/default_configure_options.erb Λ։͍ͯԼهΛՃͯ͠ vagrant provision Λ࣮ߦɻ --with-freetype-dir=/usr ※ σʔλϕʔεͳͲॳظঢ়ଶʹΔͷͰ͝ҙΛ!!