Here's what I am trying to achieve it.
*dynamic "storage" { *
* for_each = var.storage *
* content { *
* disk_size = storage.key disk_thin_provisioned = true }*
*}*
and storage is defined as list variable in variables.pkr.hcl
*variable "storage" { default = [] }*
Running Packer like this:
packer build -var ks-file='"ks-2disk.cf"' -var
storage='"["51200","25600"]"' .
Getting this error at this time: Error: Extra characters after expression
on line 1: (source code not available)
An expression was successfully parsed, but extra characters were found
after it.
On Wednesday, September 9, 2020 at 1:23:52 PM UTC-5 Manish Garedia wrote:
> Thanks for the reply!
>
> I have converted now everything to hcl2 templates. Can you please suggest
> what's the best way to pass storage as a MAP based on if there is going to
> a single disk or two disk?
>
> source "vsphere-iso" "centos" {
> CPUs = var.vm-cpu-num
> RAM = var.vm-mem-size
> RAM_reserve_all = false
> boot_command = [
> "<tab> inst.text inst.ks=hd:fd0:/${ var.ks-file } <enter><wait>"
> ]
> boot_order = "disk,cdrom,floppy"
> boot_wait = "10s"
> cluster = var.vsphere-cluster
> communicator = "ssh"
> convert_to_template = true
> datastore = var.vsphere-datastore
> disk_controller_type = ["pvscsi"]
> floppy_files = [
> var.ks-file
> ]
> guest_os_type = "centos7_64Guest"
> host = var.vsphere-host
> insecure_connection = "true"
> iso_paths = [
> var.iso_url
> ]
> network_adapters {
> network = var.vsphere-network
> network_card = "vmxnet3"
> }
> notes = "Build via Packer"
> password = var.vsphere-password
> ssh_password = var.ssh_password
> ssh_username = "root"
> * storage {*
> * disk_size = var.vm-disk-size*
> * disk_thin_provisioned = true*
> * }*
> * storage {*
> * disk_size = var.vm-disk-size2*
> * disk_thin_provisioned = true*
> * }*
> *..*
> build {
> sources = [
> "source.vsphere-iso.centos"
> ]
> }
>
>
>
> On Wednesday, September 2, 2020 at 12:47:40 PM UTC-5 Megan Marsh wrote:
>
>> var-files only support string variables, not maps. If you want to use map
>> variables, consider upgrading to hcl2 templates.
>>
>> On Tue, Sep 1, 2020 at 11:17 AM Manish Garedia <[email protected]> wrote:
>>
>>> Had to wrong json posted. here's the right one.
>>>
>>> "storage": [
>>> {
>>> "disk_size": "{{user `vm-disk-size`}}",
>>> "disk_thin_provisioned": true
>>> },
>>> {
>>> "disk_size": "{{user `vm-disk-size`}}",
>>> "disk_thin_provisioned": true
>>> }
>>> ],
>>>
>>> On Tuesday, September 1, 2020 at 1:15:21 PM UTC-5 Manish Garedia wrote:
>>>
>>>> Is there any way of using map in var-file:
>>>>
>>>> I have something like this in packer.json
>>>>
>>>> "storage": [
>>>> {
>>>> "disk_size": "{{user `vm-disk-size`}}",
>>>> "disk_thin_provisioned": true
>>>> }
>>>> ],
>>>> "storage": [
>>>> {
>>>> "disk_size": "{{user `vm-disk-size`}}",
>>>> "disk_thin_provisioned": true
>>>> }
>>>> ],
>>>>
>>>> what's the best way to have this in var-file. FYI, I have tried to
>>>> flatten the json but doesn't work.
>>>>
>>> --
>>> This mailing list is governed under the HashiCorp Community Guidelines -
>>> https://www.hashicorp.com/community-guidelines.html. Behavior in
>>> violation of those guidelines may result in your removal from this mailing
>>> list.
>>>
>>> GitHub Issues: https://github.com/hashicorp/packer/issues
>>> IRC: #packer-tool on Freenode
>>> ---
>>> You received this message because you are subscribed to the Google
>>> Groups "Packer" group.
>>> To unsubscribe from this group and stop receiving emails from it, send
>>> an email to [email protected].
>>> To view this discussion on the web visit
>>> https://groups.google.com/d/msgid/packer-tool/960198f1-4c34-4872-836e-70a9909457e0n%40googlegroups.com
>>>
>>> <https://groups.google.com/d/msgid/packer-tool/960198f1-4c34-4872-836e-70a9909457e0n%40googlegroups.com?utm_medium=email&utm_source=footer>
>>> .
>>>
>>
--
This mailing list is governed under the HashiCorp Community Guidelines -
https://www.hashicorp.com/community-guidelines.html. Behavior in violation of
those guidelines may result in your removal from this mailing list.
GitHub Issues: https://github.com/hashicorp/packer/issues
IRC: #packer-tool on Freenode
---
You received this message because you are subscribed to the Google Groups
"Packer" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/packer-tool/0e61754e-d14c-4984-a259-072bacfbe392n%40googlegroups.com.