Commit graph

139 commits

Author SHA1 Message Date
Adrien Delorme
4cb7c30987 Merge remote-tracking branch 'origin/master' into scrape_doc_to_builder_struct_config 2019-08-21 16:44:23 +02:00
Megan Marsh
e54b1cedd9 text/template turns out to swallow custom error types. 2019-07-08 15:39:46 -07:00
Megan Marsh
2bbc3d50d7 better error handling when using interpolate funcs; don't swallow func errors 2019-07-08 13:49:14 -07:00
Adrien Delorme
c11ef90cb6 use interpolate.NewContext() instead of testConfigTemplate(t)
because it's what's happenning there
2019-06-14 12:17:28 +02:00
Adrien Delorme
d8d5631dc2 allow to set provisioner timeout from buildfile 2019-04-08 20:09:21 +02:00
Adrien Delorme
a81abd297b Merge remote-tracking branch 'origin/master' into context_provisioner 2019-04-08 20:09:01 +02:00
Megan Marsh
056fcb7cea fix tests and add a few new ones 2019-04-03 11:32:49 -07:00
Adrien Delorme
c4f3dccc14 rename interpolation context from ctx to ictx and contexts to ctx to avoid conflicts 2019-04-03 15:56:15 +02:00
Megan Marsh
12fc1fa751 default_keep_input_artifact 2019-04-02 16:51:58 -07:00
Megan Marsh
bf0d7b3620 make it work and add tests 2019-03-13 10:49:13 -07:00
Brendan Devenney
328cbf4e42
Merge branch 'master' into feature/7322 2019-02-27 19:29:18 +00:00
Brendan Devenney
4d2a5fb9a2
Implement template marshalling logic
Signed-off-by: Brendan Devenney <brendan@devenney.io>
2019-02-23 22:41:07 +00:00
Brendan Devenney
afba444373
Refactor rawTemplate to better align with real raw template structure
Signed-off-by: Brendan Devenney <brendan@devenney.io>
2019-02-23 21:42:27 +00:00
Brendan Devenney
610eecfc99
Track sensitive variable keys to support JSON template writing
Signed-off-by: Brendan Devenney <brendan@devenney.io>
2019-02-23 04:52:03 +00:00
Brendan Devenney
d8793e3f85
Store comments in the Template structure
Signed-off-by: Brendan Devenney <brendan@devenney.io>
2019-02-23 04:37:08 +00:00
Adrien Delorme
944c00900e parse_test.go: still display file name in case of error 2019-02-20 12:54:57 +01:00
Adrien Delorme
c12e9eea3a template/parse_test.go: name the post-processors to their type as it's now the default 2019-02-20 12:49:21 +01:00
Adrien Delorme
b6b3cc901c template/parse_test.go: use diff for easier eye debug 2019-02-20 12:48:52 +01:00
Adrien Delorme
5eccbc702d name a post-processor to it's type if it is not named 2019-02-20 12:38:30 +01:00
Adrien Delorme
4bf3cd44fc allow to skip a post processor 2019-01-10 15:44:34 +01:00
Adrien Delorme
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 <mpatton@enquizit.com>
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 <mpatton@enquizit.com>
Date:   Fri Nov 2 01:42:38 2018 -0400

    update tests to honor configured temporary directory

commit 5a562359f4
Author: Matthew Patton <mpatton@enquizit.com>
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 <mpatton@enquizit.com>
Date:   Thu Nov 1 15:39:46 2018 -0400

    insert URL to GoLang API for os.TempDir()

commit fbae4c2e05
Author: Matthew Patton <mpatton@enquizit.com>
Date:   Thu Nov 1 07:41:29 2018 -0400

    revise documentation to match code

commit 3590fae8bd
Author: Matthew Patton <mpatton@enquizit.com>
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 <mpatton@enquizit.com>
Date:   Wed Oct 31 20:11:36 2018 -0400

    close massive file overwrite hole with TempDir

commit 0a72297da8
Author: Matthew Patton <mpatton@enquizit.com>
Date:   Wed Oct 31 01:06:00 2018 -0400

    adjust var declaration scope

