ããã§è¿œè·¡ã
macOS 10.13.3
$ packer --version
1.2.1
$ vboxmanage --version
5.2.8r121009
Debug1.log
äžèšã®èŠç¹ãšããŠã®ãã°
Debug2.log
äžèšã®èŠç¹ãšããŠã®ãã°
"keep_input_artifact"ïŒtrue
HFS +ãã¡ã€ã«ã·ã¹ãã
output-virtualbox-iso /
$ ls -l
total 21220296
-rw-r--r-- 1 tanner staff 10864777216 Mar 5 18:46 WindowsServer2016Docker-disk001.vmdk
-rwx------ 1 tanner staff 10412 Mar 5 18:23 WindowsServer2016Docker.ovf
`` `ã·ã§ã«
$ ls -l * .box
-rw-r--r--1ã¿ããŒã¹ã¿ãã107297883713æ5æ¥18ïŒ56windows_2016_docker_virtualbox.box
```shell
$ tar -tvf windows_2016_docker_virtualbox.box
-rw-r--r-- 0 tanner staff 2286 Mar 5 18:51 Vagrantfile
-rw-r--r-- 0 tanner staff 0 Mar 5 18:51 WindowsServer2016Docker-disk001.vmdk
-rw-r--r-- 0 tanner staff 10412 Mar 5 18:51 box.ovf
-rw-r--r-- 0 tanner staff 26 Mar 5 18:51 metadata.json
tarãã¡ã€ã«ã¯å éšã§äœæãããŸãããpackerïŒãŸãã¯golangïŒã§ãã¡ã€ã«ãµã€ãºã®å¶éã«éããŠããå¯èœæ§ããããŸããïŒ
ããã«ãŒãã«ããã¡ã€ã«ïŒ windows_2016_docker.json ã
@StefanScherer
ãããmacOS 10.13.3ãšAPFSãPacker 1.2.1ãVirtualBox5.2.8ã§åé¡ãåçŸã§ããŸã
$ packer build --only=virtualbox-iso windows_2016_docker.json
$ ls -l windows_2016_docker_virtualbox.box
-rw-r--r-- 1 stefan staff 10146394489 Mar 8 12:16 windows_2016_docker_virtualbox.box
$ tar tvf windows_2016_docker_virtualbox.box
-rw-r--r-- 0 stefan staff 2286 Mar 8 12:16 Vagrantfile
-rw-r--r-- 0 stefan staff 0 Mar 8 12:16 WindowsServer2016Docker-disk001.vmdk
-rw-r--r-- 0 stefan staff 10411 Mar 8 12:16 box.ovf
-rw-r--r-- 0 stefan staff 26 Mar 8 12:16 metadata.json
å€ãPackerããŒãžã§ã³1.1.3ããŸã macOS 10.13.3ãšAPFSãVirtualBox 5.2.8ã§åè©Šè¡ããŸãããããã®åŸããã¯ã¹ãã¡ã€ã«ã¯æ£åžžã«è¡šç€ºãããŸãã
$ ls -l *box
-rw-r--r-- 1 stefan staff 10817278351 Mar 11 14:28 windows_2016_docker_virtualbox.box
$ tar tvf windows_2016_docker_virtualbox.box
-rw-r--r-- 0 501 20 2286 Mar 11 14:27 Vagrantfile
-rw-r--r-- 0 501 20 10952051712 Mar 11 14:27 WindowsServer2016Docker-disk001.vmdk
-rw-r--r-- 0 501 20 10412 Mar 11 14:27 box.ovf
-rw-r--r-- 0 501 20 26 Mar 11 14:27 metadata.json
~/code/packer-windows on my*
Packer1.1.3ãšPacker1.2.1ã®éãã¯äœã§ããïŒ
func DirToBoxã¯1.2.1ã§ã¯å€§å¹ ã«ç°ãªããŸããïŒ
ç³ãèš³ãããŸããããgitã¯ããŸãåŸæã§ã¯ãªãã®ã§ãããªããè¡ã£ãããã«ãã®ã³ãŒãããã«ã¢ããããæ¹æ³ãããããŸãã
gitã®ããã¯ãpacker / post-processor / vagrant /util.goã®packer1.1.1以éã®å€æŽã瀺ããŠããŸããã
Packer1.1.3ã¯Go1.9ã§ã³ã³ãã€ã«ãããPacker1.2.1ã¯Go1.10ã§ã³ã³ãã€ã«ãããŸãã
ããã¯æ¬åœã«Golang1.10ã®åé¡ã®ããã«èŠããŸãã
packer / post-processor / vagrant / util.goãã¡ã€ã«ãå°ããªmain.goã«æœåºããpacker.Uiãªãã§DirToBox
é¢æ°ãåŒã³åºããŸããã
ãã®ã³ãŒããGolang1.9ã§ã³ã³ãã€ã«ãããšãäœæãããtarãã¡ã€ã«ã¯èŠæ ããããŸãã
ãã®ã³ãŒããGolang1.10ã§ã³ã³ãã€ã«ãããšãtarãã¡ã€ã«ã«ãŒããã€ãã®ãã¡ã€ã«ã衚瀺ãããŸãã
ãã®åé¡ã¯ãå§çž®ã¬ãã«= 0ã§ãçºçãããããpgzipããã±ãŒãžããç¬ç«ããŠããŸãã
ããŒãŠã£ã³ãã€ããªããã«ãããããã®ãµã³ãã«ãœãŒã¹dirtobox.go
ã Dockerfile
ãããã³build.sh
ã¹ã¯ãªããã¯ã次ã®èŠç¹ã«ãããŸãïŒ https ïŒ
倧ããªãã¡ã€ã«ã䜿çšããŠãµã³ãã«ã®in
ãã£ã¬ã¯ããªãäœæããDarwinçšã«dirtobox
ãã€ããªãã³ã³ãã€ã«ããŠããã¹ããå®è¡ããŸããã
$ ./build.sh
$ ls -l in
total 21509960
-rw-r--r-- 1 stefan staff 11012556800 Mar 12 15:11 abigfile.tar
-rw-r--r-- 1 stefan staff 6 Mar 12 15:08 asmallfile.txt
$ ./dirtobox
2018/03/12 15:35:02 Turning dir into box: in => out.tar
2018/03/12 15:35:02 Skipping directory 'in' for box 'out.tar'
2018/03/12 15:35:02 Box add: 'in/abigfile.tar' to 'out.tar'
Compressing: %s abigfile.tar
2018/03/12 15:35:32 Box add: 'in/asmallfile.txt' to 'out.tar'
Compressing: %s asmallfile.txt
$ ls -l out.tar
-rw-r--r-- 1 stefan staff 11012560384 Mar 12 15:27 out.tar
$ tar tvf out.tar
-rw-r--r-- 0 stefan staff 0 Mar 12 15:11 abigfile.tar
-rw-r--r-- 0 stefan staff 6 Mar 12 15:08 asmallfile.txt
Dockerfile
ãgolangïŒ1.9ã«æ»ã
FROM golang:1.9
WORKDIR /go/src/app
COPY . .
RUN go get -d -v ./...
RUN GOOS=darwin go build dirtobox.go
./build.sh
ãš./dirtobox
å床å®è¡ãããšãæ£ããtarãã¡ã€ã«ãçæãããŸãã
$ ls -l out.tar
-rw-r--r-- 1 stefan staff 11012559360 Mar 12 15:37 out.tar
$ tar tvf out.tar
-rw-r--r-- 0 501 20 11012556800 Mar 12 15:11 abigfile.tar
-rw-r--r-- 0 501 20 6 Mar 12 15:08 asmallfile.txt
8GByteãè¶ ãããã¡ã€ã«ã§çºçããããã§ãã
golangã§åé¡ãéãæéã§ããïŒ
åªããããªã¢ãŒãž@StefanScherer
ä»æ¥ãVagrantã§éåžžã«ãã䌌ãåé¡ãçºçããŸããããã¡ããã芧ãã ããã
Vagrant 2.0.3ã«çµã¿èŸŒãŸããŠããtarãŠãŒãã£ãªãã£ã®é·çã¯ã倧ããªãã¡ã€ã«ãå«ãã¢ãŒã«ã€ãã®è§£åã§åé¡ãçºçããŸã-bsdtarã䜿çšããŠããã¯ã¹tarã¢ãŒã«ã€ããããã¡ã€ã«ãæœåºãããšãéåžžã«ã¹ãªã ãªvmdkããŒããã€ãã«ãªããŸãïŒ å°ããç®±ã¯åé¡ãåŒãèµ·ãããŸããã
ã·ã¹ãã tarã¯ãåãããã¯ã¹/ tarã¢ãŒã«ã€ããããã¡ã€ã«ãæœåºããéã«åé¡ããªãããšã«æ³šæããŠãã ãã...
$ /opt/vagrant/embedded/bin/bsdtar --version
bsdtar 3.2.2 - libarchive 3.2.2 zlib/1.2.11 liblzma/5.2.3
$ tar --version
tar (GNU tar) 1.29
@ StefanScherer-åé¡ã®åå ãšãªã£ãŠããã®ã¯ã䜿çšããŠããtarããŒãžã§ã³ã§ã¯ãªãããšã確èªããŸããïŒ
@StefanSchereråèãŸã§ã«ïŒ
$ sw_vers
ProductName: Mac OS X
ProductVersion: 10.11.6
BuildVersion: 15G19009
$ go version
go version go1.10 darwin/amd64
$ packer version
Packer v1.2.2-dev...
@ basictheprogram @ StefanSchererç³ãèš³ãããŸãã-å ã®åé¡ãããã§ç¢ºèªããŸããã
ããã¯ãããã§å ±åãããŠããã®ãšåãåé¡ã§ããããã«ãŒã®åé¡ã§ã¯ãããŸããã
ãããºã¢ãããããŠããã
macOSã®bsdtarã«åé¡ãããå¯èœæ§ããããŸãã
Packerã®åé¡ã¯Golang1.10ã«ããããã§ãã ããã¯æããã«Golang1.9ãš1.10ã®éã§ç°ãªãtarãã¡ã€ã«ãäœæããŸãã
https://github.com/mholt/archiver/releasesããå¥ã®Goãã€ããªã䜿çšããŠãGolang1.9ããã³1.10ã§ã³ã³ãã€ã«ãããäžèšã®dirtoboxãµã³ãã«ã³ãŒãã§äœæãããtarãã¡ã€ã«ãæœåºããŸããã
ã¢ãŒã«ã€ãã¯ãdirtobox Golang1.9ãã€ããªã§äœæãããtarãã¡ã€ã«ãããã¡ã€ã«ãæœåºã§ããŸãã
ãããŠãã¢ãŒã«ã€ãã¯ãdirtobox Golang1.10ãã€ããªã§äœæãããtarãã¡ã€ã«ãæœåºãã空ã®ãã¡ã€ã«ãäœæããŸããã
ãã®ãã¹ãã«ã¯tar / bsdtarãã€ããªã¯å«ãŸããŠããŸããã§ããã
Vagrant 2.0.2ã®åã蟌ã¿bsdtarã䜿çšãããã¹ãã§ãã倧ããªãã¡ã€ã«ãæœåºã§ããŸã
$ /opt/vagrant/embedded/bin/bsdtar tvf out-go1.9.tar
-rw------- 0 501 20 10737418240 Mar 23 23:02 10Gigfile
$ /opt/vagrant/embedded/bin/bsdtar xvf out-go1.9.tar
x 10Gigfile
$ ls -l 10Gigfile
-rw------- 1 stefan staff 10737418240 Mar 23 23:02 10Gigfile
$ /opt/vagrant/embedded/bin/bsdtar tvf out-go1.10.tar
-rw------- 0 stefan staff 0 Mar 23 23:02 10Gigfile
$ /opt/vagrant/embedded/bin/bsdtar xvf out-go1.10.tar
x 10Gigfile
$ ls -l 10Gigfile
-rw------- 1 stefan staff 0 Mar 23 23:02 10Gigfile
@StefanSchererãã...
æè¿åé¡ãçºçããŸããããPacker1.1.3ã«æ»ãããšã§åé²ããããšãã§ããŸããã ä»ã«ã¢ã€ãã¢ã¯ãªããšæããŸããïŒ
ïŒãã©ã°ã€ã³ã®åé¡ã ãšæã£ãã®ã§ãåé¡ã¯https://github.com/Parallels/vagrant-parallels/issues/319ã«èšèŒãããŠããŸãïŒïŒ
ããã§ãããå°ã調æ»ããŸãã
OSX10.12ã§Packer1.1.2ã«æ»ãããšããã䜿çšã§ããå®å®ããBoxãäœæã§ããŸããã
OSX10.13ã§Packer1.1.2ã䜿çšããŠãã¹ãããŸããããäœããã®çç±ã§å€±æããŸãããïŒ ããŒããã©ã€ãã¯ããã0
ã ãšèšã£ãŠããŸãïŒ
$ tar -tvf sdk-mac.box
-rw-r--r-- 0 user group 180 27 Mar 12:57 Vagrantfile
-rw-r--r-- 0 user group 25 27 Mar 12:57 metadata.json
-rw-r--r-- 0 user group 65536 27 Mar 12:56 sdk-mac.pvm/NVRAM.dat
-rw-r--r-- 0 user group 7224 27 Mar 12:56 sdk-mac.pvm/VmInfo.pvi
-rw-r--r-- 0 user group 26381 27 Mar 12:56 sdk-mac.pvm/config.pvs
-rw-r--r-- 0 user group 1710 27 Mar 12:56 sdk-mac.pvm/harddisk.hdd/DiskDescriptor.xml
-rw-r--r-- 0 user group 0 27 Mar 12:56 sdk-mac.pvm/harddisk.hdd/harddisk.hdd
-rw-r--r-- 0 user group 0 27 Mar 12:57 sdk-mac.pvm/harddisk.hdd/harddisk.hdd.0.{5fbaabe3-6958-40ff-92a7-860e329aab41}.hds
-rw-r--r-- 0 user group 8816 27 Mar 12:57 sdk-mac.pvm/harddisk.hdd/harddisk.hdd.drh
ã ããééããªãã©ããã§ããã«ãŒã®åé¡ã®ããã«èŠããŸã...ç§ã¯æ¬åœã«ãããã®ãã·ã³ã§vagrantãåäœãããå¿ èŠãããã®ã§ãããããããã°ããã«ã¯ã©ãããã°ããã§ããïŒ
ãåèãŸã§ã«ã ã·ãšã©ã®ããã«ä»æ¥èªäœããæ°ããããã«ãŒãšgolangããããŸãã ãããŠããã€ã·ãšã©ã®æ°ããããã«ãŒã
@basictheprogramæŽæ°ããŠãããŠããããšãïŒ
äž¡æ¹ãHomebrewã§å©çšå¯èœãªææ°ã®PackerïŒ1.2.2ïŒã«æŽæ°ããŸãã
OSã®éã以å€ã«ããã®åé¡ã®åå ãä»ã«äœã§ãããããããŸãããïŒ
å¥åŠãªããšã«ã $ tar .box
ãå®è¡ãããšãäž¡æ¹ã®OSã§ããŒããã£ã¹ã¯ã®ãµã€ãºã0
ãšèããããŸãããSierra vagrant up
ãŠãåé¡ãªãåäœããŸãã ïŒã©ã¡ããVagrant 2.0.3ãå®è¡ããŠããŸãïŒã
ã·ãšã©ïŒ
$ tar tvf sdk-mac.box
-rw-r--r-- 0 user group 180 27 Mar 15:25 Vagrantfile
-rw-r--r-- 0 user group 25 27 Mar 15:25 metadata.json
-rw-r--r-- 0 user group 65536 27 Mar 15:23 sdk-mac.pvm/NVRAM.dat
-rw-r--r-- 0 user group 7224 27 Mar 15:23 sdk-mac.pvm/VmInfo.pvi
-rw-r--r-- 0 user group 26385 27 Mar 15:23 sdk-mac.pvm/config.pvs
-rw-r--r-- 0 user group 1710 27 Mar 15:23 sdk-mac.pvm/harddisk.hdd/DiskDescriptor.xml
-rw-r--r-- 0 user group 0 27 Mar 15:23 sdk-mac.pvm/harddisk.hdd/harddisk.hdd
-rw-r--r-- 0 user group 0 27 Mar 15:25 sdk-mac.pvm/harddisk.hdd/harddisk.hdd.0.{5fbaabe3-6958-40ff-92a7-860e329aab41}.hds
-rw-r--r-- 0 user group 6784 27 Mar 15:25 sdk-mac.pvm/harddisk.hdd/harddisk.hdd.drh
ãã€ã·ãšã©ïŒ
$ tar tvf sdk-mac.box
-rw-r--r-- 0 user group 180 27 Mar 15:29 Vagrantfile
-rw-r--r-- 0 user group 25 27 Mar 15:29 metadata.json
-rw-r--r-- 0 user group 65536 27 Mar 15:29 sdk-mac.pvm/NVRAM.dat
-rw-r--r-- 0 user group 7224 27 Mar 15:29 sdk-mac.pvm/VmInfo.pvi
-rw-r--r-- 0 user group 26381 27 Mar 15:29 sdk-mac.pvm/config.pvs
-rw-r--r-- 0 user group 1710 27 Mar 15:29 sdk-mac.pvm/harddisk.hdd/DiskDescriptor.xml
-rw-r--r-- 0 user group 0 27 Mar 15:29 sdk-mac.pvm/harddisk.hdd/harddisk.hdd
-rw-r--r-- 0 user group 0 27 Mar 15:29 sdk-mac.pvm/harddisk.hdd/harddisk.hdd.0.{5fbaabe3-6958-40ff-92a7-860e329aab41}.hds
-rw-r--r-- 0 user group 7728 27 Mar 15:29 sdk-mac.pvm/harddisk.hdd/harddisk.hdd.drh
ã€ã³ã¹ããŒã«ãããŠããã·ãšã©ã¢ããã°ã¬ãŒãããã«ãŒã«è¡ããŸãã
$ sw_vers
補ååïŒMac OS X
ProductVersionïŒ10.12.6
BuildVersionïŒ16G1212
$ goããŒãžã§ã³
goããŒãžã§ã³go1.10darwin / amd64
High Sierraã§ã¯ãã¢ããã°ã¬ãŒãããã«ãŒãã€ã³ã¹ããŒã«ãããŸããã§ãã
$ sw_vers
補ååïŒMac OS X
ProductVersionïŒ10.13.3
BuildVersionïŒ17D102
è¡ã$
$ ls -l / usr / local / bin / go *
lsïŒ/ usr / local / bin / go *ïŒãã®ãããªãã¡ã€ã«ãŸãã¯ãã£ã¬ã¯ããªã¯ãããŸãã
goãæåã§ã€ã³ã¹ããŒã«ããŸããããçŸåšã¯æ©èœããŠããŸãã
ä»ã®ã€ã³ã¹ããŒã«ã§ããããã¹ãŠã確èªããå¿ èŠããããŸãã
macOSçšã®Packer1.2.2ãã€ããªïŒhttps://releases.hashicorp.com/packer/1.2.2/packer_1.2.2_darwin_amd64.zipïŒã¯ãGolang1.8.1ã§ã³ã³ãã€ã«ãããŠããŸãã ç§ã¯ãããåã³åãã¯ãã ãšæããŸãã
Homebrew Packer1.2.2ã¯Golang1.10ã§ã³ã³ãã€ã«ãããŠããŸã
ãã€ããªãHashiCorpã«ãã£ãŠãã§ã«ãããã€ãããŠããã®ã«ããªããã€ããªãã³ã³ãã€ã«ããå¿
èŠãããã®ã§ããïŒ
çŽ æŽããã調æ»ãçããã ããã¯Packerã®ãã°ã§ã¯ãªããHomebrewã®ãã°ã®ããã«æããŸãããçãããåæããŸããïŒ ãã®ãã±ãããéããå¿ èŠããããŸããïŒ
ãã°ã¯Golangã«ãããããã«ãŒã¯ãã°ã®ããGolangã§ã³ã³ãã€ã«ãããŠãããšæããŸãã Hashicorpã¯ãGolang1.10ã䜿çšããŠããã«ãŒãã³ã³ãã€ã«ããå¿ èŠããããŸãã
ãã®ãŒãã€ããªã¯Homebrewã®ãã®ã§ãããHashiCorpãã€ããªã¯æ©èœããŠããããã«èãããŸããïŒ
誰ããHashiCorp1.2.2ãã€ããªããã¹ãããå¿ èŠããããŸãã ææ¥ãã¹ãã§ããŸãã
HashiCorp1.2.2ãåã³ã³ãã€ã«ããŠåãªãªãŒã¹ããŸãã golang1.10ã®ãã€ããªã«ãªããŸããã ææ°ã®golangã§ãããæã£ãŠããå¿ èŠããããŸãã
ããŒããã§ããããªããããã1.2.1ãšããŠå£ããŠããŸãã§ãããã
åé¿çãå¿
èŠãªäººã®ããã«ãgolang-1.8ã§ã³ã³ãã€ã«ããããã€ããªã次ã«ç€ºããŸãã
packer_1.2.2_darwin_amd64.zip ã 1.8ã§ã³ã³ãã€ã«ããããã®ããªãªãŒã¹ããã®ã¯å¶ç¶ã§ããããã®ãã°ãä¿®æ£ãããããšãã£ãŠãä»ã®äººã玹ä»ããªããšããããã§ã¯ãããŸããã
@basictheprogramãã§ãã¯ãè¡ã£ããšããç§ã®ã·ã¹ãã ã«ã¯ãã§ã«go
ã€ã³ã¹ããŒã«ãããŠããŸããã
$ sw_vers
ProductName: Mac OS X
ProductVersion: 10.12.6
BuildVersion: 16G1212
$ go version
go version go1.10 darwin/amd64
$ sw_vers
ProductName: Mac OS X
ProductVersion: 10.13.3
BuildVersion: 17D102
$ go version
go version go1.10 darwin/amd64
äžèšã®Packer1.2.2@SwampDragonsã®1.8ã³ã³ãã€ã«æžã¿ãã€ããªããã¹ãããŸããã
ã·ãšã©ïŒvagrantããã¯ã¹ã倱æããïŒããŒããã©ã€ããèŠã€ããããïŒ
High SierraïŒvagrant boxãåã³å€±æããŸããïŒåãåé¡ïŒ
1.10ã§ã³ã³ãã€ã«ãããããã©ã«ãã®Packer1.2.2ã®ãã¹ãïŒ
ã·ãšã©ïŒvagrantããã¯ã¹ã倱æããïŒããŒããã©ã€ããèŠã€ããããïŒ
High SierraïŒvagrant boxãåã³å€±æããŸããïŒåãåé¡ïŒ
.pvm
ãã¡ã€ã«ã¯å§çž®ããããšãã16GBã§ãåºåããã¯ã¹ã¯9GBã§ã...
ç§ã¯ãããç§ã®ã·ã¹ãã ãšé¢ä¿ããããšä»èãå§ããŠããŸãã
誰ãã1.2.2ãæ©èœããŠããããšã確èªã§ããŸããïŒãããããªããã©ã®ãããªèšå®ã§ããïŒ
ïŒå¥åŠãªããšã«ãBrew's Packerã䜿çšããŠSierraã§åäœããããšä»¥åã«èšããŸããããçŸåšã¯åäœããŠããŸãã...ïŒ
æåŸ ã©ãã@SwampDragons ïŒ
docker run -it -v $(pwd):/test -w /test ubuntu tar tvf windows_2016_docker_virtualbox-brew-packer-1.2.2-golang-1.10.box
ã³ã³ãããŒã§LinuxããŒãžã§ã³ã®ã¿ãè©ŠããŸããã@SwampDragonsç§ã¯
@SurferLç§ã®èšå®ïŒ
$ sw_vers
ProductName: Mac OS X
ProductVersion: 10.11.6
BuildVersion: 15G19009
$ go version
go version go1.10 darwin/amd64
$ packer version
Packer v1.2.2-dev...
Windows 2016ãã«ãããïŒGNU tarã䜿çšããŠïŒããã¯ã¹ã解åãããšã次ã®ããã«ãªããŸãã
.
âââ [ 340] vmware_desktop
âââ [ 983] Vagrantfile
âââ [ 30] metadata.json
âââ [ 8684] windows2016-vmware-iso.nvram
âââ [13725794304] windows2016-vmware-iso.vmdk
âââ [ 0] windows2016-vmware-iso.vmsd
âââ [ 3515] windows2016-vmware-iso.vmx
âââ [ 277] windows2016-vmware-iso.vmxf
1 directory, 7 files
ããããPackerã®åé¡ã§ã¯ãªãã@ StefanSchererãè¡ã£ãäœæ¥ã¯ãåé¡ãä»ã®å Žæã«ããããšã瀺åããŠããããã§ã...
ç·šéïŒäžèšã®@StefanSchererã®ã³ã¡ã³ããèŠã
ããã¯https://golang.org/doc/devel/release.html#go1.10.minorã§ä¿®æ£ãããŠããå¯èœæ§ããã
1.10.1ã§archive / zipã®ä¿®æ£ãèŠãããšãã§ããŸãã ç°¡ç¥åãããµã³ãã«ã³ãŒãã§è©ŠããŸãããããŸã åé¡ããããŸãã LinuxGolangãã€ããªã§ãçºçããŸãã macOS tarïŒbsdtarïŒã¯ãã¡ã€ã«ãµã€ãºãæ£ããèªã¿åãããšãã§ããŸããã
https://github.com/golang/go/issues/24599ãäœæããŸãã
ããã¯ãããŒãŠã£ã³çšã«go1.10.1ã§æ§ç¯ãããããã«ãŒã§ãã ããã§åé¡ã解決ãããã©ããããã¹ãããéã«å©ããŠããã ããã°å¹žãã§ãã
ã¢ããã¹ããªãŒã ã®ãã°ãå ±åããŠããã@StefanSchererã«æè¬ããŸãã ããã«ã¯ããããã®æçšãªæ å ±ããããŸã
ããªãã¯äœãã§ããŸããïŒ
Go1.10ã䜿çšãããšããŠãŒã¶ãŒã¯åºå圢åŒããã现ããå¶åŸ¡ã§ããŸãã libarchiveã®ãã°ãåé¿ããããã«ãtar.Header.Formatããtar.FormatGNUã確èªã§ããŸãã
ããã¯ããããã¹ãã ãšæãããŸãã 誰ããPRãæåºãããå Žåã¯ãæåºããŠãã ãããæåºããªãå Žåã¯ã次ã®ãã€ã³ããªãªãŒã¹ã®åé¿çãè¿œå ããŸãã å€ãããŒãžã§ã³ã®goã§packerãã³ã³ãã€ã«ããããšã¯ãä»ã®ãšããå®è¡å¯èœãªåé¿çã«ãªãã¯ãã§ãã
ããã€ãã®ãã¹ãã®åŸã«è¡ããŸãã
@mwhookerãæäŸããDarwinçšã®go1.10.1ã§ãã«ããããPackerã§ãåããšã©ãŒãçºçããã®ã§ã¯ãªãããš.box
ã¯ãããããããã¯ã¹ãµã€ãºã12GBã®ç©ºã®ããŒããã£ã¹ã¯ãå«ãŸããŠããŸã
$ tar -tvf sdk-mac.box
-rw-r--r-- 0 user group 180 3 Apr 11:26 Vagrantfile
-rw-r--r-- 0 user group 25 3 Apr 11:26 metadata.json
-rw-r--r-- 0 user group 65536 3 Apr 11:25 sdk-mac.pvm/NVRAM.dat
-rw-r--r-- 0 user group 7224 3 Apr 11:25 sdk-mac.pvm/VmInfo.pvi
-rw-r--r-- 0 user group 26381 3 Apr 11:25 sdk-mac.pvm/config.pvs
-rw-r--r-- 0 user group 1710 3 Apr 11:25 sdk-mac.pvm/harddisk.hdd/DiskDescriptor.xml
-rw-r--r-- 0 user group 0 3 Apr 11:25 sdk-mac.pvm/harddisk.hdd/harddisk.hdd
-rw-r--r-- 0 user group 0 3 Apr 11:26 sdk-mac.pvm/harddisk.hdd/harddisk.hdd.0.{5fbaabe3-6958-40ff-92a7-860e329aab41}.hds
-rw-r--r-- 0 user group 8336 3 Apr 11:26 sdk-mac.pvm/harddisk.hdd/harddisk.hdd.drh
ïŒãããŠvagrant up
å®è¡
Packer 1.1.3
ã䜿çšããŠãïŒ vagrant up
ããŒããã£ã¹ã¯ïŒãšã©ãŒãçºçããã®ã§ãã·ã¹ãã ã«åé¡ããããã©ããããããŸãããïŒ
ããŒããã£ã¹ã¯ã¯ããã§åæåãããŠããããã§ããïŒ
$ tar -tvf sdk-mac.box
-rw-r--r-- 0 501 20 180 3 Apr 12:24 Vagrantfile
-rw-r--r-- 0 501 20 25 3 Apr 12:24 metadata.json
-rw-r--r-- 0 501 20 65536 3 Apr 12:23 sdk-mac.pvm/NVRAM.dat
-rw-r--r-- 0 501 20 7224 3 Apr 12:23 sdk-mac.pvm/VmInfo.pvi
-rw-r--r-- 0 501 20 26381 3 Apr 12:23 sdk-mac.pvm/config.pvs
-rw-r--r-- 0 501 20 1710 3 Apr 12:23 sdk-mac.pvm/harddisk.hdd/DiskDescriptor.xml
-rw-r--r-- 0 501 20 0 3 Apr 12:23 sdk-mac.pvm/harddisk.hdd/harddisk.hdd
-rw-r--r-- 0 501 20 19503513600 3 Apr 12:24 sdk-mac.pvm/harddisk.hdd/harddisk.hdd.0.{5fbaabe3-6958-40ff-92a7-860e329aab41}.hds
-rw-r--r-- 0 501 20 7472 3 Apr 12:24 sdk-mac.pvm/harddisk.hdd/harddisk.hdd.drh
brewããpackerãè©ŠããŸãããïŒ
@basictheprogramãããç§ã¯ææ°ã®1.2.2ãè©ŠããBrewã§1.1.3ã«æ»ããŸããããã©ã¡ããäžèšã®åãåé¡ã§ã¯æ©èœããŸããã§ãã
@SurferL vagrant box add...
ãŸããïŒ tarã®Vagrantsåã蟌ã¿ããŒãžã§ã³ã¯ãPackerã«å ããããä¿®æ£ã«é¢ä¿ãªãããããã®åé¡ãåŒãèµ·ãããšç¢ºä¿¡ããŠããŸãã ããã§ç§ã®ã³ã¡ã³ããåç
§ããŠ
é·ããçãããVagrantã®æ¬¡ã®ããŒãžã§ã³ããªãªãŒã¹ããããŸã§ãbsdtarã§ã¯ãªãGNU tarã䜿çšããŠã.vagrant.d ...ãã£ã¬ã¯ããªå ã®é©åãªå Žæã«ããã¯ã¹ãæåã§è§£åããå¿ èŠãããå ŽåããããŸãã
@DanHamææããŠãããŠããããšã-ç§ã¯vagrant box add
ã䜿çšããŠããªãã£ãã®ã§ããã«ãã¯Packer 1.1.3
ïŒ
ããã«ããã€ãã®æ
å ±ïŒ
brewããPacker 1.2.2
ã䜿çšããïŒãããŠvagrant box add
ã䜿çšããããšã¯æ©èœããŸããã§ããïŒããŸãããŒãŠã£ã³çšã«go 1.10.1ã§æ§ç¯ãããPackerã䜿çšããïŒãããŠvagrant box add
ïŒ...
_ 30æ¥é_â³ã¯ããŒãºãããããããã®åé¡ãããã¯ããŸãã ããã¯ãã¡ã³ãããã¢ã¯ãã£ããªåé¡ãèŠã€ããŠéäžããã®ã«åœ¹ç«ã¡ãŸãã
ããã«é¡äŒŒããŠãããšæãããåé¡ãèŠã€ããå Žåã¯ãæ°ããåé¡ãéããŠåé¡ãã³ãã¬ãŒãã«èšå ¥ããŠãã ãããããã«ãããããã«èª¿æ»ããããã«å¿ èŠãªãã¹ãŠã®è©³çŽ°ãååŸã§ããŸãã
æãåèã«ãªãã³ã¡ã³ã
gitã®ããã¯ãpacker / post-processor / vagrant /util.goã®packer1.1.1以éã®å€æŽã瀺ããŠããŸããã
Packer1.1.3ã¯Go1.9ã§ã³ã³ãã€ã«ãããPacker1.2.1ã¯Go1.10ã§ã³ã³ãã€ã«ãããŸãã
ããã¯æ¬åœã«Golang1.10ã®åé¡ã®ããã«èŠããŸãã
packer / post-processor / vagrant / util.goãã¡ã€ã«ãå°ããªmain.goã«æœåºããpacker.Uiãªãã§
DirToBox
é¢æ°ãåŒã³åºããŸããããã®ã³ãŒããGolang1.9ã§ã³ã³ãã€ã«ãããšãäœæãããtarãã¡ã€ã«ã¯èŠæ ããããŸãã
ãã®ã³ãŒããGolang1.10ã§ã³ã³ãã€ã«ãããšãtarãã¡ã€ã«ã«ãŒããã€ãã®ãã¡ã€ã«ã衚瀺ãããŸãã
ãã®åé¡ã¯ãå§çž®ã¬ãã«= 0ã§ãçºçãããããpgzipããã±ãŒãžããç¬ç«ããŠããŸãã
ããŒãŠã£ã³ãã€ããªããã«ãããããã®ãµã³ãã«ãœãŒã¹
dirtobox.go
ãDockerfile
ãããã³build.sh
ã¹ã¯ãªããã¯ã次ã®èŠç¹ã«ãããŸãïŒ https ïŒå€§ããªãã¡ã€ã«ã䜿çšããŠãµã³ãã«ã®
in
ãã£ã¬ã¯ããªãäœæããDarwinçšã«dirtobox
ãã€ããªãã³ã³ãã€ã«ããŠããã¹ããå®è¡ããŸãããDockerfile
ãgolangïŒ1.9ã«æ»ã./build.sh
ãš./dirtobox
å床å®è¡ãããšãæ£ããtarãã¡ã€ã«ãçæãããŸãã