hashicorp / hashicorp/packer-plugin-sdk

Allow ISO files larger than 4GiB

Open
#177 0 comments 1 reaction 0 assignees View on GitHub
enhancement
Dominant language
Go
Stars
42
Forks
62
Avg merge
29m
Merged PRs (30d)
2

Description

#### Community Note

Please vote on this issue by adding a 👍 [reaction](https://blog.github.com/2016-03-10-add-reactions-to-pull-requests-issues-and-comments/) to the original issue to help the community and maintainers prioritize this request.
Please do not leave "+1" or "me too" comments, they generate extra noise for issue followers and do not help prioritize the request.
If you are interested in working on this issue or have submitted a pull request, please leave a comment.

#### Description
Right now due to how mkisofs is called, it's impossible to have files larger than 4GiB in the generated ISO. Consider adding `-iso-level 4` which would allow arbitrary file sizes. It may make sense to automatically try `-iso-level 4` if the previous attempt without it fails, this way it's backwards compatible.

#### Use Case(s)

I'm building a Packer file for Windows and need to upload some large installers. Due to [the issues with WinRM transferring large files](https://developer.hashicorp.com/packer/docs/provisioners/file#slowness-when-transferring-large-files-over-winrm) I'm left with the options of HTTP/SSH or CDROM. The CDROM/ISO option is the fastest by far, but doesn't support large files. This would fix that.

#### Potential configuration

```
source "qemu" "builder" {
vm_name = "windows_2012"
boot_wait = "0s"
accelerator = "kvm"
communicator = "winrm"
format = "qcow2"
cpus = 2
disk_size = var.disk_size
memory = var.memory
headless = var.headless
iso_url = var.iso_url
iso_checksum = var.iso_checksum
shutdown_command = "a:/sysprep.bat"
output_directory = "dist"
qemuargs = [
["-drive", "file=dist/{{ .Name }},if=virtio,cache=writeback,discard=ignore,format=qcow2,index=1"],
]
winrm_username = "vagrant"
winrm_password = "vagrant"
winrm_timeout = var.winrm_timeout
cd_files = ["large_installer.zip"]
}

```

#### Potential References
- https://linux.die.net/man/8/mkisofs

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.