commit 20f68228b6
Author: Matthew Patton <mpatton@enquizit.com>
Date:   Wed Oct 31 00:54:35 2018 -0400

    use mktemp() equivalent to create temporary directory

commit c73ebe3d83
Author: Matthew Patton <mpatton@enquizit.com>
Date:   Tue Oct 30 20:40:58 2018 -0400

    remove extraneous variable declaration, fix FOR loop

commit 63549b8bd7
Author: Matthew Patton <mpatton@enquizit.com>
Date:   Tue Oct 30 19:30:44 2018 -0400

    match styistic convension with rest of docs

commit 9761010749
Author: Matthew Patton <mpatton@enquizit.com>
Date:   Tue Oct 30 19:08:39 2018 -0400

    revert dangling config file change

commit 95159afbc0
Author: Matthew Patton <matthew.patton@itgfirm.com>
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 <mpatton@enquizit.com>
Date:   Fri Nov 2 01:42:38 2018 -0400

    update tests to honor configured temporary directory

commit e9b6adefea
Author: Matthew Patton <mpatton@enquizit.com>
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 <mpatton@enquizit.com>
Date:   Thu Nov 1 15:39:46 2018 -0400

    insert URL to GoLang API for os.TempDir()

commit 54add38d1d
Author: Matthew Patton <mpatton@enquizit.com>
Date:   Thu Nov 1 07:41:29 2018 -0400

    revise documentation to match code

commit 6b5b8f6d4e
Author: Matthew Patton <mpatton@enquizit.com>
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 <mpatton@enquizit.com>
Date:   Wed Oct 31 20:11:36 2018 -0400

    close massive file overwrite hole with TempDir

commit 7a73045091
Author: Matthew Patton <mpatton@enquizit.com>
Date:   Wed Oct 31 01:06:00 2018 -0400

    adjust var declaration scope

commit 0f2933adb6
Author: Matthew Patton <mpatton@enquizit.com>
Date:   Wed Oct 31 00:54:35 2018 -0400

    use mktemp() equivalent to create temporary directory

commit d74839ede0
Author: Matthew Patton <mpatton@enquizit.com>
Date:   Tue Oct 30 20:40:58 2018 -0400

    remove extraneous variable declaration, fix FOR loop

commit eb65416619
Author: Matthew Patton <mpatton@enquizit.com>
Date:   Tue Oct 30 19:30:44 2018 -0400

    match styistic convension with rest of docs

commit acaa2b31ed
Author: Matthew Patton <mpatton@enquizit.com>
Date:   Tue Oct 30 19:08:39 2018 -0400

    revert dangling config file change

commit e573fde668
Author: Matthew Patton <matthew.patton@itgfirm.com>
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 <mpatton@enquizit.com>
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 <mpatton@enquizit.com>
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 <mpatton@enquizit.com>
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 <matthew.patton@itgfirm.com>
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 <mpatton@enquizit.com>
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 <matthew.patton@itgfirm.com>
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 <matthew.patton@itgfirm.com>
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 <matthew.patton@itgfirm.com>
Date:   Tue May 1 20:52:30 2018 -0400

    Merge branch 'EOL-handling' into prestine

