The Packer compress post-processor takes an artifact with files (such as from
VMware or VirtualBox) and gzip compresses the artifact into a single
archive.
VMware or VirtualBox) and compresses the artifact into a single archive.
## Configuration
The minimal required configuration is to specify the output file. This will create a gzipped tarball.
You must specify the output filename. The archive format is derived from the filename.
*`output` (required, string) - The path to save the compressed archive. The archive format is inferred from the filename. E.g. `.tar.gz` will be a gzipped tarball. `.zip` will be a zip file.
*`output` (required, string) - The path to save the compressed archive. The archive format is inferred from the filename. E.g. `.tar.gz` will be a gzipped tarball. `.zip` will be a zip file. If the extension can't be detected packer defaults to `.tar.gz` behavior but will not change the filename.
If the extension can't be detected tar+gzip will be used as a fallback.
If you are executing multiple builders in parallel you should make sure `output` is unique for each one. For example `packer_{{.BuildName}}_{{.Provider}}.zip`.
If you want more control over how the archive is created you can specify the following settings:
*`level` (optional, integer) - Specify the compression level, for algorithms that support it. Value from -1 through 9 inclusive. 9 offers the smallest file size, but takes longer
*`compression_level` (optional, integer) - Specify the compression level, for algorithms that support it, from 1 through 9 inclusive. Typically higher compression levels take longer but produce smaller files. Default if omitted is 6
*`keep_input_artifact` (optional, bool) - Keep source files; defaults to false
## Supported Formats
Supported file extensions include `.zip`, `.tar`, `.gz`, `.tar.gz`, `.lz4` and `.tar.lz4`.
Supported file extensions include `.zip`, `.tar`, `.gz`, `.tar.gz`, `.lz4` and `.tar.lz4`. Note that `.gz` and `.lz4` will fail if you have multiple files to compress.
## Example
...
...
@@ -37,7 +36,7 @@ Some minimal examples are shown below, showing only the post-processor configura
```json
{
"type":"compress",
"output":"archive.tar.gz"
"output":"archive.tar.lz4"
}
```
...
...
@@ -48,13 +47,10 @@ Some minimal examples are shown below, showing only the post-processor configura
}
```
A more complex example, again showing only the post-processor configuration: