Commit Graph

14509 Commits

Author SHA1 Message Date
Adrien Delorme 6f2f17c400 WIP 2020-03-13 18:07:55 +01:00
Adrien Delorme 6e6490d688 WIP 2020-03-13 18:04:48 +01:00
Adrien Delorme 260dc59500 use the hcl2template.KVFilter where we can 2020-03-13 17:17:46 +01:00
Adrien Delorme b4efd13a4d aws: use the empty func when possible 2020-03-13 17:17:24 +01:00
Adrien Delorme af38430eb8 add kvfilter type that regroups very frequently used filters 2020-03-13 17:17:00 +01:00
Adrien Delorme 9e6d5da277 hcl2: add general kv store that could be used anywhere 2020-03-13 16:04:42 +01:00
Adrien Delorme ae4b158ca3 Update mapstructure-to-hcl2.go 2020-03-13 15:44:13 +01:00
Megan Marsh 1c27d9d04b update changelog 2020-03-12 15:32:06 -07:00
Megan Marsh aeedc9af7a
Merge pull request #8879 from mbrancato/specify_keyvault_sku
Add support for configurable KeyVault SKU
2020-03-12 13:47:51 -07:00
Megan Marsh 5365fda5ff
Merge pull request #8884 from hashicorp/fix_codecov_config
Rename codecov.yml to .codecov.yml
2020-03-12 11:30:10 -07:00
Moss df7590f47a Rename codecov.yml to .codecov.yml 2020-03-12 18:43:58 +01:00
Moss cfe94789d5 Add codecov.yml path 2020-03-12 18:35:44 +01:00
Megan Marsh 4bd7b14096
Merge pull request #8732 from jhawk28/reorder_cdrom_drive
add the remote iso first so that it is first in boot order
2020-03-12 09:35:12 -07:00
Joshua Foster 8eac9f9634 add boot order documentation based on feedback 2020-03-12 11:29:20 -04:00
Joshua Foster 49bd57ee12 add the remote iso first so that it is first in boot order 2020-03-12 11:29:19 -04:00
Wilken Rivera 7b705545d9
docs: Various doc clean-ups to fix code block formatting and syntax highlighting (#8868) 2020-03-12 15:05:08 +01:00
zac 79f1fab836
hcl2template/types: add spaces in error messages. (#8881) 2020-03-12 13:40:25 +01:00
Sylvia Moss fa4b9ae958
Add Codecov configuration (#8862) 2020-03-12 10:36:10 +01:00
Mike Brancato 6a141c7695 add generated documentation 2020-03-11 21:52:36 -04:00
Mike Brancato ebb161ae41 Fix config documentation 2020-03-11 21:43:37 -04:00
Mike Brancato 892622987c Add KeyVault parameter and fix whitespace 2020-03-11 21:13:10 -04:00
Mike Brancato 0f09638f7a Add HCL2 spec for KeyVault SKU 2020-03-11 20:48:34 -04:00
Mike Brancato 3c6b248bd5 Fix formatting 2020-03-11 20:45:44 -04:00
Mike Brancato 926e3ac2e4 Add support for configurable KeyVault SKU 2020-03-11 20:33:57 -04:00
Wilken Rivera b9f1b3c8d4
Fix gosimple S1005 linting issue (#8870)
Results before change
```
⇶  golangci-lint run ./... --disable-all --enable=gosimple | grep 1005
fix/fixer_comm_config.go:48:4: S1005: should write `sshHostPortMinRaw := builders["ssh_host_port_min"]` instead of `sshHostPortMinRaw, _ := builders["ssh_host_port_min"]` (gosimple)
fix/fixer_comm_config.go:64:4: S1005: should write `sshHostPortMaxRaw := builders["ssh_host_port_max"]` instead of `sshHostPortMaxRaw, _ := builders["ssh_host_port_max"]` (gosimple)
fix/fixer_comm_config.go:81:4: S1005: should write `sshSkipNatMappingRaw := builders["ssh_skip_nat_mapping"]` instead of `sshSkipNatMappingRaw, _ := builders["ssh_skip_nat_mapping"]` (gosimple)
packer/artifact_mock.go:47:2: S1005: should write `value := a.StateValues[name]` instead of `value, _ := a.StateValues[name]` (gosimple)
packer/artifact_test.go:31:2: S1005: should write `value := a.state[name]` instead of `value, _ := a.state[name]` (gosimple)
```

Results after change
```
```
2020-03-11 10:30:08 +01:00
Wilken Rivera 66ad6f3483
builders: Fix gosimple S1007 linting issue (#8871)
Results before change
```
⇶  golangci-lint run ./... --disable-all --enable=gosimple | grep 1007
builder/alicloud/ecs/image_config.go:208:9: S1007: should use raw string
post-processor/vsphere-template/step_mark_as_template.go:130:8: S1007: shape twice (gosimple)
builder/azure/arm/config.go:58:27: S1007: should use raw string (`...`)
builder/azure/arm/config.go:59:27: S1007: should use raw string (`...`)
builder/qemu/driver.go:192:15: S1007: should use raw string (`...`)
```

Results after change
```
⇶  golangci-lint run ./... --disable-all --enable=gosimple | grep 1007
```
2020-03-11 10:29:22 +01:00
Megan Marsh 072a71b419
Merge pull request #8863 from hashicorp/update_go-cty_regex
import new replace and regex_replace funcs from go-cty + documentation
2020-03-10 13:09:09 -07:00
Megan Marsh e518a0a8b7
Merge branch 'master' into update_go-cty_regex 2020-03-10 10:52:42 -07:00
Megan Marsh 68e083603d
Update website/source/docs/configuration/from-1.5/functions/string/replace.html.md
Co-Authored-By: Wilken Rivera <dev@wilkenrivera.com>
2020-03-10 10:51:25 -07:00
Megan Marsh 8a1caaa804
Merge pull request #8837 from hashicorp/fix_8730
Fix crash when an unset variable is used
2020-03-10 10:40:48 -07:00
Adrien Delorme 0c45bd8b4f import new replace and regex replace funcs from go-cty + documentation 2020-03-10 16:14:25 +01:00
Adrien Delorme d4d30127a3 Update variables.html.md 2020-03-10 14:53:48 +01:00
Adrien Delorme c4349f5a33 document variables behaviours with tables 2020-03-10 14:51:17 +01:00
Jaspal Chauhan b204687de9
Add VBoxManage config section to VirtualBox OVF builder docs (#8861) 2020-03-10 11:11:27 +01:00
Adrien Delorme 631f402d1e Merge branch 'master' into fix_8730 2020-03-09 17:49:33 +01:00
Megan Marsh 7873cabf63
Merge pull request #8858 from hashicorp/fix_8791
update spot price docs
2020-03-09 09:31:56 -07:00
Adrien Delorme 0ccff0d5b9 all variables must have a value.
A variable's default value can be set to null to force user to set it.
2020-03-09 17:25:56 +01:00
Sylvia Moss 76f13deaf4
Make template variables SSHPublicKey and SSHPrivateKey as strings (#8829) 2020-03-09 17:25:05 +01:00
Megan Marsh 4133acbdf3 update spot price docs 2020-03-09 08:46:30 -07:00
Sylvia Moss 4bdf30165a
Fix example json format in ansible provisioner doc (#8856) 2020-03-09 16:40:56 +01:00
Adrien Delorme 6d8cce501e tweak validation & add tests 2020-03-09 16:16:59 +01:00
Lars Lehtonen 74a94d8547
helper/builder/testing: prune unused functions (#8852) 2020-03-09 10:46:32 +01:00
Adrien Delorme 9e6c94e141
circleci: VersionPrerelease: show tag or branch name and hash when building binary (#8850)
VersionPrerelease=${CIRCLE_TAG:=${CIRCLE_BRANCH}}-${CIRCLE_SHA1:0:9}"
2020-03-06 14:03:18 -05:00
jnsc 764b4cb50a
updated link to GuestOsIdentifier (#8849)
Co-authored-by: Adrien Delorme <adrien.delorme@icloud.com>
2020-03-06 15:30:11 +01:00
Wilken Rivera 9403b48a52
hcl2template/types.variables: Update logic for parsing literal value variables (#8834)
* hcl2template/types.variables: Update logic for parsing literal value variables

In running tests via the CLI it was determined that when using the variable block with no explicit type assigned the type of the default
value was not being set within the map. This change updates the `decodeConfig` method so that a type is always set for any defined variable if not specified.

The second change is to properly handle the evaluation of basic variable types (e.g String, Number, Bool). Previously variables defined on the
CLI or via PKR_VAR required some additional quoting to for proper evaluation. This change fixes that issue so that it works like it does in Terraform :)

Build results before the change
```
⇶  PKR_VAR_example='["one","two"]' ~/bin/packer build -var 'foo=home' .
Error: Variables not allowed

  on <value for var.foo from arguments> line 1:
  (source code not available)

Variables may not be used here.

==> Builds finished but no artifacts were created.

```

Build results after the change
```
⇶  PKR_VAR_example='["one","two"]' ~/bin/packer build -var 'foo="home"' .
null: output will be in this color.

==> null: Running local shell script: /tmp/packer-shell885249462
    null: two
    null: home
Build 'null' finished.

==> Builds finished. The artifacts of successful builds are:
--> null: Did not export anything. This is the null builder

⇶  ~/bin/packer build -var 'foo=home' -var 'example=["one","another variable"]' .
null: output will be in this color.

==> null: Running local shell script: /tmp/packer-shell123467506
    null: another variable
    null: home
Build 'null' finished.

==> Builds finished. The artifacts of successful builds are:
--> null: Did not export anything. This is the null builder

```

* tests/hcl2template/types.variables: Update test to use Bool

Turns out a string value won't actually complain if it's given a non
string looking value. It will just covert the value to a string literal
so using a type Bool which should fail if given anything that is not
true or false.

* tests/hcl2template/types.variables: Update unit tests

During testing it was found that by default the variable stanza were defaulting to a cty.NilType, and not the Type of it's default value.
This change sets the default type of the defined variable to ensure variable evaluation behaviors correctly.

* Add a simple cty.Bool test case

* tests/hcl2template/types.variables:  Enable quoted_string test case

* Update hcl2template/types.variables.go

space

Co-authored-by: Adrien Delorme <azr@users.noreply.github.com>
2020-03-06 15:12:26 +01:00
Wilken Rivera 698924f246
vSphere ISO supports more common options (#8845)
The `convert_to_template` and `create_snapshot` are supported across
both builders, but currently only shown in the vSphere Clone docs, this adds
them to it.
2020-03-05 15:04:15 -05:00
Megan Marsh 7e382d0df7
Merge pull request #8828 from mvitaly/fix_8816
Remove all floppy controllers before adding a new one
2020-03-05 09:35:20 -08:00
Megan Marsh 8832b3e2ca
Merge pull request #8787 from jhawk28/vsphere_iso_multiple_disks
(vsphere-iso) add ability to define multiple disks
2020-03-04 15:17:54 -08:00
Wilken Rivera e1a46ec293
Fix gosimple S1025 linting errors (#8838)
Remove unneeded use of fmt.Sprintf for variables that are already strings.
2020-03-04 15:31:30 -05:00
Sylvia Moss 717b9047db
Fix boot command link in ssh communicator doc (#8839) 2020-03-04 16:28:39 +01:00