Co-Authored-By: Matthew Patton <pattonme@yahoo.com>
2018-12-12 16:35:57 +01:00
Wheeler Law
4582a55680 Formatting 2018-11-05 12:30:41 -08:00
Wheeler Law
1fdce9dada Tests are passing 2018-11-05 12:30:41 -08:00
Wheeler Law
de3bdec567 Working now 2018-11-05 12:30:41 -08:00
Wheeler Law
65c1b039cc Added a sed function. Not quite working yet 2018-11-05 12:30:41 -08:00
Adrien Delorme
379336d9b2 make template/parse_test.go invisible to windows 2018-10-16 19:02:10 +02:00
Megan Marsh
174098ba29 implement vault template function for kv engine; add docs 2018-08-28 13:58:56 -07:00
Megan Marsh
dfaf624f4c add template function allowing user to read keys from vault
update dependencies
add minimal docs
2018-08-28 11:23:47 -07:00
Olivier Ceyral
ee08365b02 Fix error message 2018-08-28 11:04:33 -07:00
Olivier Ceyral
a906d1d630 Add consul template function 2018-08-28 11:04:33 -07:00
Megan Marsh
6356078d19 add a few more tests to split function 2018-08-24 15:27:14 -07:00
Megan Marsh
8fbce8c40c
Merge pull request #6357 from ladar/master
Added a 'split' function to parse template variables.
2018-08-24 15:18:36 -07:00
Megan Marsh
8a6441a7a5 add tests for SensitiveVars 2018-08-21 10:28:22 -07:00
Megan Marsh
ff6a039d5b replace scrubconfig with packer.LogSecretFilter.Set
filter winrm password from logs
Add new root-level packer template option, sensitive-variables, to tell us what user variables to mark sensitive.
2018-08-20 15:35:55 -07:00
Ladar Levison
8fee49ab9f Added a 'split' function to parse template variables. 2018-06-08 00:41:57 -05:00
Krzysztof Wilczynski
7d80e37c14
Add new packer_version function.
Signed-off-by: Krzysztof Wilczynski <kw@linux.com>
2017-11-21 22:04:33 +01:00
Ben Root
5beca186d7 Unit test to verify that parsing fails on a certain kind of malformed JSON 2017-05-19 16:42:42 -04:00
Matthew Hooker
3fe1f20770
use json unmarshal instead of json decoder
this should let us catch json syntax errors.
2017-05-19 12:02:48 -07:00
Matthew Hooker
81522dced0
move packer to hashicorp 2017-04-04 13:39:01 -07:00
Matthew Hooker
d1b20b3d9c
remove a bunch of dead code.
https://github.com/dominikh/go-tools/tree/master/cmd/unused
2017-03-28 20:36:20 -07:00
Matthew Hooker
db49f10cad
update changelog 2017-02-03 23:15:18 -08:00
Matthew Hooker
5ea0eb0ec6
print time.Time with %v 2016-12-06 16:47:08 -08:00
Matthew Hooker
d920b3fbf4 run gofmt 2016-11-01 14:08:04 -07:00
Jake Champlin
aca4aed47c Display better error messages on json.SyntaxError
Better display an error message on an encounter of a json.SyntaxError.

Rolls back the file position, to read the entire file, then steps
through the file reading a single byte at a time, populating lines until
encountering the syntax error. Then relays the offending line as well as
the previous line in the file to the user, also placing a `^` that
points the the offending column of the decoder error.

