Adrien Delorme
9f82b75e57
Use the hashicorp/go-getter to download files
...
* removed packer.Cache and references since packer.Cache is never used except in the download step. The download step now uses the new func packer.CachePath(targetPath) for this, the behavior is the same.
* removed download code from packer that was reimplemented into the go-getter library: progress bar, http download restart, checksuming from file, skip already downloaded files, symlinking, make a download cancellable by context.
* on windows if packer is running without symlinking rights and we are getting a local file, the file will be copied instead to avoid errors.
* added unit tests for step_download that are now CI tested on windows, mac & linux.
* files are now downloaded under cache dir `sha1(filename + "?checksum=" + checksum) + file_extension`
* since the output dir is based on the source url and the checksum, when the checksum fails, the file is auto deleted.
* a download file is protected and locked by a file lock,
* updated docs
* updated go modules and vendors
2019-03-13 12:11:58 +01:00
Adrien Delorme and Matthew Patton
b7222d1f56
Add tmp package that offers Dir & File funcs
...
this regroups the calls of tmp func calls into one package.
the tmp pkg allows to store tmp files under a common directory for easier managment
Squashed commit of the following:
commit 74b674c015
Merge: fc94b5714 66001525d
Author: Matthew Patton <[email protected] >
Date: Fri Nov 2 02:02:38 2018 -0400
Merge branch 'remove_TMPDIR_docs' of github.com:tb3088/packer into remove_TMPDIR_docs
commit fc94b57142
Author: Matthew Patton <[email protected] >
Date: Fri Nov 2 01:42:38 2018 -0400
update tests to honor configured temporary directory
commit 5a562359f4
Author: Matthew Patton <[email protected] >
Date: Thu Nov 1 18:52:38 2018 -0400
sync straggler to refactor. implement tests at packer/configfile instead of buried in docker.
commit 9d5a4a0935
Author: Matthew Patton <[email protected] >
Date: Thu Nov 1 15:39:46 2018 -0400
insert URL to GoLang API for os.TempDir()
commit fbae4c2e05
Author: Matthew Patton <[email protected] >
Date: Thu Nov 1 07:41:29 2018 -0400
revise documentation to match code
commit 3590fae8bd
Author: Matthew Patton <[email protected] >
Date: Thu Nov 1 07:21:59 2018 -0400
refacter config_file. replace all hard-coded os.TempDir with wrapper
commit d5c5306a97
Author: Matthew Patton <[email protected] >
Date: Wed Oct 31 20:11:36 2018 -0400
close massive file overwrite hole with TempDir
commit 0a72297da8
Author: Matthew Patton <[email protected] >
Date: Wed Oct 31 01:06:00 2018 -0400
adjust var declaration scope
commit 20f68228b6
Author: Matthew Patton <[email protected] >
Date: Wed Oct 31 00:54:35 2018 -0400
use mktemp() equivalent to create temporary directory
commit c73ebe3d83
Author: Matthew Patton <[email protected] >
Date: Tue Oct 30 20:40:58 2018 -0400
remove extraneous variable declaration, fix FOR loop
commit 63549b8bd7
Author: Matthew Patton <[email protected] >
Date: Tue Oct 30 19:30:44 2018 -0400
match styistic convension with rest of docs
commit 9761010749
Author: Matthew Patton <[email protected] >
Date: Tue Oct 30 19:08:39 2018 -0400
revert dangling config file change
commit 95159afbc0
Author: Matthew Patton <[email protected] >
Date: Fri Dec 29 23:53:43 2017 -0500
replace invalid TMPDIR variable wth PACKER_TMP_DIR.
update ConfigTmpDir() to try common temporary paths first and
only write to configDir() as a last resort.
commit 66001525d7
Author: Matthew Patton <[email protected] >
Date: Fri Nov 2 01:42:38 2018 -0400
update tests to honor configured temporary directory
commit e9b6adefea
Author: Matthew Patton <[email protected] >
Date: Thu Nov 1 18:52:38 2018 -0400
sync straggler to refactor. implement tests at packer/configfile instead of buried in docker.
commit 852113ed07
Author: Matthew Patton <[email protected] >
Date: Thu Nov 1 15:39:46 2018 -0400
insert URL to GoLang API for os.TempDir()
commit 54add38d1d
Author: Matthew Patton <[email protected] >
Date: Thu Nov 1 07:41:29 2018 -0400
revise documentation to match code
commit 6b5b8f6d4e
Author: Matthew Patton <[email protected] >
Date: Thu Nov 1 07:21:59 2018 -0400
refacter config_file. replace all hard-coded os.TempDir with wrapper
commit c22092c601
Author: Matthew Patton <[email protected] >
Date: Wed Oct 31 20:11:36 2018 -0400
close massive file overwrite hole with TempDir
commit 7a73045091
Author: Matthew Patton <[email protected] >
Date: Wed Oct 31 01:06:00 2018 -0400
adjust var declaration scope
commit 0f2933adb6
Author: Matthew Patton <[email protected] >
Date: Wed Oct 31 00:54:35 2018 -0400
use mktemp() equivalent to create temporary directory
commit d74839ede0
Author: Matthew Patton <[email protected] >
Date: Tue Oct 30 20:40:58 2018 -0400
remove extraneous variable declaration, fix FOR loop
commit eb65416619
Author: Matthew Patton <[email protected] >
Date: Tue Oct 30 19:30:44 2018 -0400
match styistic convension with rest of docs
commit acaa2b31ed
Author: Matthew Patton <[email protected] >
Date: Tue Oct 30 19:08:39 2018 -0400
revert dangling config file change
commit e573fde668
Author: Matthew Patton <[email protected] >
Date: Fri Dec 29 23:53:43 2017 -0500
replace invalid TMPDIR variable wth PACKER_TMP_DIR.
update ConfigTmpDir() to try common temporary paths first and
only write to configDir() as a last resort.
commit 39a9874afc
Merge: 8a413cfe8 3315812c2
Author: Matthew Patton <[email protected] >
Date: Tue Oct 30 18:19:26 2018 -0400
Merge branch 'master' of https://github.com/hashicorp/packer into prestine
commit 8a413cfe83
Merge: e07491de5 4e14710a6
Author: Matthew Patton <[email protected] >
Date: Mon Oct 1 20:18:10 2018 -0400
Merge remote-tracking branch 'upstream/master' into prestine
commit e07491de59
Merge: 42610a35d a1fa35dff
Author: Matthew Patton <[email protected] >
Date: Tue Aug 21 13:26:19 2018 -0400
Merge remote-tracking branch 'upstream/master' into prestine
commit 42610a35d5
Merge: 5298142da 0d63cf7bc
Author: Matthew Patton <[email protected] >
Date: Tue Jun 19 22:45:05 2018 -0400
Merge remote-tracking branch 'upstream/master' into prestine
commit 5298142da6
Merge: 7bb110bc7 9d9736552
Author: Matthew Patton <[email protected] >
Date: Mon Jun 11 15:10:09 2018 -0400
Merge remote-tracking branch 'upstream/master' into prestine
commit 7bb110bc74
Merge: a61c869ca 6189d66e7
Author: Matthew Patton <[email protected] >
Date: Wed May 9 23:41:22 2018 -0400
Merge remote-tracking branch 'upstream/master' into prestine
commit a61c869ca7
Merge: 098101dd9 4be5f072c
Author: Matthew Patton <[email protected] >
Date: Fri May 4 10:13:04 2018 -0400
Merge remote-tracking branch 'upstream/master' into prestine
commit 098101dd99
Merge: fefaf0fa6 554b2b4a5
Author: Matthew Patton <[email protected] >
Date: Tue May 1 20:52:30 2018 -0400
Merge branch 'EOL-handling' into prestine
Co-Authored-By: Matthew Patton <[email protected] >
2018-12-12 16:35:57 +01:00
Megan Marsh
57dd1c3ca2
Merge pull request #6543 from thedrow/lxc-root-path
...
Determine lxc root according to the running user
2018-08-06 11:34:01 -07:00
Omer Katz
26dd6441e0
Locate lxc root directory when exporting as well.
2018-07-29 16:14:17 +03:00
Omer Katz
808df82eea
Remove privilege escalation with sudo when copying files. Preserve file permission mapping when copying files.
2018-07-29 16:03:01 +03:00
Omer Katz
e5b740e223
Determine lxc root according to the running user.
2018-07-29 13:16:41 +03:00
Chris Lundquist
c925a02f82
don't chown to close the security issue
2018-05-16 21:40:22 +00:00
Matthew Hooker
ff64ccda55
Merge pull request #5426 from hashicorp/fix_4915
...
Fix 4915
2018-02-05 14:54:27 -08:00
Matthew Hooker
7a189a83a1
fix imports
...
`find . -type f -name '*.go' -not -path "./vendor/*" -exec goimports -w {} \;`
2018-01-24 17:09:17 -08:00
Matthew Hooker
a831d522be
change run signatures
...
Run now takes a context as well as a statebag. We'll assign the context
to the blank identifier to prevent namespace collisions. We'll let the
step authors opt-in to using the context.
`find . -iname "step_*.go" -exec gsed -i'' 's/func \(.*\)Run(/func \1Run(_ context.Context, /' {} \;`
2018-01-24 17:09:17 -08:00
Matthew Hooker
366dc3da0a
move multistep imports to helper.
...
gomvpkg -from "github.com/mitchellh/multistep" -to "github.com/hashicorp/packer/helper/multistep"
2018-01-24 17:09:15 -08:00
Matthew Hooker
ebe995c0ff
run goimports
2018-01-22 17:21:10 -08:00
Matt Schreiber
1f2135f65e
Add options to LXC builder for influencing for how containers are built and started
...
via
- create_options: a list of options passed to lxc-create
- start_options: a list of options passed to lxc-start
- attach_options: a list of options passed to lxc-attach
Also extended existing LXC builder BATS tests to exercise the new builder
options, and added website docs.
2017-10-30 21:48:43 -04:00
Megan Marsh
e8cabc1e83
implemented for LXD
2017-10-04 15:23:36 -07:00
Megan Marsh
93bddb3e65
implement directory fix for lxc file uploads
2017-10-04 13:35:15 -07:00
Megan Marsh
8d24b3930a
cleanup imports and rebase artifacts
2017-09-05 15:23:22 -07:00
Chris Lundquist
cd2a783382
[lxc] update to new conventions, improve docs
2017-09-05 15:19:25 -07:00
Chris Lundquist
5eb1bc9338
[lxc] go fmt our files
2017-09-05 15:18:07 -07:00
Chris Lundquist
9b4a7e935f
[lxc] add basic tests
2017-09-05 15:18:07 -07:00
Chris Lundquist
2d19b4f2d2
Revert "[lxc] only build for linux. Ignore vim swp files."
...
This reverts commit 60409dc678 .
2017-09-05 15:17:15 -07:00
Chris Lundquist
8b4e94d9c6
[lxc] remove commented code
2017-09-05 15:17:15 -07:00
Chris Lundquist
e23920a6b9
[lxc] only build for linux. Ignore vim swp files.
2017-09-05 15:17:15 -07:00
Chris Lundquist
15c18c83a9
[lxc] default to target runlevel 3
2017-09-05 15:17:15 -07:00
Chris Lundquist
ddbb584235
[lxc] Ubuntu likes runlevel 5
2017-09-05 15:17:15 -07:00
Chris Lundquist
341ebdd7e8
[lxc] implement interface, add validation
2017-09-05 15:17:15 -07:00
Michele Catalano
659a0da594
Add lxc builder to packer
2017-09-05 15:15:28 -07:00