Commit Graph

360 Commits

Author SHA1 Message Date
Megan Marsh cf1a39a4e8 add variable gotcha to the variables docs not just the from-json hcl guides. 2020-08-26 10:54:39 -07:00
Megan Marsh b6e277fb05
Merge pull request #9828 from hashicorp/d-salt-masterless-HCL2-examples
provisioner/salt-masterless: Add HCL2 example to docs
2020-08-26 10:43:22 -07:00
Wilken Rivera 7e81e3fbda provisioner/salt-masterless: Add HCL2 example to docs 2020-08-26 13:17:59 -04:00
Megan Marsh e9b526ee2d
Move step_create_disk into common folder, and add to vmx builder (#9815)
Pull additional disk related config options into their own file.
2020-08-26 10:13:11 +02:00
Megan Marsh b90957d11c
Merge pull request #9824 from hashicorp/d-windows-restart-hcl2-example
provisioner/windows-restart: Add HCL2 example to documentation
2020-08-25 16:35:36 -07:00
Wilken Rivera 4dff73cec2 provisioner/windows-shell: Add HCL2 example to documentation 2020-08-25 17:03:15 -04:00
Wilken Rivera 0e388db795 provisioner/windows-restart: Add HCL2 example to documentation 2020-08-25 17:01:05 -04:00
Upo 3506b8876f
Update the GCE Builder Documentation (#9820)
* update documentation
* add HCL2 examples
2020-08-25 11:33:02 -04:00
Adrien Delorme 5ba134ac5b
JSON to HCL2 (minimal best-effort) transpiler (#9659)
hcl2_upgrade transforms a JSON build-file in a HCL2 build-file.
This starts a validated Packer core and from that core we generate an HCL 'block' per plugin/configuration. So for a builder, a provisioner, a post-processor or a variable. The contents of each block is just transformed as is and basically all fields are HCL2-ified.
A generated field can be valid in JSON but invalid on HCL2; for example JSON templating (in mapstructure) allows to set arrays of strings - like `x = ["a", "b"]` - with single strings - like `x="a"` -, HCL does not allow this.
Since JSON does not make the distinction between variables and locals, everything will be a variable. So variables that use other variables will not work.
hcl2_upgrade tries to transform go templating interpolation calls to HCL2 calls when possible, leaving the go templating calls like they are in case it cannot.

Work:
* transpiler
* tests
* update hcl v2 library so that output looks great.
* update docs
2020-08-25 10:51:43 +02:00
raygervais 759ae006df adds: note in documentation of inspec on host machine required 2020-08-24 12:39:57 -04:00
Adrien Delorme 7de6c21a8a
HCL: document contextual source variable usage (#9799)
It is possible to use ${source.name} and ${source.type}, this was not documented before
2020-08-21 13:37:08 +02:00
Sylvia Moss 99800619b7
Add HCL2 examples to the virtualbox builders (#9788) 2020-08-20 15:43:38 +02:00
Sylvia Moss a1524bf96a
Add option to also import OVF templates to the Content Library (#9755) 2020-08-19 13:20:25 +02:00
Megan Marsh 6307710485 document workaround for upstream bug 2020-08-18 14:12:14 -07:00
Megan Marsh d74b47b734
Merge pull request #9777 from hashicorp/fix_9756
Add aws_polling config option to override env variables
2020-08-17 10:49:38 -07:00
sylviamoss 788dc32598 add aws_polling config option to override env variables 2020-08-17 17:15:32 +02:00
Wilken Rivera 56f6a976de
integrations/secretsmanager: Add support for plaintext, non key/pair, secrets (#9773) 2020-08-17 13:41:21 +02:00
Wilken Rivera 89d57b8635
post-processor/googlecompute-import: Update documentation (#9767) 2020-08-14 12:04:44 +02:00
Sylvia Moss a2277e312f
add inspec provisioner hcl2 examples (#9761) 2020-08-13 11:23:56 -04:00
Megan Marsh 321aa090df
Merge pull request #9746 from jsmcnair/f-vault-function
Add vault function for HCL2 and documentation
2020-08-13 07:18:28 -07:00
Megan Marsh b5b28c55fb
update powershell provisioner docs to include HCL examples (#9759) 2020-08-13 13:45:30 +02:00
jsmcnair 78c280b1b7 Use common funcs / fix panic / clarify docs 2020-08-12 22:34:13 +01:00
Megan Marsh 54469c4728
Add all of the custom AWS template engines to GeneratedData for use b… (#9751) 2020-08-12 10:43:15 +02:00
Wilken Rivera 9d453624ff
Merge pull request #9752 from hashicorp/ansible_local_docs
ansible-local hcl docs
2020-08-11 21:11:05 -04:00
Megan Marsh 0aa4d7117d hcl example for breakpoint provisioner 2020-08-11 16:28:02 -07:00
Megan Marsh 0a3ff3b190 ansible-local hcl docs 2020-08-11 16:20:56 -07:00
Megan Marsh 2ffbe8240f
document that interactive login is not an option for gov clouds (#9744) 2020-08-11 15:55:24 +02:00
jsmcnair 8666ebceca Fix broken header 2020-08-11 09:48:00 +01:00
jsmcnair 33e3f62ff7 Add vault function for HCL2 and document 2020-08-11 09:18:15 +01:00
Megan Marsh c3ba818893
Merge pull request #9741 from hashicorp/on_error_docs
add docs to make it explicit that on-error=abort etc are only relevan…
2020-08-10 13:57:34 -07:00
Megan Marsh 5f119a5464 document vsphere role permissions needed to run post-processors. 2020-08-10 11:48:18 -07:00
Megan Marsh 0f399ace57 add docs to make it explicit that on-error=abort etc are only relevant to provisioners, not post-processors 2020-08-10 11:10:37 -07:00
Megan Marsh c0757a1bba
Merge pull request #9738 from hashicorp/community_pp
Add community supported post-processors
2020-08-10 09:24:04 -07:00
Megan Marsh d3f48622a3
Merge pull request #9726 from acornies/feature/salt-masterless-formulas
Feature: salt-masterless formulas
2020-08-10 09:19:49 -07:00
sylviamoss a447d151bb add community supported post-processor 2020-08-10 14:09:58 +02:00
Megan Marsh d826711e7a
File provisioner docs (#9735) 2020-08-10 13:15:27 +02:00
Andrew Cornies a704e1b6b1 Updated formula regexp to support ?ref= syntax.
Added formulas docs for salt-masterless provisioner

Signed-off-by: Andrew Cornies <acornies@gmail.com>
2020-08-07 18:38:41 -04:00
Megan Marsh b72a75278a
Merge pull request #9737 from hashicorp/document_5049
add microsoft daemon docs to hyperv docs
2020-08-07 15:08:03 -07:00
Wilken Rivera ae23f891e1
post-processor/googlecompute-export: Update documentation (#9727)
* Add markdown generator to post-processor config
* Add HCL2 example
2020-08-07 16:34:38 -04:00
Megan Marsh 69d951d34f add microsoft daemon docs to hyperv docs 2020-08-07 12:41:59 -07:00
Megan Marsh fc8346bd27
Merge pull request #9731 from hashicorp/manifast_doc_note
Add keep_input_artifact note to the manifest post-processor
2020-08-07 09:12:41 -07:00
sylviamoss ddd85da1a6 add keep_input_artifact note 2020-08-07 09:00:34 +02:00
Megan Marsh 961d9b4f08 document issue with ansible macros 2020-08-06 14:00:26 -07:00
Sylvia Moss 78ce1dbde9
Add manifest hcl2 examples (#9721) 2020-08-06 13:43:35 -04:00
Megan Marsh 09852b89a7
make note about deprecation warning (#9717) 2020-08-06 13:14:30 +02:00
sylviamoss fd683daa22 update checksum post-processor docs 2020-08-05 19:46:17 +02:00
Sylvia Moss dcacf7ad4c
Add vSphere HCL examples to the docs (#9674) 2020-08-05 19:23:52 +02:00
Megan Marsh 825deef43d
Merge pull request #9665 from hashicorp/vsphere_clone_customization
Add step to customize cloned VM
2020-08-05 08:30:31 -07:00
Jean-Francois Panisset 3ce148110c iso_checksum_type was removed from 1.6.0, checksum type is now
inferred from iso_checksum string length or prefix.

Signed-off-by: Jean-Francois Panisset <panisset@gmail.com>
2020-08-01 21:02:31 -07:00
Megan Marsh 3ff3d9fedd
Merge pull request #9689 from hashicorp/shell_docs
add hcl examples to shell provisioner docs
2020-07-31 12:51:01 -07:00
Megan Marsh 767e2fe06b update docs for shell provisioner to include hcl examples 2020-07-31 11:28:14 -07:00
Megan Marsh cce424fdab
Merge pull request #9682 from hashicorp/qemu_hcl_examples
Add qemu hcl examples
2020-07-31 10:20:09 -07:00
Megan Marsh 7967b788d2
Merge pull request #9683 from hashicorp/vagrant_hcl2_example
Add Vagrant builder HCL2 example
2020-07-31 10:15:28 -07:00
Megan Marsh 6698be6008 fix typo in hcl config 2020-07-31 10:08:10 -07:00
sylviamoss f853f07832 add vagrant builder hcl example 2020-07-31 17:50:36 +02:00
sylviamoss fc2e94554a add qemu hcl examples 2020-07-31 17:32:08 +02:00
Megan Marsh fe7f529862 update ansible provisoner docs to include hcl 2020-07-30 17:01:54 -07:00
Megan Marsh 37f21dde5c add build sources to hcl examples 2020-07-30 15:07:15 -07:00
Megan Marsh 6248da58c5 Update website/pages/docs/builders/docker.mdx
Co-authored-by: Wilken Rivera <dev@wilkenrivera.com>
2020-07-30 15:05:46 -07:00
Megan Marsh 6927a9b10d add hcl2 examples for docker builder docs 2020-07-30 15:05:46 -07:00
Megan Marsh 5b26f1b56d
add vsphere postprocessor example in json and hcl (#9669)
* add vsphere postprocessor example in json and hcl

* Update website/pages/docs/post-processors/vsphere.mdx

Co-authored-by: Adrien Delorme <azr@users.noreply.github.com>
2020-07-30 10:47:42 +02:00
Li Kexian 94a32dc282
tencentcloud cvm use CLOUD_PREMIUM disk by default (#9663) 2020-07-29 15:10:00 +02:00
sylviamoss c6e9bde97b add step customize and docs 2020-07-29 15:07:44 +02:00
Megan Marsh 3b297f4937
Merge pull request #9649 from hashicorp/clean_up_vsphere_ui
Clean up vsphere ui
2020-07-28 10:45:47 -07:00
Adrien Delorme c7b35dd6bc
HCL2: add post-processors block to run multiple post-processor after a build (#9638)
added `post-processors` block to run chained post-processors after a build.
Before this, defining multiple `post-processor` blocks after
provisioning steps would run them sequentially, now doing this makes them start
from the build's artifact. To queue post-processors you now have to define them
in a `post-processors` block.

This is a breaking change.
2020-07-28 10:02:37 +02:00
Reto Kupferschmid 943cb1275d
fix missing comma (#9652) 2020-07-27 11:21:40 +02:00
Megan Marsh 54067fc091
update docs to include vpc permissions (#9648) 2020-07-27 10:18:06 +02:00
Megan Marsh 395a0c472e improve postprocessor stdout 2020-07-25 08:24:21 -07:00
Adrien Delorme 125178d943
core: Decode: when in HCL2 decoding mode; reset the whole struct before preparing it. (#9622)
* core: Decode when in HCL2 decoding mode; reset the whole struct before preparing it.
* HCL2: add path variables + docs & tests

Co-authored-by: Megan Marsh <megan@hashicorp.com>
2020-07-23 09:25:07 +02:00
Megan Marsh eb27023e4c
add HCL and artifice examples to vagrant postprocessor docs (#9606) 2020-07-21 11:30:11 +02:00
Megan Marsh 91775b8875
update docstring (#9617) 2020-07-21 11:28:01 +02:00
Megan Marsh 6077a9174a
Merge pull request #9607 from hashicorp/amazon_hcl_docs
Amazon hcl docs
2020-07-20 18:11:51 -07:00
Megan Marsh 3897865f3f
Update website/pages/docs/builders/amazon/ebs.mdx
Co-authored-by: Adrien Delorme <azr@users.noreply.github.com>
2020-07-20 18:02:31 -07:00
Megan Marsh 6bb23eeb0e
Update website/pages/docs/builders/amazon/index.mdx
Co-authored-by: Adrien Delorme <azr@users.noreply.github.com>
2020-07-20 17:59:22 -07:00
Megan Marsh f389f1eebc
Update website/pages/docs/builders/amazon/chroot.mdx
Co-authored-by: Adrien Delorme <azr@users.noreply.github.com>
2020-07-20 17:58:05 -07:00
Megan Marsh faa7bc0dc1
Update website/pages/docs/builders/amazon/ebs.mdx
Co-authored-by: Adrien Delorme <azr@users.noreply.github.com>
2020-07-20 17:57:52 -07:00
Megan Marsh 4a8f6c118e
Update website/pages/docs/builders/amazon/chroot.mdx
Co-authored-by: Adrien Delorme <azr@users.noreply.github.com>
2020-07-20 17:57:11 -07:00
Megan Marsh e811967a72
Update website/pages/docs/builders/amazon/chroot.mdx
Co-authored-by: Adrien Delorme <azr@users.noreply.github.com>
2020-07-20 17:56:41 -07:00
Megan Marsh 36da3374f3
Docs: Add HCL examples to docker-import postprocessor docs (#9604)
* add hcl to docker-import postprocessor docs

* Update website/pages/docs/post-processors/docker-import.mdx

Co-authored-by: Adrien Delorme <azr@users.noreply.github.com>
2020-07-20 16:57:48 +02:00
Megan Marsh 6439ebff22
docs: Add HCL2 code examples to shell-local provisioner and post-processor. (#9602)
* get start on shell-local postprocessor

* HCL2 tabs for shell-local pp

* shell local provisoner hcl examples
2020-07-20 16:55:56 +02:00
Megan Marsh 19089bd074 upate standalone docs examples in amazon index file 2020-07-17 13:59:51 -07:00
Megan Marsh 51bc7da964 add hcl examples to all standalone code examples in the amazon-chroot page 2020-07-17 13:32:09 -07:00
Megan Marsh 0bb4bf92da validate and hcl examples to all standalone examples in the EBS docs 2020-07-17 12:59:27 -07:00
Megan Marsh 9f34241b5c
Merge pull request #9597 from romantomjak/multiqueue-net-option
builder/proxmox: add support for multiple NIC packet queues
2020-07-17 09:07:04 -07:00
Roman Tomjak b0d8f69bda
tweak docs 2020-07-16 18:03:46 +01:00
Roman Tomjak adf1e29459
update docs 2020-07-16 17:36:18 +01:00
Megan Marsh c0270c9f19
Merge pull request #9587 from romantomjak/disable-kvm-flag
Add option to disable KVM hardware virtualization in proxmox builder
2020-07-15 15:23:09 -07:00
Roman Tomjak ebdf1c3d53
update proxmox docs to include disable_kvm flag 2020-07-15 18:51:36 +01:00
jl2501 5c3b747fea
Update fix.mdx
trivially minor typo: omission of "out" when referring to "standard out"
2020-07-15 12:39:43 -04:00
Jonathan Neal d8b67f8520
📌 Hard Pin Website Dependencies (#9543)
* Update and pin dependencies
* Update NextJS Scripts
* npm run lint
* npm run format
* docs generator: indent docs by two and make spacing better

Co-authored-by: Adrien Delorme <azr@users.noreply.github.com>
2020-07-13 12:33:16 +02:00
Sylvia Moss 9c1409dbba
Add content_library_destination to import VM template to a Content Library (#9551) 2020-07-10 11:01:10 +02:00
Megan Marsh e1e37ad025
Merge pull request #9555 from yandex-cloud/yandex-export-templating
yandex-export: templating
2020-07-09 15:50:04 -07:00
Megan Marsh c5d34f3f7b add note about versioning to vsphere builder docs 2020-07-09 14:46:35 -07:00
Gennady Lipenkov d83d2b0273 Update documentation 2020-07-09 17:43:11 +03:00
GennadySpb 22af3f2fd0 Update website/pages/docs/post-processors/yandex-export.mdx
Update doc example

Co-authored-by: Wilken Rivera <dev@wilkenrivera.com>
2020-07-09 16:21:21 +03:00
Gennady Lipenkov b02401c41b Update doc and example. 2020-07-09 16:21:21 +03:00
GennadySpb 919b54f4f4
yandex-export: tiny improvements (#9554) 2020-07-09 10:46:51 +02:00
Megan Marsh d5c40fb0a2
Merge pull request #9550 from hashicorp/unmaintained-plugins-note
Add note for unmaintained community-supported plugins
2020-07-08 16:46:36 -07:00
Gennady Lipenkov 5b8911ee7d remove angle brackets
fix documentation build process
2020-07-08 23:13:14 +03:00
Gennady Lipenkov cc1605fe94 Add init doc 2020-07-08 22:01:52 +03:00
Wilken Rivera 652d2a4e9e Add note for unmaintained community-supported plugins
This change borrowed from Terraform's [archived provider
documentation](https://www.terraform.io/docs/internals/archiving.html)
adds a documentation partial that can be applied to any provisioner
plugin that is not actively maintained by Packer or the community. A
call to action for anyone interested in supporting the plugin has been
added to the Packer README until a better location is made available.

* Mark the salt-masterless plugin as unmaintained
2020-07-08 07:24:03 -04:00
Sylvia Moss 268e95364f
Adds vApp properties config and save public ssh key to a vApp property (#9507) 2020-07-08 10:33:45 +02:00
Megan Marsh 673858a63c
Merge pull request #9513 from hashicorp/undocument_ssh_temp_key
Undocument ssh options not used by all builders
2020-07-07 14:26:21 -07:00
Wilken Rivera 892413b7ea
docs/builder/vsphere-iso: Add documentation for BootConfig (#9538)
* docs/builder/vsphere-iso: Add documentation for BootConfig

* Add documenation for http_ip

* Remove duplicate build configuration section
2020-07-07 13:57:51 -04:00
Megan Marsh 93cd7e40bc
add note about ansibles configuration powershell script in our docs (#9526)
* add note about ansibles configuration powershell script in our docs

* Update website/pages/docs/provisioners/ansible.mdx

Co-authored-by: Wilken Rivera <dev@wilkenrivera.com>
2020-07-06 15:23:29 -04:00
Moss d060cc9ef2 create partials for each ssh key pair related config 2020-07-02 15:18:08 +02:00
Adrien Delorme 3d371a2d5d
Add complete HCL2 examples + allow to name a singular build.source blocks (#9490)
* in the examples/hcl folder
* add possibility to name singular build.source blocks to differentiate their output and to filter on them
2020-07-02 11:07:59 +02:00
Megan Marsh 445cf12b65
Merge pull request #9489 from ad-m/hyperone-freebsd
builder/hyperone: Allow skip chroot device discovery
2020-07-01 15:48:03 -07:00
Moss 41edd09d3c undocument temporary_key_pair_name and ssh_private_key_file 2020-07-01 16:33:18 +02:00
Roman Tomjak 212200c88f
Proxmox NIC firewall flag (#9487)
* add test for firewall toggle

* generate hcl config

* send firewall toggle to proxmox

* update docs

* drop the pointer to bool

* use setDeviceParamIfDefined
2020-06-30 11:04:19 +02:00
Sylvia Moss 99046c9178
Share build info with Provisioner and Post-Processor via HCL2 variables (#9444) 2020-06-29 13:44:57 +02:00
Neil Kidd c9d546a7ea
Fix broken external link (#9496) 2020-06-29 11:02:37 +02:00
Adam Dobrawy 4692cdd55c builder/hyperone: Allow skip chroot device discovery 2020-06-26 15:04:08 +02:00
Adrien Delorme c2975140cf
HCL2: allow to use keep_input_artifact in post processors (#9477)
* HCL2: allow to use keep_input_artifact in post processors
* add basic test
* add docs
2020-06-25 09:36:48 +02:00
mingsheng.su 8a8abdf615
update ucloud-uhost builder (#9466)
* update ucloud-uhost builder, docs and deps

Co-authored-by: Wilken Rivera <dev@wilkenrivera.com>
Co-authored-by: Adrien Delorme <azr@users.noreply.github.com>
2020-06-24 14:31:05 +02:00
Ivo van Geel e54ad3f1fb
Add boot_command support to vsphere-clone builder, including support … (#9397) 2020-06-24 11:14:30 +02:00
Megan Marsh 3476637262 remove old line about windows docker support 2020-06-23 09:54:17 -07:00
Adrien Delorme fb337f8867
hcl work on only/except (#9454)
* HCL2: allow to skip a named build block too

* test that excepting a build block works

* test only on a named build block

* add/update docs
2020-06-23 10:53:16 +02:00
Megan Marsh a96194081a
Merge pull request #9453 from hashicorp/fix_ssh
Allow users to provide a list of ciphers that they want Packer to support.
2020-06-18 11:58:53 -07:00
Megan Marsh a75cf67b5e
Update website/pages/docs/communicators/ssh.mdx
Co-authored-by: Sylvia Moss <moss@hashicorp.com>
2020-06-18 09:25:50 -07:00
Megan Marsh 801c827058
create parent dirs of target (#9452) 2020-06-18 10:25:04 +02:00
Megan Marsh 53105f9508 update ssh docs 2020-06-17 16:50:53 -07:00
Gennady Lipenkov bc24762e9f Update documentation 2020-06-17 17:02:55 +03:00
Megan Marsh 3d7c9cb9c2
make ansible provisioner docs generated from code (#9439) 2020-06-17 10:09:03 +02:00
Megan Marsh a037e45ac2
Merge pull request #9429 from hashicorp/fix_8814
Add on-error flag option to run error-cleanup-provisioner
2020-06-16 10:00:21 -07:00
Adrien Delorme 01e14e173a more hcl2 basic examples 2020-06-16 17:44:41 +02:00
Adrien Delorme 97848df9e1 add basic HCL2 examples for gcp builder 2020-06-16 17:08:03 +02:00
Adrien Delorme 6513372a01 add basic HCL2 docs for file builder 2020-06-16 17:05:02 +02:00
Adrien Delorme c3f2cc64f7 add basic HCL2 docs for vmware 2020-06-16 17:03:15 +02:00
Adrien Delorme 831c16836a add basic docs for virtualbox 2020-06-16 17:00:31 +02:00
Adrien Delorme 8930c4b913 duplicate space 2020-06-16 16:55:58 +02:00
Adrien Delorme b12bc5d122 add basic aws examples 2020-06-16 16:47:16 +02:00
Moss 4f26534072 add on-error flag option to run cleanup provisioner 2020-06-16 15:34:00 +02:00
Megan Marsh 004ace4340
Merge pull request #9406 from hashicorp/fix_9084
Add usb_driver to common boot_command and use it on vsphere
2020-06-15 15:55:54 -07:00
Calle Pettersson 0bcfefd0bc
Update Proxmox storagePoolTypes (#9418) 2020-06-15 14:00:32 +02:00
Sebastiano Mariani 7ec1d478d6
Update console.mdx
Fix possible typo carried over from Terraform documentation.
2020-06-12 14:29:40 -07:00
Moss 65cfb880fd Fix boot_command and update docs 2020-06-12 14:51:52 +02:00
Adrien Delorme 71cd2172e5
fix typo in SSH comunicator (#9412)
closes #9336
2020-06-12 12:22:02 +02:00
Megan Marsh 1eb868cef5
Merge pull request #9384 from hashicorp/website/getting-started/migration
Refactored to learn hosted gettings started track.
2020-06-11 13:36:35 -07:00
Derek Strickland 647ccb35f1
Update website/pages/docs/install.mdx
Co-authored-by: kaitlincarter-hc <43049322+kaitlincarter-hc@users.noreply.github.com>
2020-06-09 14:39:43 -04:00
Adrien Delorme 451d4c2620
hcl2 docs pass (#9375)
* moved blocks and functions top the nav list for easier access ( I think those will be used a lot)
* added a concrete fileset example
* added more concrete examples in the blocks doc
2020-06-09 12:42:01 +02:00
tymac753 cb5bf65ada
Update Consul reference documentation (#9378) 2020-06-09 12:38:32 +02:00
DerekStrickland b8f9d2e988 Refactored to learn hosted gettings started track. 2020-06-08 15:53:00 -04:00
Adrien Delorme eeabae88e3 Update abspath.mdx 2020-06-08 15:29:45 +02:00
Adrien Delorme cf6eca7e1c Revert "Add pwd function to HCL"
This reverts commit 2800043149.
2020-06-08 14:59:27 +02:00
Adrien Delorme 44dfa221de Revert "Add template_dir function to HCL"
This reverts commit 3b9a0427cd.
2020-06-08 14:59:22 +02:00
Megan Marsh d73f83a9d9
Merge pull request #9367 from jeremiahsnapp/add-template_dir-and-pwd-functions
Add template_dir() and pwd() functions to HCL
2020-06-05 12:57:04 -07:00
Megan Marsh 2c89d086dc typo in docs 2020-06-05 12:44:32 -07:00
Megan Marsh 8b9ed084b2
Merge pull request #9365 from hashicorp/except_only_block_hcl_docs
Update Provisioners and Post-Processor block HCL2 docs
2020-06-05 12:44:10 -07:00
Wilken Rivera f672f5bd9b command/validate: Add support for HCL2 configuration files
* Update validate command to use FixConfig for checking against known
fixers
* Update validation command flag docs
* Add ConfigFixer method to PackerHandler Interface
* Implement ConfigFixer interface in PackerConfig
* Remove all stdout messaging (i.e calls to c.Ui.Say) in the validate
command. The command will only display hcl.Diagnotic messaging when there is an error or warning.

HCL2 Configs
```
⇶  packer validate docker_centos_shell_provisioner.pkr.hcl

```

JSON Configs
```
⇶  packer validate vmware-iso_ubuntu_minimal/vmware-iso_ubuntu_minimal.json
Error: Failed to prepare build: "vmware-iso"

1 error occurred:
        * Deprecated configuration key: 'iso_checksum_type'. Please call `packer fix`
against your template to update your template to be compatable with the current
version of Packer. Visit https://www.packer.io/docs/commands/fix/ for more
detail.

Warning: Fixable configuration found.
You may need to run `packer fix` to get your build to run correctly.
See debug log for more information.

  map[string]interface{}{
        "builders": []interface{}{
                map[string]interface{}{
                        ... // 3 identical entries
                        "guest_os_type":     string("ubuntu-64"),
                        "http_directory":    string("http"),
-                       "iso_checksum":
string("946a6077af6f5f95a51f82fdc44051c7aa19f9cfc5f737954845a6050543d7c2"),
+                       "iso_checksum":
string("sha256:946a6077af6f5f95a51f82fdc44051c7aa19f9cfc5f737954845a6050543d7c2"),
-                       "iso_checksum_type": string("sha256"),
                        "iso_url":
string("http://old-releases.ubuntu.com/releases/14.04.1/ubuntu-14.04.1-server-amd64.iso"),
                        "shutdown_command":  string("echo 'vagrant' | sudo -S shutdown -P now"),
                        ... // 4 identical entries
                },
        },
  }
```
2020-06-05 14:24:39 -04:00