```
➤  packer validate template.json
Failed to parse template: Error parsing JSON: invalid character '"' after object key:value pair
At line 9, column 8 (offset 121):
    8:       "name": "vbox"
    9:       "
```
2016-02-10 14:52:26 -05:00
Mark Peek
71ed8e4a38 Fix #2742: Include template line numbers on error 2015-10-25 12:28:06 -07:00
Mark Peek
5ef142c8bd Fixes #2777: isotime interpolation uses InitTime 2015-10-06 16:45:30 -07:00
Mitchell Hashimoto
fd2d44c212 helper/config: copy buildname/buildtype properly 2015-06-30 10:42:55 -07:00
Mitchell Hashimoto
723b91ccf3 Merge pull request #2232 from mitchellh/f-build-name
core: add build_name and build_type functions
2015-06-15 09:42:22 -07:00
Mitchell Hashimoto
d6f8ec9315 Merge pull request #2230 from mitchellh/f-json-comments
template: allow _ prefix to root level keys for comments [GH-2066]
2015-06-15 09:38:33 -07:00
Mitchell Hashimoto
1d94e0f8e3 template: abslute path for template path 2015-06-13 22:50:02 -07:00
Mitchell Hashimoto
f1b3c8a7ae template/interpolate: build_name and build_type functions 2015-06-13 16:48:35 -04:00
Mitchell Hashimoto
facbb6577d template: allow _ prefix to root level keys for comments [GH-2066] 2015-06-13 16:19:25 -04:00
James G. Kim
d7c77895dc Add tests for only and except of post-processors 2015-06-05 12:26:33 +09:00
James G. Kim
a5818b158f Fixes 'unknown configuration key' errors for 'only' and 'except' 2015-06-05 12:26:17 +09:00
Mitchell Hashimoto
579264bb5b command/push: interpolate 2015-05-29 15:35:55 -07:00
Mitchell Hashimoto
639e63fd7c packer: test for template path 2015-05-29 14:29:32 -07:00
Mitchell Hashimoto
31d6dcb656 template: template path is the directory 2015-05-29 14:06:17 -07:00
Mitchell Hashimoto
2b9e52e743 template: stores the path 2015-05-29 14:05:13 -07:00
Mitchell Hashimoto
2752e51e09 template/interpolate: add template_path 2015-05-29 13:55:59 -07:00
Mitchell Hashimoto
27e525e508 update CHANGELOG 2015-05-28 15:19:22 -07:00
Mitchell Hashimoto
f8c877771d Merge branch 'f-packer-push-name' 2015-05-28 15:18:36 -07:00
Mitchell Hashimoto
f5945eeb1b vmware/iso: new interpolation 2015-05-27 14:16:28 -07:00
Mitchell Hashimoto
034e4e676c amazon/*: use new interpolation functions 2015-05-27 11:47:45 -07:00
Mitchell Hashimoto
becd6dacd7 template/interpolate: support custom functions 2015-05-27 11:10:09 -07:00
Mitchell Hashimoto
71932cccc9 template/interpolate: export RenderInterface 2015-05-27 10:10:58 -07:00
Mitchell Hashimoto
9d2e926808 template/interpolate: filter is case insensitive 2015-05-27 10:09:11 -07:00
Mitchell Hashimoto
41a6fe9fda template/interpolate: RenderMap to render a complex structure 2015-05-27 10:07:51 -07:00
Mitchell Hashimoto
b9eea82a36 template: add tests for RawContents 2015-05-26 09:41:42 -07:00
Mitchell Hashimoto
2fb08be192 template: store Rawcontents 2015-05-26 09:38:02 -07:00
Mitchell Hashimoto
b5f4ffa56c template: OnlyExcept skipping 2015-05-26 09:07:16 -07:00
Mitchell Hashimoto
3ebfe06ec8 packer: render build names 2015-05-23 16:12:32 -07:00
Mitchell Hashimoto
47b570a2d2 template/interpolate: flip disable to enableenv 2015-05-23 16:06:11 -07:00
Mitchell Hashimoto
97a48e35bb template: ParseFile 2015-05-23 15:44:54 -07:00
Mitchell Hashimoto
28dc1c2aed template: validate post-processor only/except 2015-05-21 15:42:12 -06:00
Mitchell Hashimoto
637fabc1c7 template: validate only/except 2015-05-21 15:39:32 -06:00
Mitchell Hashimoto
2f7e95cc46 template: Validate 2015-05-21 15:29:45 -06:00
Mitchell Hashimoto
2e4dd63912 template: parse push 2015-05-21 14:44:29 -06:00
Mitchell Hashimoto
43fbd26dc9 template: copy some description and min vesrion 2015-05-21 14:41:33 -06:00
Mitchell Hashimoto
839784b044 template: parse post-processors 2015-05-21 14:32:22 -06:00
Mitchell Hashimoto
fbda5b119a template: variable parsing 2015-05-21 13:40:33 -06:00
Mitchell Hashimoto
4583ed6108 template: parse provisioners 2015-05-21 13:34:44 -06:00
Mitchell Hashimoto
95890003b7 template: builder parsing 2015-05-19 15:25:56 -06:00
Mitchell Hashimoto
1e745d9508 template/interpolate: user variables 2015-05-15 21:18:27 -07:00
Mitchell Hashimoto
a4b5e08fe4 template/interpolate: upper/lower 2015-05-15 21:16:52 -07:00
Mitchell Hashimoto
7659a91445 template/interpolate: timestamp 2015-05-15 21:14:41 -07:00
Mitchell Hashimoto
b84ec8da4b template/interpolate: isotime 2015-05-15 21:12:54 -07:00
Mitchell Hashimoto
5d205ec1fc template/interpolate: wd 2015-05-15 21:10:12 -07:00
Mitchell Hashimoto
125369d102 template/interpolate: can specify template data 2015-05-15 21:08:46 -07:00
Mitchell Hashimoto
ff6573ce10 template/interpolate: basic + some funcs 2015-05-15 21:05:47 -07:00