hashicorp/packer · error
zip : %v
Error message
zip : %v
What it means
Plugin installation error from InstallLatest: the downloaded temp file, which passed checksumming, could not be opened as a zip archive — the file is corrupt or truncated. This aborts the install loop immediately.
Source
Thrown at packer/plugin-getter/plugins.go:850
err := fmt.Errorf("Error getting plugin, trying another getter: %w", err)
errs = multierror.Append(errs, err)
continue
}
if _, err := tmpFile.Seek(0, 0); err != nil {
err := fmt.Errorf("Error seeking beginning of temporary file for checksumming, continuing: %w", err)
errs = multierror.Append(errs, err)
continue
}
// verify that the checksum for the zip is what we expect.
if err := checksum.Checksummer.Checksum(checksum.Expected, tmpFile); err != nil {
err := fmt.Errorf("%w. Is the checksum file correct ? Is the binary file correct ?", err)
errs = multierror.Append(errs, err)
continue
}
zr, err := zip.OpenReader(tmpFile.Name())
if err != nil {
errs = multierror.Append(errs, fmt.Errorf("zip : %v", err))
return nil, errs
}
var copyFrom io.ReadCloser
for _, f := range zr.File {
if f.Name != expectedBinaryFilename {
continue
}
copyFrom, err = f.Open()
if err != nil {
errs = multierror.Append(errs, fmt.Errorf("failed to open temp file: %w", err))
return nil, errs
}
break
}
if copyFrom == nil {
err := fmt.Errorf("could not find a %q file in zipfile", expectedBinaryFilename)
errs = multierror.Append(errs, err)View on GitHub (pinned to eb36e3c3e4)
Solutions
- Retry the plugin install to re-download the zip
- Check disk space and network integrity if corruption repeats
Defensive patterns
Strategy: retry
When it happens
Trigger: Thrown at packer/plugin-getter/plugins.go:850 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of hashicorp/packer@eb36e3c3e4 (2026-09-05).
Data as JSON: /api/errors/df2b31a1f0b816ea.
Report an issue: GitHub.