github.com/hashicorp/packer@v1.14.3/CHANGELOG.md (about) 1 # π¦ Changelog 2 3 ## 1.14.3 (November 18, 2025) 4 5 ### IMPROVEMENTS: 6 7 * core/hcp: added cicd metadata support for BitBucket and Jenkins pipelines. 8 [GH-13513](https://github.com/hashicorp/packer/pull/13513) 9 [GH-13505](https://github.com/hashicorp/packer/pull/13505) 10 11 * core: bump github.com/hashicorp/packer-plugin-sdk to 0.6.4 12 [GH-13494](https://github.com/hashicorp/packer/pull/13494) 13 14 * docs: fix typos and linguistic errors in documentation. 15 [GH-13496](https://github.com/hashicorp/packer/pull/13496) 16 17 ### SECURITY: 18 19 * Bump golang.org/x/crypto to 0.43.0 20 [GH-13518](https://github.com/hashicorp/packer/pull/13518) 21 22 ## 1.14.2 (September 9, 2025) 23 ## β¨ Features 24 - **HCP Certificate Authentication Support** β by @JenGoldstrich ([#13435](https://github.com/hashicorp/packer/pull/13435)) 25 Adds support for the `HCP_CRED_FILE` environment variable and removes restrictions on `HCP_CLIENT_ID` and `HCP_CLIENT_SECRET` when connecting builds to an HCP Packer registry. 26 27 - **Upgrade Node.js to v22** β by @LeahMarieBush ([#13450](https://github.com/hashicorp/packer/pull/13450)) 28 Updates the Node.js version used for Packer website builds. 29 30 --- 31 32 ## π Bug Fixes 33 - **fix(winrm): catch cmd err from winrm** β by @anurag5sh in ([#298](https://github.com/hashicorp/packer-plugin-sdk/pull/298)) 34 Improved reliability by catching WinRM remote shell failures during provisioning 35 - **PowerShell wrapper cleanup** β by @kp2099 ([#13451](https://github.com/hashicorp/packer/pull/13451)) 36 Removed the unused `$result` variable from the wrapper string. 37 - **fix tests for shell and shell-local** β by @kp2099 in ([#300](https://github.com/hashicorp/packer-plugin-sdk/pull/300)) 38 Acceptance test fixes for shell and shell-local 39 40 --- 41 42 ## π Improvements 43 - Added workflow-dispatch and set `PACKER_ACC_BUILDERS` for acceptance tests β by @kp2099 ([#13444](https://github.com/hashicorp/packer/pull/13444)) 44 - Improved spacing in `hcl2template` error messages β by @sbraz ([#13453](https://github.com/hashicorp/packer/pull/13453)) 45 - Added callouts for HashiCorp-maintained plugins moving to [releases.hashicorp.com](https://releases.hashicorp.com) β by @BrianMMcClain ([#13438](https://github.com/hashicorp/packer/pull/13438)) 46 47 --- 48 49 ## π¦ Dependencies 50 - Bump `github.com/ulikunitz/xz` from **0.5.10 β 0.5.14** β by @dependabot ([#13459](https://github.com/hashicorp/packer/pull/13459)) 51 - Bump `golang.org/x/oauth2` from **0.13.0 β 0.27.0** β by @dependabot ([#13460](https://github.com/hashicorp/packer/pull/13460)) 52 - Bump `github.com/ulikunitz/xz` from **0.5.10 β 0.5.15** β by @kp2099 ([#13461](https://github.com/hashicorp/packer/pull/13461)) 53 - Bump `github.com/hashicorp/packer-plugin-sdk` from **0.6.2 β 0.6.3** β by @kp2099 ([#13462](https://github.com/hashicorp/packer/pull/13462)) 54 55 --- 56 57 ## π©βπ» New Contributors 58 - @LeahMarieBush made their first contribution in [#13450](https://github.com/hashicorp/packer/pull/13450) π 59 60 61 62 ## 1.14.1 (August 5, 2025) 63 64 ### BUG FIXES: 65 66 * core: Changes on the packer plugin installation process to ensure that the plugin is installed correctly. 67 The releases binary from official site releases.hashicorp.com was not getting installed from a proxy server, which was addressed in this PR. 68 [GH-13439](https://github.com/hashicorp/packer/pull/13439) 69 70 ## 1.14.0 (July 30, 2025) 71 72 ### IMPROVEMENTS: 73 74 * core: Changes to pull official packer plugins binaries from official site (releases.hashicorp.com). 75 This change allows Packer to automatically download and install official plugins from the HashiCorp official release site. 76 This change standardizes our release process and ensures a more secure and reliable pipeline for plugin delivery. 77 [GH-13431](https://github.com/hashicorp/packer/pull/13431) 78 79 * core: Updated the docs related to packer provisioners 80 [GH-13412](https://github.com/hashicorp/packer/pull/13412) 81 82 * core/HCP: This change corrects the example docs to move the registry block to the top level of the template file 83 [GH-13427](https://github.com/hashicorp/packer/pull/13427) 84 85 * core: This update adds a new section explaining conditional expressions in HCL, including syntax, usage examples, and best practices for clarity and maintainability. 86 The documentation covers how to use conditionals for default values, dynamic argument omission, and recommends using locals for complex logic. 87 [GH-13429](https://github.com/hashicorp/packer/pull/13429) 88 89 ### BUG FIXES: 90 91 * core: Fixes the default execute command for script and scripts to its original behavior from v1.12.0. 92 The recent change to use the -File operator for script execution required adjustments that are addressed in this PR. 93 [GH-13422](https://github.com/hashicorp/packer/pull/13422) 94 95 96 ### SECURITY: 97 98 * Bump go-git from v5.13.0 to v5.16.2 99 [GH-13420](https://github.com/hashicorp/packer/pull/13420) 100 101 102 ## 1.13.0 (June 2, 2025) 103 104 ### FEATURES: 105 106 * core: Enhanced the existing inline field in the shell provisioner to support any script with its own shebang (#!). 107 Allows users to provide scripts directly in the inline field, making it possible to use scripts generated by functions like templatefile. 108 Ensures that the shell provisioner executes the given script as intended, honoring the script's shebang line. 109 [GH-13313](https://github.com/hashicorp/packer/pull/13313) 110 111 * core: Added new built-in functions to Packer: 112 sum 113 startswith 114 endswith 115 These new functions expand the capabilities for template logic and variable handling in Packer builds. 116 [GH-13349](https://github.com/hashicorp/packer/pull/13349) 117 118 ### IMPROVEMENTS: 119 120 * hcl2: Added the ability for the packer fmt command to format multiple HCL files at once. 121 This enhancement allows users to format several files in a single command invocation. 122 [GH-13362](https://github.com/hashicorp/packer/pull/13362) 123 124 * hcl2: Added top level hcp_packer_registry block (this configuration was previously nested inside the build block and is still valid but deprecated) 125 [GH-13314](https://github.com/hashicorp/packer/pull/13314) 126 127 128 129 ### BUG FIXES: 130 131 * core: Updated the documentation to explicitly state that a trailing slash is required when uploading directories, regardless of the guest OS. 132 This clarification is intended to ensure consistent behavior and prevent confusion, especially for Windows users. 133 [GH-13309](https://github.com/hashicorp/packer/pull/13309) 134 135 * core: Fixed an error occurring when using the --use-sequential-evaluation flag with packer console. 136 Updated the FlagSets to correctly include this flag, resolving the error. 137 [GH-13316](https://github.com/hashicorp/packer/pull/13316) 138 139 * core: added a wrapper around inline PowerShell commands executed by the provisioner to catch errors and ensure the Packer build fails if any command results in an error. 140 [GH-13334](https://github.com/hashicorp/packer/pull/13334) 141 142 * hcl2: Ensures that Packer now preserves the user-defined order of variable files as input by the user. 143 This change maintains the intended precedence of variables, honoring the order specified on the command line. 144 [GH-13350](https://github.com/hashicorp/packer/pull/13350) 145 146 ### SECURITY: 147 148 * Bump to go-crypto v0.36.0 149 [GH-13369](https://github.com/hashicorp/packer/pull/13369) 150 151 152 ## 1.12.0 (January 22, 2025) 153 154 ### FEATURES: 155 156 * core: add support for a DAG-based evaluation on locals and datasources. 157 A long-standing odditiy of Packer has been the order of evaluation for 158 locals and data sources. In previous versions of Packer, the 159 data sources were evaluated first, then the local variables were, making 160 it impossible to have a datasource that referenced a local variable as 161 part of its configuration. 162 This change introduces a Directed Acyclic Graph (DAG) to evaluate those 163 resources, instead of the phased approach of old, which makes the order 164 of evaluation not dependent on the type of resource, but instead of the 165 detected dependencies between them. 166 **Note**: While we are confident this should be robust enough for general 167 use, we do recognise that it is possible some users might encounter issues. 168 To give those users a way to continue using the old evaluation method, we 169 introduced a `-use-sequential-evaluation` command-line flag to the build, 170 validate, console and inspect subcommands, to force using the sequential 171 evaluation approach for those entities. 172 [GH-13155](https://github.com/hashicorp/packer/pull/13155) 173 174 * core/hcp: support for uploading SBOMs to HCP Packer. 175 Software Bill of Materials (SBOM) are a standardised way to export the various 176 software packages linked to an artifact. As some users have expressed a 177 need to produce and access those for images they build, we now add the 178 feature to Packer itself. 179 While the generation of the SBOM itself is not done directly by 180 Packer, instead we recommend using known scanners to produce them, we add 181 the capacity to upload this SBOM file to HCP Packer, and link it to a 182 build artifact. 183 [GH-13171](https://github.com/hashicorp/packer/pull/13171) 184 185 * core: support for alternate serialisation formats for plugin communication. 186 Packer relies on plugins to do most of the actual workload related to 187 building and provisioing artifacts, while Packer is mostly an orchestrator 188 for those plugins to perform their work. 189 This separation of concerns implies that both entities have to 190 communicate on multiple occasions during the course of a build. 191 Before v1.12.0 of Packer, and v0.6.0 of the plugin SDK, we used Gob to 192 do most of the serialisation for those steps. 193 This is however a bit of a problem recently, as go-cty, the library we 194 use for dynamic objects lifted from HCL templates, dropped support for 195 this a while back. 196 Therefore now, we introduce an alternative: protobuf/msgpack, which are 197 both usable and maintained by the projects around Packer, so we can begin 198 our transition away from gob with this change. 199 **Note**: as with the introduction of the DAG for locals/datasources, this 200 is a feature that we are reasonably confident you will not encounter bugs 201 with, however we cannot rule-out this possibility, therefore we introduce 202 a new environment variable: `PACKER_FORCE_GOB`, which if set to '1', forces 203 the use of Gob instead of protobuf/msgpack. 204 [GH-13120](https://github.com/hashicorp/packer/pull/13120) 205 206 ### IMPROVEMENTS: 207 208 * hcl2/json: add `aws_secretsmanager_raw` funcion. 209 When using the AWS secretsmanager function with a non-text secret, one could 210 only get a secret once at a time. 211 This could get cumbersome if wanting to get multiple through one request, 212 which led people to encode their JSON/Object secrets as a big base64 213 encoded string that they could get once, and then manipulate through JSON 214 functions. 215 While the workaround works, it is one extra layer of manipulations to do so, 216 therefore a new function to always get the raw textual version of a secret 217 is now added to Packer. 218 [GH-13242](https://github.com/hashicorp/packer/pull/13242) 219 * hcl2: add `alltrue` and `anytrue` functions. 220 As with Terraform, Packer now supports the HCL functions `alltrue` and 221 `anytrue`, which returns whether or not a collection only consists of 222 `true` values, or if any is. 223 [GH-13237](https://github.com/hashicorp/packer/pull/13237) 224 * hcl2: add `strcontains` function. 225 As with Terraform, Packer now supports the HCL function `strcontains`, 226 which returns whether or not a string contains a substring within it. 227 [GH-13217](https://github.com/hashicorp/packer/pull/13217) 228 [GH-13222](https://github.com/hashicorp/packer/pull/13222) 229 * datasource/http: Support other methods than GET. 230 The HTTP datasource used to always use GET requests for getting data 231 from a remote HTTP server, which was not always enough since some endpoints 232 may only support other methods. This change allows for most of the HTTP 233 methods to perform those requests. 234 [GH-13190](https://github.com/hashicorp/packer/pull/13190) 235 * hcl2: add `base64gzip` function. 236 In some cases, small blobs may need to be kept in memory, and injected in 237 a template somewhere else, but if the blob needs to be minimised, the 238 base64gzip function can be invoked to compress the blob and expose it 239 as a valid HCL2 string for use later. 240 [GH-13142](https://github.com/hashicorp/packer/pull/13142) 241 242 ### BUG FIXES: 243 244 * hcl2: Fix duplicate error messages on top-level HCL violations. 245 A parsing quirk for HCL templates caused Packer to produce the same parsing 246 error multiple times if the error was caused by a top-level violation. 247 [GH-13245](https://github.com/hashicorp/packer/pull/13245) 248 * build: Include LC_UUID in Darwin binaries. 249 A change in how Apple authorises a plugin to access the network caused 250 Packer to break on recent (14.7 and above) macOS versions, as Packer uses 251 the local network to communicate with plugins. 252 The fix is to include an additional UUID into the metadata of the produced 253 binary, so it is authorised by macOS to use the local network, which prompts 254 an update to the version of Go used for building Packer (1.22.9), as it is 255 when this addition is supported by an LDFLAG. 256 [GH-13214](https://github.com/hashicorp/packer/pull/13214) 257 * hcl2: Don't error on empty bucker slug. 258 As reported by members of our community, using a hcp_packer_registry 259 block without a bucket slug, even if provided by external means, would cause 260 Packer to fail with an invalid bucket slug error. This is most definitely 261 a bug, which is addressed in this release. 262 [GH-13210](https://github.com/hashicorp/packer/pull/13210) 263 * hcp: fix bug when trying to extract HEAD SHA from empty Git repo. 264 [GH-13165](https://github.com/hashicorp/packer/pull/13165) 265 266 ### SECURITY: 267 268 * Bump to go-crypto v0.31.0 269 [GH-13233](https://github.com/hashicorp/packer/pull/13233) 270 271 ### NOTES: 272 273 * docs: fix UUIDv4 example. A community user has found discrepancies in the 274 UUIDv4 examples which were used in our docs, as they do not match the 275 standard. 276 [GH-13229](https://github.com/hashicorp/packer/pull/13229) 277 * hcl2: fix slice initialisation method during variable evaluation phase. 278 [GH-13175](https://github.com/hashicorp/packer/pull/13175) 279 280 ## 1.11.2 (July 30, 2024) 281 282 ### FEATURES 283 284 * core/hcp: export Packer options, OS, CI and VCS metadata for a build. 285 Following up on the introduction of metadata for builds in Packer 1.11.0, 286 this version introduces more metadata. In addition to the version of Packer 287 core, and the plugins used, we now capture CI-specific environment variables 288 (gitlab-ci and github-actions for now), Git-specific information, OS details 289 like architecture and kernel version, and the command-line options passed 290 to packer build. 291 292 ## 1.11.1 (July 1, 2024) 293 294 ### NOTES: 295 * Future Scaffolding: This release contains additional changes that allow 296 Packer core to validate access a HCP Packer bucket before trying to 297 publish to it. If the bucket does not exist and the associated service 298 principle does not have permission to create the bucket Packer will fail 299 the build.[GH-13059](https://github.com/hashicorp/packer/pull/13059) 300 301 ### SECURITY: 302 * core: Bump github.com/hashicorp/go-retryablehttp to address 303 CVE-2024-6104.[GH-13081](https://github.com/hashicorp/packer/pull/13081) 304 305 ### IMPROVEMENTS: 306 * core/hcl2: The issue is that local variables in templates are evaluated in a 307 non-deterministic order, leading to inconsistent behavior. To fix this, 308 local variables will now build a list of direct dependencies, similar to 309 datasources, and evaluate these dependencies recursively. A caveat is that 310 there's a recursion cap of 10 to prevent infinite recursion; if this limit 311 is reached, an error is returned, prompting the user to fix their template. 312 [GH-13039](https://github.com/hashicorp/packer/pull/13039) 313 * core: bump github.com/hashicorp/hcp-sdk-go from 0.96.0 to 0.99.0 314 [GH-13063](https://github.com/hashicorp/packer/pull/13063) 315 * core: bump github.com/hashicorp/packer-plugin-sdk from 0.5.3 to 0.5.4 316 [GH-13061](https://github.com/hashicorp/packer/pull/13061) 317 318 ### BUG FIXES: 319 * core/hcp: Change UpsertBucket to call GetBucket to address unauthorized error 320 from ustream API. 321 [GH-13059](https://github.com/hashicorp/packer/pull/13059) 322 323 ## 1.11.0 (2024-05-31) 324 325 ### NOTES: 326 * A LICENSE.txt file has been added to the Packer release artifacts. 327 [GH-12931](https://github.com/hashicorp/packer/pull/12931) 328 [GH-12940](https://github.com/hashicorp/packer/pull/12940) 329 330 * **Breaking Change**: Support for loading single-component plugins has been removed from Packer. [GH-12785](https://github.com/hashicorp/packer/pull/12785) 331 332 * **Breaking Change**: Support for loading plugin binaries following 333 the naming convention of packer-plugin-name has been dropped. Packer will now only load 334 plugins stored under the [Packer plugin directory](https://developer.hashicorp.com/packer/docs/configure#packer-s-plugin-directory) using the expected namespaced 335 directory and CHECKSUM files. This change drops support for loading plugin 336 binaries in Packer's executable directory or a template's current working 337 directory. [GH-12828](https://github.com/hashicorp/packer/pull/12828) 338 339 ```shell 340 /Users/dev/.packer.d/plugins 341 βββ github.com 342 βββ hashicorp 343 βββ happycloud 344 βββ packer-plugin-happycloud_v0.0.1_x5.0_darwin_arm64 345 βββ packer-plugin-happycloud_v0.0.1_x5.0_darwin_arm64_SHA256SUM 346 ``` 347 348 ### FEATURES: 349 * core: Add `-ignore-prerelease-plugins` flag to disable the use of development 350 plugin binaries for the `build` and `validate` commands development plugin 351 binaries. [GH-12828](https://github.com/hashicorp/packer/pull/12828) 352 [GH-12882](https://github.com/hashicorp/packer/pull/12882) 353 * Packer users can now track Packer version and plugin versions used for each 354 build artifact in HCP Packer. 355 [GH-12866](https://github.com/hashicorp/packer/pull/12866) 356 * hcl2: add textencodebase64 and textdecodebase64 funcs 357 For feature parity with Terraform, and since having access to strings 358 encoded in something that is not UTF-8 is required in some cases, we add 359 both the textencodebase64 and textdecodebase64 functions to HCL2 templates. 360 Please note these functions return base64 encoded byte slices because of how 361 cty/hcl defines strings (NFC normalised, UTF-8 encoded). 362 [GH-12997](https://github.com/hashicorp/packer/pull/12997) 363 364 ### SECURITY: 365 * Bump github.com/go-jose/go-jose/v3 to address GHSA-c5q2-7r4c-mv6g. 366 [GH-12880](https://github.com/hashicorp/packer/pull/12880) 367 * Bump golang.org/x/net to v0.24.0 to address GO-2024-2687. 368 [GH-12924](https://github.com/hashicorp/packer/pull/12924) 369 370 ### IMPROVEMENTS: 371 * core: Bump github.com/hashicorp/hcp-sdk-go from 0.90.0 to 0.96.0. 372 [GH-12935](https://github.com/hashicorp/packer/pull/12935) 373 [GH-12942](https://github.com/hashicorp/packer/pull/12942) 374 [GH-12960](https://github.com/hashicorp/packer/pull/12960) 375 [GH-12979](https://github.com/hashicorp/packer/pull/12979) 376 * core: Bump github.com/hashicorp/packer-plugin-sdk from 0.5.2 to 0.5.3 377 [GH-12932](https://github.com/hashicorp/packer/pull/12932) 378 * core: Bump go-getter/v2 from 2.2.1 to v2.2.2 379 [GH-12988](https://github.com/hashicorp/packer/pull/12988) 380 * datasource/http: don't error on 2xx code 381 Previous versions of Packer only supported 200 as a success case for the http 382 datasource. This change makes any status code from 200 to 299 successful. 383 [GH-12989](https://github.com/hashicorp/packer/pull/12989) 384 * core: Move to predictable plugin loading schema - Packer will now only load 385 plugins stored under the [Packer plugin directory](https://developer.hashicorp.com/packer/docs/configure#packer-s-plugin-directory) using the expected namespaced 386 directory and CHECKSUM files. 387 [GH-12828](https://github.com/hashicorp/packer/pull/12828) 388 * core: Remove support loading single-component plugins. 389 [GH-12785](https://github.com/hashicorp/packer/pull/12785) 390 * core: Rename internal `packer plugin` command to `packer execute` to avoid user confusion with 391 the plugins subcommand. 392 [GH-12865](https://github.com/hashicorp/packer/pull/12865) 393 * core: Packer now considers development binaries when evaluating plugin 394 version constraints. This work allows users to use binaries with versions 395 reported as "x.y.z-dev" to be used with the Packer `required_plugins` 396 block. [GH-12828](https://github.com/hashicorp/packer/pull/12828) 397 * core: Packer now supports local paths to plugins for the `packer plugins remove` 398 command. This addition makes it possible to pipe commands like 399 `packer plugins installed` with it for speedy cleanup of installed plugins. 400 [GH-12886](https://github.com/hashicorp/packer/pull/12886) 401 * core: Relax Packer source address URIs within the `required_plugins` block to 402 support the installation of local plugin binary using a custom or internal 403 source address (e.g. mycompany.com/plugins/happyorg/happycloud). Remote 404 installation using `packer init` or `packer plugins install` does not 405 support non-GitHub source URIs. Users using alternative hosts must 406 install plugins manually using `packer plugins install --path`. 407 [GH-12911](https://github.com/hashicorp/packer/pull/12911), [GH-12962] (https://github.com/hashicorp/packer/pull/12962) 408 * core: Remote plugins installed containing an internal version number that 409 differs from the version number within the binary name can lead to 410 confusion when tracking Packer plugin version information. To help track 411 such discrepancies in the plugin version, `packer init` and `packer plugin 412 install` have been updated to reject installation of such plugins. 413 1.0.0-dev). Users are encouraged to notify plugin maintainers of any 414 version mismatches. 415 [GH-12915](https://github.com/hashicorp/packer/pull/12915), [GH-12953](https://github.com/hashicorp/packer/pull/12953), [GH-12972](https://github.com/hashicorp/packer/pull/12972) 416 * core: don't load plugins with metadata in name 417 To avoid confusion with multiple plugins that report the same effective version, 418 plugins installed need to have no metadata in their name. 419 When installed through Packer commands, the metadata is scrubbed from the name of the 420 installed plugin binary, but manually it may still be possible, so we enforce 421 that scrubbing at load-time as well. 422 [GH-12980](https://github.com/hashicorp/packer/pull/12980) 423 * core: Error when multiple paths are specified for PACKER_PLUGIN_PATH 424 Since Packer 1.11 removed the capability for PACKER_PLUGIN_PATH to specify 425 multiple directories separated by `:` or `;` (depending on the platform), we 426 are explicitly erroring when this is discovered, with suggestions as to how 427 to fix the problem. 428 [GH-12967](https://github.com/hashicorp/packer/pull/12967) 429 * core: Version metadata support for plugins. Plugins may now formally have metadata 430 in their versions, Packer supports it, and applies the semver recommendations on 431 them, i.e. they are ignored for comparison/sorting purposes, but allowed for 432 adding extra information about a plugin. 433 [GH-12888](https://github.com/hashicorp/packer/pull/12888) 434 435 Given the specified version constraint only versions greater than or equal to 1.1.0 will be considered. 436 437 ```hcl 438 amazon = { 439 source = "github.com/hashicorp/amazon" 440 version = ">= 1.1.0" 441 } 442 ``` 443 If a development binary is installed, Packer will use it if: 444 445 1. It is the highest compatible version installed. 446 2. There is no final plugin version with the same version number installed alongside it. 447 448 ```shell 449 /Users/dev/.packer.d/plugins 450 ββ github.com 451 ββ hashicorp 452 βββ amazon 453 βββ packer-plugin-amazon_v1.1.0_x5.0_darwin_arm64 454 βββ packer-plugin-amazon_v1.1.0_x5.0_darwin_arm64_SHA256SUM 455 βββ packer-plugin-amazon_v1.1.1-dev_x5.0_darwin_arm64 456 βββ packer-plugin-amazon_v1.1.1-dev_x5.0_darwin_arm64_SHA256SUM 457 ``` 458 459 Version 1.1.1-dev of the Amazon plugin will match the specified version constraint and be used for executing the Packer build. 460 461 If, however, a 1.1.1 release version of the plugin is available, it will have precedence over the development binary. 462 463 ```shell 464 /Users/dev/.packer.d/plugins 465 ββ github.com 466 ββ hashicorp 467 βββ amazon 468 βββ packer-plugin-amazon_v1.1.1-dev_x5.0_darwin_arm64 469 βββ packer-plugin-amazon_v1.1.1-dev_x5.0_darwin_arm64_SHA256SUM 470 βββ packer-plugin-amazon_v1.1.1_x5.0_darwin_arm64 471 βββ packer-plugin-amazon_v1.1.1_x5.0_darwin_arm64_SHA256SUM 472 ``` 473 474 ### BUG FIXES: 475 * core: fix plugin version ordering to not be lexicographic. This fixes an issue 476 with how plugins are discovered by Packer, and ensures proper version ordering. 477 This means that with this change, versions that are semantically greater, 478 but lexicographically inferior will be loaded. 479 Ex: 1.0.9 vs. 1.0.10; `1.0.9 > 1.0.10` lexicographically, but semantically 480 `1.0.10 > 1.0.9` 481 * core/hcp: fix potential race condition when storing plugin details to the HCP 482 Packer metadata storage map. 483 [GH-12936](https://github.com/hashicorp/packer/pull/12936) 484 * core: fix plugin listing on Windows 485 This fix addresses bugs present in the alpha releases of 1.11, where 486 the discovery of Windows binaries were not matching against the 487 filename extension (.exe). 488 [GH-12981](https://github.com/hashicorp/packer/pull/12981) 489 490 ## 1.10.3 (April 22, 2024) 491 492 ### NOTES 493 * A LICENSE.txt file has been added to the Packer release artifacts. 494 [GH-12931](https://github.com/hashicorp/packer/pull/12931) 495 496 ### FEATURES 497 * Packer users can now track Packer version and plugin versions used for each 498 build artifact in HCP Packer. 499 [GH-12891](https://github.com/hashicorp/packer/pull/12891) 500 [GH-12910](https://github.com/hashicorp/packer/pull/12910) 501 [GH-12923](https://github.com/hashicorp/packer/pull/12923) 502 [GH-12926](https://github.com/hashicorp/packer/pull/12926) 503 504 ### SECURITY 505 * Bump github.com/go-jose/go-jose/v3 to address GHSA-c5q2-7r4c-mv6g. 506 [GH-12928](https://github.com/hashicorp/packer/pull/12928) 507 * Bump golang.org/x/net to v0.24.0 to address GO-2024-2687. 508 [GH-12924](https://github.com/hashicorp/packer/pull/12924) 509 510 ### BUG FIXES 511 * cmd/fmt: Display information error when Packer `fmt` fails due to HCL2 512 parsing error. [GH-12870](https://github.com/hashicorp/packer/pull/12870) 513 514 515 ## 1.10.2 (March 6, 2024) 516 517 ### NOTES: 518 * Continuing the work in in Packer v1.10.0 we introduced the ability to install 519 a locally sourced plugin using packer `plugins install --path`, this 520 release extends support to development plugin binaries - binaries that 521 report "dev" as part of their plugin version. Instead of manually placing a 522 downloaded binary into the executable or current working directory we 523 encourage you to run the command `packer plugins install βpath <path-to- 524 downloaded-extracted-binary> github.com/hashicorp/happycloud` to install 525 the binary into a Packer compatible path. 526 [GH-12855](https://github.com/hashicorp/packer/pull/12855) 527 528 ### IMPROVEMENTS: 529 * cmd/plugins: Add support for installing local development binaries to `packer plugins install`. 530 [GH-12855](https://github.com/hashicorp/packer/pull/12855) 531 * core: Validate bucket name when using `hcp_packer_registry` block. 532 [GH-12820](https://github.com/hashicorp/packer/pull/12820) 533 * core: Update github.com/hashicorp/hcp-sdk-go from 0.83.0 to 0.85.0. 534 [GH-12850](https://github.com/hashicorp/packer/pull/12850) 535 [GH-12827](https://github.com/hashicorp/packer/pull/12827) 536 537 ### BUG FIXES: 538 * core/hcp: HCP Packer build failures properly distinguish between incompatible 539 plugins and general publishing errors. 540 [GH-12854](https://github.com/hashicorp/packer/pull/12854) 541 [GH-12835](https://github.com/hashicorp/packer/pull/12835) 542 543 ## 1.10.1 (January 30, 2024) 544 545 ### NOTES: 546 * **HCP Packer** has been updated to follow an artifact-agnostic approach for 547 publishing and consuming built artifacts. To best support the new approach, HCP Packer components within Packer have 548 been updated to use the v2 nomenclature when publishing build metadata to 549 HCP Packer. These changes include data source components for consuming HCP 550 Packer stored artifacts. The data source components [hcp-packer-version](https://developer.hashicorp.com/packer/docs/datasources/hcp/hcp-packer-version) 551 and [hcp-packer-artifact](https://developer.hashicorp.com/packer/docs/datasources/hcp/hcp-packer-artifact) respectively replace, the now deprecated, 552 [hcp-packer-iteration](https://developer.hashicorp.com/packer/docs/datasources/hcp/hcp-packer-iteration) 553 and [hcp-packer-image](https://developer.hashicorp.com/packer/docs/datasources/hcp/hcp-packer-image) 554 component data sources. The added changes are compatible with all existing HCP Packer workflows and do not warrant any 555 immediate template changes by the user. However, we encourage all HCP Packer users to visit the updated 556 HCP Packer [CHANGELOG](https://developer.hashicorp.com/hcp/docs/changelog) to familiarize themselves with the nomenclature changes. 557 [GH-12794](https://github.com/hashicorp/packer/pull/12794) [GH-12799](https://github.com/hashicorp/packer/pull/12799) 558 * The `hcp-packer-image` data source has been deprecated, please use HCP Packer 559 Artifact data source instead. 560 [GH-12794](https://github.com/hashicorp/packer/pull/12794) 561 * The `hcp-packer-iteration` data source has been deprecated, please use HCP 562 Packer Version data source instead. 563 [GH-12794](https://github.com/hashicorp/packer/pull/12794) 564 * The contextual variable `packer.iterationID` has been deprecated, please use 565 the new contextual variable `packer.versionFingerprint`. The iterationID 566 represents the HCP Packer iteration that build metadata has been publish 567 to, with this release an Iteration is now referred to as a Version and the 568 ID has been replaced by the Version Fingerprint. 569 [GH-12803](https://github.com/hashicorp/packer/pull/12803) 570 571 ### FEATURES: 572 * **New Data source** `hcp-packer-artifact` The HCP Packer Artifact Data Source 573 retrieves information about an artifact from the HCP Packer Registry. 574 [GH-12794](https://github.com/hashicorp/packer/pull/12794) 575 * **New Data source** `hcp-packer-version` The HCP Packer Version Data Source 576 retrieves information about HCP Packer Version from the HCP Packer. 577 Registry. [GH-12794](https://github.com/hashicorp/packer/pull/12794) 578 579 ### SECURITY: 580 * core: Bump Go dependencies to address various CVEs. [GH-12777](https://github.com/hashicorp/packer/pull/12777) 581 * core: Bump github.com/cloudflare/circl to address GHSA-9763-4f94-gfch. [GH-12781](https://github.com/hashicorp/packer/pull/12781) 582 583 ### IMPROVEMENTS: 584 * core: Bump github.com/hashicorp/hcp-sdk-go from 0.79.0 to 0.81.0 585 [GH-12792](https://github.com/hashicorp/packer/pull/12792) 586 [GH-12764](https://github.com/hashicorp/packer/pull/12764) 587 * core: Update error messaging for HCP incompatible plugin builds. 588 [GH-12800](https://github.com/hashicorp/packer/pull/12800) 589 * core: Update HCP Packer integration to use HCP Packer v2 nomenclature, with 590 this change HCP Packer iterations are now referred to as Versions, and 591 Images are now referred to as Artifacts. The data sources for interacting 592 with HCP Packer have been respectively renamed to align with the terminology 593 of Version and Artifact. 594 [GH-12794](https://github.com/hashicorp/packer/pull/12794) 595 [GH-12799](https://github.com/hashicorp/packer/pull/12799) 596 * core: Update spacing for flags within Help text. 597 [GH-12742](https://github.com/hashicorp/packer/pull/12742) 598 [GH-12743](https://github.com/hashicorp/packer/pull/12743) 599 600 601 ## 1.10.0 (December 5, 2023) 602 603 ### NOTES: 604 This release contains breaking changes for practitioner relying on plugins 605 previously bundled into Packer. As specified in the [Bundled Plugins Removal announcement](https://www.hashicorp.com/blog/announcing-the-removal-of-bundled-plugins-in-hashicorp-packer) 606 HashiCorp maintained plugins will no longer be shipped with Packer. 607 Users are encouraged to use `packer init` or `packer plugins [...]` when managing required plugins 608 needed for executing their builds. 609 [GH-12660](https://github.com/hashicorp/packer/pull/12660) 610 611 The affected plugins include: 612 * [packer-plugin-amazon](https://github.com/hashicorp/packer-plugin-amazon) 613 * [packer-plugin-ansible](https://github.com/hashicorp/packer-plugin-ansible) 614 * [packer-plugin-azure](https://github.com/hashicorp/packer-plugin-azure) 615 * [packer-plugin-docker](https://github.com/hashicorp/packer-plugin-docker) 616 * [packer-plugin-googlecompute](https://github.com/hashicorp/packer-plugin-googlecompute) 617 * [packer-plugin-qemu](https://github.com/hashicorp/packer-plugin-qemu) 618 * [packer-plugin-vagrant](https://github.com/hashicorp/packer-plugin-vagrant) 619 * [packer-plugin-virtualbox](https://github.com/hashicorp/packer-plugin-virtualbox) 620 * [packer-plugin-vmware](https://github.com/hashicorp/packer-plugin-vmware) 621 * [packer-plugin-vsphere](https://github.com/hashicorp/packer-plugin-vsphere) 622 623 ### SECURITY: 624 * Bump github.com/go-jose/go-jose/v3 to address GO-2023-2334. There have been 625 no reported issues with Packer but we are bumping given that it is a 626 secondary 627 dependency. [GH-12723](https://github.com/hashicorp/packer/pull/12723) 628 * Bump Go to 1.20.10 to Address CVE-2023-44487 / CVE-2023-39325. 629 [GH-12661](https://github.com/hashicorp/packer/pull/12661) 630 * Bump Go to 1.20.11 CVE-2023-45283. There have been no reported issues with 631 Packer but we are bumping given its usage of the path/filepath pkg. 632 [GH-12690](https://github.com/hashicorp/packer/pull/12690) 633 * Bump Packer Plugin SDK to v0.5.2. 634 [GH-12717](https://github.com/hashicorp/packer/pull/12717) 635 636 ### PLUGINS: 637 638 * Removed all HashiCorp vendored plugins from being bundled into the Packer binary. 639 [GH-12660](https://github.com/hashicorp/packer/pull/12660), [GH-12720](https://github.com/hashicorp/packer/pull/12720) 640 * packer-plugin-hcloud: The Hetzner Cloud plugin has been handed over to the 641 Hetzner integrations team. New releases for this plugin are available at 642 https://github.com/hetznercloud/packer-plugin-hcloud. Existing references 643 to the plugin will continue to work but users are advised to update the 644 `required_plugins` block to use the new plugin source address. 645 ``` 646 required_plugins { 647 parallels = { 648 source = "github.com/hetznercloud/hcloud" 649 version = "~> 1" 650 } 651 } 652 ``` 653 ### IMPROVEMENTS: 654 * cmd/init: Warn users running `packer init` on configuration templates with a 655 missing `required_plugins` blocks. 656 [GH-12638](https://github.com/hashicorp/packer/pull/12638) 657 * cmd/plugins: Add `--path` flag to `packer plugins install` subcommand to 658 support installation of plugins from a local binary rather than from 659 GitHub. [GH-12643](https://github.com/hashicorp/packer/pull/12643) 660 * cmd/plugins: Install SHA256SUM file with 0644 perms. 661 [GH-12665](https://github.com/hashicorp/packer/pull/12665) 662 * cmd/plugins: Remove SHA256SUM file on plugin removal. 663 [GH-12666](https://github.com/hashicorp/packer/pull/12666) 664 * cmd/plugins: Remove will error if it fails to find the plugin being selected 665 for removal. [GH-12669](https://github.com/hashicorp/packer/pull/12669) 666 * core/hcl2: Remove empty source file reference on unset variable errors. 667 [GH-12712](https://github.com/hashicorp/packer/pull/12712) 668 * core/hcl: Improve the recursive execution of data sources with other data 669 source dependencies. 670 [GH-12608](https://github.com/hashicorp/packer/pull/12608) 671 * core: Bump github.com/hashicorp/hcp-sdk-go from 0.73.0 to 0.74.0 - 672 [GH-12704](https://github.com/hashicorp/packer/pull/12704) 673 * core: Bump Packer Plugin SDK to v0.5.2. 674 [GH-12717](https://github.com/hashicorp/packer/pull/12717) 675 * core: Provide integration link as hint in error message if a plugin component 676 is unknown. [GH-12705](https://github.com/hashicorp/packer/pull/12705) 677 * core: Update version output for `packer -v` and `packer --version` to match 678 `packer version`. 679 [GH-12569](https://github.com/hashicorp/packer/pull/12569) 680 * docs: Update plugin installation guides with supported methods for 1.10.0 and 681 above. [GH-12713](https://github.com/hashicorp/packer/pull/12713) 682 683 ### BUG FIXES: 684 685 * cmd/plugins: Update `packer plugin installed` to show all installed plugin 686 binaries, including any duplicate versions or binaries copied from a 687 different source URI. 688 [GH-12731](https://github.com/hashicorp/packer/pull/12731) 689 690 ## 1.9.5 (December 4, 2023) 691 692 ### SECURITY 693 694 * Bump github.com/go-jose/go-jose/v3 to address GO-2023-2334. 695 [GH-12723](https://github.com/hashicorp/packer/pull/12723) 696 697 ### BUG FIXES: 698 699 * Add VirtualBox as known plugin prefix to prevent endless bundled plugin warning. 700 [GH-12719](https://github.com/hashicorp/packer/pull/12719) 701 702 ## 1.9.4 (August 18, 2023) 703 704 ### BUG FIXES: 705 706 * core: When invoking Packer with the CHECKPOINT_DISABLE environment variable the telemetry 707 reporter is left uninitialized in order to disable telemetry reporting. 708 Any method calls on the nil reporter is expected to check if the reporter is active or in 709 NOOP mode. The SetBundledUsage function, introduced in Packer 1.9.2, failed to perform a nil 710 check before attempting to modify an attribute, causing Packer to fail when telemetry is 711 disabled. This release fixes this issue by introducing such a check. 712 713 ## 1.9.3 (August 17, 2023) 714 715 ### NOTES: 716 * **New Docker Image**: As part of the bundled plugin removal effort, a new 717 Docker target called `release-full` has been added to the Packer release 718 artifacts. The release-full image includes Packer and all the official 719 plugins pre-installed in its environment. This image is being offered as an 720 alternative option for those users who may still be relying on the plugin 721 versions bundled into the Packer binary. 722 [GH-12532](https://github.com/hashicorp/packer/pull/12532) 723 724 ### IMPROVEMENTS: 725 * core/docs: Clarify the expected usage of the `packer init` command for HCL2 726 template builds.[GH-12535](https://github.com/hashicorp/packer/pull/12535) 727 * core/hcp: Add support for project-level service principals. A user connecting 728 with a project level service principals must provide a valid HCP_PROJECT_ID 729 in order to connect. 730 [GH-12520](https://github.com/hashicorp/packer/pull/12520) 731 [GH-12576](https://github.com/hashicorp/packer/pull/12576) 732 * core: A new Docker image `packer:release-full` has been added for all 733 supported architectures. The release-full image includes Packer and all the 734 official plugins pre-installed in its environment. 735 [GH-12532](https://github.com/hashicorp/packer/pull/12532) 736 * core: Add enhanced support to Packer telemetry for bundle plugins usage. 737 [GH-12536](https://github.com/hashicorp/packer/pull/12536) 738 739 ### BUG FIXES: 740 741 * core: Bump golang.org/x/net to v0.13.0 to address CVE GO-2023-1988. Packer 742 itself is not vulnerable to the CVE as we don't render web pages, but 743 security checks do point it as an issue that needs to be addressed. 744 [GH-12561](https://github.com/hashicorp/packer/pull/12561) 745 * core: Fix custom plugin loading in current working directory regression. 746 [GH-12544](https://github.com/hashicorp/packer/pull/12544) 747 748 749 ## 1.9.2 (July 19, 2023) 750 751 ### NOTES: 752 753 * Vendored plugins within Packer have not been updated. Plugin releases occur on 754 a regular basis to address issues and feature requests. 755 Please note that in an upcoming version of Packer, we will remove the last 756 bundled plugins from Packer. Users are encouraged to use `packer init` for HCL2 templates or 757 `packer plugins install` with legacy JSON templates for installing external 758 plugins. 759 760 * Packer will now warn when using bundled plugins. This feature will be removed in 761 a future version of the tool, so this warning is meant to bring awareness of the 762 upcoming change, and help users update their templates. 763 [GH-12495](https://github.com/hashicorp/packer/pull/12495) 764 765 ### BUG FIXES: 766 767 * Fixed a bug with how Packer was discovering plugins: in order to load 768 plugins, Packer would recursively scan all the known directories in which 769 we could have installed plugins. This caused unnecessary directory 770 walks and slowdowns upon invocation. Packer will now only check 771 for nested plugins within the directories used by commands such as `packer 772 init`, or `packer plugins install`, or as defined in PACKER_PLUGIN_PATH. 773 Refer to 774 [Packer's plugin directory documentation](https://developer.hashicorp.com/packer/docs/configure#packer-s-plugin-directory) 775 for details on how loading works. 776 [GH-12414](https://github.com/hashicorp/packer/pull/12414) 777 778 * The `packer init` subcommand now bundles all the missing installed plugins into one 779 condensed warning, as opposed to one warning per missing plugin. 780 [GH-12506](https://github.com/hashicorp/packer/pull/12506) 781 782 ### PLUGINS: 783 784 * packer-plugin-parallels: The Parallels plugin has been handed over to the Parallels 785 team. New releases for this plugin are available at 786 https://github.com/parallels/packer-plugin-parallels. This plugin is no longer 787 being bundled in the Packer binary release. Existing references to the 788 plugin will continue to work but users are advised to update the 789 `required_plugins` block to use the new plugin source address. 790 [GH-12476](https://github.com/hashicorp/packer/pull/12476) 791 ``` 792 required_plugins { 793 parallels = { 794 source = "github.com/parallels/parallels" 795 version = "~> 1" 796 } 797 } 798 ``` 799 800 ### IMPROVEMENTS: 801 802 * The `hcl2_upgrade` sub-command will now add `required_plugins` to the template 803 generated from JSON for [official plugins](https://developer.hashicorp.com/packer/plugins#tiers-and-namespaces). 804 [GH-12504](https://github.com/hashicorp/packer/pull/12504) 805 806 ## 1.9.1 (June 1, 2023) 807 808 ### BUG FIXES: 809 810 * On May 16th 2023, HCP introduced multi-project support to the platform. 811 In order to use multiple projects in your organization, you will need to update Packer 812 to version 1.9.1 or above. Starting with 1.9.1, you may specify a project ID to push 813 builds to with the `HCP_PROJECT_ID` environment variable. If no project ID is specified, 814 Packer will pick the project with the oldest creation date. Older versions of Packer are 815 incompatible with multi-project support on HCP, and builds will fail for HCP 816 organizations with multiple projects on versions before 1.9.1. 817 [GH-12453](https://github.com/hashicorp/packer/pull/12453) 818 819 ## 1.9.0 (May 31, 2023) 820 821 ### NOTES: 822 823 * **Breaking Change**: Iteration fingerprints used to be computed from the Git SHA of the 824 repository where the template is located when running packer build. This 825 changes with this release, and now fingerprints are automatically generated 826 as a ULID. This implies that continuing an existing iteration will require 827 users to define the fingerprint in the environment manually in order to 828 adopt this behaviour, otherwise, by default, a new iteration will be 829 created. This does not impact workflows where the fingerprint was defined 830 through the `HCP_PACKER_ITERATION_FINGERPRINT` environment variable, and 831 these builds will work exactly as they did before. 832 [GH-12172](https://github.com/hashicorp/packer/pull/12172) 833 834 * **Breaking Change**: Community-maintained plugins bundled with the Packer binary have been removed. 835 These external plugin components are released independently of Packer core and can be installed 836 directly by the user. Users relying on the external plugin components listed below should refer 837 to the `packer plugins` sub-command and, if using HCL2, a `required_plugins` block to define a 838 list of plugins for building a template. 839 840 ### PLUGINS 841 842 * Remove provisioner plugins for Chef, Converge, Puppet, Salt, and Inspec as 843 vendored plugins. These plugins have been previously archived and not 844 updated in release since being archived. These plugins can be installed 845 using `packer init` or with the Packer plugins sub-command `packer plugins install github.com/hashicorp/chef`. 846 [GH-12374](https://github.com/hashicorp/packer/pull/12374) 847 848 * The following community plugins won't be bundled with Packer anymore: 849 850 * [Alicloud](https://github.com/hashicorp/packer-plugin-alicloud) 851 * [CloudStack](https://github.com/hashicorp/packer-plugin-cloudstack) 852 * [HCloud](https://github.com/hashicorp/packer-plugin-hcloud) 853 * [HyperOne](https://github.com/hashicorp/packer-plugin-hyperone) 854 * [Hyper-V](https://github.com/hashicorp/packer-plugin-hyperv) 855 * [JDCloud](https://github.com/hashicorp/packer-plugin-jdcloud) 856 * [LXC](https://github.com/hashicorp/packer-plugin-lxc) 857 * [LXD](https://github.com/hashicorp/packer-plugin-lxd) 858 * [NCloud](https://github.com/hashicorp/packer-plugin-ncloud) 859 * [OpenStack](https://github.com/hashicorp/packer-plugin-openstack) 860 * [Proxmox](https://github.com/hashicorp/packer-plugin-proxmox) 861 * [TencentCloud](https://github.com/hashicorp/packer-plugin-tencentcloud) 862 * [Triton](https://github.com/hashicorp/packer-plugin-triton) 863 * [Yandex](https://github.com/hashicorp/packer-plugin-yandex) 864 865 [GH-12436](https://github.com/hashicorp/packer/pull/12436) 866 867 Users relying on these external plugin components should refer to the `packer plugins` sub-command and, 868 if using HCL2, a `required_plugins` block to define a list of plugins to use for building a template. 869 870 ### IMPROVEMENTS: 871 872 * core/hcp: Now, fingerprints used by HCP Packer are randomly generated ULIDs 873 instead of a Git SHA, and a new one is always generated, unless one is 874 specified in the environment. 875 [GH-12172](https://github.com/hashicorp/packer/pull/12172) 876 877 ### BUG FIXES: 878 879 * Fix LDFLAGS for release pipelines: Between Packer 1.8.5 and Packer 1.8.7, changes 880 to the LDFLAGS in use for building the binaries for Packer had mistakenly 881 removed some compilation flags, leading to the final binaries not being stripped. 882 This change raised the size of the built binaries by as much as 45%. 883 In this release, we fixed the LDFLAGS during compilation, yielding leaner binaries. 884 885 * Bumped gopsutil to v3. This fixes a macOS intermittent crash reported by the community 886 [GH-12430](https://github.com/hashicorp/packer/issues/12430) 887 888 ### HCP Packer -- Multi project support advisory 889 890 If using HCP Packer to store metadata on your builds, please be aware that Packer 891 does not support this feature yet, and as such, having multiple projects in your 892 organization will make it impossible to use HCP Packer in this release. 893 894 We are actively working on supporting this feature, which will be available in a 895 subsequent release. 896 897 ## 1.8.7 (May 4, 2023) 898 899 ### NOTES: 900 * Vendored plugins within Packer have not been updated. Plugin releases occur on 901 a regular basis to address issues and feature requests. Users are encouraged 902 to use `packer init` for HCL2 templates or `packer plugins install` with 903 legacy JSON templates for installing external plugins. 904 905 * packer-plugin-digitalocean: The Digital Ocean Packer plugin has been handed 906 over to the Digital Ocean team. New releases for this plugin are available 907 at https://github.com/digitalocean/packer-plugin-digitalocean. 908 ``` 909 required_plugins { 910 digitalocean = { 911 source = "github.com/digitalocean/digitalocean" 912 version = ">=1.1.1" 913 } 914 } 915 ``` 916 * packer-plugin-linode: The Linode plugin has been handed over to the Linode 917 team. New releases for this plugin are available at 918 https://github.com/linode/packer-plugin-linode. This plugin is is no longer 919 being bundled in the Packer binary release. Existing references to the 920 plugin will continue to work but users are advised to update the 921 `required_plugins` block to use the new plugin source address. 922 [GH-12329](https://github.com/hashicorp/packer/pull/12329) 923 ``` 924 required_plugins { 925 linode = { 926 source = "github.com/linode/linode" 927 version = ">=1.0.5" 928 } 929 } 930 ``` 931 * packer-plugin-ucloud: The UCloud plugin has been handed over to the UCloud 932 team. New releases for this plugin are available at 933 https://github.com/ucloud/packer-plugin-ucloud. This plugin is is no longer 934 being bundled in the Packer binary release. Existing references to the 935 plugin will continue to work but users are advised to update the 936 `required_plugins` block to use the new plugin source address. 937 [GH-12335](https://github.com/hashicorp/packer/pull/12335) 938 ``` 939 required_plugins { 940 ucloud = { 941 source = "github.com/ucloud/ucloud" 942 version = ">=1.0.8" 943 } 944 } 945 ``` 946 * packer-plugin-profitbricks: The Profitbricks plugin has been removed as a 947 bundled plugin in Packer. New releases for this plugin are available at 948 https://github.com/hashicorp/packer-plugin-profitbricks. This plugin is is 949 no longer being bundled in the Packer binary release. Existing references 950 to the plugin will continue to work but users are advised to update the 951 `required_plugins` block to use the new plugin source address. 952 [GH-12385](https://github.com/hashicorp/packer/pull/12385) 953 ``` 954 required_plugins { 955 ucloud = { 956 source = "github.com/hashicorp/profitbricks" 957 version = ">=1.0.2" 958 } 959 } 960 ``` 961 962 ### PLUGINS 963 * core: Migrate external Linode plugin to linode/packer-plugin-linode. 964 [GH-12329](https://github.com/hashicorp/packer/pull/12329) 965 * core: Migrate external UCloud plugin to ucloud/packer-plugin-ucloud. 966 [GH-12335](https://github.com/hashicorp/packer/pull/12335) 967 * core: Remove external plugin for Digital Ocean as a vendored plugin. 968 [GH-12376](https://github.com/hashicorp/packer/pull/12376) 969 * core: Remove external plugins for Profitbricks and 1&1 as vendored plugins. 970 [GH-12385](https://github.com/hashicorp/packer/pull/12385) 971 * docs: Add HCP Ready label to Oracle builder components. 972 [GH-12217](https://github.com/hashicorp/packer/pull/12217) 973 974 975 ### IMPROVEMENTS 976 * cmd/console: Add config-type flag to command help. 977 [GH-12360](https://github.com/hashicorp/packer/pull/12360) 978 * core: Add enhanced support to Packer telemetry for HCL2. 979 [GH-12319](https://github.com/hashicorp/packer/pull/12319) 980 * Enhance zsh completion for the Packer command. 981 [GH-12356](https://github.com/hashicorp/packer/pull/12356), 982 [GH-12366](https://github.com/hashicorp/packer/pull/12366) 983 984 ### BUG FIXES 985 * cmd/hcl2_upgrade: Fix a crash when running the hcl2_upgrade command against a 986 legacy JSON template containing user variables with an undefined variables 987 block. [GH-12257](https://github.com/hashicorp/packer/pull/12257) 988 * core: Bump github.com/hashicorp/hcp-sdk-go to 0.36.0. 989 [GH-12292](https://github.com/hashicorp/packer/pull/12292) 990 * core: Bump github.com/hashicorp/packer-plugin-sdk to 0.4.0 to address 991 CVE-2023-0475, CVE-2022-41723. 992 [GH-12306](https://github.com/hashicorp/packer/pull/12306) 993 * core: Bump Go module version to 1.20 994 [GH-12380](https://github.com/hashicorp/packer/pull/12380) 995 * core: Fix regression introduced in 1.8.6, where legacy JSON templates with 996 custom builder names are outputted to STDOUT as uninterpolated user 997 variables. [GH-12290](https://github.com/hashicorp/packer/pull/12290) 998 999 1000 ## 1.8.6 (February 15, 2023) 1001 1002 ### NOTES: 1003 * core: Users will see some changes in how names are displayed during a Packer 1004 build for JSON templates. Previously only the builder type or the builder 1005 name, if it was set, would be displayed. Now for named builders 1006 (`"name":"mybuilder"`) the builder's type and name will be displayed (i.e 1007 "<type>.mybuilder". This does not impact the behavior of options such as 1008 only or except, they will continue to work as they did before.) 1009 1010 ### PLUGINS: 1011 The following external plugins have been updated and pinned to address open 1012 issues. Please see their respective changelogs for details on plugin 1013 specific bug fixes and improvements. 1014 1015 * alicloud@v1.0.7 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-alicloud/releases/tag/v1.0.7) 1016 * amazon@v1.2.1 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-amazon/releases/tag/v1.2.1) 1017 * azure@v1.4.0 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-azure/releases/tag/v1.4.0) 1018 * googlecompute@v1.1.0 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-googlecompute/releases/tag/v1.1.0) 1019 * proxmox@v1.1.1 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-proxmox/releases/tag/v1.1.1) 1020 * tencentcloud@v1.0.6 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-tencentcloud/releases/tag/v1.0.6) 1021 * qemu@v1.0.9 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-qemu/releases/tag/v1.0.9) 1022 1023 1024 ### IMPROVEMENTS: 1025 * Bump bundled plugins to latest available version. 1026 [GH-12274](https://github.com/hashicorp/packer/pull/12274) 1027 * bump github.com/hashicorp/hcp-sdk-go from 0.28.0 to 0.29.0 1028 [GH-12163](https://github.com/hashicorp/packer/pull/12163) 1029 * Bump github.com/hashicorp/hcp-sdk-go from 0.33.0 to 0.34.0 1030 [GH-12275](https://github.com/hashicorp/packer/pull/12275) 1031 * core/hcl2: Packer will no longer warn on excluded post-processors when using 1032 `-only/exlude` filters for running select builds. 1033 [GH-12187](https://github.com/hashicorp/packer/pull/12187) 1034 1035 ### BUG FIXES: 1036 * cmd/hcl2_upgrade: Fix crash when variables block is undefined. 1037 [GH-12250](https://github.com/hashicorp/packer/pull/12250) 1038 * core/hcl2: Templates with build blocks referencing an unknown source block 1039 would display an empty string for the template filename at line 0, which 1040 made it difficult to identify the broken build block. Packer has been 1041 updated to display the proper filename and line number where the unknown 1042 reference resides. 1043 [GH-12167](https://github.com/hashicorp/packer/pull/12167) 1044 * core: Linux packages now have vendor label and set the default label to 1045 HashiCorp. This fix is implemented for any future releases, but will not be 1046 updated for historical releases. 1047 [GH-12252](https://github.com/hashicorp/packer/pull/12252) 1048 * core/hcp: The bucket's description was not properly set in the bucket 1049 object sent to HCP Packer leaving all newly created buckets with an empty 1050 description. [GH-12235] 1051 [GH-12235](https://github.com/hashicorp/packer/pull/12235) 1052 1053 ## 1.8.5 (December 12, 2022) 1054 1055 ### NOTES: 1056 * data/packer-image-iteration has been removed. This was an undocumented and 1057 unusable data source that was built for experimentation but not released. It 1058 should not affect users in any way but is being mentioned for visibility 1059 purposes. 1060 [GH-12111](https://github.com/hashicorp/packer/pull/12111) 1061 1062 ### FEATURES: 1063 * core: Metadata for capturing template types such as JSON or HCL2 has been added to the 1064 HCP Packer registry metadata. Upon running a `packer build` the type of 1065 template used during execution will be sent along to the registry as 1066 additional build metadata.[GH-12132](https://github.com/hashicorp/packer/pull/12132) 1067 1068 ### PLUGINS: 1069 The following external plugins have been updated and pinned to address open 1070 issues. Please see their respective changelogs for details on plugin 1071 specific bug fixes and improvements. 1072 1073 * alicloud@v1.0.5 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-alicloud/releases/tag/v1.0.5) 1074 * amazon@v1.1.6 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-amazon/releases/tag/v1.1.6) 1075 * proxmox@v1.1.0 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-proxmox/releases/tag/v1.1.0) 1076 * vsphere@v1.1.1 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-vsphere/releases/tag/v1.1.1) 1077 * qemu@v1.0.8 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-qemu/releases/tag/v1.0.8) 1078 1079 ### IMPROVEMENTS: 1080 * cmd/hcl2_upgrade: Generate variable block for all referenced user input 1081 variables. [GH-12136](https://github.com/hashicorp/packer/pull/12136) 1082 * cmd/validate: Add support for the `-evaluate-datasources` flag to evaluate 1083 the data sources from a template during validation time. 1084 [GH-12106](https://github.com/hashicorp/packer/pull/12106) 1085 [GH-12152](https://github.com/hashicorp/packer/pull/12152) 1086 * core/hcl2: Variable definition files containing undeclared variables within 1087 an HCL2 template will no longer warn during build execution. Warnings will 1088 be displayed to a user during template validation, which can be disabled by 1089 passing the `-no-warn-undeclared-var` flag to the validate command. 1090 [GH-12104](https://github.com/hashicorp/packer/pull/12104) 1091 [GH-12109](https://github.com/hashicorp/packer/pull/12109) 1092 * core: Docker images have been updated to include the `xorriso` package for 1093 supporting the creation of ISO files.[GH-12081](https://github.com/hashicorp/packer/pull/12081) 1094 * core: Split HCP Packer publishing components into a separate internal-only 1095 module. [GH-11](https://github.com/hashicorp/packer/pull/11967) 1096 [GH-12116](https://github.com/hashicorp/packer/pull/12116) 1097 1098 ### BUG FIXES: 1099 * cmd/init: The init command will try to fallback to the next available version 1100 for a plugin, if the most recent version is not available or has a missing 1101 checksum file. This should prevent Packer from trying to install versions 1102 that have a GitHub tag but no actual assets. 1103 [GH-12103](https://github.com/hashicorp/packer/pull/12103) 1104 * cmd/plugins: The `plugins install` sub-command will try to fallback to the 1105 next available version for a plugin, if the most recent version is not 1106 available or has a missing checksum file. This should prevent Packer from 1107 trying to install versions that have a GitHub tag but no actual assets. 1108 [GH-12103](https://github.com/hashicorp/packer/pull/12103) 1109 * core: Bump Go version to 1.18.9 to address vulnerability GO-2022-1144, which 1110 concerns the net/http and golang.org/x/net 1111 packages.[GH-12153](https://github.com/hashicorp/packer/pull/12153) 1112 [GH-12158](https://github.com/hashicorp/packer/pull/12158) 1113 * core: Fix the registration of deleted input artifacts in HCP Packer when 1114 setting `keep_input_artifacts` to 1115 false.[GH-11462](https://github.com/hashicorp/packer/pull/11967) 1116 * core: Using different template types when building a HCP Packer 1117 image iteration will now trigger a runtime build error due to the 1118 mixing of template types. 1119 [GH-12132](https://github.com/hashicorp/packer/pull/12132) 1120 1121 ## 1.8.4 (October 28 2022) 1122 1123 ### NOTES: 1124 1125 * Packer user documentation has been moved to the new HashiCorp developer 1126 documentation portal. The main Packer site (https://www.packer.io) will 1127 continue to be the home for Packer but all requests for general 1128 documentation and binary downloads will be redirected to 1129 https://developer.hashicorp.com/packer. Users are encouraged to visit the 1130 developer documentation portal for access to all Packer related 1131 documentation; including integrations with HCP Packer. 1132 1133 * The Oracle builder and post-processor are no longer vendored with Packer 1134 core. Users of the Oracle plugin should use `packer init` to install the 1135 latest version of the plugin. See the [Oracle Plugin 1136 Documentation](https://github.com/hashicorp/packer-plugin-oracle) for more 1137 information. [GH-11983](https://github.com/hashicorp/packer/pull/11983) 1138 1139 * HCP Packer environment variables: The behavior of some HCP Packer-specific 1140 environment variables have changed slightly. Refer to [HCP Packer](https://developer.hashicorp.com/packer/docs/hcp) 1141 in the Packer documentation for a full list of HCP Packer environment variables. [GH-12059](https://github.com/hashicorp/packer/pull/12059) 1142 - For JSON templates, the `HCP_PACKER_REGISTRY` environment variable was 1143 previously required to enable the HCP Packer integration. In this release, 1144 the environment variable is now optional, and can be used for disabling the 1145 publishing of metadata for any HCP Packer enabled configuration template. 1146 - For HCL2 templates, the `HCP_PACKER_REGISTRY` environment variable can be used 1147 to disable publishing to a HCP Packer registry even if the template defines a 1148 `hcp_packer_registry` block. This can be useful for testing that a template 1149 works as intended prior to pushing metadata to HCP Packer. 1150 - The `HCP_PACKER_BUCKET_NAME` environment variable is now the only 1151 requirement to push metadata to a HCP Packer registry, in both JSON 1152 and HCL2 templates without a `hcp_packer_registry` block. 1153 1154 ### FEATURES: 1155 1156 * provisioner/powershell: Add `use_pwsh` configuration argument to support pwsh 1157 in powershell provisioner. [GH-11950](https://github.com/hashicorp/packer/pull/11950) 1158 1159 ### PLUGINS: 1160 1161 * builder/oracle: Remove Oracle plugin from the list of vendored 1162 plugins. [GH-11983](https://github.com/hashicorp/packer/pull/11983) 1163 1164 ### IMPROVEMENTS: 1165 1166 * command/hcl2_upgrade: Has been updated to persist all possible template 1167 engine options that were supported by the legacy JSON templates. While the 1168 upgrade command copies the template engine options as is support for the 1169 template options may not actually work with HCL2 templates; indicated by an 1170 error similar to `fieldname type <no value> is invalid`. Before executing a 1171 build with the upgraded template you are encouraged to run `packer validate` 1172 against the template and fix any invalid `<no value>` references. 1173 [GH-12068](https://github.com/hashicorp/packer/pull/12068) 1174 * core/hcl2: Packer will now report an error when executing a build with no 1175 sources selected for execution. 1176 [GH-12016](https://github.com/hashicorp/packer/pull/12016) 1177 * core/hcp: Configuration errors for HCP Packer enabled builds have been 1178 consolidated into a single report to help users address all potential 1179 issues before retrying their build. 1180 [GH-12031](https://github.com/hashicorp/packer/pull/12031) 1181 * core/hcp: Named builds within a legacy JSON template are now published to a 1182 HCP Packer registry using its full build name (e.g `happycloud.windows-srv-2019)`, 1183 as opposed to just the build name field (e.g `"name"="windows-srv-2019"`). 1184 Builders with no defined name will continue to publish build 1185 metadate using the builder type as the build name (e.g `happycloud`). 1186 [GH-12059](https://github.com/hashicorp/packer/pull/12059) 1187 * core:hcl2: When a variable is set in a variables definitions file (i.e 1188 \*.pkrvars.hcl), but isn't defined with the template files (i.e 1189 \*.pkr.hcl), the outputted error message will now include an example of 1190 variable block that can be added to the build template to remedy the issue. 1191 [GH-12020](https://github.com/hashicorp/packer/pull/12020) 1192 * core: Add ppc64le to binary releases for Linux. 1193 [GH-11966](https://github.com/hashicorp/packer/pull/11966) 1194 * core: Bump github.com/hashicorp/packer-plugin-sdk from 0.3.1 to 0.3.2. 1195 [GH-11981](https://github.com/hashicorp/packer/pull/11981) 1196 * core: Bump supported Go version to 1.18. 1197 [GH-11927](https://github.com/hashicorp/packer/pull/11927) 1198 1199 ### BUG FIXES: 1200 * command/hcl2_upgrade: special case: Azure `shared_image_gallery` fix. 1201 [GH-12087](https://github.com/hashicorp/packer/pull/12087) 1202 * core: Bump golang.org/x/sys to address CVE-2022-29526. 1203 [GH-11953](https://github.com/hashicorp/packer/pull/11953) 1204 * core: Bump golang.org/x/text to v0.3.8. 1205 [GH-12047](https://github.com/hashicorp/packer/pull/12047) 1206 * core: Update dependency to resolve GO-2022-0969. 1207 [GH-12009](https://github.com/hashicorp/packer/pull/12009) 1208 1209 ## 1.8.3 (August 2, 2022) 1210 1211 ### NOTES: 1212 * There's been a change in the way the `ssh_timeout` and the 1213 `ssh_handshake_attempts` configuration arguments work together. The 1214 behaviour is unchanged if both or none are specified. However, if only one 1215 of the two is set the other won't have a default value anymore and will be 1216 ignored. See [Packer Plugin SDK change](https://github.com/hashicorp/packer-plugin-sdk/pull/116) for details 1217 1218 * packer-plugin-digitalocean: The Digital Ocean Packer plugin has been handed over 1219 to the Digital Ocean team. New releases for this plugin are available at 1220 https://github.com/digitalocean/packer-plugin-digitalocean. This plugin is 1221 still being bundled in the Packer binary but will be removed in a future 1222 release. Existing references to the plugin will continue to work but 1223 users are advised to update the required_plugins block to use the new 1224 plugin source address. 1225 [GH-11912](https://github.com/hashicorp/packer/pull/11912) 1226 ``` 1227 required_plugins { 1228 digitalocean = { 1229 source = "github.com/digitalocean/digitalocean" 1230 version = ">=1.0.8" 1231 } 1232 } 1233 ``` 1234 * packer-plugin-outscale: The Outscale Packer plugin managed by the Outscale 1235 team, since Packer 1.7.9, has been removed from the Packer binary. Users are 1236 advised to install the latest version of the plugin by running 1237 `packer plugins install github.com/outscale/outscale`. [GH-11912](https://github.com/hashicorp/packer/pull/11912) 1238 1239 * packer-plugin-scaleway: The Scaleway Packer plugin managed by the Scaleway 1240 team, since Packer 1.7.7, has been removed from the Packer binary. Users are 1241 advised to install the latest version of the plugin by running 1242 `packer plugins install github.com/scaleway/scaleway`. [GH-11912](https://github.com/hashicorp/packer/pull/11912) 1243 1244 ### FEATURES: 1245 * Future Scaffolding: This release contains additional changes that allow 1246 Packer core to validate that a newly built image is a direct child of a HCP 1247 Packer registry source image. This feature is only available for HCP Packer 1248 enabled builds using the `hcp_packer_image` and `hcp_packer_iteration` data 1249 source for setting a builder's source image. 1250 [GH-11861](https://github.com/hashicorp/packer/pull/11861) 1251 1252 ### PLUGINS: 1253 1254 The following external plugins have been updated and pinned to address open 1255 issues. Please see their respective changelogs for details on plugin 1256 specific bug fixes and improvements. 1257 1258 * amazon@v1.1.2 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-amazon/releases/tag/v1.1.2) 1259 * ansible@v1.0.3 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-ansible/releases/tag/v1.0.3) 1260 * azure@v1.3.0 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-azure/releases/tag/v1.3.0) 1261 * docker@v1.0.7 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-docker/releases/tag/v1.0.7) 1262 * googlecompute@v1.0.14 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-googlecompute/releases/tag/v1.0.14) 1263 * lxc@v1.0.2 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-lxc/releases/tag/v1.0.2) 1264 * triton@v1.0.2 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-triton/releases/tag/v1.0.2) 1265 * vsphere@v1.0.7 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-vsphere/releases/tag/v1.0.7) 1266 * yandex@v1.1.2 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-yandex/releases/tag/v1.1.2) 1267 1268 1269 ### IMPROVEMENTS: 1270 * Bump packer-plugin-sdk to v0.3.1 to fix inconsistencies between `ssh_timeout` 1271 and `ssh_handshake_attempts` configuration arguments in the SSH 1272 communicator. [GH-11909](https://github.com/hashicorp/packer/pull/11909) 1273 * core: During long running builds the HCP Packer registry will mark a build as 1274 timed out if it has not posted an update after a certain number of minutes. 1275 For HCP Packer enabled builds a status update will now be sent every 2 1276 minutes to the registry to prevent long builds from being marked as timed 1277 out. [GH-11846](https://github.com/hashicorp/packer/pull/11846) 1278 * data/hcp_packer_image: Add `component_type` configuration argument to 1279 support specifying an exact build image when multiple images exist in the 1280 same provider and region for a given HCP Packer bucket iteration. 1281 [GH-11872](https://github.com/hashicorp/packer/pull/11872) 1282 * data/hcp_packer_image: Add support for `channel` as input argument to 1283 retrieve an image from the associated iteration. If 1284 using several images from a single iteration, you may prefer sourcing an 1285 iteration first, and referencing it for subsequent uses, as every 1286 `hcp_packer_image` with the channel set will generate a potentially 1287 billable HCP Packer request but if several `hcp_packer_image`s use a 1288 shared `hcp_packer_iteration` that will only generate one potentially 1289 billable request. 1290 [GH-11865](https://github.com/hashicorp/packer/pull/11865) 1291 1292 1293 1294 ### BUG FIXES 1295 1296 * core/hcl2: Fix crash when parsing malformed provisioner override blocks. 1297 [GH-11881](https://github.com/hashicorp/packer/pull/11881) 1298 * core/hcl2: Fix crash when running `packer validate` on templates containing 1299 one or more HCP Packer data sources. 1300 [GH-11883](https://github.com/hashicorp/packer/pull/11883) 1301 1302 1303 ## 1.8.2 (June 21, 2022) 1304 1305 ### NOTES: 1306 * The Packer plugin SDK includes the latest version of the go-getter library, 1307 which has been updated to address the vulnerabilities listed in 1308 [HCSEC-2022-13](https://discuss.hashicorp.com/t/hcsec-2022-13-multiple-vulnerabilities-in-go-getter-library/39930). 1309 The updated SDK contains changes that can 1310 be breaking for some plugins as the updated go-getter settings in the SDK 1311 prevent reading/writing through symlinks and to sub-directories that 1312 require upward path traversal (e.g /tmp/.../etc/hosts). The updates also 1313 includes a 30 minute maximum timeout for file downloading, which can be an 1314 issue for very large or slow downloads if they exceed more than 30 minutes 1315 to complete. 1316 1317 ### SECURITY: 1318 * Bump packer-plugin-sdk to v0.3.0 to address reported vulnerabilities within 1319 the go-getter library. 1320 [GH-11843](https://github.com/hashicorp/packer/pull/11843) 1321 * Bump plugins relying on go-getter for downloading remote files to address 1322 reported vulnerabilities within the go-getter library. See [HCSEC-2022-13](https://discuss.hashicorp.com/t/hcsec-2022-13-multiple-vulnerabilities-in-go-getter-library/39930) for details. 1323 [GH-11844](https://github.com/hashicorp/packer/pull/11844) 1324 1325 ### FEATURES: 1326 * Future Scaffolding: This release contains changes that allow Packer core to 1327 validate that a newly built image is a direct child of a HCP Packer 1328 registry source image. This feature is only available for HCP Packer 1329 enabled builds using the `hcp_packer_image` data source for setting a 1330 builder's source image. 1331 [GH-11832](https://github.com/hashicorp/packer/pull/11832) 1332 1333 ### PLUGINS: 1334 1335 External plugins have been pinned to the following versions. Please see their 1336 respective changelogs for details on plugin specific bug fixes and 1337 improvements. 1338 1339 * azure@v1.1.0 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-azure/releases/tag/v1.1.0) 1340 * hyperv@v1.0.4 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-hyperv/releases/tag/v1.0.4) 1341 * parallels@v1.0.3 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-parallels/releases/tag/v1.0.3) 1342 * proxmox@v1.0.8 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-proxmox/releases/tag/v1.0.8) 1343 * qemu@v1.0.5 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-qemu/releases/tag/v1.0.5) 1344 * vagrant@v1.0.3 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-vagrant/releases/tag/v1.0.3) 1345 * virtualbox@v1.0.4 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-virtualbox/releases/tag/v1.0.4) 1346 * vmware@v1.0.7 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-vmware/releases/tag/v1.0.7) 1347 * vsphere@v1.0.5 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-vsphere/releases/tag/v1.0.5) 1348 1349 ### IMPROVEMENTS: 1350 * Add `pause_after` configuration argument to Powershell provisioner. 1351 [GH-11792](https://github.com/hashicorp/packer/pull/11792) 1352 * HCP Packer data sources will now fail for revoked iterations to prevent building non-compliant images. 1353 [GH-11854](https://github.com/hashicorp/packer/pull/11854) 1354 1355 ### BUG FIXES: 1356 1357 * Add missing support for the `env` configuration argument in remote shell 1358 provisioners. [GH-11819](https://github.com/hashicorp/packer/pull/11819) 1359 * The preinst and postrm user scripts, including the service configuration 1360 directives, have been removed from the Packer rpm installations packages, 1361 as Packer does not require a service user in order to run. 1362 [GH-11831](https://github.com/hashicorp/packer/pull/11831) 1363 1364 ## 1.8.1 (May 27, 2022) 1365 1366 ### NOTES: 1367 * All bundled plugins have been updated to their latest release to address any 1368 open issues pertaining to the legacy SSH key algorithm fix made to the 1369 Packer plugin SDK. 1370 [GH-11761](https://github.com/hashicorp/packer/pull/11761) 1371 [GH-11802](https://github.com/hashicorp/packer/pull/11802) 1372 * This release contains the latest golang.org/x/crypto/ssh module which 1373 implements client authentication support for signature algorithms based on 1374 SHA-2 for use with existing RSA keys. Previously, a client would fail to 1375 authenticate with RSA keys to servers that reject signature algorithms 1376 based on SHA-1. 1377 1378 ### FEATURES: 1379 * **New Datasource** HTTP data source retrieves information from a HTTP 1380 endpoint to be used during Packer builds. 1381 [GH-11658](https://github.com/hashicorp/packer/pull/11658) 1382 1383 ### PLUGINS: 1384 1385 External plugins have been pinned to the following versions. Please see their 1386 respective changelogs for details on plugin specific bug fixes and 1387 improvements. 1388 1389 * alicloud@v1.0.2 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-alicloud/releases/tag/v1.0.2) 1390 * amazon@v1.1.0 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-amazon/releases/tag/v1.1.0) 1391 * ansible@v1.0.2 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-ansible/releases/tag/v1.0.2) 1392 * azure@v1.0.8 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-azure/releases/tag/v1.0.8) 1393 * chef@v1.0.2 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-chef/releases/tag/v1.0.2) 1394 * cloudstack@v1.0.1 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-cloudstack/releases/tag/v1.0.1) 1395 * converge@v1.0.1 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-converge/releases/tag/v1.0.1) 1396 * digitalocean@v1.0.3 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-digitalocean/releases/tag/v1.0.3) 1397 * docker@v1.0.5 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-docker/releases/tag/v1.0.5) 1398 * googlecompute@v1.0.13 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-googlecompute/releases/tag/v1.0.13) 1399 * hcloud@v1.0.4 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-hcloud/releases/tag/v1.0.4) 1400 * hyperone@v1.0.1 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-hyperone/releases/tag/v1.0.1) 1401 * hyperv@v1.0.3 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-hyperv/releases/tag/v1.0.3) 1402 * inspec@v1.0.0 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-inspec/releases/tag/v1.0.0) 1403 * jdcloud@v1.0.1 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-jdcloud/releases/tag/v1.0.1) 1404 * linode@v1.0.3 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-linode/releases/tag/v1.0.3) 1405 * lxc@v1.0.1 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-lxc/releases/tag/v1.0.1) 1406 * lxd@v1.0.1 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-lxd/releases/tag/v1.0.1) 1407 * ncloud@v1.0.3 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-ncloud/releases/tag/v1.0.3) 1408 * oneandone@v1.0.1 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-oneandone/releases/tag/v1.0.1) 1409 * openstack@v1.0.1 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-openstack/releases/tag/v1.0.1) 1410 * oracle@v1.0.2 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-oracle/releases/tag/v1.0.2) 1411 * parallels@v1.0.2 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-parallels/releases/tag/v1.0.2) 1412 * profitbricks@v1.0.2 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-profitbricks/releases/tag/v1.0.2) 1413 * proxmox@v1.0.7 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-proxmox/releases/tag/v1.0.7) 1414 * puppet@v1.0.1 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-puppet/releases/tag/v1.0.1) 1415 * qemu@v1.0.4 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-qemu/releases/tag/v1.0.4) 1416 * salt@v1.0.0 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-salt/releases/tag/v1.0.0) 1417 * tencentcloud@v1.0.5 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-tencentcloud/releases/tag/v1.0.5) 1418 * triton@v1.0.1 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-triton/releases/tag/v1.0.1) 1419 * ucloud@v1.0.1 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-ucloud/releases/tag/v1.0.1) 1420 * vagrant@v1.0.2 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-vagrant/releases/tag/v1.0.2) 1421 * virtualbox@v1.0.3 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-virtualbox/releases/tag/v1.0.3) 1422 * vmware@v1.0.5 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-vmware/releases/tag/v1.0.5) 1423 * vsphere@v1.0.4 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-vsphere/releases/tag/v1.0.4) 1424 * yandex@v1.1.1 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-yandex/releases/tag/v1.1.1) 1425 1426 ### IMPROVEMENTS: 1427 * Bump hcp-sdk-go to latest version. 1428 [GH-11763](https://github.com/hashicorp/packer/pull/11763) 1429 * Plugins installed via the `packer plugins install` command will now 1430 automatically load for builds using HCL2 templates without a 1431 required_plugins block. 1432 [GH-11712](https://github.com/hashicorp/packer/pull/11712) 1433 * Plugins installed via the `packer plugins install` command will now 1434 automatically load for builds using JSON templates. 1435 [GH-11712](https://github.com/hashicorp/packer/pull/11712) 1436 1437 ### BUG FIXES: 1438 * Bump github.com/hashicorp/go-getter to fix the untarring of OVA files 1439 regression. [GH-11675](https://github.com/hashicorp/packer/pull/11675) 1440 * Bump github.com/hashicorp/packer-plugin-sdk to address legacy SSH key 1441 algorithms in SSH communicator. 1442 [GH-11774](https://github.com/hashicorp/packer/pull/11774) 1443 [GH-11754](https://github.com/hashicorp/packer/pull/11754) 1444 1445 ## 1.8.0 (March 4, 2022) 1446 1447 ### NOTES: 1448 * **Breaking Change**: Support for the following architectures `ppc64le, mips, 1449 mips64, mipsle, mipsle64, s390x` have been removed from the Packer releases 1450 page. Packer, along with the HashiCorp maintained Packer plugins, have been 1451 updated to release binaries for the HashiCorp supported architectures arm, 1452 arm64, 386, and amd64. A full list of supported platforms can be found 1453 on the [Packer Downloads](https://www.packer.io/downloads) page. 1454 [GH-11564](https://github.com/hashicorp/packer/pull/11564) 1455 [GH-11601](https://github.com/hashicorp/packer/pull/11601) 1456 [GH-11603](https://github.com/hashicorp/packer/pull/11603) 1457 1458 * **Breaking Change**: The `packer-plugin-check`(github.com/hashicorp/packer/cmd/packer-plugins-check) has been 1459 replaced by the [`packer-sdc plugin-check` command](https://github.com/hashicorp/packer- plugin sdk/tree/main/cmd/packer-sdc#packer-sdc). 1460 Plugin maintainers who may be using the packer-plugin-check as part of their 1461 release pipeline are encouraged to move to the packer-sdc command. As an 1462 alternative, maintainers can continue to use the packer-plugin-check by 1463 pinning the command to Packer 1.7.10. 1464 [GH-11317](https://github.com/hashicorp/packer/pull/11317) 1465 1466 ### FEATURES 1467 * **New Command** `packer plugins` command and subcommands to manage external 1468 plugins. [GH-11553](https://github.com/hashicorp/packer/pull/11553) 1469 [GH-11625](https://github.com/hashicorp/packer/pull/11625) 1470 1471 ### IMPROVEMENTS 1472 * core: Add a `env` argument to provisioner blocks that allow for setting a 1473 map of key/value pairs to inject prior to the execute_command. The env argument 1474 is an alternative to using environment_vars for setting environment variables, 1475 which has the added ability to read from Packer datasources. [GH-11569](https://github.com/hashicorp/packer/pull/11569) 1476 * core: Bump version of go-getter to allow for downloading ISOs with PGP signed 1477 checksums. [GH-11495](https://github.com/hashicorp/packer/pull/11495) 1478 * core: Docker images are now available for all supported architectures that 1479 the linux binaries are built for including arm, arm64, 386, and amd64 1480 [GH-11564](https://github.com/hashicorp/packer/pull/11564) 1481 [GH-11601](https://github.com/hashicorp/packer/pull/11601) 1482 [GH-11603](https://github.com/hashicorp/packer/pull/11603) 1483 * core: Packer's Linux package service configs and pre/post install scripts are 1484 now available under .release/linux. 1485 [GH-11601](https://github.com/hashicorp/packer/pull/11601) 1486 [GH-11603](https://github.com/hashicorp/packer/pull/11603) 1487 * core: Packer's Linux packages are now available for all supported Linux 1488 architectures including arm, arm64, 386, and amd64 1489 [GH-11564](https://github.com/hashicorp/packer/pull/11564) 1490 [GH-11601](https://github.com/hashicorp/packer/pull/11601) 1491 [GH-11603](https://github.com/hashicorp/packer/pull/11603) 1492 * core: The dockerfile that is used to build the packer docker image available 1493 at hashicorp/packer now lives in the root of this repo. The README that 1494 describes how to build the docker targets defined in the Dockerfile are 1495 available under ./release/docker/README.md. 1496 [GH-11564](https://github.com/hashicorp/packer/pull/11564) 1497 [GH-11601](https://github.com/hashicorp/packer/pull/11601) 1498 [GH-11603](https://github.com/hashicorp/packer/pull/11603) 1499 * core: The packer-plugin-check command has been removed. Plugin maintainers 1500 should update their release configuration to use the `packer-sdc plugin- 1501 check` command. [GH-11317](https://github.com/hashicorp/packer/pull/11317) 1502 1503 1504 ### BUG FIXES 1505 * core/hcl2: Fixes an issue preventing builds from pausing between provisioners when 1506 the `--debug` argument has been passed. 1507 [GH-11537](https://github.com/hashicorp/packer/pull/11537) 1508 * core/hcl2: Fixes a data loss issue when merging an empty-object map to a non- 1509 empty map variable. 1510 [GH-11566](https://github.com/hashicorp/packer/pull/11566) 1511 * core/hcl2: Fixes a regression where references to locals via the lookup 1512 function were failing to find defined keys. 1513 [GH-11566](https://github.com/hashicorp/packer/pull/11566) 1514 * core/hcl2: Fixes an issue where HCP Packer build labels from the first 1515 completed build image were being copied to all images within the same 1516 build. [GH-11574](https://github.com/hashicorp/packer/pull/11574) 1517 [GH-11584](https://github.com/hashicorp/packer/pull/11584) 1518 * core: HCP Packer datasources will no longer fail for iterations with 1519 scheduled revocations. 1520 [GH-11619](https://github.com/hashicorp/packer/pull/11619) 1521 * core: Packer darwin builds now use macOS system DNS resolver for resolving 1522 hostnames. [GH-9710](https://github.com/hashicorp/packer/issues/9710) 1523 [GH-11564](https://github.com/hashicorp/packer/pull/11564) 1524 1525 ## 1.7.10 (February 02, 2022) 1526 1527 ### NOTES: 1528 1529 This patch release fixes a crash in m1 caused by the psutils dep, 1530 https://github.com/hashicorp/packer/pull/11546, originally reported by the 1531 HomeBrew team here https://github.com/hashicorp/packer/issues/11512 1532 1533 ### IMPROVEMENTS 1534 * Print all locals errors when there is a circular error. 1535 [GH-11527](https://github.com/hashicorp/packer/pull/11527 1536 1537 ### BUG FIXES 1538 * Prevent duplicate local block creation. 1539 [GH-11534](https://github.com/hashicorp/packer/pull/11534) 1540 * Update psutils dep to avoid crash on Arm64 Macs. 1541 [GH-11546](https://github.com/hashicorp/packer/pull/11546) 1542 1543 ## 1.7.9 (January 19, 2022) 1544 ### NOTES: 1545 1546 * HCP Packer compatible plugins will contain a "HCP Packer Ready" badge at the 1547 top of on their documentation page. 1548 [GH-11456](https://github.com/hashicorp/packer/pull/11456) 1549 * Packer core [documentation](https://packer.io/docs) now supports versioning 1550 on Packer.io. Users can select documentation for the version of Packer they 1551 are using. [GH-11434](https://github.com/hashicorp/packer/pull/11434) 1552 * The `hcp_packer_registry.labels` argument has been deprecated in favor of the 1553 new `bucket_labels` argument to support custom user generated bucket 1554 labels. [GH-11401](https://github.com/hashicorp/packer/pull/11401) 1555 * The code of the Outscale builder was handed over to the outscale org 1556 [GH-11428](https://github.com/hashicorp/packer/pull/11428) 1557 * Version information for external plugins has been added as a badge to the 1558 plugin documentation. 1559 [GH-11457](https://github.com/hashicorp/packer/pull/11457) 1560 * The following unmaintained external provisioner plugins have been archived: chef, 1561 converge, inspec, salt-masterless, puppet. More 1562 information on what this deprecation means for users can be found on the 1563 blog post - [Plans to Archive Unmaintained Provisioner 1564 Plugins](https://www.hashicorp.com/blog/plans-to-archive-unmaintained-packer-provisioner-plugins) 1565 1566 1567 ### PLUGINS: 1568 1569 External plugins have been pinned to the following versions. Please see 1570 their respective changelogs for details on plugin specific bug fixes and 1571 improvements. 1572 1573 * alicloud@v1.0.1 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-alicloud/releases/tag/v1.0.1) 1574 * amazon@v1.0.6 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-amazon/releases/tag/v1.0.6) 1575 * ansible@v1.0.1 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-ansible/releases/tag/v1.0.1) 1576 * azure@v1.0.4 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-azure/releases/tag/v1.0.4) 1577 * chef@v1.0.2 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-chef/releases/tag/v1.0.2) 1578 * cloudstack@v1.0.0 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-cloudstack/releases/tag/v1.0.0) 1579 * converge@v1.0.1 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-converge/releases/tag/v1.0.1) 1580 * digitalocean@v1.0.1 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-digitalocean/releases/tag/v1.0.1) 1581 * docker@v1.0.3 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-docker/releases/tag/v1.0.3) 1582 * googlecompute@v1.0.9 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-googlecompute/releases/tag/v1.0.9) 1583 * hcloud@v1.0.2 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-hcloud/releases/tag/v1.0.2) 1584 * hyperone@v1.0.0 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-hyperone/releases/tag/v1.0.0) 1585 * hyperv@v1.0.1 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-hyperv/releases/tag/v1.0.1) 1586 * inspec@v1.0.0 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-inspec/releases/tag/v1.0.0) 1587 * jdcloud@v1.0.0 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-jdcloud/releases/tag/v1.0.0) 1588 * linode@v1.0.1 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-linode/releases/tag/v1.0.1) 1589 * lxc@v1.0.0 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-lxc/releases/tag/v1.0.0) 1590 * lxd@v1.0.0 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-lxd/releases/tag/v1.0.0) 1591 * ncloud@v1.0.1 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-ncloud/releases/tag/v1.0.1) 1592 * oneandone@v1.0.0 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-oneandone/releases/tag/v1.0.0) 1593 * openstack@v1.0.0 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-openstack/releases/tag/v1.0.0) 1594 * oracle@v1.0.1 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-oracle/releases/tag/v1.0.1) 1595 * outscale@v1.0.2 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-outscale/releases/tag/v1.0.2) 1596 * parallels@v1.0.0 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-parallels/releases/tag/v1.0.0) 1597 * profitbricks@v1.0.1 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-profitbricks/releases/tag/v1.0.1) 1598 * proxmox@v1.0.4 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-proxmox/releases/tag/v1.0.4) 1599 * puppet@v1.0.1 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-puppet/releases/tag/v1.0.1) 1600 * qemu@v1.0.1 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-qemu/releases/tag/v1.0.1) 1601 * salt@v1.0.0 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-salt/releases/tag/v1.0.0) 1602 * tencentcloud@v1.0.3 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-tencentcloud/releases/tag/v1.0.3) 1603 * triton@v1.0.0 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-triton/releases/tag/v1.0.0) 1604 * ucloud@v1.0.0 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-ucloud/releases/tag/v1.0.0) 1605 * vagrant@v1.0.1 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-vagrant/releases/tag/v1.0.1) 1606 * virtualbox@v1.0.1 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-virtualbox/releases/tag/v1.0.1) 1607 * vmware@v1.0.5 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-vmware/releases/tag/v1.0.5) 1608 * vsphere@v1.0.2 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-vsphere/releases/tag/v1.0.2) 1609 * yandex@v1.0.3 - [CHANGELOG](https://github.com/hashicorp/packer-plugin-yandex/releases/tag/v1.0.3) 1610 * scaleway@v1.0.4 - [CHANGELOG](https://github.com/scaleway/packer-plugin-scaleway/releases/tag/v1.0.4) 1611 1612 ### IMPROVEMENTS: 1613 1614 * core/hcl2: Add `bucket_labels` argument to the `hcp_packer_registry` block to 1615 support custom user generated bucket labels. 1616 [GH-11401](https://github.com/hashicorp/packer/pull/11401) 1617 * core/hcl2: Add `build_labels` argument to the `hcp_packer_registry` block to 1618 support custom user generated build labels. 1619 [GH-11401](https://github.com/hashicorp/packer/pull/11401) 1620 * core/hcl2: Allow for the use of variables and locals within a `build` block. 1621 [GH-11421](https://github.com/hashicorp/packer/pull/11421) 1622 * core/hcl2: Allow for the use of variables and locals within a 1623 `hcp_packer_registry` block. 1624 [GH-11421](https://github.com/hashicorp/packer/pull/11421) 1625 * core/website: Add HCP Packer Ready badge to supported plugins. 1626 [GH-11456](https://github.com/hashicorp/packer/pull/11456) 1627 * core/website: Add Packer version selection toggle to Packer core 1628 documentation. [GH-11434](https://github.com/hashicorp/packer/pull/11434) 1629 * core/website: Add version information to external plugin documentation. 1630 [GH-11456](https://github.com/hashicorp/packer/pull/11456) 1631 * core/website: Extract external plugins documentation from `packer.io/docs/` 1632 into `packer.io/plugins`. 1633 [GH-11464](https://github.com/hashicorp/packer/pull/11464) 1634 * core: Add Packer user agent information to HCP Packer client requests. 1635 [GH-11455](https://github.com/hashicorp/packer/pull/11455) 1636 * core: Bump github.com/hashicorp/packer-plugin-sdk from 0.2.9 to 0.2.11 to 1637 prevent HCP Packer builds from failing when no SourceImageID is 1638 provided. [GH-11459](https://github.com/hashicorp/packer/pull/11459) 1639 * core: Bump to latest preview version of hashicorp/hcp-sdk-go to prevent HCP 1640 Packer builds from trying to update a revoked iteration. 1641 [GH-11492](https://github.com/hashicorp/packer/pull/11492) 1642 * provisioner/powwershell: Tiny tweaks and fixes for the PowerShell 1643 provisioner. [GH-11410](https://github.com/hashicorp/packer/pull/11410) 1644 1645 ### BUG FIXES: 1646 1647 * core/hcl2: Allow the use of `build.name` for naming provisioners and 1648 post-processors. [GH-11432](https://github.com/hashicorp/packer/pull/11432) 1649 * core/hcl2: Fix crash when a provisioner `timeout` argument is improperly 1650 formatted. [GH-11382](https://github.com/hashicorp/packer/pull/11382) 1651 * core/hcl2: HCP Packer builds containing metadata not expected by Packer core 1652 will no longer fail the build. 1653 [GH-11458](https://github.com/hashicorp/packer/pull/11458) 1654 * provisioner/file: File provisioner will now perform a noop when no source 1655 file content is specified; previously missing content resulted in a hard 1656 fail. [GH-11349](https://github.com/hashicorp/packer/pull/11349) 1657 1658 1659 ## 1.7.8 (October 27, 2021) 1660 1661 ### BUG FIXES 1662 * builder/amazon: Bump plugin to latest version to address a variable 1663 interpolation issue for builder `run_tags`. [GH-11360](https://github.com/hashicorp/packer/pull/11360) 1664 1665 ## 1.7.7 (October 19, 2021) 1666 1667 ### NOTES: 1668 1669 * The code of the Scaleway builder was handed over to the scaleway org 1670 [GH-11298](https://github.com/hashicorp/packer/pull/11298) 1671 [GH-11296](https://github.com/hashicorp/packer/pull/11296) 1672 1673 ### IMPROVEMENTS: 1674 * Improved support and user experience for HCP Packer registry. 1675 [GH-11304](https://github.com/hashicorp/packer/pull/11304) 1676 [GH-11315](https://github.com/hashicorp/packer/pull/11315) 1677 [GH-11320](https://github.com/hashicorp/packer/pull/11320) 1678 [GH-11319](https://github.com/hashicorp/packer/pull/11319) 1679 1680 * core: Allow to use build variables in a post processor. 1681 [GH-11323](https://github.com/hashicorp/packer/pull/11323) 1682 * core: Allow use in top level source variables in a build.source block. 1683 [GH-11318](https://github.com/hashicorp/packer/pull/11318) 1684 * core: Show successful message upon successful packer validate. 1685 [GH-11337](https://github.com/hashicorp/packer/pull/11337) 1686 * packer init: better error handling. 1687 [GH-11330](https://github.com/hashicorp/packer/pull/11330) 1688 1689 ## 1.7.6 (September 28, 2021) 1690 1691 ### BUG FIXES: 1692 * core: Update Go module dependencies to fix an issue preventing Go 1.16 users 1693 from installing the packer-plugins-check command via go install. [GH-11282] 1694 1695 ## 1.7.5 (September 14, 2021) 1696 1697 ### NOTES: 1698 The Exoscale builder and post-processor are no longer vendored with Packer 1699 core, users of the Exoscale plugin should use `packer init` to install the 1700 latest version of the plugin. See the [Exoscale Plugin 1701 Documentation](https://github.com/exoscale/packer-plugin-exoscale#exoscale-packer-plugin) for more information. [GH-11237] 1702 1703 ### FEATURES: 1704 * **Future Scaffolding** This release contains no-op refactors in preparation 1705 for connecting Packer to the HCP Packer Registry. 1706 1707 ### IMPROVEMENTS: 1708 * core: Upgrade to Go 1.17. [GH-11237] 1709 * hcl2_upgrade: support strftime function. [GH-11220] 1710 * provisioner/file: add option to set content + tests. [GH-11209] 1711 * provisioner/inspec: Remove inspec provisioner from Packer core. [GH-11230] 1712 * provisioner/salt-masterless: Remove salt-masterless provisioner from Packer 1713 core to github.com/hashicorp/packer-plugin-salt/provisioner/salt- 1714 masterless. [GH-11229] 1715 1716 ### BUG FIXES: 1717 * builder/azure: Bump plugin to latest version to address a vulnerable 1718 dependency in azure-sdk-for-go. [GH-11162] 1719 * builder/googlecompute: Bump plugin to latest version to fix an issue when 1720 building an instance via an IAP tunnel. [GH-11235] 1721 * builder/ncloud: Bump ncloud dependency to fix dependency that got deleted 1722 from github [GH-11224] 1723 * core: Fix `{{packer_version}}` interpolation regression for HCL and JSON 1724 templates. [GH-11200] 1725 * hcl2_upgrade: Fix panic when file does not exist. [GH-11206] 1726 * hcl2_upgrade: special case: vsphere fix. [GH-11216] 1727 1728 ## 1.7.4 (July 20, 2021) 1729 1730 ### BUG FIXES: 1731 1732 * builder/outscale: Update Outscale multi-component plugin to fix `go build` 1733 failures due to missing Go module dependencies. [GH-11147] 1734 1735 ## 1.7.3 (June 15, 2021) 1736 1737 ### IMPROVEMENTS: 1738 1739 We've extracted a majority of HashiCorp-maintained and community plugins from the Packer Core repository. They now live in their own multi-component plugin repositories. This is not a breaking change as we are enabling backwards compatibility in this release by vendoring components back into Packer. 1740 However, we encourage users to begin using `packer init` to download and install plugins to get the latest updates to each plugin, and to prepare for Packer v2.0 when we will stop vendoring the above plugins into the main Packer binary. 1741 1742 The following repositories have been created, and their components have been deleted from the "github.com/hashicorp/packer" repository. 1743 1744 * "github.com/hashicorp/packer-plugin-alicloud" [GH-10932] 1745 * "github.com/hashicorp/packer-plugin-amazon" [GH-10800] 1746 * "github.com/hashicorp/packer-plugin-ansible" [GH-10912] 1747 * "github.com/hashicorp/packer-plugin-azure" [GH-10979] 1748 * "github.com/hashicorp/packer-plugin-chef" [GH-10921] 1749 * "github.com/hashicorp/packer-plugin-cloudstack" [GH-10934] 1750 * "github.com/hashicorp/packer-plugin-converge" [GH-10956] 1751 * "github.com/hashicorp/packer-plugin-digitalocean" [GH-10961] 1752 * "github.com/hashicorp/packer-plugin-docker" [GH-10695] 1753 * "github.com/hashicorp/packer-plugin-googlecompute" [GH-10890] 1754 * "github.com/hashicorp/packer-plugin-hcloud" [GH-10966] 1755 * "github.com/hashicorp/packer-plugin-hyperone" [GH-10949] 1756 * "github.com/hashicorp/packer-plugin-hyperv" [GH-10949] 1757 * "github.com/hashicorp/packer-plugin-inspec" 1758 * "github.com/hashicorp/packer-plugin-ionos-cloud" 1759 * "github.com/hashicorp/packer-plugin-jdcloud" [GH-10946] 1760 * "github.com/hashicorp/packer-plugin-linode" [GH-10947] 1761 * "github.com/hashicorp/packer-plugin-lxc" [GH-10965] 1762 * "github.com/hashicorp/packer-plugin-lxd" [GH-10965] 1763 * "github.com/hashicorp/packer-plugin-ncloud" [GH-10937] 1764 * "github.com/hashicorp/packer-plugin-openstack" [GH-10933] 1765 * "github.com/hashicorp/packer-plugin-oracle" [GH-10962] 1766 * "github.com/hashicorp/packer-plugin-outscale" [GH-10941] 1767 * "github.com/hashicorp/packer-plugin-parallels" [GH-10936] 1768 * "github.com/hashicorp/packer-plugin-profitbricks" [GH-11084] 1769 * "github.com/hashicorp/packer-plugin-proxmox" [GH-10930] 1770 * "github.com/hashicorp/packer-plugin-puppet" [GH-10943] 1771 * "github.com/hashicorp/packer-plugin-qemu" [GH-10929] 1772 * "github.com/hashicorp/packer-plugin-salt" 1773 * "github.com/hashicorp/packer-plugin-scaleway" [GH-10939] 1774 * "github.com/hashicorp/packer-plugin-tencentcloud" [GH-10967] 1775 * "github.com/hashicorp/packer-plugin-triton" [GH-10963] 1776 * "github.com/hashicorp/packer-plugin-ucloud" [GH-10953] 1777 * "github.com/hashicorp/packer-plugin-vagrant" [GH-10960] 1778 * "github.com/hashicorp/packer-plugin-virtualbox" [GH-10910] 1779 * "github.com/hashicorp/packer-plugin-vmware" [GH-10920] 1780 * "github.com/hashicorp/packer-plugin-vsphere" [GH-10896] 1781 * "github.com/hashicorp/packer-plugin-yandex" [GH-10970] 1782 1783 The following components will not be removed from the main packer binary: 1784 1785 * `null` builder 1786 * `file` builder 1787 * `breakpoint` provisioner 1788 1789 * `file` provisioner 1790 * `powershell` provisioner 1791 * `shell` provisioner 1792 * `shell-local` provisioner 1793 * `sleep` provisioner 1794 * `windows-restart` provisioner 1795 * `windows-shell` provisioner 1796 1797 * `artifice` post-processor 1798 * `checksum` post-processor 1799 * `compress` post-processor 1800 * `manifest` post-processor 1801 * `shell-local` post-processor 1802 1803 ### Bug Fixes: 1804 * builder/azure: Add `keep_os_disk` parameter to control OS disk deletion 1805 [GH-10045] 1806 * builder/azure: Stop SIG timout from being overridden by PollingDuration 1807 [GH-10816] 1808 * builder/azure: Support shared image gallery storage account type [GH-10863] 1809 * builder/proxmox: Proxmox builder use ipv4 address instead of always ipv6. 1810 [GH-10858] 1811 * core/hcl2_upgrade: Allow hcl2_upgrade continue with unknown builders. 1812 [GH-11049] 1813 * core/hcl2_upgrade: Improve regex to fix escaping on split function. 1814 [GH-11083] 1815 * core/hcl: Fix Invalid provisioner pause_before panic [GH-10978] 1816 * core: HCL "index" function now actually returns the index of the element 1817 [GH-11008] 1818 * core: Implemented DEFAULT_NAME handling for datasource plugins [GH-11026] 1819 1820 ### Enhancements: 1821 1822 * builder/azure: Added custom nicname and osdiskname [GH-10938] 1823 * builder/azure: Add support for shared image gallery storage account type 1824 [GH-10863] 1825 * builder/digitalocean: support ecdsa, ed25519, dsa temporary key types. 1826 [GH-10856] 1827 * builder/ncloud: Support ncloud vpc version [GH-10870] 1828 * core/fmt: When reading from stdin `packer fmt` will output the contents of 1829 the formatted file even if the input was already formatted. [GH-11047] 1830 * core/hcl: HCL variables are now supported within the `name`, `only`, 1831 `except`, and `keep_input_artifact` fields for post-processor blocks. 1832 [GH-11094] 1833 * core/hcl: Running `packer build` with an `-only` or `-exclude` flag will now 1834 inform the user if no match was found. [GH-11050] 1835 * post-processor/compress: Add bzip2 support to post-processor [GH-10867] 1836 * post-processor/googlecompute-import: Add Image Storage Locations field 1837 [GH-10864] 1838 * Removed the golang "vendor" directory in favor of go modules. This should not 1839 affect end users. [GH-10916] 1840 1841 ## 1.7.2 (April 05, 2021) 1842 1843 ### IMPROVEMENTS: 1844 1845 * builder/alicloud: Add `ramrole` configuration to ECS instance. [GH-10845] 1846 1847 ### BUG FIXES: 1848 1849 * builder/proxmox: Update Proxmox Go API to ensure only the first non-loopback 1850 IPv4 address gets returned. [GH-10858] 1851 * builder/vsphere: Fix primary disk resize on clone. [GH-10848] 1852 * core: Fix bug where call to "packer version" sent output to stderr instead of 1853 stdout. [GH-10850] 1854 1855 ## 1.7.1 (March 31, 2021) 1856 1857 ### NOTES: 1858 1859 * builder/amazon: Has been vendored in this release and will no longer be 1860 updated with Packer core. In Packer v1.8.0 the plugin will be removed 1861 entirely. The `amazon` components will continue to work as expected until 1862 then, but for the latest offerings of the Amazon plugin, users are 1863 encourage to use the `packer init` command to install the latest release 1864 version. For more details see [Installing Packer 1865 Plugins](https://www.packer.io/docs/plugins#installing-plugins) 1866 * builder/docker: Has been vendored in this release and will no longer be 1867 updated with Packer core. In Packer v1.8.0 the plugin will be removed 1868 entirely. The `docker` builder will continue to work as expected until 1869 then, but for the latest offerings of the Docker plugin, users are 1870 encourage to use the `packer init` command to install the latest release 1871 version. For more details see [Installing Packer 1872 Plugins](https://www.packer.io/docs/plugins#installing-plugins) 1873 * darwin/arm64: Packer now includes the darwin/arm64 binary to its releases to 1874 supports the new OSX M1. [GH-10804] 1875 * post-processor/docker-\*: Have been vendored in this release and will no 1876 longer be updated with Packer core. In Packer v1.8.0 the plugin will be 1877 removed entirely. The `docker` builder will continue to work as expected 1878 until then, but for the latest offerings of the Docker plugin, users are 1879 encourage to use the `packer init` command to install the latest release 1880 version. For more details see [Installing Packer 1881 Plugins](https://www.packer.io/docs/plugins#installing-plugins) 1882 * post-processor/exoscale-import: Has been vendored in this release and will no 1883 longer be updated with Packer core. In Packer v1.8.0 the plugin will be 1884 removed entirely. The `exoscale-import` post-processor will continue to 1885 work as expected until then, but for the latest offerings of the Exoscale 1886 plugin, users are encourage to use the `packer init` command to install the 1887 latest release version. For more details see [Exoscale Plugin 1888 Repostiroy](https://github.com/exoscale/packer-plugin-exoscale). [GH-10709] 1889 1890 ### IMPROVEMENTS 1891 * builder/amazon: allow creation of ebs snapshots without volumes. [GH-9591] 1892 * builder/amazon: Fix issue for multi-region AMI build that fail when 1893 encrypting with KMS and sharing across accounts. [GH-10754] 1894 * builder/azure: Add client_cert_token_timeout option. [GH-10528] 1895 * builder/google: Make Windows password timeout configurable. [GH-10727] 1896 * builder/google: Update public GCP image project as gce-uefi-images are 1897 deprecated. [GH-10724] 1898 * builder/oracle-oci: Update Oracle Go SDK to add support for OCI flexible 1899 shapes. [GH-10833] 1900 * builder/proxmox: Allow using API tokens for Proxmox authentication. 1901 [GH-10797] 1902 * builder/qemu: Added firmware option. [GH-10683] 1903 * builder/scaleway: add support for timeout in shutdown step. [GH-10503] 1904 * builder/vagrant: Fix logging to be clearer when Vagrant builder overrides 1905 values retrieved from vagrant's ssh_config call. [GH-10743] 1906 * builder/virtualbox: Added ISO builder option to create additional disks. 1907 [GH-10674] 1908 * builder/virtualbox: Add options for nested virtualisation and RTC time base. 1909 [GH-10736] 1910 * builder/virtualbox: Add template options for chipset, firmware, nic, graphics 1911 controller, and audio controller. [GH-10671] 1912 * builder/virtualbox: Support for "virtio" storage and ISO drive. [GH-10632] 1913 * builder/vmware: Added "attach_snapshot" parameter to vmware vmx builder. 1914 [GH-10651] 1915 * command/fmt: Adding recursive flag to formatter to format subdirectories. 1916 [GH-10457] 1917 * core/hcl2: Add legacy_isotime function. [GH-10780] 1918 * core/hcl2: Add support for generating `dynamic` blocks within a `build` 1919 block. [GH-10825] 1920 * core/hcl2: Add templatefile function. [GH-10776] 1921 * core/hcl2_upgrade: hcl2_upgrade command can now upgrade json var-files. 1922 [GH-10676] 1923 * core/init: Add implicit required_plugin blocks feature. [GH-10732] 1924 * core: Add http_content option to serve variables from HTTP at preseed. 1925 [GH-10801] 1926 * core: Change template parsing error to include warning about file extensions. 1927 [GH-10652] 1928 * core: Update to gopsutil v3.21.1 to allow builds to work for darwin arm64. 1929 [GH-10697] 1930 * provisioner/inspec: Allow non-zero exit codes for inspec provisioner. 1931 [GH-10723] 1932 1933 ### BUG FIXES 1934 * buider/azure: Update builder to ensure a proper clean up Azure temporary 1935 managed Os disks. [GH-10713] 1936 * builder/amazon: Update amazon SDK to fix an SSO login issue. [GH-10668] 1937 * builder/azure: Don't overwrite subscription id if unset. [GH-10659] 1938 * builder/azure: Set default for the parameter client_cert_token_timeout 1939 [GH-10783] 1940 * builder/google: Add new configuration field `windows_password_timeout` to 1941 allow user to set configurable timeouts. [GH-10727] 1942 * builder/hyperv: Make Packer respect winrm_host flag in winrm connect func. 1943 [GH-10748] 1944 * builder/openstack: Make Packer respect winrm_host flag in winrm connect func. 1945 [GH-10748] 1946 * builder/oracle-oci: Update Oracle Go SDK to fix issue with reading key file. 1947 [GH-10560] [GH-10774] 1948 * builder/outscale: Fix omi_description that was ignored in Osc builder 1949 [GH-10792] 1950 * builder/parallels: Make Packer respect winrm_host flag in winrm connect func. 1951 [GH-10748] 1952 * builder/proxmox: Fixes issue when using `additional_iso_files` in HCL enabled 1953 templates. [GH-10772] 1954 * builder/qemu: Make Packer respect winrm_host flag in winrm connect func. 1955 [GH-10748] 1956 * builder/virtualbox: Make Packer respect winrm_host flag in winrm connect 1957 func. [GH-10748] 1958 * builder/vmware: Added a fallback file check when trying to determine the 1959 network-mapping configuration. [GH-10543] 1960 * builder/vsphere: Fix invalid device configuration issue when creating a 1961 vm with multiple disk on the same controller. [GH-10844] 1962 * builder/vsphere: Fix issue where boot command would fail the build do to a 1963 key typing error. This change will now retry to type the key on error 1964 before giving up. [GH-10541] 1965 * core/hcl2_upgrade: Check for nil config map when provisioner/post-processor 1966 doesn't have config. [GH-10730] 1967 * core/hcl2_upgrade: Fix escaped quotes in template functions [GH-10794] 1968 * core/hcl2_upgrade: Make hcl2_upgrade command correctly translate 1969 pause_before. [GH-10654] 1970 * core/hcl2_upgrade: Make json variables using template engines get stored as 1971 locals so they can be properly interpolated. [GH-10685] 1972 * core/init: Fixes issue where `packer init` was failing to install valid 1973 plugins containing a 'v' within its name. [GH-10760] 1974 * core: Packer will now show a proper error message when failing to load the 1975 contents of PACKER_CONFIG. [GH-10766] 1976 * core: Pin Packer to Golang 1.16 to fix code generation issues. [GH-10702] 1977 * core: Templates previously could not interpolate the environment variable 1978 PACKER_LOG_PATH. [GH-10660] 1979 * post-processor/vagrant-cloud: Override direct upload based on box size 1980 [GH-10820] 1981 * provisioner/chef-solo: HCL2 templates can support the json_string option. 1982 [GH-10655] 1983 * provisioner/inspec: Add new configuration field `valid_exit_codes` to allow 1984 for non-zero exit codes. [GH-10723] 1985 * provisioner/salt-masterless: Update urls for the bootstrap scripts used by 1986 salt-masterless provide. [GH-10755] 1987 1988 ## 1.7.0 (February 17, 2021) 1989 1990 ### FEATURES 1991 * **New Command** (HCL only) `packer init` command will download plugins defined 1992 in a new `required_plugins` block [GH-10304] [GH-10633]. 1993 * **New Plugin Type** Data sources can be implemented (blog post forthcoming). 1994 [GH-10440] 1995 * **New Plugin** Aws Secrets Manager data source [GH-10505] [GH-10467] 1996 1997 ### BACKWARDS INCOMPATIBILITIES 1998 * core: The API that the Packer core uses to communicate with community plugins 1999 has changed; maintainers of community plugins will need to upgrade their 2000 plugins in order to make them compatible with v1.7.0. An upgrade guide will 2001 be available on our guides page https://www.packer.io/guides. 2002 2003 ### IMPROVEMENTS 2004 * builder/amazon: Add `skip_create_ami` option for testing and situations where 2005 artifact is not the ami. [GH-10531] 2006 * builder/amazon: Add IMDSv2 support for AWS EBS builder. [GH-10546] 2007 * builder/amazon: Add resource tags in the launch template used to request spot 2008 instances. [GH-10456] 2009 * builder/openstack: Add `skip_create_image` option for testing and situations 2010 where artifact is not the image. [GH-10496] 2011 * builder/oracle-oci: Add retry strategies to oci calls [GH-10591] 2012 * core/fmt: The `packer fmt` can now read from stdin. [GH-10500] 2013 * core/hcl: Add regex and regexall hcl2 template functions. [GH-10601] 2014 * core/hcl: Templates now support "sensitive" locals. [GH-10509] 2015 * core/hcl: Templates now support error-cleanup-provisioner. [GH-10604] 2016 * hcl2_upgrade: Command now comes with a flag so you can control whether output 2017 templates are annotated with helpful comments. [GH-10619] 2018 * hcl2_upgrade: Command now gracefully handles options with template engine 2019 interpolations. [GH-10625] 2020 * hcl2_upgrade: Command will convert amazon filters to use the ami data source. 2021 [GH-10491] 2022 2023 ### BUG FIXES 2024 * amazon/ebssurrogate: Apply snapshot tags at same time as when taking 2025 snapshot. [GH-10150] 2026 * builder/amazon: Fix bug where validation fails if optional iops value is 2027 unset. [GH-10518] 2028 * builder/amazon: Wrap API call to get filtered image in a retry. [GH-10610] 2029 * builder/bsusurrogate: override bsu when omi root device is set. [GH-10490] 2030 * builder/google: Fix bug where Packer would fail when run by users who do not 2031 have permission to access the metadata, even though the metadata is not 2032 necessary to the run. [GH-10458] 2033 * builder/profitbricks: Profitbricks builder could not connect using SSH 2034 communicator. [GH-10549] 2035 * builder/proxmox: Ensure ISOs in additional_iso_files are mounted during VM 2036 creation. [GH-10586] 2037 * builder/proxmox: Improve cloud init error logging for proxmox builder. 2038 [GH-10499] 2039 * builder/qemu: Fix bug where vnc_min_port set to value greater then 5900 could 2040 prevent Packer from connecting to QEMU. [GH-10450] [GH-10451] 2041 * builder/qemu: Fix regression with cd indexing when disk_interface is `ide`. 2042 [GH-10519] 2043 * builder/vmware-esx: Skip credential validation, which requires ovftool to be 2044 installed, if we are not exporting an image. [GH-10520] 2045 * builder/yandex: Fix cloud-init config for ubuntu 20.04. [GH-10522] 2046 * builder/yandex: Fix incorrect access to `instance_id`. [GH-10522] 2047 * core/hcl: Fix bug where []uint8 types could not be passed to plugins. 2048 * core/hcl: fix bug where HCL core could not handle passing []uint8 to plugins. 2049 [GH-10516] 2050 * core/hcl: Fix force flag for hcl2 provisioners and post-processors. 2051 [GH-10571] 2052 * post-processor/vsphere: Fix regression where Packer would not check the exit 2053 status after streaming UI from the ovftool command. [GH-10468] 2054 * post-processor/yandex-export: Changed dhclient command and supported 2055 configuring disk for exportupdate-dump-method. Also added support for 2056 `file` builder. [GH-10488] 2057 2058 ## 1.6.6 (December 16, 2020) 2059 2060 ### FEATURES 2061 * **New command** `fmt` allows users to format existing HCL2 configuration 2062 files into a canonical style. Please see [fmt command 2063 docs](https://packer.io/docs/commands/fmt) for more details. [GH-10225] 2064 [GH-10377] 2065 * **New function** `env` allows users to set the default value of a variable to 2066 the value of an environment variable. Please see [env function 2067 docs](https://www.packer.io/docs/templates/hcl_templates/functions/contextual/env) for 2068 more details. [GH-10240] 2069 * **Future Scaffolding** This release contains a large number of no-op 2070 refactoring changes. The Packer team at HashiCorp is preparing to split the 2071 plugins and core to make it easier for our third party maintainers and 2072 community members to release and maintain plugins, just like HashiCorp did 2073 with the Terraform Core-Provider split. The Packer team is committed to 2074 making sure that this split is seamless for our users and for our community 2075 maintainers -- if you are a community maintainer, you may want to follow 2076 along with some of the work by looking at the 2077 [core-plugin-split github tag.](https://github.com/hashicorp/packer/pulls?q=is%3Apr+label%3Acore-plugin-split) 2078 No one needs to do anything, yet, but we felt it was worth calling out all 2079 the work that isn't making it into the changelog. We will be following up 2080 with lots of documentation and communication in early 2021 with more 2081 information. 2082 2083 ### IMPROVEMENTS 2084 * builder/amazon-ebs: Add tags to launch templates. [GH-10203] 2085 * builder/amazon: Add support for Amazon EBS gp3 volumes. [Gh-10338] 2086 * builder/amazon: Increase default max_retries to lessen throttling issues. 2087 [GH-10290] 2088 * builder/amazon: Support AWS gp3 volumes [GH-10338] 2089 * builder/amazon: Support root volume encryption for amazon-chroot. [GH-10243] 2090 * builder/amazon: Validate IOPS ratio. [GH-10199] 2091 * builder/azure-arm: Add Azure CLI authentication support to builder. 2092 [GH-10157] 2093 * builder/azure-arm: Create keyvaults with SoftDelete enabled. [GH-10210] 2094 * builder/digitalocean: New option to provision with private ip. [GH-10093] 2095 * builder/google: Add `wait_to_add_ssh_keys` option to delay the addition of 2096 SSH configuration that may be disrupted during an instance boot sequence. 2097 [GH-10320] 2098 * builder/google: Add support for creating shielded VMs. [GH-10172] 2099 * builder/googlecompute-export: Add logging.write to service account scopes. 2100 [GH-10316] 2101 * builder/oracle-oci: Support image launch mode. [GH-10212] 2102 * builder/outscale: Add outscale.hk endpoint support [GH-10207] 2103 * builder/outscale: Add x509 certificate support. [GH-10161] 2104 * builder/proxmox: New config option for boot-order. [GH-10260] 2105 * builder/scaleway: Use the SDK functions to load profile from file and env. 2106 [GH-10181] 2107 * builder/virtualbox: Allow attaching guest additions with "none" communicator. 2108 [GH-10306] 2109 * builder/vmware: Make compatible with MacOS BigSur by using Apple DHCP leases 2110 instead of VMWare leases [GH-10384] 2111 * builder/vsphere: New option to add additional storage to a cloned vm. 2112 [GH-10287] 2113 * builder/yandex: More resilient image mounting and initialization. [GH-10335] 2114 * builder/yandex: Update user-data to not use cloud-config fields to prevent 2115 possible user data collisions. [GH-10385] 2116 * core/hcl: Update to `hcl2_upgrade` command to support complex variable values 2117 and packer version blocks. [GH-10221] 2118 * hcl2upgrade: Update command to fix `env` call upgrade. [GH-10244] 2119 * post-processor/vagrant-cloud: Add support for uploading directly to storage 2120 on Vagrant Cloud. [GH-10193] 2121 * post-processor/yandex-export: Add retries and wait after disk attach 2122 operation. [GH-10303] 2123 * post-processor/yandex-export: Show progress on export. [GH-10368] 2124 * post-processor/yandex-export: Use ssh communicator in export. [GH-10352] 2125 * post-processor/yandex-export: Verify the access to a specific bucket. 2126 [GH-10188] 2127 * provisioner/salt-masterless: Call winrepo.update_git_repos and 2128 pkg.refresh_db. [GH-10201] 2129 2130 ### BUG FIXES 2131 * builder/amazon: Fix retry logic in AWS spot instance tagging. [GH-10394] 2132 * builder/amazon: Fix single `tag` interpolation to allow for templating engine 2133 usage. [GH-10224] 2134 * builder/google: Fix crash when using the `-on-error` build flag. [GH-10247] 2135 * builder/google: Fix issue with service account detection when running Packer 2136 on a compute instance with `use_os_login` enabled. [GH-10360] 2137 * builder/qemu: Fix duplication of main disk when setting "disk_image: true". 2138 [GH-10337] 2139 * builder/qemu: Fix nil pointer dereference when loading values from state. 2140 [GH-10249] 2141 * builder/qemu: Fix panic when disk_image=true and source image has no file 2142 extension. [GH-10226] 2143 * builder/vagrant: Return error if ssh-config command fails. [GH-10213] 2144 * builder/vsphere: WaitForIP should not return an error if an IP is not found 2145 [GH-10321] 2146 * builder/yandex: Change disk creation method to manual. [GH-10250] 2147 * builder/yandex: Fix issue with UserAgent string. [GH-10361] 2148 * builder/yandex: Fixed using cloud config when using IPv6. [GH-10297] 2149 * core/hcl: Ensure the `reverse` function does not break when given a value of 2150 type list. [GH-10380] 2151 * post-processor/yandex-export: Check service account id. [GH-10305] 2152 2153 ## 1.6.5 (October 30, 2020) 2154 2155 ### FEATURES: 2156 * New Builder(s): Proxmox builder has been split into two new builders 2157 `proxmox-iso` and `promox-clone`. See [Proxmox 2158 Builder](https://packer.io/docs/builders/proxmox) for more information on 2159 the builder. For users of the previous `proxmox` builder please use `packer 2160 fix` to migrate your templates to the new `promox-iso` builder. [GH-9262] 2161 2162 ### BUG FIXES: 2163 2164 * builder/amazon: SSM connection now recovers from reboots. [GH-10003] 2165 * builder/azure-arm: Fix build failures due to the deletion of additional 2166 managed disks defined in "disk_additional_size". [GH-10163] 2167 * builder/azure-chroot: Fix typo in option `exlude_from_latest` to 2168 `exclude_from_latest`. Old name will still be respected. [GH-10034] 2169 * builder/googlecompute: Fix HCL image_encryption_key fields and use the same 2170 casing in JSON and HCL2 [GH-10173] 2171 * builder/openstack: Fix source image validation regression when using filters. 2172 [GH-10065] 2173 * builder/proxmox: Fix unhandled buildvar type for HCL2 enabled build 2174 templates. [GH-10154] 2175 * builder/qemu: Fix a regression where Packer would not wait properly in 2176 step_shutdown when a null communicator was used. [GH-10178] 2177 * builder/qemu: Fix crash in step_run of qemu when loading commhostport form 2178 the statebag in a situation where the communicator is none. [GH-10145] 2179 * builder/vsphere-clone: Packer was not respecting the "destroy" flag set in 2180 the content library config, and always keeping the source vm. This has been 2181 fixed. [GH-10165] 2182 * builder/vsphere: Ensure builds are able to continue when no communicator has 2183 been specified `"communicator": "none"`. [GH-9964] 2184 * builder/vsphere: Fix CD uploads so that Packer does not try to delete a CD 2185 that was not successfully uploaded. [GH-10155] 2186 * core/hcl: Hide sensitive variables from output. [GH-10031] 2187 * core/hcl: Packer HCL's "Coalesce" function now behaves same way as 2188 Terraform's. [GH-10016] 2189 * core: Fix artifact handling so that input artifacts are properly preserved in 2190 postprocessors that don't modify artifacts. [GH-9996] 2191 * core: Fix pathing in cd_files to copy proper directory tree when user 2192 provided absolute paths. [GH-10022] 2193 * provisioner/ansible: Ansible galaxy no longer forces use of collections in v1 2194 files. [GH-10010] 2195 2196 ### IMPROVEMENTS: 2197 2198 * builder/amazon-ebssurrogate: Apply snapshot tags at snapshot creation time. 2199 [GH-10150] 2200 * builder/amazon: Add `io2` as a supported volume type. [GH-10102] 2201 * builder/amazon: Add support for source instance tenancy [GH-10085] 2202 * builder/google: Add service account impersonation. [GH-9968] [GH-10054] 2203 * builder/googlecompute: Add `skip_create_image` option. [GH-10115] 2204 * builder/googlecompute: Allow users to select the algorithm to use when 2205 generating temporary SSH keypair [GH-10111] 2206 * builder/linode: Add `state_timeout` attribute to Linode builder. [GH-10128] 2207 * builder/oracle-oci: New option to specify image compartment separate from 2208 build compartment. [GH-10040] 2209 * builder/oracle-oci: New option to specify boot volume size. [GH-10017] 2210 * builder/oracle: Add `base_image_filter` option as alternative to 2211 `base_image_ocid` [GH-10116] 2212 * builder/outscale: Migrate to new Outscale SDK. [GH-10056] 2213 * builder/proxmox: split Proxmox into proxmox-iso and proxmox-clone. [GH-9626] 2214 [GH-10166] 2215 * builder/scaleway: Allow the user to use an image label (eg ubuntu_focal) 2216 instead of a hardcoded UUID on the Scaleway builder. [GH-10061] 2217 * builder/vsphere: Skip iso download if hashed file is already present on 2218 remote datastore. [GH-10143] 2219 * builder/yandex: Add support for IAM credentials in the token field and 2220 YC_TOKEN environment variable. [GH-10158] 2221 * core/hcl: Add ability to set version restrictions [GH-10149] 2222 * core/hcl: Add build.name variable so users can access build name in addition 2223 to source name. [GH-10114] 2224 * core/hcl: Add consul_key function to HCL templates. [GH-10119] 2225 * core/hcl: Add HCL2 aws_secretsmanager function [GH-10124] 2226 * core/hcl: Add packer.version variable to hcl configs so users can access the 2227 Packer release version. [GH-10117] 2228 * core: Let user provide type of generated ssh key instead of always doing ssh- 2229 rsa [GH-10101] 2230 2231 ## 1.6.4 (September 30, 2020) 2232 2233 ### BUG FIXES: 2234 * builder/amazon: Fix authentication issue when using instance profiles or 2235 assumed roles for loading session-derived credentials. [GH-10007] 2236 * builder/azure: Fix crash when using `azure_tag` or `azure_tags` configuration 2237 options. [GH-10014] 2238 * builder/qemu: Ensure `qemu_img_args` are honored during the disk convert 2239 step. [GH-10001] 2240 2241 ## 1.6.3 (September 25, 2020) 2242 2243 ### IMPROVEMENTS: 2244 * builder/amazon: Add `pause_before_ssm` option to pause for some time before 2245 establishing a Session Manager session; defaults to 10s. [GH-9988] 2246 * builder/amazon: Implement assume_role option that matches Terraform behavior. 2247 [GH-9981] 2248 * builder/azure: Support publishing to a Shared Image Gallery with a different 2249 subscription id [GH-9875] 2250 * builder/openstack: Add `external_source_image_url` and 2251 `external_source_image_format` to support building images from external 2252 source URLs. [GH-9992] 2253 * builder/openstack: Include API requests and responses as part of the debug 2254 log output. [GH-9972] 2255 * builder/oracle-oci: Add `create_vnic_details` option for launch details. 2256 [GH-9856] 2257 * builder/oracle-oci: Allow freeform and defined tags to be added to an instance. 2258 [GH-9802] 2259 * builder/proxmox: Add `io_thread` option for supporting io threads when using 2260 a `virtio-scsi-single` controller with a `scsi` or `virtio` disk type. 2261 [GH-9969] 2262 * builder/proxmox: Add ability to specify interfaces for http_directory and VM. 2263 [GH-9874] 2264 * builder/proxmox: Allow the mounting of multiple ISOs via the `cd_drive` 2265 option. [GH-9653] 2266 * builder/proxmox: Fix boot command special keys. [GH-9885] 2267 * builder/qemu: Add `qemu_img_args` option to set special cli flags for calls 2268 to qemu-img [GH-9956] 2269 * builder/qemu: Add `skip_resize_disk` option to skip the resizing of QCOW2 2270 images. [GH-9896] [GH-9860] 2271 * builder/qemu: Skip qemu-img convert on MacOS to prevent the creation of 2272 corrupt images [QEMU 2273 #1776920](https://bugs.launchpad.net/qemu/+bug/1776920) [GH-9949] 2274 * builder/scaleway: Change default boottype to local. [GH-9853] 2275 * builder/scaleway: Update scaleway to use non-deprecated sdk. [GH-9902] 2276 * builder/vmware: Add `vnc_over_websocket` to allow the sending of a 2277 `boot_command` to hosts running ESXi 6.7 and above. [GH-9938] 2278 * builder/vmware: Allow user to set vmware tools source path. [GH-9983] 2279 * builder/vsphere-clone: Add ability to set `mac_address` [GH-9930] 2280 * builder/vsphere-clone: Add floppy_files, cd_files, and iso_paths options. 2281 [GH-9963] 2282 * builder/vsphere-iso: Add NVMe controller support. [GH-9880] 2283 * builder/vsphere: Look for a default resource pool when root resource pool is 2284 not found. [GH-9809] 2285 * core: Add support for running cygwin/msys2 based cd/iso creation tool 2286 [GH-9954] 2287 * core: New `cd_files` option to mount iso for modern OSes which don't support 2288 floppies. [GH-9796] [GH-9919] [GH-9928] [GH-9932] [GH-9941] 2289 * HCL2: When the type of a variable is not known evaluate setting as a literal 2290 string instead of a variable name. [GH-9863] 2291 * post-processor/vagrant: Support the use of template variables within 2292 Vagrantfile templates. [GH-9923] 2293 * post-processor/yandex-import: Allow custom API endpoint. [GH-9850] 2294 * provisioner/ansible: Add support for Ansible Galaxy Collections. [GH-9903] 2295 2296 ### BUG FIXES: 2297 * builder/amazon-ebs: Fix issue where retrying on invalid IAM instance profile 2298 error was creating multiple spot instances. [GH-9946] 2299 * builder/amazon-ebssurrogate: Fix issue where builder defaults to AWS managed 2300 key even when custom `kms_key_id` is set. [GH-9959] 2301 * builder/amazon: Update ssm_driver log polling logic to prevent infinite loops 2302 when SSM driver is terminated outside of Packer. [GH-9991] 2303 * builder/azure: Fix crash when using HCL2 configs. [GH-9984] [GH-9985] 2304 * builder/qemu: Fix hardcoded lowerbound causing negative ports [GH-9905] 2305 * builder/qemu: Skip compaction when backing file is used. [GH-9918] 2306 * builder/scaleway: Add pre validate step to prevent the creation of multiple 2307 images with the same name. [GH-9840] 2308 * builder/vmware-iso: Prevent the use of reserved SCSI ID 0:7 when attaching 2309 multiple disks. [GH-9940] 2310 * builder/vsphere: Fix overly strict iso_path validation regex. [GH-9855] 2311 * command/console: Prevent failure when there are unknown vars. [GH-9864] 2312 * command/inspect: Allow unset variables in HCL2 and JSON. [GH-9832] 2313 * core: Prevent the UI progressbar from hanging and crashing when there is no 2314 TTY available. [GH-9974] 2315 * core: Use $APPDATA over $HOME on Windows hosts when determining homedir. 2316 [GH-9830] 2317 * post-processor/digitalocean-import: Fix crash caused by empty artifact.Files 2318 slice. [GH-9857] 2319 * post-processor/yandex-export: Check for error after runner completes. 2320 [GH-9925] 2321 * post-processor/yandex-export: Set metadata key to expected value on error. 2322 [GH-9849] 2323 * post-processor/yandex-import: Fix S3 URL construct process. [GH-9931] 2324 2325 ## 1.6.2 (August 28, 2020) 2326 2327 ### FEATURES: 2328 * **New command** `hcl2_upgrade` is a JSON to HCL2 transpiler that allows users 2329 to transform an existing JSON configuration template into its HCL2 template 2330 equivalent. Please see [hcl2_upgrade command 2331 docs](https://packer.io/docs/commands/hcl2_upgrade) for more details. 2332 [GH-9659] 2333 2334 ### IMPROVEMENTS: 2335 * builder/amazon: Add all of the custom AWS template engines to `build` 2336 template function for use by provisioners. [GH-9751] 2337 * builder/amazon: Add aws_polling config option to override env variables. 2338 [GH-9777] 2339 * builder/azure: Add FreeBSD support to azure/chroot builder. [GH-9697] 2340 * builder/vmware-esx: Add `network_name` option to vmware so that users can set 2341 a network without using vmx data. [GH-9718] 2342 * builder/vmware-vmx: Add additional disk configuration option. Previously 2343 only implemented for vmware-iso builder [GH-9815] 2344 * builder/vmware: Add a `remote_output_directory option` so users can tell 2345 Packer where on a datastore to create a vm. [GH-9784] 2346 * builder/vmware: Add option to export to ovf or ova from a local vmware build 2347 [GH-9825] 2348 * builder/vmware: Add progress tracker to vmware-esx5 iso upload. [GH-9779] 2349 * builder/vsphere-iso: Add support for building on a single ESXi host 2350 [GH-9793] 2351 * builder/vsphere: Add new `directory_permission` config export option. 2352 [GH-9704] 2353 * builder/vsphere: Add option to import OVF templates to the Content Library 2354 [GH-9755] 2355 * builder/vsphere: Add step and options to customize cloned VMs. [GH-9665] 2356 * builder/vsphere: Update `iso_paths` to support reading ISOs from Content 2357 Library paths [GH-9801] 2358 * core/hcl: Add provisioner "override" option to HCL2 templates. [GH-9764] 2359 * core/hcl: Add vault integration as an HCL2 function function. [GH-9746] 2360 * core: Add colored prefix to progress bar so it's clearer what build each 2361 progress bar belongs to. [GH-9780] 2362 * core: Ui now pretty prints build durations. [GH-9749] 2363 * core: When a build is cancelled, Packer will skip postprocessors gracefully 2364 rather than failing them. [GH-9720] 2365 * integrations/secretsmanager: Add support for plaintext non-key/pair secrets. 2366 [GH-9773] 2367 * post-processor/vsphere: Improve UI to catch bad credentials and print errors. 2368 [GH-9649] 2369 * provisioner/ansible-remote: Add `ansible_ssh_extra_args` so users can specify 2370 extra arguments to pass to ssh [GH-9821] 2371 * provisioner/file: Clean up, bugfix, and document previously-hidden `sources` 2372 option. [GH-9725] [GH-9735] 2373 * provisioner/salt-masterless: Add option to option to download community 2374 SaltStack formulas. [GH-9726] 2375 2376 ### BUG FIXES: 2377 * build: Fix bug in code generator that caused generation to fail in nested 2378 packer/packer dirs [GH-9728] 2379 * build: Fix Makefile so that default target doesn't crash and creates dev 2380 binaries. [GH-9706] 2381 * builder/amazon-ebssurrogate: Make skip_save_build_region option work in the 2382 ebssurrogate builder, not just the ebs builder. [GH-9666] 2383 * builder/amazon: Add retry logic to the spot instance creation step to handle 2384 "Invalid IAM Instance Profile name" errors [GH-9810] 2385 * builder/amazon: Update the `aws_secretsmanager` function to read from the AWS 2386 credentials file for obtaining default region information; fixes the 2387 'MissingRegion' error when AWS_REGION is not set [GH-9781] 2388 * builder/file: Make sure that UploadDir receives the interpolated destination. 2389 [GH-9698] 2390 * builder/googlecompute: Fix bug where startup script hang would cause export 2391 to hang. [GH-9708] 2392 * builder/hyperv: Send boot command in small chunks to make it more stable. 2393 [GH-9765] 2394 * builder/scaleway: Fix config issue that made scaleway builder fail when used 2395 with HCL2 config. [GH-9677] 2396 * builder/vmware: Fully destroy vm if it was cancelled or errored. This will 2397 make orphaned vms easier to destroy through vCenter. [GH-9782] 2398 * builder/vsphere: Fix `alt`, `ctrl`, and `shift` keypresses in the 2399 boot_command. [GH-9702] [GH-9739] 2400 * builder/vsphere: Fix bug where Packer timed out if two interfaces were 2401 defined but only one had an available IP. [GH-9748] 2402 * builder/vsphere: Fix the configuration_parameters option so that it is always 2403 applied, not just when the tool sync policy is set. [GH-9713] 2404 * communicator: Fix `pause_before_connect` option to force a reconnect after 2405 the pause. [GH-9772] 2406 * core: Make `max_retries` provisioner option a string to allow variable 2407 interpolation. [GH-9673] 2408 * post-processor/vsphere-template: Fix ReregisterVM to default to true instead 2409 of false. [GH-9736] 2410 * post-processor/yandex-export: Fix issue when validating region_name [GH-9814] 2411 * provisioner/inspec: Fix the 'Unsupported argument; An argument named 2412 "command"' error when using the inspec provisioner in an HCL2 configuration 2413 [GH-9800] 2414 2415 ## 1.6.1 (July 30, 2020) 2416 2417 ### BACKWARDS INCOMPATABILITIES: 2418 2419 * HCL: builder/vsphere: Add option to add a xhci/usb3 controller; changes 2420 controller value to an array of strings. [GH-9574] 2421 * HCL: New HCL-only `post-processors` block to run chained post-processors 2422 after a build [GH-9638]. Before this, defining multiple `post-processor` 2423 blocks after provisioning steps would run them sequentially, now doing this 2424 makes them start from the build artifact. To queue post-processors you now 2425 have to define them in a `post-processors` block. [GH-9638] 2426 * post-processor/vSphere: We have fixed a bug in the ovftool URL encoding. This 2427 may mean that you have performed an encoding workaround that is no longer 2428 necessary. [GH-9589] 2429 2430 ### FEATURES: 2431 * **New post-processor** Yandex Import [GH-9553] 2432 2433 ### IMPROVEMENTS: 2434 * builder/amazon-ebs: Wrap CreateImage call in a retry to account for eventual 2435 consistency [GH-9579] 2436 * builder/azure: Disable SSH password authentication unless password is 2437 explicitly specified. [GH-9603] 2438 * builder/docker: Add options for --cap-add, --cap-drop, --tmpfs, --device 2439 [GH-9565] 2440 * builder/file: Create parent directories of target file, if they don't exist. 2441 [GH-9452] 2442 * builder/googlecompute: Add `wrap_startup_script` configuration option to 2443 allow the disabling of Packer's startup script wrapper [GH-9505] 2444 * builder/googlecompute: Add support for oslogin via the `use_os_login` 2445 configuration option [GH-9339] 2446 * builder/googlecompute: Make IAP tunnel timeout configurable. [GH-9545] 2447 * builder/googlecompute: Support using WinRM over an IAP tunnel [GH-9610] 2448 * builder/hyper-v: Include secure boot template in box.xml [GH-9552] 2449 * builder/hyperone: Add support for custom username in vm creation. [GH-9497] 2450 * builder/hyperone: Skip chroot device discovery. [GH-9489] 2451 * builder/openstack: Bump gophercloud to latest version [GH-9573] 2452 * builder/proxmox: Add option to disable KVM hardware virtualization in Proxmox 2453 builder [GH-9587] 2454 * builder/proxmox: Add support for multiple NIC packet queues [GH-9597] 2455 * builder/proxmox: Enable Proxmox builder to toggle the firewall parameter for 2456 network interfaces. [GH-9487] 2457 * builder/proxmox: Update Proxmox storagePoolTypes [GH-9418] 2458 * builder/qemu: Add 'cdrom_interface' option to QEMU builder [GH-9483] 2459 * builder/tencentcloud: Add `source_image_name` to support getting source image 2460 by name [GH-9619] 2461 * builder/tencentcloud: Update cvm root disk type to `CLOUD_PREMIUM` [GH-9663] 2462 * builder/ucloud: New access config options and run config options. [GH-9466] 2463 * builder/vsphere-clone: Add `boot_command` support to vsphere-clone builder, 2464 including support for starting an HTTP server 2465 * builder/vsphere-clone: Add `vapp` configuration option [GH-9507] 2466 * builder/vsphere: Add ability to define multiple disk controllers [GH-9519] 2467 * builder/vsphere: Add `boot_command` support to vsphere-clone builder. [GH-9397] 2468 * builder/vsphere: Add `content_library_destination` to import VM template to a 2469 Content Library [GH-9551] 2470 * builder/vsphere: Add `force_bios_setup` configuration option [GH-9563] 2471 * builder/vsphere: Add option to add a xhci/usb3 controller [GH-9574] 2472 * builder/vsphere: Create vm output folders if they don't exist [GH-9402] 2473 * builder/vsphere: Fix file size descriptor when exporting OFV [GH-9568] 2474 * builder/vsphere: Look at all available IPs in the waiting for IP loop. 2475 [GH-9450] 2476 * builder/vsphere: Match network to host when multiple networks are found 2477 [GH-9556] 2478 * builder/vsphere: Update vsphere `boot_command` to bring it in line with other 2479 builders' boot_command functionality. [GH-9406] 2480 * builder/vsphere: Use datacenter inventory path for find folder [GH-9390] 2481 * builder/vsphere: Use value from "ip_wait_address" option to determine the 2482 default for the http server IP [GH-9441] 2483 * builder/yandex: Allow set `min_disk_size` for an image. 2484 * builder/yandex: Support authentication by Service Account on instance 2485 [GH-9383] 2486 * builder/yandex: yandex: Add new property `min_disk_size` of built image 2487 [GH-9594] 2488 * communicator/ssh: Add support for OpenSSH certificate signing [GH-9521] 2489 * communicator/ssh: Allow users to provide a list of ciphers that they want 2490 Packer to support. [GH-9453] 2491 * core/hcl2: Add possibility to name singular build.source blocks to 2492 differentiate their output and to filter on them [GH-9490] 2493 * core/hcl2: Add the "inspect" command for hcl2 configs. [GH-9468] 2494 * core/hcl2: HCL configs now respect only/except using build names instead of 2495 types. [GH-9454] 2496 * core/hcl: Allow use of `keep_input_artifact` in post processors. [GH-9477] 2497 * core/hcl: Share build info with Provisioner and Post-Processor via HCL2 2498 variables [GH-9444] [GH-9534] [GH-9622] 2499 * core: Add on-error flag option to run error-cleanup-provisioner [GH-9429] 2500 * core: communicator/ssh: Add new `ssh_key_exchange_algorithms` option to 2501 supply custom key exchange algorithms in SSH client [GH-9634] 2502 * core: refactor initialization out from Packer core to allow `validate 2503 --syntax-only` to no error when a variable is not set [GH-9627] 2504 * hcl2: Handle uint64 buildvars [GH-9585] 2505 * post-processor/yandex-export: Allow users to utilize generated variables in 2506 templating. [GH-9555] 2507 * post-processor/yandex-export: Support Authentication by Service Account Key 2508 file [GH-9379] 2509 * post-processor/yandex-import: Support creating an Image based on another one 2510 [GH-9614] 2511 * post-processor/yandex-import: Support using URL from yandex-export [GH-9601] 2512 * provisioner/ansible: Add template option for templating the inventory file 2513 lines [GH-9438] 2514 2515 ### BUG FIXES: 2516 * builder/amazon: Change "Resource" field in 2517 `temporary_iam_instance_profile_policy_document` to be an array of strings, 2518 not just a single string. [GH-9509] 2519 * builder/amazon: HCL2: Add singular `run_volume_tag` block to ebs & ebssurrogate 2520 builders. [GH-9457] 2521 * builder/amazon: Retry fetching block device mappings if empty. [GH-9480] 2522 * builder/azure: Fix data disks URI. [GH-9467] 2523 * builder/googlecompute: Fix issue with `use_iap` globally changing a user's 2524 gcloud project configuration, by temporarily setting "project" via project 2525 flag and not via `gcloud config` [GH-9662] 2526 * builder/googlecompute: Fix the "secure boot" validation for uefi_compatible 2527 images. [GH-9371] 2528 * builder/qemu: Only set up localhost port forwarding if skipnatmapping is 2529 false. [GH-9479] 2530 * builder/vagrant: Fix box file validation for remote box files specified using 2531 `source_path` [GH-9660] 2532 * builder/vagrant: Improve validation and error handling around synced_folder. 2533 Make sure that synced folder can be defined relative to Packer run 2534 directory, not the Vagrant output directory. [GH-9577] 2535 * builder/virtualbox-vm: Fix regression where builder would fail if the vm had 2536 no snapshots. [GH-9435] 2537 * builder/vmware-iso: Try checksum remote file instead of local file. [GH-9584] 2538 * builder/vmware: Fix a race that occurred when parsing the network config. 2539 [GH-9387] 2540 * builder/vmware: Update vendor library, enabling retries on 502 errors 2541 [GH-9391] 2542 * builder/vsphere-clone: Fix SSH public key injection for cloned templates 2543 [GH-9507] 2544 * builder/vsphere: Clean up folder path to remove leading slashes. [GH-9542] 2545 * builder/vsphere: Deduplicate where Firmware is set in vsphere-iso builder 2546 [GH-9557] 2547 * builder/vsphere: Fix vsphere ToolsSyncTime and ToolsUpgradePolicy [GH-9515] 2548 * builder/vsphere: vSphere driver context is no longer cancelled when Packer 2549 context is cancelled. [GH-9576] 2550 * communicator/winrm: Add the "no_proxy" environment variable option to have 2551 winrm bypass the proxy set by the http_proxy or https_proxy environment 2552 vars, when connecting to the remote instance. [GH-9267] 2553 * core: Do not print download progress bar if a machine-readable UI is chosen. 2554 [GH-9448] 2555 * post-processor/amazon-import: Add support for retrying RequestLimitExceeded 2556 errors when importing an image [GH-9537] 2557 * post-processor/docker-import: Fix crash when using docker-import with HCL. 2558 [GH-9670] 2559 * post-processor/vsphere: Fix password encoding in vsphere post-processor 2560 ovftool call [GH-9589] 2561 * post-processor/yandex-export: Fix error handling and docs. [GH-9554] 2562 * provisioner/ansible-local: Fix agent auth in SSH communicator [GH-9639] 2563 * provisioner/ansible: Correct check for whether PackerHttpAddr is implemented 2564 or not [GH-9498] 2565 * provisioner/ansible: Quote extra-var packer_build_name to handle names with 2566 spaces [GH-9590] 2567 2568 ## 1.6.0 (June 09, 2020) 2569 2570 ### BACKWARDS INCOMPATIBILITIES: 2571 * builder/vsphere-iso: The deprecated fields `network`, `network_card`, 2572 `disk_size`, `disk_thin_provisioned`, and `disk_eagerly_scrub` have been 2573 removed. Run `packer fix template.json` to migrate an existing template 2574 [GH-9149] 2575 2576 * For all iso-based builders, the `iso_checksum_type` and `iso_checksum_url` 2577 fields have been removed in favor of simply setting the `iso_checksum` 2578 field. Use the [packer fix](https://www.packer.io/docs/commands/fix/) 2579 command to update a config file. See the [iso_checksum field 2580 docs](https://www.packer.io/docs/builders/virtualbox/iso/#iso_checksum) to 2581 read more about this. [GH-8437] 2582 2583 ### FEATURES: 2584 * **New post-processor** Yandex Export [GH-9124] 2585 * builder/amazon: Add SSM Session Manager as a SSH interface connection 2586 [GH-9082] 2587 * builder/google: Implement iap proxy for googlecompute [GH-9105] 2588 * HCL2/core: Add command/console support for HCL2 config files [GH-9359] 2589 * HCL2/core: Add command/validate support for HCL2 config files [GH-9346] 2590 * HCL2/core: it is now possible to set source fields from the `build` block 2591 [GH-9291] 2592 2593 ### IMPROVEMENTS: 2594 * builder/amazon: Added new `build` template function field: 2595 SourceAMICreationDate [GH-9277] 2596 * builder/azure-arm: Support User Assigned Managed Identity [GH-9293] 2597 * builder/azure-chroot: Copy data disks between shared image galleries 2598 [GH-9323] 2599 * builder/googlecompute: Changed default disk size. [GH-9071] 2600 * builder/googlecompute: New option to specify storage location for GCP images 2601 [GH-9326] 2602 * builder/qemu: Add support for using a network bridge [GH-9159] 2603 * builder/qemu: Added `skip_nat_mapping` option to skip the communicator (SSH 2604 or WinRM) automatic port forward and use the guest port directly. [GH-9307] 2605 * builder/qemu: Replace deprecated `ssh_host_port_min` and `ssh_host_port_max` 2606 by `host_port_min` and `host_port_max`. [GH-9307] 2607 * builder/virtualbox: Add `output_filename` config option to allow user to set 2608 a custom filename instead of forcing it to be the same as vm_name. 2609 [GH-9174] 2610 * builder/vsphere: Add `floppy_label` option. [GH-9187] 2611 * builder/vsphere: Add `ip_wait_address` to allow packer to wait for an ip 2612 address that fits within the range (cidr address). [GH-9358] 2613 * builder/vsphere: Add `tools_sync_time` and `tools_upgrade_policy` options to 2614 set time synchronization and automatic VMware Tools upgrade. [GH-9366] 2615 * core/hcl: Enable "force", "debug", and "on-error" command line flags for hcl2 2616 builds. [GH-9234] 2617 * core/hcl: Enable only/except for provisioners and post-processors [GH-9357] 2618 * core/hcl: Support named builds in HCL2 templates [GH-9245] 2619 * core/interpolation: Add support for specifying a particular key to fetch from 2620 the AWS Secrets Manager [GH-9202] [GH-9286] 2621 * core: HCL logs now display source type and source name (`type.name`) in logs 2622 to differentiate more easily who says what. [GH-9257] 2623 * core: update consul and vault dependencies [GH-9205] 2624 * core: Update vendored "go-getter" library with checksum fixes. 2625 * core: Users can now configure the http bind address of the server launched to 2626 serve files from http_directory [GH-9313] 2627 * core: When a template contains a deprecated option, Packer will now encourage 2628 the user to call `packer fix`. [GH-9325] 2629 * post-processor/docker-push: Support pushing multiple tags [GH-9182] 2630 * post-processor/docker-tag: Change field name of docker tag to "tags" instead 2631 of "tag" since it's a list. Keep "tag" for backwards compatibility. 2632 [GH-9183] 2633 * provisioner/windows-restart: Display full hostname, instead of just the 2634 NetBIOS name [GH-9335] 2635 2636 ### BUG FIXES: 2637 * buidler/vsphere-iso: Fix bug validating iso_urls [GH-9321] 2638 * builder/azure-arm: Update runtime constants with a valid DataDiskName 2639 [GH-9251] 2640 * builder/digitalocean: Use correct image type for Droplet creates. [GH-9212] 2641 * builder/openstack: Don't error if metadata can't be set. Old versions of 2642 openstack don't support that API call. [GH-9198] 2643 * builder/vagrant: Use absolute path for package_include files to prevent them 2644 from having to be relative to the output vagrant directory. [GH-9260] 2645 * builder/virtualbox: Fix bug using checksum files. [GH-9101] 2646 * builder/vmware: Fix ssh connection when the guest platform's dhcpcd switches 2647 the IP address in-between a build. [GH-9322] 2648 * builder/vsphere-iso: Use the Datacenter's VmFolder call instead of manually 2649 generating folder path [GH-9342] 2650 * builder/vsphere: Add option not to set host during datastore upload. [GH-9100 2651 * builder/vsphere: Fix crash in the driver for an interface conversion of 2652 types.AnyType nil to types.ManagedObjectReference. [GH-9354] 2653 * builder/vsphere: Fix iso config prepare being called incorrectly, which 2654 caused `iso_url` field to fail. [GH-9197] 2655 * builder/yandex: Do not require 'gpu-standard-v1' platform_id for any GPU- 2656 based config. [GH-9356] 2657 * core: Ensure HTTP server information `PackerHTTPIP`, `PackerHTTPPort`, and 2658 `PackerHTTPAddr` are available via the `build` template engine for all 2659 supported builders [GH-9238] 2660 * core: Fix `iso_url` to accept SMB shared files UNC and windows network paths. 2661 [GH-8954] 2662 * core: Fix regression that broke use of pwd when retrieving the checksum from 2663 a file [GH-9129]. 2664 * post-processor/vagrant: Add "provider_override" template option to allow 2665 artifacts from the Artifice post-processor [GH-9239] 2666 * post-processor/vsphere-template: Add VSphere builder's artifact to vsphere- 2667 template's supported types [GH-9146] 2668 * postprocessor/artifice: Update various core post-processors to accept 2669 artifacts from the Artifice post-processor [GH-9239] 2670 * provisioner/ansible-remote: Fix the arg order to make sure that the playbook 2671 file is the last item in the call [GH-9279] 2672 * provisioner/ansible: Ansible provisioner doesn't force ssh key checking if 2673 user wants to use password to connect instead. [GH-9350] 2674 * provisioner/inspec: Fix build variables interpolation [GH-9262] 2675 * provisioner/powershell: fix interpolation of execute_command in cleanup 2676 script call. [GH-9275] 2677 * provisioner/powershell: Fix long-wait retry loop caused by cleanup logic 2678 [GH-9226] 2679 * provisioner/salt-masterless: Ignore the CmdArgs field in hcl2 [GH-9290] 2680 2681 ## 1.5.6 (May 1, 2020) 2682 2683 ### BACKWARDS INCOMPATIBILITIES: 2684 * core/hcl2: HCL2 singular blocks: use key/value or name/value depending on how 2685 the service names things [GH-9078] 2686 * core/hcl2: Maps are now treated as settable arguments as opposed to blocks. 2687 For example `tags = {}` instead of `tags {}` [GH-9035] 2688 * `packer build` command: removed option to set `parallel=false`, use 2689 `-parallel-builds=1` for this. 2690 2691 ### FEATURES: 2692 * **New Builder** azure-dtl allows creation of devtestlabs images in Azure 2693 [GH-8987] 2694 2695 * **New Core Feature** provisioners now support a `max_retries` option that can 2696 be used for retrying a provisioner on error [GH-9061] 2697 2698 * **New Post-Processor**: `yandex-export` Upload built image in Yandex Object Storage. 2699 2700 ### IMPROVEMENTS: 2701 * builder/azure-arm: Add `boot_diag_storage_account` option for enabling boot 2702 diagnostics on a virtual machine [GH-9053] 2703 * builder/azure-arm: Add support for setting custom resource names [GH-9028] 2704 * builder/azure-arm: Data disk names are now randomly generated [GH-8986] 2705 * builder/azure: Add shared image destination for azure-chroot [GH-9021] 2706 * builder/azure: Add shared image source for chroot builder [GH-9070] 2707 * builder/google: Add support for custom shielded images [GH-8970] 2708 * builder/google: Allow `source_image_project_id` to be a list of several 2709 projects to search. [GH-8679] 2710 * builder/hyperv: Add `boot_order` option to override the default boot order 2711 [GH-9046] 2712 * builder/oracle-oci: Allow Instance Principal Auth for Oracle OCI builder 2713 [GH-8893] 2714 * builder/oracle-oci: Update Oracle SDK. [GH-9104] 2715 * builder/proxmox: Add ability to add a cloud-init drive [GH-9045] 2716 * builder/vsphere: Add `disable_shutdown` option to support manual vm shutdown 2717 over the default automatic shutdown step [GH-9095] 2718 * builder/vsphere: Add `vgpu_profile` option for specifying vGPU profiles 2719 [GH-8946] 2720 * builder/vsphere: Add support for EFI Secure Boot [GH-9018] 2721 * builder/vsphere: Add support for specifying vGPU profiles [GH-8946] 2722 * builder/yandex: Add `target_image_folder_id ` option for changing the folder 2723 where a built image will be saved to [GH-9080] 2724 * core/hcl2: HCL mode builds now honor -only and -except options [GH-8947] 2725 * core/hcl2: Set `packer_build_name` and `packer_builder_type` variables for 2726 builder provisioners and post-processors [GH-8956] 2727 * core/HCL: HCL mode now honors -only and -except options. [GH-8947] 2728 * core: New template function: aws_secretsmanager [GH-9099] 2729 * provisioner/ansible: Add `use_proxy` option to not use localhost proxy adapter. Removes 2730 need for ansible connection_plugin when using WinRM. [GH-8625] 2731 * provisioner/powershell: Add `debug_mode` option to help with debugging 2732 generated scripts [GH-8996] 2733 * provisioner/powershell: Add cleanup step to remove temporarily created 2734 scripts; cleanup can be skipped by setting the `skip_clean` option 2735 [GH-8908] 2736 2737 ### BUG FIXES: 2738 * builder/amazon: Fix bug with `launch_block_device_mappings` in spot 2739 instances. [GH-8945] 2740 * builder/azure-arm: Fix issue where managed image builds were using a 2741 different `location` then what was specified in the build configuration 2742 [GH-9068] 2743 * builder/azure: Allow Managed Data Disks to be used with Azure Shared Image 2744 Gallery [GH-8912] 2745 * builder/azure: Fix SSH connection for temporary admin users specified in 2746 `ssh_username` [GH-9103] 2747 * builder/osc: Make compliant with oAPI spec for Outscale osc-bsu builder 2748 [GH-9093] 2749 * builder/qemu: Remove `net_device` pre-validation [GH-8979] 2750 * builder/tencentcloud: Update builder to handle the 2751 InstanceOperationInProgress error [GH-9069] 2752 * builder/vsphere-iso: disk_size is no longer required if storage is defined 2753 [GH-8975] 2754 * builder/vsphere: Add exported files to VSphere artifact [GH-9020] 2755 * builder/vsphere: Fix issue where -force is not working with vsphere builders 2756 [GH-9039] 2757 * core: Fix crash in wrapperreadline helper when calling `os.NewFile` on 2758 unknown file descriptor [GH-9037] 2759 * core: Make sure CLI variables supersede variables from var files [GH-8964] 2760 * provisioner/powershell: Fix integer decoding issue in the execution policy 2761 parser [GH-8997] 2762 2763 ## 1.5.5 (March 25,2020) 2764 2765 ### BACKWARDS INCOMPATIBILITIES: 2766 * core: Interpolation of undefined variables will now error as expected, in 2767 previous versions variables were allowed to be set as a command line 2768 argument but that was because the validation was being ignored 2769 2770 ### IMPROVEMENTS: 2771 * builder/azure: Add support for configurable KeyVault SKU [GH-8879] 2772 * builder/hyperv: Add `first_boot_device` setting to allow the selection of the 2773 initial device or device class used for booting the VM. [GH-8714] 2774 * builder/hyperv: Fix Hyper-V compacted disk size comparison [GH-8811] 2775 * builder/openstack: Add new `image_auto_accept_members` option [GH-8931] 2776 * builder/proxmox: Add ability to specify vga adapter [GH-8892] 2777 * builder/proxmox: Add onboot directive support [GH-8935] 2778 * builder/tencentcloud: Show tencentcloud image id after copy to destination 2779 region. [GH-8763] 2780 * builder/vmware-iso: Add `cleanup_remote_cache` config option to [GH-8917] 2781 * builder/vmware-iso: Do not perform dial test of NIC when ssh bastion is 2782 required [GH-8877] 2783 * builder/vsphere-clone: Add ability to export VM to OVF file [GH-8764] 2784 * builder/vsphere-iso: Add ability to define multiple disks. [GH-8787] 2785 * builder/vsphere-iso: Add ability to export VM to OVF file [GH-8764] 2786 * builder/vsphere-iso: Add support for eagerly zeroed / scrubbed disks. 2787 [GH-8756] 2788 * builder/vsphere-iso: Add the remote iso first so that it is first in boot 2789 order, and clarify boot behavior. [GH-8732] 2790 * communicator/ssh: Add flag to enable support for keyboard-interactive auth to 2791 connect bastion [GH-8847] 2792 * core/hcl2: Add support for singular blocks [GH-8889] 2793 * core/hcl2: Add support in HCL2 configs for dynamic blocks, document for loops 2794 and splat expressions [GH-8720] 2795 * core/hcl2: Fix HCL2 local variables decoding to allow local usage within 2796 another local in the same locals block [GH-8755] 2797 * core/hcl2: Import new replace and regex_replace funcs from go-cty + 2798 documentation [GH-8863] 2799 * core: Enable hcl files as var files in HCL mode [GH-8882] 2800 * core: Make "build" engine template variables SSHPublicKey and SSHPrivateKey 2801 strings [GH-8829] 2802 2803 ### Bug Fixes: 2804 * builder/azure: Fix `winrm_password` attribution and allow users to set 2805 `winrm_username` [GH-8928] 2806 * builder/azure: Fix azure key vault cleanup failure [GH-8905] 2807 * builder/azure: Fix HCL2 bug that prevented Azure and other builders from 2808 loading properly. [GH-8785] 2809 * builder/googlecompute: Fix WinRMPassword template engine. [GH-8890] 2810 * builder/googlecompute: Replace deprecated "sshKeys" metadata with "ssh-keys" 2811 to fix SSH authentication issue [GH-8942] 2812 * builder/proxmox: Add new validation to catch that template_name cannot 2813 contain spaces. [GH-8799] 2814 * builder/proxmox: Bump proxmox-api-go to fix upstream bug where users hit open 2815 file limit. [GH-8800] 2816 * builder/vagrant: Fix path validation in ssh config step. [GH-8826] 2817 * builder/virtualbox-vm: Fix crash when VM has no snapshots. [GH-8906] 2818 * builder/virtualbox: Remove all floppy controllers before adding a new one. 2819 [GH-8828] 2820 * builder/vsphere-clone: Fix issue preventing the cloning of VMs with the same 2821 name in different folders [GH-8938] 2822 * builder/vsphere-iso: Fix issue preventing the creation of VMs with the same 2823 name in different folders [GH-8938] 2824 * builder/vsphere: Fix network object interface panic. [GH-8753] 2825 * core/hcl2: Fix crash when an unset variable is used [GH-8837] 2826 * core/hcl2: Fix logic for parsing literal value variables [GH-8834] 2827 * core/hcl2: Make sure locals are evaluated only after variables are. [GH-8918] 2828 * core: Fix "build" template engine interpolation for certain fields in certain 2829 provisioners. [GH-8771] 2830 * core: Fix bug where user var recursion could fail intermittently when used 2831 with env vars [GH-8875] 2832 * core: Interpolation of undefined variables will now error as expected 2833 * plugins: Make plugin discovery stricter with respect to periods so that users 2834 can disable plugins by renaming the extension [GH-8735] 2835 * provisioner/salt: Fix `no_exit_on_failure` config to work correctly as 2836 expected. [GH-9119] 2837 * provisioner/shell: "inline" config option is now a template engine. [GH-8883] 2838 2839 ## 1.5.4 (February 14, 2020) 2840 no-change release to fix code-signing on OSX binaries. Since checksums for these 2841 binaries has changed, we are releasing a second time to prevent confusion. 2842 2843 ## 1.5.3 (February 14, 2020) 2844 2845 ### IMPROVEMENTS: 2846 * builder/vsphere: Add ability to define multiple NICs for vsphere-iso 2847 [GH-8739] 2848 * builder/vsphere: Add option to remove CD-ROM drives. [GH-8690] 2849 * core: Add validation to catch when users accidentally add duplicate fields to 2850 template [GH-8725] 2851 2852 ### Bug Fixes: 2853 * core/hcl2: Fix template prepare/validation for HCL2 templates [GH-8742] 2854 * core: Fix `build` template function interpolation [GH-8727] 2855 2856 ## 1.5.2 (February 12, 2020) 2857 **New Builder** The vsphere-iso builder, previously maintained by JetBrains, 2858 has been merged with the Packer core. It will be officially supported by the 2859 Packer team at HashiCorp moving forward. [GH-8480] 2860 2861 **HCL2 variables & functions** HCL2 configurations can now use `variable`, 2862 `variables`, `locals`, and functions [GH-8588]. 2863 2864 ### IMPROVEMENTS: 2865 * builder/alicloud: Add AlicloudProfile option. [GH-8560] 2866 * builder/amazon: Add max_retries option to aws builders [GH-8709] 2867 * builder/amazon: Add source AMI owner ID/name to template engines [GH-8550] 2868 * builder/amazon: Update instance waiters to use global waiter settings set by 2869 `AWS_POLL_DELAY_SECONDS` and `AWS_TIMEOUT_SECONDS` [GH-8699] 2870 * builder/azure: Allow users to use custom key vault for storing Windows 2871 certificates [GH-8704] 2872 * builder/azure: Set expiry for image versions in SIG [GH-8561] 2873 * builder/proxmox: Add option to upload the boot ISO rather than pointing out a 2874 previously manually uploaded one. [GH-8624] 2875 * builder/vagrant: Fix a crash in the Vagrant driver [GH-8607] 2876 * builder/yandex: Add service account ID to config [GH-8717] 2877 * communicator/winrm: Users can now override winrm_host with a static IP even 2878 when using cloud builders. [GH-8675] 2879 * core/hcl2: Fix bug preventing reading slices within other slices [GH-8669] 2880 * core: Interpolation within post-processors can now access build-specific 2881 values like Host IP, communicator password, and more [GH-8632] 2882 * core: Add `PACKER_PLUGIN_PATH` to list of supported paths for plugin 2883 discovery [GH-8616] 2884 * core: clean up messy log line in plugin execution. [GH-8542] 2885 * core: Ensure `PACKER_HTTP_ADDR` is always set for any builder that provides a 2886 HTTP server for file transfer [GH-8654] 2887 * core: Fix loading external plugins defined in PACKER_CONFIG [GH-8582] 2888 * core: Log name of postprocessor running to disambiguate long chains of post- 2889 processors. [GH-8613] 2890 * core: Packer can use isos in-place on Windows again, instead of copying them 2891 into its cache. [GH-7627] 2892 * core: step_download: return without error if Urls is empty [GH-8579] 2893 * post-processor/vsphere-template] Simplify method to use vm.MarkAsTemplate 2894 (optionally) [GH-8511] 2895 * scripts: Fix some issues with mapstructure-to-hcl2 code generator. [GH-8574] 2896 * scripts: Update Vagrant bootstrapping scripts [GH-8604] 2897 2898 ### Bug Fixes: 2899 * builder/alicloud: Fix "security group doesn't exist" error when there are >10 2900 security groups. [GH-8535] 2901 * builder/amazon: Allow AWS builder pre-validation to pass when subnet filters 2902 are present [GH-8622] 2903 * builder/azure: Fix bug where deployments were not being cleaned up: [GH-8496] 2904 * builder/azure: Fix issue where WinRMPassword was being left unset [GH-8670] 2905 * builder/lxd: Fix file uploading issue when using the file provisioner 2906 [GH-8636] 2907 * builder/null: Fix crash when configuring builder using HCL2. [GH-8612] 2908 * builder/osc: Fix ssh host detection in Public Cloud and Nets [GH-8414] 2909 * builder/vagrant: Fix bug with reading key from a path with spaces [GH-8605] 2910 * builder/virtualbox-ovf: Remove config dependency from StepImport [GH-8509] 2911 * builder/virtualbox-vm: use config as a non pointer to avoid a panic [GH-8576] 2912 * core: Fix crash when build.sources is set to an invalid name [GH-8569] 2913 * core: Fix error loading .packerconfig [GH-8623] 2914 * core: Fix loading local ISO files when using `iso_target_path` [GH-8689] 2915 * core: Fix loading of external plugins. GH-8543] 2916 * post-processor/docker-tag: Fix regression if no tags were specified. 2917 [GH-8593] 2918 * post-processor/vagrant-cloud: Update error handling for Vagrant Cloud API 2919 [GH-8594] 2920 * post-processor/vagrant: correctly handle the diskSize property as a qemu size 2921 string [GH-8567] 2922 * provisioner/ansible: Fix password sanitization to account for empty string 2923 values. [GH-8570] 2924 * provisioner/shell: Fix bug with shell provisioner failing to clean up the 2925 environment var file when env_var_file is true. [GH-8639] 2926 2927 ## 1.5.1 (December 20, 2019) 2928 This was a fast-follow release to fix a number of panics that we introduced when 2929 making changes for HCL2. 2930 2931 ### IMPROVEMENTS: 2932 * builder/alicloud: Add show_expired option for describing images [GH-8425] 2933 2934 ### Bug Fixes: 2935 * builder/cloudstack: Fix panics associated with loading config [GH-8513] 2936 * builder/hyperv/iso: Fix panics associated with loading config [GH-8513] 2937 * builder/hyperv/vmcx: Fix panics associated with loading config [GH-8513] 2938 * builder/jdcloud: Update jdcloud statebag to use pointers for config [GH-8518] 2939 * builder/linode: Fix panics associated with loading config [GH-8513] 2940 * builder/lxc: Fix panics associated with loading config [GH-8513] 2941 * builder/lxd: Fix panics associated with loading config [GH-8513] 2942 * builder/oneandone: Fix panics associated with loading config [GH-8513] 2943 * builder/oracle/classic: Fix panics associated with loading config [GH-8513] 2944 * builder/oracle/oci: Fix panics associated with loading config [GH-8513] 2945 * builder/osc/bsuvolume: Fix panics associated with loading config [GH-8513] 2946 * builder/parallels/pvm: Fix panics associated with loading config [GH-8513] 2947 * builder/profitbricks: Fix panics associated with loading config [GH-8513] 2948 * builder/scaleway: Fix panics associated with loading config [GH-8513] 2949 * builder/vagrant: Fix panics associated with loading config [GH-8513] 2950 * builder/virtualbox/ovf: Fix panics associated with loading config [GH-8513] 2951 * builder/virtualbox: Configure NAT interface before forwarded port mapping 2952 #8514 2953 * post-processor/vagrant-cloud: Configure NAT interface before forwarded port 2954 mapping [GH-8514] 2955 2956 ## 1.5.0 (December 18, 2019) 2957 2958 ### IMPROVEMENTS: 2959 * builder/amazon: Add no_ephemeral template option to remove ephemeral drives 2960 from launch mappings. [GH-8393] 2961 * builder/amazon: Add validation for "subnet_id" when specifying "vpc_id" 2962 [GH-8360] [GH-8387] [GH-8391] 2963 * builder/amazon: allow enabling ena/sr-iov on ebssurrogate spot instances 2964 [GH-8397] 2965 * builder/amazon: Retry runinstances aws api call to mitigate throttling 2966 [GH-8342] 2967 * builder/hyperone: Update builder schema and tags [GH-8444] 2968 * builder/qemu: Add display template option for qemu. [GH-7676] 2969 * builder/qemu: Disk Size is now read as a string to support units. [GH-8320] 2970 [GH-7546] 2971 * builder/qemu: Add fixer to convert disk size from int to string [GH-8390] 2972 * builder/qemu: Disk Size is now read as a string to support units. [GH-8320] 2973 [GH-7546] 2974 * builder/qemu: When a user adds a new drive in qemuargs, process it to make 2975 sure that necessary settings are applied to that drive. [GH-8380] 2976 * builder/vmware: Fix error message when ovftool is missing [GH-8371] 2977 * core: Cleanup logging for external plugins [GH-8471] 2978 * core: HCL2 template support is now in beta. [GH-8423] 2979 * core: Interpolation within provisioners can now access build-specific values 2980 like Host IP, communicator password, and more. [GH-7866] 2981 * core: Various fixes to error handling. [GH-8343] [GH-8333] [GH-8316] 2982 [GH-8354] [GH-8361] [GH-8363] [GH-8370] 2983 * post-processor/docker-tag: Add support for multiple tags. [GH-8392] 2984 * post-processor/shell-local: Add "valid_exit_codes" option to shell-local. 2985 [GH-8401] 2986 * provisioner/chef-client: Add version selection option. [GH-8468] 2987 * provisioner/shell-local: Add "valid_exit_codes" option to shell-local. 2988 [GH-8401] 2989 * provisioner/shell: Add support for the "env_var_format" parameter [GH-8319] 2990 2991 ### BUG FIXES: 2992 * builder/amazon: Fix request retry mechanism to launch aws instance [GH-8430] 2993 * builder/azure: Fix PollDuration option which was overridden in some clients. 2994 [GH-8490] 2995 * builder/hyperv: Fix bug in checking VM name that could cause flakiness if 2996 many VMs are defined. [GH-8357] 2997 * builder/vagrant: Use absolute path for Vagrantfile [GH-8321] 2998 * builder/virtualbox: Fix panic in snapshot builder. [GH-8336] [GH-8329] 2999 * communicator/winrm: Resolve ntlm nil pointer bug by bumping go-ntlmssp 3000 dependency [GH-8369] 3001 * communicator: Fix proxy connection settings to use "SSHProxyUsername" and 3002 "SSHProxyPassword" where relevant instead of bastion username and password. 3003 [GH-8375] 3004 * core: Fix bug where Packer froze if asked to log an extremely long line 3005 [GH-8356] 3006 * core: Fix iso_target_path option; don't cache when target path is non-nil 3007 [GH-8394] 3008 * core: Return exit code 1 when builder type is not found [GH-8474] 3009 * core: Return exit code 1 when builder type is not found [GH-8475] 3010 * core: Update to newest version of go-tty to re-enable CTRL-S and CTRL-Q usage 3011 [GH-8364] 3012 3013 ### BACKWARDS INCOMPATIBILITIES: 3014 * builder/amazon: Complete deprecation of clean_ami_name template func 3015 [GH-8320] [GH-8193] 3016 * core: Changes have been made to both the Prepare() method signature on the 3017 builder interface and on the Provision() method signature on the 3018 provisioner interface. [GH-7866] 3019 * provisioner/ansible-local: The "galaxycommand" option has been renamed to 3020 "galaxy_command". A fixer has been written for this, which can be invoked 3021 with `packer fix`. [GH-8411] 3022 3023 ## 1.4.5 (November 4, 2019) 3024 3025 ### IMPROVEMENTS: 3026 * added ucloud-import post-processsor to import custom image for UCloud UHost 3027 instance [GH-8261] 3028 * builder/amazon: New option to specify IAM policy for a temporary instance 3029 profile [GH-8247] 3030 * builder/amazon: improved validation around encrypt_boot and kms_key_id for a 3031 better experience [GH-8288] 3032 * builder/azure-arm: Allow specification of polling duration [GH-8226] 3033 * builder/azure-chroot: Add Azure chroot builder [GH-8185] & refactored some 3034 common code together after it [GH-8269] 3035 * builder/azure: Deploy NSG if list of IP addresses is provided in config 3036 [GH-8203] 3037 * builder/azure: Set correct user agent for Azure client set [GH-8259] 3038 * builder/cloudstack: Add instance_display_name for cloudstack builder 3039 [GH-8280] 3040 * builder/hyperv: Add the additional_disk_size option tho the hyperv vmcx 3041 builder. [GH-8246] 3042 * builder/openstack: Add option to discover provisioning network [GH-8279] 3043 * builder/oracle-oci: Support defined tags for oci builder [GH-8172] 3044 * builder/proxmox: Add ability to select CPU type [GH-8201] 3045 * builder/proxmox: Add support for SCSI controller selection [GH-8199] 3046 * builder/proxmoz: Bump Proxmox dependency: [GH-8241] 3047 * builder/tencent: Add retry on remote api call [GH-8250] 3048 * builder/vagrant: Pass through logs from vagrant in real time rather than 3049 buffering until command is complete [GH-8274] 3050 * builder/vagrant: add insert_key option for toggling whether to add Vagrant's 3051 insecure key [GH-8274] 3052 * builder/virtualbox: enabled pcie disks usage, but this feature is in beta and 3053 won't work out of the box yet [GH-8305] 3054 * communicator/winrm: Prevent busy loop while waiting for WinRM connection 3055 [GH-8213] 3056 * core: Add strftime function in templates [GH-8208] 3057 * core: Improve error message when comment is bad [GH-8267] 3058 * post-processor/amazon-import: delete intermediary snapshots [GH-8307] 3059 * Fix various dropped errors an removed unused code: [GH-8230] [GH-8265] 3060 [GH-8276] [GH-8281] [GH-8309] [GH-8311] [GH-8304] [GH-8303] [GH-8293] 3061 3062 ### BUG FIXES: 3063 * builder/amazon: Fix region copy for non-ebs amazon builders [GH-8212] 3064 * builder/amazon: Fix spot instance bug where builder would fail if one 3065 availability zone could not support the requested spot instance type, even 3066 if another AZ could do so. [GH-8184] 3067 * builder/azure: Fix build failure after a retry config generation error. 3068 [GH-8209] 3069 * builder/docker: Use a unique temp dir for each build to prevent concurrent 3070 builds from stomping on each other [GH-8192] 3071 * builder/hyperv: Improve filter for determining which files to compact 3072 [GH-8248] 3073 * builder/hyperv: Use first adapter, rather than failing, when multiple 3074 adapters are attached to host OS's VM switch [GH-8234] 3075 * builder/openstack: Fix setting openstack metadata for use_blockstorage_volume 3076 [GH-8186] 3077 * builder/openstack: Warn instead of failing on terminate if instance is 3078 already shut down [GH-8176] 3079 * post-processor/digitalocean-import: Fix panic when 'image_regions' not set 3080 [GH-8179] 3081 * provisioner/powershell: Fix powershell syntax error causing failed builds 3082 [GH-8195] 3083 3084 ## 1.4.4 (October 1, 2019) 3085 3086 ### IMPROVEMENTS: 3087 **New Core Feature** Error cleanup provisioner [GH-8155] 3088 * builder/amazon: Add ability to set `run_volume_tags` [GH-8051] 3089 * builder/amazon: Add AWS API call reties on AMI prevalidation [GH-8034] 3090 * builder/azure: Refactor client config [GH-8121] 3091 * builder/cloudstack: New step to detach iso. [GH-8106] 3092 * builder/googlecompute: Fail fast when image name is invalid. [GH-8112] 3093 * builder/googlecompute: Users can now query Vault for an Oauth token rather 3094 than setting an account file [GH-8143] 3095 * builder/hcloud: Allow selecting image based on filters [GH-7945] 3096 * builder/hyper-v: Decrease the delay between Hyper-V VM startup and hyper-v 3097 builder's ability to send keystrokes to the target VM. [GH-7970] 3098 * builder/openstack: Store WinRM password for provisioners to use [GH-7940] 3099 * builder/proxmox: Shorten default boot_key_interval to 5ms from 100ms 3100 [GH-8088] 3101 * builder/proxmox: Allow running the template VM in a Proxmox resource pool 3102 [GH-7862] 3103 * builder/ucloud: Make ucloud builder's base url configurable [GH-8095] 3104 * builder/virtualbox-vm: Make target snapshot optional [GH-8011] [GH-8004] 3105 * builder/vmware: Allow user to attach floppy files to remote vmx builds 3106 [GH-8132] 3107 * builder/yandex: Add ability to retry API requests [GH-8142] 3108 * builder/yandex: Support GPU instances and set source image by name [GH-8091] 3109 * communicator/ssh: Support for SSH port tunneling [GH-7918] 3110 * core: Add a new `floppy_label` option [GH-8099] 3111 * core: Added version compatibility to console command [GH-8080] 3112 * post-processor/vagrant-cloud: Allow blank access_token for private vagrant 3113 box hosting [GH-8097] 3114 * post-processor/vagrant-cloud: Allow use of the Artifice post-processor with 3115 the Vagrant Cloud post-processor [GH-8018] [GH-8027] 3116 * post-processor/vsphere: Removed redundant whitelist check for builders, 3117 allowing users to use post-processor without the VMWare builder [GH-8064] 3118 3119 ### BUG FIXES: 3120 * builder/amazon: Fix FleetID crash. [GH-8013] 3121 * builder/amazon: Gracefully handle rate limiting when retrieving winrm 3122 password. [GH-8087] 3123 * builder/amazon: Fix race condition in spot instance launching [GH-8165] 3124 * builder/amazon: Amazon builders now respect ssh_host option [GH-8162] 3125 * builder/amazon: Update the AWS sdk to resolve some credential handling issues 3126 [GH-8131] 3127 * builder/azure: Avoid a panic in getObjectIdFromToken [GH-8047] 3128 * builder/googlecompute: Fix crash caused by nil account file. [GH-8102] 3129 * builder/hyper-v: Fix when management interface is not part of virtual switch 3130 [GH-8017] 3131 * builder/openstack: Fix dropped error when creating image client. [GH-8110] 3132 * builder/openstack: Fix race condition created when adding metadata [GH-8016] 3133 * builder/outscale: Get SSH Host from VM.Nics instead of VM Root [GH-8077] 3134 * builder/proxmox: Bump proxmox api dep, fixing bug with checking http status 3135 during boot command [GH-8083] 3136 * builder/proxmox: Check that disk format is set when pool type requires it 3137 [GH-8084] 3138 * builder/proxmox: Fix panic caused by cancelling build [GH-8067] [GH-8072] 3139 * builder/qemu: Fix dropped error when retrieving version [GH-8050] 3140 * builder/vagrant: Fix dropped errors in code and tests. [GH-8118] 3141 * builder/vagrant: Fix provisioning boxes, define source and output boxes 3142 [GH-7957] 3143 * builder/vagrant: Fix ssh and package steps to use source syntax. [GH-8125] 3144 * builder/vagrant: Use GlobalID when provided [GH-8092] 3145 * builder/virtualbox: Fix windows pathing problem for guest additions checksum 3146 download. [GH-7996] 3147 * builder/virtualbox: LoadSnapshots succeeds even if machine has no snapshots 3148 [GH-8096] 3149 * builder/vmware: fix dropped test errors [GH-8170] 3150 * core: Fix bug where sensitive variables containing commas were not being 3151 properly sanitized in UI calls. [GH-7997] 3152 * core: Fix handling of booleans where "unset" is a value distinct from 3153 "false". [GH-8021] 3154 * core: Fix tests that swallowed errors in goroutines [GH-8094] 3155 * core: Fix bug where Packer could no longer run as background process [GH-8101] 3156 * core: Fix zsh auto-completion [GH-8160] 3157 * communicator/ssh: Friendlier message warning user that their creds may be 3158 wrong [GH-8167] 3159 * post-processor/amazon-import: Fix non-default encryption. [GH-8113] 3160 * post-processor/vagrant-cloud: Fix dropped errors [GH-8156] 3161 * provisioner/ansible: Fix provisioner dropped errors [GH-8045] 3162 3163 ### BACKWARDS INCOMPATIBILITIES: 3164 * core: "sed" template function has been deprecated in favor of "replace" and 3165 "replace_all" functions [GH-8119] 3166 3167 ## 1.4.3 (August 14, 2019) 3168 3169 ### IMPROVEMENTS: 3170 * **new builder** UCloud builder [GH-7775] 3171 * **new builder** Outscale [GH-7459] 3172 * **new builder** VirtualBox Snapshot [GH-7780] 3173 * **new builder** JDCloud [GH-7962] 3174 * **new post-processor** Exoscale Import post-processor [GH-7822] [GH-7946] 3175 * build: Change Makefile to behave differently inside and outside the gopath 3176 when generating code. [GH-7827] 3177 * builder/amazon: Don't calculate spot bids; Amazon has changed spot pricing to 3178 no longer require this. [GH-7813] 3179 * builder/google: Add suse-byos-cloud to list of public GCP cloud image 3180 projects [GH-7935] 3181 * builder/openstack: New `image_min_disk` option [GH-7290] 3182 * builder/openstack: New option `use_blockstorage_volume` to set openstack 3183 image metadata [GH-7792] 3184 * builder/openstack: Select instance network on which to assign floating ip 3185 [GH-7884] 3186 * builder/qemu: Implement VNC password functionality [GH-7836] 3187 * builder/scaleway: Allow removing volume after image creation for Scaleway 3188 builder [GH-7887] 3189 * builder/tencent: Add `run_tags` to option to tag instance. [GH-7810] 3190 * builder/tencent: Remove unnecessary image name validation check. [GH-7786] 3191 * builder/tencent: Support data disks for tencentcloud builder [GH-7815] 3192 * builder/vmware: Fix intense CPU usage because of poorly handled errors. 3193 [GH-7877] 3194 * communicator: Use context for timeouts, interruption in ssh and winrm 3195 communicators [GH-7868] 3196 * core: Change how on-error=abort is handled to prevent EOF errors that mask 3197 real issues [GH-7913] 3198 * core: Clean up logging vs ui call in step download [GH-7936] 3199 * core: New environment var option to allow user to set location of config 3200 directory [GH-7912] 3201 * core: Remove obsolete Cancel functions from builtin provisioners [GH-7917] 3202 * post-processor/vagrant: Add option to allow box Vagrantfiles to be generated 3203 during the build [GH-7951] 3204 * provisioner/ansible: Add support for installing roles with ansible-galaxy 3205 [GH-7916 3206 * provisioner/salt-masterless: Modify file upload to handle non-root case. 3207 [GH-7833] 3208 3209 ### BUG FIXES: 3210 * builder/amazon: Add error to warn users of spot_tags regression. [GH-7989] 3211 * builder/amazon: Allow EC2 Spot Fleet packer instances to run in parallel 3212 [GH-7818] 3213 * builder/amazon: Fix failures and duplication in Amazon region copy and 3214 encryption step. [GH-7870] [GH-7923] 3215 * builder/amazon: No longer store names of volumes which get deleted on 3216 termination inside ebssurrogate artifact. [GH-7829] 3217 * builder/amazon: Update aws-sdk-go to v1.22.2, resolving some AssumeRole 3218 issues [GH-7967] 3219 * builder/azure: Create configurable polling duration and set higher default 3220 for image copies to prevent timeouts on successful copies [GH-7920] 3221 * builder/digitalocean: increase timeout for Digital Ocean snapshot creation. 3222 [GH-7841] 3223 * builder/docker: Check container os, not host os, when creating container dir 3224 default [GH-7939] 3225 * builder/docker: Fix bug where PACKER_TMP_DIR was created with root perms on 3226 linux [GH-7905] 3227 * builder/docker: Fix file download hang caused by blocking ReadAll call 3228 [GH-7814] 3229 * builder/google: Fix outdated oauth URL. [GH-7835] [GH-7927] 3230 * builder/hyperv: Improve code for detecting IP address [GH-7880] 3231 * builder/ucloud: Update the api about stop instance to fix the read-only image 3232 build by ucloud-uhost [GH-7914] 3233 * builder/vagrant: Fix bug where source_path was being used instead of box_name 3234 when generating the Vagrantfile. [GH-7859] 3235 * builder/virtualbox: Honor value of 'Comment' field in ssh keypair generation. 3236 [GH-7922] 3237 * builder/vmware: Fix validation regression that occurred when user provided a 3238 checksum file [GH-7804] 3239 * buildere/azure: Fix crash with managed images not published to shared image 3240 gallery. [GH-7837] 3241 * communicator/ssh: Move ssh_interface back into individual builders from ssh 3242 communicator to prevent validation issues where it isn't implemented. 3243 [GH-7831] 3244 * console: Fix console help text [GH-7960] 3245 * core: Fix bug in template parsing where function errors were getting 3246 swallowed. [GH-7854] 3247 * core: Fix regression where a local filepath containing `//` was no longer 3248 properly resolving to `/`. [GH-7888] 3249 * core: Fix regression where we could no longer access isos on SMB shares. 3250 [GH-7800] 3251 * core: Make ssh_host template option always override all builders' IP 3252 discovery. [GH-7832] 3253 * core: Regenerate boot_command PEG code [GH-7977] 3254 * fix: clean up help text and fixer order to make sure all fixers are called 3255 [GH-7903] 3256 * provisioner/inspec: Use --input-file instead of --attrs to avoid deprecation 3257 warning [GH-7893] 3258 * provisioner/salt-masterless: Make salt-masterless provisioner respect 3259 disable_sudo directive for all commands [GH-7774] 3260 3261 ## 1.4.2 (June 26, 2019) 3262 3263 ### IMPROVEMENTS: 3264 * **new feature:** Packer console [GH-7726] 3265 * builder/alicloud: cleanup image and snapshot if target image is still not 3266 available after timeout [GH-7744] 3267 * builder/alicloud: let product API determine the default value of io_optimized 3268 [GH-7747] 3269 * builder/amazon: Add new `skip_save_build_region` option to fix naming 3270 conflicts when building in a region you don't want the final image saved 3271 in. [GH-7759] 3272 * builder/amazon: Add retry for temp key-pair generation in amazon-ebs 3273 [GH-7731] 3274 * builder/amazon: Enable encrypted AMI sharing across accounts [GH-7707] 3275 * builder/amazon: New SpotInstanceTypes feature for spot instance users. 3276 [GH-7682] 3277 * builder/azure: Allow users to publish Managed Images to Azure Shared Image 3278 Gallery (same Subscription) [GH-7778] 3279 * builder/azure: Update Azure SDK for Go to v30.0.0 [GH-7706] 3280 * builder/cloudstack: Add tags to instance upon creation [GH-7526] 3281 * builder/docker: Better windows defaults [GH-7678] 3282 * builder/google: Add feature to import user-data from a file [GH-7720] 3283 * builder/hyperv: Abort build if there's a name collision [GH-7746] 3284 * builder/hyperv: Clarify pathing requirements for hyperv-vmcx [GH-7790] 3285 * builder/hyperv: Increase MaxRamSize to match modern Windows [GH-7785] 3286 * builder/openstack: Add image filtering on properties. [GH-7597] 3287 * builder/qemu: Add additional disk support [GH-7791] 3288 * builder/vagrant: Allow user to override vagrant ssh-config details [GH-7782] 3289 * builder/yandex: Gracefully shutdown instance, allow metadata from file, and 3290 create preemptible instance type [GH-7734] 3291 * core: scrub out sensitive variables in scrub out sensitive variables logs 3292 [GH-7743] 3293 3294 ### BUG FIXES: 3295 * builder/alicloud: Fix describing snapshots issue when image_ignore_data_disks 3296 is provided [GH-7736] 3297 * builder/amazon: Fix bug in region copy which produced badly-named AMIs in the 3298 build region. [GH-7691] 3299 * builder/amazon: Fix failure that happened when spot_tags was set but ami_tags 3300 wasn't [GH-7712] 3301 * builder/cloudstack: Update go-cloudstack sdk, fixing compatibility with 3302 CloudStack v 4.12 [GH-7694] 3303 * builder/proxmox: Update proxmox-api-go dependency, fixing issue calculating 3304 VMIDs. [GH-7755] 3305 * builder/tencent: Correctly remove tencentcloud temporary keypair. [GH-7787] 3306 * core: Allow timestamped AND colorless ui messages [GH-7769] 3307 * core: Apply logSecretFilter to output from ui.Say [GH-7739] 3308 * core: Fix "make bin" command to use reasonable defaults. [GH-7752] 3309 * core: Fix user var interpolation for variables set via -var-file and from 3310 command line [GH-7733] 3311 * core: machine-readable UI now writes UI calls to logs. [GH-7745] 3312 * core: Switch makefile to use "GO111MODULE=auto" to allow for modern gomodule 3313 usage. [GH-7753] 3314 * provisioner/ansible: prevent nil pointer dereference after a language change 3315 [GH-7738] 3316 * provisioner/chef: Accept chef license by default to prevent hangs in latest 3317 Chef [GH-7653] 3318 * provisioner/powershell: Fix crash caused by error in retry logic check in 3319 powershell provisioner [GH-7657] 3320 * provisioner/powershell: Fix null file descriptor error that occurred when 3321 remote_path provided is a directory and not a file. [GH-7705] 3322 3323 ## 1.4.1 (May 15, 2019) 3324 3325 ### IMPROVEMENTS: 3326 * **new builder:** new proxmox builder implemented [GH-7490] 3327 * **new builder:** new yandex cloud builder implemented [GH-7484] 3328 * **new builder:** new linode builder implemented [GH-7508] 3329 * build: Circle CI now generates test binaries for all pull requests [GH-7624] 3330 [GH-7625] [GH-7630] 3331 * builder/alicloud: Support encryption with default service key [GH-7574] 3332 * builder/amazon: Users of chroot and ebssurrogate builders may now choose 3333 between "x86_64" and "arm64" architectures when registering their AMIs. 3334 [GH-7620] 3335 * builder/amazon: Users of the ebssurrogage builder may now choose to omit 3336 certain launch_block_devices from the final AMI mapping by using the 3337 omit_from_artifact feature. [GH-7612] 3338 * builder/azure: Update Azure SDK [GH-7563] 3339 * builder/docker: Better error messaging with container downloads. [GH-7513] 3340 * builder/google: add image encryption support [GH-7551] 3341 * builder/hyperv: Add keep_registered option to hyperv [GH-7498] 3342 * builder/qemu: Replace dot-based parsing with hashicorp/go-version [GH-7614] 3343 * builder/vmware: Add 30 minute timeout for destroying a VM [GH-7553] 3344 * core: Cleanup cache of used port after closing [GH-7613] 3345 * core: New option to set number of builds running in parallel & test 3346 BuildCommand more [GH-7501] 3347 * packer compiles on s390x [GH-7567] 3348 * provisioner/file: Added warnings about writeable locations [GH-7494] 3349 3350 3351 ### BUG FIXES: 3352 * builder/amazon: Fix bug that always encrypted build region with default key. 3353 [GH-7507] 3354 * builder/amazon: Fix bug that wasn't deleting unencrypted temporary snapshots 3355 [GH-7521] 3356 * builder/amazon: Fix EBSsurrogate copy, encryption, and deletion of temporary 3357 unencrypted amis. [GH-7598] 3358 * builder/hyperv: Fixes IP detection error if more than one VMNetworkAdapter is 3359 found [GH-7480] 3360 * builder/qemu: Fix mistake switching ssh port mix/max for vnc port min/max 3361 [GH-7615] 3362 * builder/vagrant: Fix bug with builder and vagrant-libvirt plugin [GH-7633] 3363 * builder/virtualbox: Don't fail download when checksum is not set. [GH-7512] 3364 * builder/virtualbox: Fix ovf download failures by using local ovf files in 3365 place instead of symlinking [GH-7497] 3366 * builder/vmware: Fix panic configuring VNC for remote builds [GH-7509] 3367 * core/build: Allow building Packer on solaris by removing progress bar and tty 3368 imports on solaris [GH-7618] 3369 * core: Fix race condition causing hang [GH-7579] 3370 * core: Fix tty related panics [GH-7517] 3371 * core: Step download: Always copy local files on windows rather than 3372 symlinking them [GH-7575] 3373 * packer compiles on Solaris again [GH-7589] [GH-7618] 3374 * post-processor/vagrant: Fix bug in retry logic that caused failed upload to 3375 report success. [GH-7554] 3376 3377 ## 1.4.0 (April 11, 2019) 3378 3379 ### IMPROVEMENTS: 3380 * builder/alicloud: Improve error message for conflicting images name [GH-7415] 3381 * builder/amazon-chroot: Allow users to specify custom block device mapping 3382 [GH-7370] 3383 * builder/ansible: Documentation fix explaining how to use ansible 2.7 + winrm 3384 [GH-7461] 3385 * builder/azure-arm: specify zone resilient image from config [GH-7211] 3386 * builder/docker: Add support for windows containers [GH-7444] 3387 * builder/openstack: Allow both ports and networks in openstack builder 3388 [GH-7451] 3389 * builder/openstack: Expose force_delete for openstack builder [GH-7395] 3390 * builder/OpenStack: Support Application Credential Authentication [GH-7300] 3391 * builder/virtualbox: Add validation for 'none' communicator. [GH-7419] 3392 * builder/virtualbox: create ephemeral SSH key pair for build process [GH-7287] 3393 * core: Add functionality to marshal a Template to valid Packer JSON [GH-7339] 3394 * core: Allow user variables to be interpreted within the variables section 3395 [GH-7390] 3396 * core: Incorporate the go-getter to handle downloads [GH-6999] 3397 * core: Lock Packer VNC ports using a lock file to prevent collisions [GH-7422] 3398 * core: Print VerifyChecksum log for the download as ui.Message output 3399 [GH-7387] 3400 * core: Users can now set provisioner timeouts [GH-7466] 3401 * core: Switch to using go mod for managing dependencies [GH-7270] 3402 * core: Select a new VNC port if initial port is busy [GH-7423] 3403 * post-processor/googlecompute-export: Set network project id to builder 3404 [GH-7359] 3405 * post-processor/vagrant-cloud: support for the vagrant builder [GH-7397] 3406 * post-processor/Vagrant: Option to ignore SSL verification when using on- 3407 premise vagrant cloud [GH-7377] 3408 * postprocessor/amazon-import: Support S3 and AMI encryption. [GH-7396] 3409 * provisioner/shell provisioner/windows-shell: allow to specify valid exit 3410 codes [GH-7385] 3411 * core: Filter sensitive variables out of the ui as well as the logs 3412 [GH-7462] 3413 3414 ### BUG FIXES: 3415 * builder/alibaba: Update to latest Alibaba Cloud official image to fix 3416 acceptance tests [GH-7375] 3417 * builder/amazon-chroot: Fix building PV images and where mount_partition is 3418 set [GH-7337] 3419 * builder/amazon: Fix http_proxy env var regression [GH-7361] 3420 * builder/azure: Fix: Power off before taking snapshot (windows) [GH-7464] 3421 * builder/hcloud: Fix usage of freebsd64 rescue image [GH-7381] 3422 * builder/vagrant: windows : fix docs and usage [GH-7416] [GH-7417] 3423 * builder/vmware-esxi: properly copy .vmxf files in remote vmx builds [GH-7357] 3424 * core: fix bug where Packer didn't pause in debug on certain linux platforms. 3425 [GH-7352] 3426 * builder/amazon: Fix bug copying encrypted images between regions [GH-7342] 3427 3428 ### BACKWARDS INCOMPATIBILITIES: 3429 * builder/amazon: Change `temporary_security_group_source_cidr` to 3430 `temporary_security_group_source_cidrs` and allow it to accept a list of 3431 strings. [GH-7450] 3432 * builder/amazon: If users do not pass any encrypt setting, retain any initial 3433 encryption setting of the AMI. [GH-6787] 3434 * builder/docker: Update docker's default config to use /bin/sh instead of 3435 /bin/bash [GH-7106] 3436 * builder/hyperv: Change option names cpu->cpus and ram_size->memory to bring 3437 naming in line with vmware and virtualbox builders [GH-7447] 3438 * builder/oracle-classic: Remove default ssh_username from oracle classic 3439 builder, but add note to docs with oracle's default user. [GH-7446] 3440 * builder/scaleway: Renamed attribute api_access_key to organization_id. 3441 [GH-6983] 3442 * Change clean_image name and clean_ami_name to a more general clean_resource 3443 name for Googlecompute, Azure, and AWS builders. [GH-7456] 3444 * core/post-processors: Change interface for post-processors to allow an 3445 overridable default for keeping input artifacts. [GH-7463] 3446 3447 ## 1.3.5 (February 28, 2019) 3448 3449 ### IMPROVEMENTS: 3450 * builder/alicloud: Update aliyun sdk to support eu-west-1 region [GH-7338] 3451 * builder/amazon: AWS users can now use the Vault AWS engine to generate 3452 temporary credentials. [GH-7282] 3453 * builder/azure: IMDS to get subscription for Azure MSI [GH-7332] 3454 * builder/openstack: Replaced deprecated compute/ api with imageservice/ 3455 [GH-7038] 3456 * builder/virtualbox: New "guest_additions_interface" option to enable 3457 attaching via a SATA interface. [GH-7298] 3458 * builder/vmware: Add `cores` option for specifying the number of cores per 3459 socket. [GH-7191] 3460 * bulder/openstac: Deprecated compute/v2/images API [GH-7268] 3461 * core: Add validation check to help folks who swap their iso_path and 3462 checksum_path [GH-7311] 3463 * fixer/amazon: Make the amazon-private-ip fixer errors more visible [GH-7336] 3464 * post-processor/googlecompute-export: Extend auth for the GCE-post-processors 3465 to act like the GCE builder. [GH-7222] 3466 * post-processor/googlecompute-import: Extend auth for the GCE-post-processors 3467 to act like the GCE builder. [GH-7222] 3468 * post-processor/manifest: Add "custom_data" key to packer manifest post- 3469 processor [GH-7248] 3470 3471 ### BUG FIXES: 3472 * builder/amazon: Fix support for aws-us-gov [GH-7347] 3473 * builder/amazon: Move snapshot deletion to cleanup phase. [GH-7343] 3474 * builder/azure: Fixed Azure interactive authentication [GH-7276] 3475 * builder/cloudstack: Updated sdk version; can now use ostype name in 3476 template_os option. [GH-7264] 3477 * builder/google: Change metadata url to use a FQDN fixing bug stemming from 3478 differing DNS/search domains. [GH-7260] 3479 * builder/hyper-v: Fix integer overflows in 32-bit builds [GH-7251] 3480 * builder/hyper-v: Fix regression where we improperly handled spaces in switch 3481 names [GH-7266] 3482 * builder/openstack: Pass context So we know to cancel during WaitForImage 3483 [GH-7341] 3484 * builder/vmware-esxi: Strip \r\n whitespace from end of names of 3485 files stored on esxi. [GH-7310] 3486 * builder/vmware: Add "--noSSLVerify" to args in ovftool Validation [GH-7314] 3487 * core: clean up Makefile [GH-7254][GH-7265] 3488 * core: Fixes mismatches in checksums for dependencies for Go 1.11.4+ [GH-7261] 3489 * core: make sure 'only' option is completely ignored by post-processors 3490 [GH-7262] 3491 * core: name a post-processor to its type when it is not named [GH-7330] 3492 * provisioner/salt: Force powershell to overwrite duplicate files [GH-7281] 3493 3494 ### Features: 3495 * **new builder** `vagrant` allows users to call vagrant to provision starting 3496 from vagrant boxes and save them as new vagrant boxes. [GH-7221] 3497 * **new builder:** `hyperone` for building new images on HyperOne Platform on 3498 top of existing image or from the scratch with the use of chroot. [GH-7294] 3499 * **new post-processor** `digitalocean-import`Add digitalocean-import post- 3500 processor. [GH-7060] 3501 * **new provisioner**`inspec` Added inspec.io provisioner [GH-7180] 3502 * communicator: Add configurable pause after communicator can connect but 3503 before it performs provisioning tasks [GH-7317] [GH-7351] 3504 3505 ## 1.3.4 (January 30, 2019) 3506 ### IMPROVEMENTS: 3507 * builder/alicloud: delete copied image and snapshots if corresponding options 3508 are specified [GH-7050] 3509 * builder/amazon: allow to interpolate more variables [GH-7059] 3510 * builder/amazon: Check that the KMS key ID is valid [GH-7090] 3511 * builder/amazon: Clean up logging for aws waiters so that it only runs once 3512 per builder [GH-7080] 3513 * builder/amazon: don't Cleanup Temp Keys when there is no communicator to 3514 avoid a panic [GH-7100] [GH-7095] 3515 * builder/amazon: Don't try to guess region from metadata if not set & update 3516 aws-sdk-go [GH-7230] 3517 * builder/amazon: Import error messages should now contain reason for failure 3518 [GH-7207] 3519 * builder/azure: add certificate authentication [GH-7189] 3520 * builder/azure: allow to configure disk caching [GH-7061] 3521 * builder/azure: use deallocate instead of just power-off [GH-7203] 3522 * builder/hyperv: Add support for legacy network adapters on Hyper-V. [GH-7128] 3523 * builder/hyperv: Allow user to set `version` option in the New-VM command. 3524 [GH-7136] 3525 * builder/openstack: Add `volume_size` option [GH-7130] 3526 * builder/openstack: Don't require network v2 [GH-6933] 3527 * builder/openstack: Support for tagging new images [GH-7037] 3528 * builder/qemu: Add configuration options to specify cpu count and memory size 3529 [GH-7156] 3530 * builder/qemu: Add support for whpx accelerator to qemu builder [GH-7151] 3531 * builder/vmware: Escape query as suggested in issue #7200 [GH-7223] 3532 * core/shell: Add env vars "PACKER_HTTP_IP" and "PACKER_HTTP_PORT" to shell 3533 provisioners [GH-7075] 3534 * core: allow to use `-except` on post-processors [GH-7183] 3535 * core: Clean up internal handling and creation of temporary directories 3536 [GH-7102] 3537 * core: Deprecate mitchellh/go-homedir package in favor of os/user [GH-7062] 3538 * core: Download checksum match failures will now log the received checksum. 3539 [GH-7210] 3540 * core: Explicitly set ProxyFromEnvironment in httpclients when creating an aws 3541 session [GH-7226] 3542 * core: make packer inspect not print sensitive variables [GH-7084] 3543 * post-processor/google: Add new `guest-os-features` option. [GH-7218] 3544 * postprocessor/docker-import: Added `change` support [GH-7127] 3545 * provisioner/ansible-remote: add `-o IdentitiesOnly=yes` as a default flag 3546 [GH-7115] 3547 * provisioner/chef-client: Elevated support for chef-client provisioner 3548 [GH-7078] 3549 * provisioner/puppet: Elevated support for puppet-* provisioner [GH-7078] 3550 * provisioner/windows-restart: wait for already-scheduled reboot [GH-7056] and 3551 ignore reboot specific errors [GH-7071] 3552 3553 3554 ### BUG FIXES: 3555 * builder/azure: Ensure the Windows Guest Agent is fully functional before 3556 Sysprep is executed. [GH-7176] 3557 * builder/azure: Fix snapshot regression [GH-7111] 3558 * builder/docker: Ensure that entrypoint and arguments get passed to docker, 3559 not the image. [GH-7091] 3560 * builder/hcloud: fix go mod dependency [GH-7099] 3561 * builder/hcloud: prevent panic when ssh key was not passed [GH-7118] 3562 * builder/hyperv: Fix the Hyper-V gen 1 guest boot order. [GH-7147] 3563 * builder/hyperv: hyper-v builder no longer ignores `ssh_host` option. 3564 [GH-7154] 3565 * builder/oracle-oci: Fix crash that occurs when image is nil [GH-7126] 3566 * builder/parallels: Fix attaching prl tools [GH-7158] 3567 * builder/virtualbox: Fix handling of portcount argument for version 6 beta 3568 [GH-7174] [GH-7094] 3569 * builder/vmware: Fix bug caused by 'nil' dir field in artifact struct when 3570 building locally [GH-7116] 3571 * communicator/docker: Fix docker file provisioner on Windows [GH-7163] 3572 * core: prioritize AppData over default user directory ( UserProfile ) 3573 [GH-7166] 3574 * core: removed a flaky race condition in tests [GH-7119] 3575 * postprocessor/vsphere: Stop setting HDDOrder, since it was breaking uploads 3576 [GH-7108] 3577 3578 3579 ## 1.3.3 (December 5, 2018) 3580 ### IMPROVEMENTS: 3581 * builder/alicloud: Add options for system disk properties [GH-6939] 3582 * builder/alicloud: Apply tags to relevant snapshots [GH-7040] 3583 * builder/alicloud: Support creating image without data disks [GH-7022] 3584 * builder/amazon: Add option for skipping TLS verification [GH-6842] 3585 * builder/azure: Add options for Managed Image OS Disk and Data Disk snapshots 3586 [GH-6980] 3587 * builder/hcloud: Add `snapshot_labels` option to hcloud builder [GH-7046] 3588 * builder/hcloud: Add ssh_keys config to hcloud builder [GH-7028] 3589 * builder/hcloud: Update hcloud-go version and support builds using rescue mode 3590 [GH-7034] 3591 * builder/oracle: Parameterized volume size support for Oracle classic builder 3592 [GH-6918] 3593 * builder/parallels: Add configuration options to parallels builder to specify 3594 cpu count and memory size [GH-7018] 3595 * builder/virtualbox: Add configuration options to virtualbox builder to 3596 specify cpu count and memory size [GH-7017] 3597 * builder/virtualbox: expose the VBoxManage export --iso option [GH-5950] 3598 * builder/vmware: Add configuration options to vmware builder to specify cpu 3599 count and memory size [GH-7019] 3600 * builder/vmware: Add new display_name template option [GH-6984] 3601 * builder/vmware: Extend vmware-vmx builder to allow esxi builds. [GH-4591] 3602 [GH-6927] 3603 * builder/vmware: Validate username/password for ovftool during prepare. 3604 [GH-6977] 3605 * builder/vmware: Warn users if their vmx_data overrides data that Packer uses 3606 the template engine to set in its default vmx template. [GH-6987] 3607 * communicator/ssh: Expand user path for SSH private key [GH-6946] 3608 * core: Add a sed template engine [GH-6580] 3609 * core: More explicit error message in rpc/ui.go [GH-6981] 3610 * core: Replaced unsafe method of determining homedir with os/user 3611 implementation [GH-7036] 3612 * core: Update vagrantfile's go version. [GH-6841] 3613 * post-processor/amazon-import: Support ova, raw, vmdk, and vhdx formats in the 3614 amazon-import post-processor. [GH-6938] 3615 * post-processor/vsphere-template: Add option to snapshot vm before marking as 3616 template [GH-6969] 3617 * provisioner/breakpoint: Add a new breakpoint provisioner. [GH-7058] 3618 * provisioner/powershell: Allow Powershell provisioner to use service accounts 3619 [GH-6972] 3620 * provisioner/shell: Add PauseAfter option to shell provisioner [GH-6913] 3621 3622 ### BUG FIXES: 3623 * builder/amazon: Better error handling of region/credential guessing from 3624 metadata [GH-6931] 3625 * builder/amazon: move region validation to run so that we don't break 3626 validation when no credentials are set [GH-7032] 3627 * builder/hyperv: Remove -Copy:$false when calling Hyper-V\Compare-VM 3628 compatability report [GH-7030] 3629 * builder/qemu: Do not set detect-zeroes option when we want it "off" [GH-7064] 3630 * builder/vmware-esxi: Create export directories for vmx and ovf file types 3631 [GH-6985] 3632 * builder/vmware: Correctly parse version for VMware Fusion Tech Preview 3633 [GH-7016] 3634 * builder/vmware: Escape vSphere username when putting it into the export call 3635 [GH-6962] 3636 * post-processor/vagrant: Add "hvf" as a libvirt driver [GH-6955] 3637 * provisioner/ansible: inventory is no longer set to inventory_directory 3638 [GH-7065] 3639 3640 ## 1.3.2 (October 29, 2018) 3641 ### IMPROVEMENTS: 3642 * builder/alicloud: Add new `disable_stop_instance` option. [GH-6764] 3643 * builder/alicloud: Support adding tags to image. [GH-6719] 3644 * builder/alicloud: Support ssh with private ip address. [GH-6688] 3645 * builder/amazon: Add support to explicitly control ENA support [GH-6872] 3646 * builder/amazon: Add suppport for `vpc_filter`, `subnet_filter`, and 3647 `security_group_filter`. [GH-6374] 3648 * builder/amazon: Add validation for required `device_name` parameter in 3649 `block_device_mappings`. [GH-6845] 3650 * builder/amazon: Clean up security group wait code. [GH-6843] 3651 * builder/amazon: Update aws-sdk-go to v1.15.54, adding support for 3652 `credential_source`. [GH-6849] 3653 * builder/amazon: Use DescribeRegions for aws region validation. [GH-6512], 3654 [GH-6904] 3655 * builder/azure: Add new `shared_image_gallery` option. [GH-6798] 3656 * builder/googlecompute: Return an error if `startup_script_file` is specified, 3657 but file does not exist. [GH-6848] 3658 * builder/hcloud: Add Hetzner Cloud builder. [GH-6871] 3659 * builder/openstack: Add new `disk_format` option. [GH-6702] 3660 * builder/openstack: Fix bug where `source_image_name` wasn't being used to 3661 properly find a UUID. [GH-6751] 3662 * builder/openstack: Wait for volume availability when cleaning up [GH-6703] 3663 * builder/qemu: Add `disk_detect_zeroes` option. [GH-6827] 3664 * builder/scaleway: Add `boottype` parameter to config. [GH-6772] 3665 * builder/scaleway: Update scaleway-cli vendor. [GH-6771] 3666 * core: New option to add timestamps to UI output. [GH-6784] 3667 * post-processor/vagrant-cloud: Validate vagrant cloud auth token doing an auth 3668 request [GH-6914] 3669 * provisioner/file: Improve error messaging when file destination is a 3670 directory with no trailing slash. [GH-6756] 3671 * provisioner/powershell: Provide better error when Packer can't find 3672 Powershell executable. [GH-6817] 3673 * provisioner/shell-local: Add ability to specify OSs where shell-local can run 3674 [GH-6878] 3675 3676 ### BUG FIXES: 3677 * builder/alicloud: Fix ssh configuration pointer issues that could cause a bug 3678 [GH-6720] 3679 * builder/alicloud: Fix type error in step_create_tags [GH-6763] 3680 * builder/amazon: Error validating credentials is no longer obscured by a 3681 region validation error. and some region validation refactors and 3682 improvements [GH-6865] 3683 * builder/amazon: Fix error calculating defaults in AWS waiters. [GH-6727] 3684 * builder/amazon: Increase default wait for image import to one hour. [GH-6818] 3685 * builder/amazon: Waiter now fails rather than hanging for extra time when an 3686 image import fails. [GH-6747] 3687 * builder/azure: Updated Azure/go-ntlmssp dependency to resolve an issue with 3688 the winrm communicator not connecting to Windows machines requiring NTLMv2 3689 session security 3690 * builder/digitalocean: Fix ssh configuration pointer issues that could cause a 3691 panic [GH-6729] 3692 * builder/hyperv/vmcx: Allow to set generation from buildfile [GH-6909] 3693 * builder/scaleway: Fix issues with ssh keys. [GH-6768] 3694 * core: Fix error where logging was always enabled when Packer was run from 3695 inside Terraform. [GH-6758] 3696 * core: Fix issue with with names containing spaces in ESX5Driver and in ssh 3697 communicator [GH-6891], [GH-6823] 3698 * core: Fix logger so it doesn't accidentally try to format unescaped strings. 3699 [GH-6824] 3700 * core: Fix race conditions in progress bar code [GH-6858], [GH-6788], 3701 [GH-6851] 3702 * core: Fix various places in multiple builders where config was not being 3703 passed as a pointer. [GH-6739] 3704 * post-processor/manifest: No longer provides an empty ID string for Azure's 3705 managed image artifact [GH-6822] 3706 * provisioner/powershell: Fix a bug in the way we set the ProgressPreference 3707 variable in the default `execute_command` [GH-6838] 3708 * provisioner/windows-restart: Fix extraneous break which forced early exit 3709 from our wait loop. [GH-6792] 3710 3711 ## 1.3.1 (September 13, 2018) 3712 3713 ### IMPROVEMENTS: 3714 * builder/amazon: automatically decode encoded authorization messages if 3715 possible [GH-5415] 3716 * builder:amazon: Optional cleanup of the authorized keys file [GH-6713] 3717 * builder/qemu: Fixed bug where a -device in the qemuargs would override the default network settings, resulting in no network [GH-6807] 3718 3719 ### BUG FIXES: 3720 * builder/amazon: fix bugs relating to spot instances provisioning [GH-6697] 3721 [GH-6693] 3722 * builder/openstack: fix ssh keypair not attached [GH-6701] 3723 * core: progressbar: fix deadlock locking builds after first display [GH-6698] 3724 3725 ## 1.3.0 (September 11, 2018) 3726 3727 ### IMPROVEMENTS: 3728 * azure/arm: Retry cleanup of individual resources on error [GH-6644] 3729 * builder/alicloud: Support source image coming from marketplace [GH-6588] 3730 * builder/amazon-chroot: Add new `root_volume_type` option. [GH-6669] 3731 * builder/amazon-chroot: If you have a PV source AMI, with the Amazon Chroot 3732 builder, and the destination AMI is type HVM, you can now enable 3733 ena_support, example: [GH-6670] 3734 * builder/amazon-chroot: New feature `root_volume_tags` to tag the created 3735 volumes. [GH-6504] 3736 * builder/amazon: Create a random interim AMI name when encrypt_boot is true so 3737 that ami name is not searchable. [GH-6657] 3738 * builder/azure: Implement clean_image_name template engine. [GH-6558] 3739 * builder/cloudstack: Add option to use a fixed port via public_port. [GH-6532] 3740 * builder/digitalocean: Add support for tagging to instances [GH-6546] 3741 * builder/googlecompute: Add new `min_cpu_platform` feature [GH-6607] 3742 * builder/googlecompute: Update the list of public image projects that we 3743 search, based on GCE documentation. [GH-6648] 3744 * builder/lxc: Allow unplivileged LXC containers. [GH-6279] 3745 * builder/oci: Add `metadata` feature to Packer config. [GH-6498] 3746 * builder/openstack: Add support for getting config from clouds-public.yaml. 3747 [GH-6595] 3748 * builder/openstack: Add support for ports. [GH-6570] 3749 * builder/openstack: Add support for source_image_filter. [GH-6490] 3750 * builder/openstack: Migrate floating IP usage to Network v2 API from Compute 3751 API. [GH-6373] 3752 * builder/openstack: Support Block Storage volumes as boot volume. [GH-6596] 3753 * builder/oracle-oci: Add support for freeform tagging of OCI images [GH-6338] 3754 * builder/qemu: add ssh agent support. [GH-6541] 3755 * builder/qemu: New `use_backing_file` feature [GH-6249] 3756 * builder/vmware-iso: Add support for disk compaction [GH-6411] 3757 * builder/vmware-iso: Try to use ISO files uploaded to the datastore when 3758 building remotely instead of uploading them freshly every time [GH-5165] 3759 * command/validate: Warn users if config needs fixing. [GH-6423] 3760 * core: Add a 'split' function to parse template variables. [GH-6357] 3761 * core: Add a template function allowing users to read keys from consul 3762 [GH-6577] 3763 * core: Add a template function allowing users to read keys from vault 3764 [GH-6533] 3765 * core: Add progress-bar to download step. [GH-5851] 3766 * core: Create a new root-level Packer template option, "sensitive-variables" 3767 which allows users to list which variables they would like to have scrubbed 3768 from the Packer logs. [GH-6610] 3769 * core: Create new config options, "boot_keygroup_interval" and 3770 "boot_key_interval" that can be set at the builder-level to supercede 3771 PACKER_KEY_INTERVAL for the bootcommand. [GH-6616] 3772 * core: Deduplicate ui and log lines that stream to terminal [GH-6611] 3773 * core: Refactor and deduplicate ssh code across builders. This should be a no- 3774 op but is a big win for maintainability. [GH-6621] [GH-6613] 3775 * post-processor/compress: Add support for xz compression [GH-6534] 3776 * post-processor/vagrant: Support for Docker images. [GH-6494] 3777 * post-processor/vsphere: Add new `esxi_host` option. [GH-5366] 3778 * postprocessor/vagrant: Add support for Azure. [GH-6576] 3779 * provisioner/ansible: Add new "extra var", packer_http_addr. [GH-6501] 3780 * provisioner/ansible: Enable {{.WinRMPassword}} template engine. [GH-6450] 3781 * provisioner/shell-local: Create PACKER_HTTP_ADDR environment variable 3782 [GH-6503] 3783 3784 3785 ### BUG FIXES: 3786 * builder/amazon-ebssurrogate: Clean up volumes at end of build. [GH-6514] 3787 * builder/amazon: Increase default waiter timeout for AWS 3788 WaitUntilImageAvailable command [GH-6601] 3789 * builder/amazon: Increase the MaxRetries in the Amazon client from the default 3790 to 20, to work around users who regularly reach their requestlimit and are 3791 being throttled. [GH-6641] 3792 * builder/amazon: Properly apply environment overrides to our custom-written 3793 waiters. [GH-6649] 3794 * builder/azure: Generated password satisfies Azure password requirements 3795 [GH-6480] 3796 * builder/hyper-v: Builder no longer errors if skip_compaction isn't true when 3797 skip_export is true, and compaction efficiency is improved [GH-6393] 3798 * builder/lxc: Correctly pass "config" option to "lxc launch". [GH-6563] 3799 * builder/lxc: Determine lxc root according to the running user [GH-6543] 3800 * builder/lxc: Fix file copying for unprivileged LXC containers [GH-6544] 3801 * builder/oracle-oci: Update OCI sdk, fixing validation bug that occurred when 3802 RSA key was encrypted. [GH-6492] 3803 * builder/vmware-iso: Fix crash caused by invalid datacenter url. [GH-6529] 3804 * builder/vmware: Maintain original boot order during CreateVMX step for 3805 vmware-iso builder [GH-6204] 3806 * communicator/chroot: Fix quote escaping so that ansible provisioner works 3807 properly. [GH-6635] 3808 * core: Better error handling in downloader when connection error occurs. 3809 [GH-6557] 3810 * core: Fix broken pathing checks in checksum files. [GH-6525] 3811 * provisioner/shell Create new template option allowing users to choose to 3812 source env vars from a file rather than declaring them inline. This 3813 resolves a bug that occurred when users had complex quoting in their 3814 `execute_command`s [GH-6636] 3815 * provisioner/shell-local: Windows inline scripts now default to being appended 3816 with ".cmd", fixing a backwards incompatibility in v1.2.5 [GH-6626] 3817 * provisioner/windows-restart: Provisioner now works when used in conjunction 3818 with SSH communicator [GH-6606] 3819 3820 ### BACKWARDS INCOMPATIBILITIES: 3821 * builder/amazon: "owners" field on source_ami_filter is now required for 3822 secuirty reasons. [GH-6585] 3823 * builder/vmware-iso: validation will fail for templates using esxi that have the "disk_type_id" set to something other than "thin" or "" and that do not have "skip_compaction": true also set. Use `packer fix` to fix this. [GH-6411] 3824 3825 ## 1.2.5 (July 16, 2018) 3826 3827 ### BUG FIXES: 3828 * builder/alickoud: Fix issue where internet_max_bandwidth_out template option 3829 was not being passed to builder. [GH-6416] 3830 * builder/alicloud: Fix an issue with VPC cleanup. [GH-6418] 3831 * builder/amazon-chroot: Fix communicator bug that broke chroot builds. 3832 [GH-6363] 3833 * builder/amazon: Replace packer's waiters with those from the AWS sdk, solving 3834 several timeout bugs. [GH-6332] 3835 * builder/azure: update azure-sdk-for-go, fixing 32-bit build errors. [GH-6479] 3836 * builder/azure: update the max length of managed_image_resource_group to match 3837 new increased length of 90 characters. [GH-6477] 3838 * builder/hyper-v: Fix secure boot template feature so that it properly passes 3839 the temolate for MicrosoftUEFICertificateAuthority. [GH-6415] 3840 * builder/hyperv: Fix bug in HyperV IP lookups that was causing breakages in 3841 FreeBSD/OpenBSD builds. [GH-6416] 3842 * builder/qemu: Fix error race condition in qemu builder that caused convert to 3843 fail on ubuntu 18.x [GH-6437] 3844 * builder/qemu: vnc_bind_address was not being passed to qemu. [GH-6467] 3845 * builder/virtualbox: Allow iso_url to be a symlink. [GH-6370] 3846 * builder/vmware: Don't fail on DHCP lease files that cannot be read, fixing 3847 bug where builder failed on NAT networks that don't serve DHCP. [GH-6415] 3848 * builder/vmware: Fix bug where we couldn't discover IP if vm_name differed 3849 from the vmx displayName. [GH-6448] 3850 * builder/vmware: Fix validation to prevent hang when remopte_password is not 3851 sent but vmware is building on esxi. [GH-6424] 3852 * builder/vmware:Correctly default the vm export format to ovf; this is what 3853 the docs claimed we already did, but we didn't. [GH-4538] 3854 * communicator/winrm: Revert an attempt to determine whether remote upload 3855 destinations were files or directories, as this broke uploads on systems 3856 without Powershell installed. [GH-6481] 3857 * core: Fix bug in parsing of iso checksum files that arose when setting 3858 iso_url to a relative filepath. [GH-6488] 3859 * core: Fix Packer crash caused by improper error handling in the downloader. 3860 [GH-6381] 3861 * fix: Fix bug where fixer for ssh_private_ip that failed when boolean values 3862 are passed as strings. [GH-6458] 3863 * provisioner/powershell: Make upload of powershell variables retryable, in 3864 case of system restarts. [GH-6388] 3865 3866 ### IMPROVEMENTS: 3867 * builder/amazon: Add the ap-northeast-3 region. [GH-6385] 3868 * builder/amazon: Spot requests may now have tags applied using the `spot_tags` 3869 option [GH-5452] 3870 * builder/cloudstack: Add support for Projectid and new config option 3871 prevent_firewall_changes. [GH-6487] 3872 * builder/openstack: Add support for token authorization and cloud.yaml. 3873 [GH-6362] 3874 * builder/oracle-oci: Add new "instance_name" template option. [GH-6408] 3875 * builder/scaleway: Add new "bootscript" parameter, allowing the user to not 3876 use the default local bootscript [GH-6439] 3877 * builder/vmware: Add support for linked clones to vmware-vmx. [GH-6394] 3878 * debug: The -debug flag will now cause Packer to pause between provisioner 3879 scripts in addition to Packer steps. [GH-4663] 3880 * post-processor/googlecompute-import: Added new googlecompute-import post- 3881 processor [GH-6451] 3882 * provisioner/ansible: Add new "playbook_files" option to execute multiple 3883 playbooks within one provisioner call. [GH-5086] 3884 3885 ## 1.2.4 (May 29, 2018) 3886 3887 ### BUG FIXES: 3888 3889 * builder/amazon: Can now force the chroot builder to mount an entire block 3890 device instead of a partition [GH-6194] 3891 * builder/azure: windows-sql-cloud is now in the default list of projects to 3892 check for provided images. [GH-6210] 3893 * builder/chroot: A new template option, `nvme_device_path` has been added to 3894 provide a workaround for users who need the amazon-chroot builder to mount 3895 a NVMe volume on their instances. [GH-6295] 3896 * builder/hyper-v: Fix command for mounting multiple disks [GH-6267] 3897 * builder/hyperv: Enable IP retrieval for Server 2008 R2 hosts. [GH-6219] 3898 * builder/hyperv: Fix bug in MAC address specification on Hyper-V. [GH-6187] 3899 * builder/parallels-pvm: Add missing disk compaction step. [GH-6202] 3900 * builder/vmware-esxi: Remove floppy files from the remote server on cleanup. 3901 [GH-6206] 3902 * communicator/winrm: Updated dependencies to fix a race condition [GH-6261] 3903 * core: When using `-on-error=[abort|ask]`, output the error to the user. 3904 [GH-6252] 3905 * provisioner/puppet: Extra-Arguments are no longer prematurely 3906 interpolated. [GH-6215] 3907 * provisioner/shell: Remove file stat that was causing problems uploading files 3908 [GH-6239] 3909 3910 ### IMPROVEMENTS: 3911 3912 * builder/amazon: Amazon builders other than `chroot` now support T2 unlimited 3913 instances [GH-6265] 3914 * builder/azure: Allow device login for US government cloud. [GH-6105] 3915 * builder/azure: Devicelogin Support for Windows [GH-6285] 3916 * builder/azure: Enable simultaneous builds within one resource group. 3917 [GH-6231] 3918 * builder/azure: Faster deletion of Azure Resource Groups. [GH-6269] 3919 * builder/azure: Updated Azure SDK to v15.0.0 [GH-6224] 3920 * builder/hyper-v: Hyper-V builds now connect to vnc display by default when 3921 building [GH-6243] 3922 * builder/hyper-v: New `use_fixed_vhd_format` allows vm export in an Azure- 3923 compatible format [GH-6101] 3924 * builder/hyperv: New config option for specifying what secure boot template to 3925 use, allowing secure boot of linux vms. [GH-5883] 3926 * builder/qemu: Add support for hvf accelerator. [GH-6193] 3927 * builder/scaleway: Fix SSH communicator connection issue. [GH-6238] 3928 * core: Add opt-in Packer top-level command autocomplete [GH-5454] 3929 * post-processor/shell-local: New options have been added to create feature 3930 parity with the shell-local provisioner. This feature now works on Windows 3931 hosts. [GH-5956] 3932 * provisioner/chef: New config option allows user to skip cleanup of chef 3933 client staging directory. [GH-4300] 3934 * provisioner/shell-local: Can now access automatically-generated WinRM 3935 password as variable [GH-6251] 3936 * provisoner/shell-local: New options have been added to create feature parity 3937 with the shell-local post-processor. This feature now works on Windows 3938 hosts. [GH-5956] 3939 * builder/virtualbox: Use HTTPS to download guest editions, now that it's 3940 available. [GH-6406] 3941 3942 ## 1.2.3 (April 25, 2018) 3943 3944 ### BUG FIXES: 3945 3946 * builder/azure: Azure CLI may now be logged into several accounts. [GH-6087] 3947 * builder/ebssurrogate: Snapshot all launch devices. [GH-6056] 3948 * builder/hyper-v: Fix CopyExportedVirtualMachine script so it works with 3949 links. [GH-6082] 3950 * builder/oracle-classic: Fix panics when cleaning up resources that haven't 3951 been created. [GH-6095] 3952 * builder/parallels: Allow user to cancel build while the OS is starting up. 3953 [GH-6166] 3954 * builder/qemu: Avoid warning when using raw format. [GH-6080] 3955 * builder/scaleway: Fix compilation issues on solaris/amd64. [GH-6069] 3956 * builder/virtualbox: Fix broken scancodes in boot_command. [GH-6067] 3957 * builder/vmware-iso: Fail in validation if user gives wrong remote_type value. 3958 [GH-4563] 3959 * builder/vmware: Fixed a case-sensitivity issue when determining the network 3960 type during the cloning step in the vmware-vmx builder. [GH-6057] 3961 * builder/vmware: Fixes the DHCP lease and configuration pathfinders for VMware 3962 Player. [GH-6096] 3963 * builder/vmware: Multi-disk VM's can be properly handled by the compacting 3964 stage. [GH-6074] 3965 * common/bootcommand: Fix numerous bugs in the boot command code, and make 3966 supported features consistent across builders. [GH-6129] 3967 * communicator/ssh: Stop trying to discover whether destination is a directory 3968 from uploader. [GH-6124] 3969 * post-processor/vagrant: Large VMDKs should no longer show a 0-byte size on OS 3970 X. [GH-6084] 3971 * post-processor/vsphere: Fix encoding of spaces in passwords for upload. 3972 [GH-6110] 3973 * provisioner/ansible: Pass the inventory_directory configuration option to 3974 ansible -i when it is set. [GH-6065] 3975 * provisioner/powershell: fix bug with SSH communicator + cygwin. [GH-6160] 3976 * provisioner/powershell: The {{.WinRMPassword}} template variable now works 3977 with parallel builders. [GH-6144] 3978 3979 ### IMPROVEMENTS: 3980 3981 * builder/alicloud: Update aliyungo common package. [GH-6157] 3982 * builder/amazon: Expose more source ami data as template variables. [GH-6088] 3983 * builder/amazon: Setting `force_delete` will only delete AMIs owned by the 3984 user. This should prevent failures where we try to delete an AMI with a 3985 matching name, but owned by someone else. [GH-6111] 3986 * builder/azure: Users of Powershell provisioner may access the randomly- 3987 generated winrm password using the template variable {{.WinRMPassword}}. 3988 [GH-6113] 3989 * builder/google: Users of Powershell provisioner may access the randomly- 3990 generated winrm password using the template variable {{.WinRMPassword}}. 3991 [GH-6141] 3992 * builder/hyper-v: User can now configure hyper-v disk block size. [GH-5941] 3993 * builder/openstack: Add configuration option for `instance_name`. [GH-6041] 3994 * builder/oracle-classic: Better validation of destination image name. 3995 [GH-6089] 3996 * builder/oracle-oci: New config options for user data and user data file. 3997 [GH-6079] 3998 * builder/oracle-oci: use the official OCI sdk instead of handcrafted client. 3999 [GH-6142] 4000 * builder/triton: Add support to Skip TLS Verification of Triton Certificate. 4001 [GH-6039] 4002 * provisioner/ansible: Ansible users may provide a custom inventory file. 4003 [GH-6107] 4004 * provisioner/file: New `generated` tag allows users to upload files created 4005 during Packer run. [GH-3891] 4006 4007 ## 1.2.2 (March 26, 2018) 4008 4009 ### BUG FIXES: 4010 4011 * builder/amazon: Fix AWS credential defaulting [GH-6019] 4012 * builder/LXC: make sleep timeout easily configurable [GH-6038] 4013 * builder/virtualbox: Correctly send multi-byte scancodes when typing boot 4014 command. [GH-5987] 4015 * builder/virtualbox: Special boot-commands no longer overwrite previous 4016 commands [GH-6002] 4017 * builder/vmware: Default to disabling XHCI bus for USB on the vmware-iso 4018 builder. [GH-5975] 4019 * builder/vmware: Handle multiple devices per VMware network type [GH-5985] 4020 * communicator/ssh: Handle errors uploading files more gracefully [GH-6033] 4021 * provisioner/powershell: Fix environment variable file escaping. [GH-5973] 4022 4023 4024 ### IMPROVEMENTS: 4025 4026 * builder/amazon: Added new region `cn-northwest-1`. [GH-5960] 4027 * builder/amazon: Users may now access the amazon-generated administrator 4028 password [GH-5998] 4029 * builder/azure: Add support concurrent deployments in the same resource group. 4030 [GH-6005] 4031 * builder/azure: Add support for building with additional disks. [GH-5944] 4032 * builder/azure: Add support for marketplace plan information. [GH-5970] 4033 * builder/azure: Make all command output human readable. [GH-5967] 4034 * builder/azure: Respect `-force` for managed image deletion. [GH-6003] 4035 * builder/google: Add option to specify a service account, or to run without 4036 one. [GH-5991] [GH-5928] 4037 * builder/oracle-oci: Add new "use_private_ip" option. [GH-5893] 4038 * post-processor/vagrant: Add LXC support. [GH-5980] 4039 * provisioner/salt-masterless: Added Windows support. [GH-5702] 4040 * provisioner/salt: Add windows support to salt provisioner [GH-6012] [GH-6012] 4041 4042 4043 ## 1.2.1 (February 23, 2018) 4044 4045 ### BUG FIXES: 4046 4047 * builder/amazon: Fix authorization using assume role. [GH-5914] 4048 * builder/hyper-v: Fix command collisions with VMWare PowerCLI. [GH-5861] 4049 * builder/vmware-iso: Fix panic when building on esx5 remotes. [GH-5931] 4050 * builder/vmware: Fix issue detecting host IP. [GH-5898] [GH-5900] 4051 * provisioner/ansible-local: Fix conflicting escaping schemes for vars provided 4052 via `--extra-vars`. [GH-5888] 4053 4054 ### IMPROVEMENTS: 4055 4056 * builder/oracle-classic: Add `snapshot_timeout` option to control how long we 4057 wait for the snapshot to be created. [GH-5932] 4058 * builder/oracle-classic: Add support for WinRM connections. [GH-5929] 4059 4060 4061 ## 1.2.0 (February 9, 2018) 4062 4063 ### BACKWARDS INCOMPATIBILITIES: 4064 4065 * 3rd party plugins: We have moved internal dependencies, meaning your 3rd 4066 party plugins will no longer compile (however existing builds will still 4067 work fine); the work to fix them is minimal and documented in GH-5810. 4068 [GH-5810] 4069 * builder/amazon: The `ssh_private_ip` option has been removed. Instead, please 4070 use `"ssh_interface": "private"`. A fixer has been written for this, which 4071 can be invoked with `packer fix`. [GH-5876] 4072 * builder/openstack: Extension support has been removed. To use OpenStack 4073 builder with the OpenStack Newton (Oct 2016) or earlier, we recommend you 4074 use Packer v1.1.2 or earlier version. 4075 * core: Affects Windows guests: User variables containing Powershell special 4076 characters no longer need to be escaped. [GH-5376] 4077 * provisioner/file: We've made destination semantics more consistent across the 4078 various communicators. In general, if the destination is a directory, files 4079 will be uploaded into the directory instead of failing. This mirrors the 4080 behavior of `rsync`. There's a chance some users might be depending on the 4081 previous buggy behavior, so it's worth ensuring your configuration is 4082 correct. [GH-5426] 4083 * provisioner/powershell: Regression from v1.1.1 forcing extra escaping of 4084 environment variables in the non-elevated provisioner has been fixed. 4085 [GH-5515] [GH-5872] 4086 4087 ### IMPROVEMENTS: 4088 4089 * **New builder:** `ncloud` for building server images using the NAVER Cloud 4090 Platform. [GH-5791] 4091 * **New builder:** `oci-classic` for building new custom images for use with 4092 Oracle Cloud Infrastructure Classic Compute. [GH-5819] 4093 * **New builder:** `scaleway` - The Scaleway Packer builder is able to create 4094 new images for use with Scaleway BareMetal and Virtual cloud server. 4095 [GH-4770] 4096 * builder/amazon: Add `kms_key_id` option to block device mappings. [GH-5774] 4097 * builder/amazon: Add `skip_metadata_api_check` option to skip consulting the 4098 amazon metadata service. [GH-5764] 4099 * builder/amazon: Add Paris region (eu-west-3) [GH-5718] 4100 * builder/amazon: Give better error messages if we have trouble during 4101 authentication. [GH-5764] 4102 * builder/amazon: Remove Session Token (STS) from being shown in the log. 4103 [GH-5665] 4104 * builder/amazon: Replace `InstanceStatusOK` check with `InstanceReady`. This 4105 reduces build times universally while still working for all instance types. 4106 [GH-5678] 4107 * builder/amazon: Report which authentication provider we're using. [GH-5764] 4108 * builder/amazon: Timeout early if metadata service can't be reached. [GH-5764] 4109 * builder/amazon: Warn during prepare if we didn't get both an access key and a 4110 secret key when we were expecting one. [GH-5762] 4111 * builder/azure: Add validation for incorrect VHD URLs [GH-5695] 4112 * builder/docker: Remove credentials from being shown in the log. [GH-5666] 4113 * builder/google: Support specifying licenses for images. [GH-5842] 4114 * builder/hyper-v: Allow MAC address specification. [GH-5709] 4115 * builder/hyper-v: New option to use differential disks and Inline disk 4116 creation to improve build time and reduce disk usage [GH-5631] 4117 * builder/qemu: Add Intel HAXM support to QEMU builder [GH-5738] 4118 * builder/triton: Triton RBAC is now supported. [GH-5741] 4119 * builder/triton: Updated triton-go dependencies, allowing better error 4120 handling. [GH-5795] 4121 * builder/vmware-iso: Add support for cdrom and disk adapter types. [GH-3417] 4122 * builder/vmware-iso: Add support for setting network type and network adapter 4123 type. [GH-3417] 4124 * builder/vmware-iso: Add support for usb/serial/parallel ports. [GH-3417] 4125 * builder/vmware-iso: Add support for virtual soundcards. [GH-3417] 4126 * builder/vmware-iso: More reliably retrieve the guest networking 4127 configuration. [GH-3417] 4128 * builder/vmware: Add support for "super" key in `boot_command`. [GH-5681] 4129 * communicator/ssh: Add session-level keep-alives [GH-5830] 4130 * communicator/ssh: Detect dead connections. [GH-4709] 4131 * core: Gracefully clean up resources on SIGTERM. [GH-5318] 4132 * core: Improved error logging in floppy file handling. [GH-5802] 4133 * core: Improved support for downloading and validating a uri containing a 4134 Windows UNC path or a relative file:// scheme. [GH-2906] 4135 * post-processor/amazon-import: Allow user to specify role name in amazon- 4136 import [GH-5817] 4137 * post-processor/docker: Remove credentials from being shown in the log. 4138 [GH-5666] 4139 * post-processor/google-export: Synchronize credential semantics with the 4140 Google builder. [GH-4148] 4141 * post-processor/vagrant: Add vagrant post-processor support for Google 4142 [GH-5732] 4143 * post-processor/vsphere-template: Now accepts artifacts from the vSphere post- 4144 processor. [GH-5380] 4145 * provisioner/amazon: Use Amazon SDK's InstanceRunning waiter instead of 4146 InstanceStatusOK waiter [GH-5773] 4147 * provisioner/ansible: Improve user retrieval. [GH-5758] 4148 * provisioner/chef: Add support for 'trusted_certs_dir' chef-client 4149 configuration option [GH-5790] 4150 * provisioner/chef: Added Policyfile support to chef-client provisioner. 4151 [GH-5831] 4152 4153 ### BUG FIXES: 4154 4155 * builder/alicloud-ecs: Attach keypair before starting instance in alicloud 4156 builder [GH-5739] 4157 * builder/amazon: Fix tagging support when building in us-gov/china. [GH-5841] 4158 * builder/amazon: NewSession now inherits MaxRetries and other settings. 4159 [GH-5719] 4160 * builder/virtualbox: Fix interpolation ordering so that edge cases around 4161 guest_additions_url are handled correctly [GH-5757] 4162 * builder/virtualbox: Fix regression affecting users running Packer on a 4163 Windows host that kept Packer from finding Virtualbox guest additions if 4164 Packer ran on a different drive from the one where the guest additions were 4165 stored. [GH-5761] 4166 * builder/vmware: Fix case where artifacts might not be cleaned up correctly. 4167 [GH-5835] 4168 * builder/vmware: Fixed file handle leak that may have caused race conditions 4169 in vmware builder [GH-5767] 4170 * communicator/ssh: Add deadline to SSH connection to prevent Packer hangs 4171 after script provisioner reboots vm [GH-4684] 4172 * communicator/winrm: Fix issue copying empty directories. [GH-5763] 4173 * provisioner/ansible-local: Fix support for `--extra-vars` in 4174 `extra_arguments`. [GH-5703] 4175 * provisioner/ansible-remote: Fixes an error where Packer's private key can be 4176 overridden by inherited `ansible_ssh_private_key` options. [GH-5869] 4177 * provisioner/ansible: The "default extra variables" feature added in Packer 4178 v1.0.1 caused the ansible-local provisioner to fail when an --extra-vars 4179 argument was specified in the extra_arguments configuration option; this 4180 has been fixed. [GH-5335] 4181 * provisioner/powershell: Regression from v1.1.1 forcing extra escaping of 4182 environment variables in the non-elevated provisioner has been fixed. 4183 [GH-5515] [GH-5872] 4184 4185 4186 ## 1.1.3 (December 8, 2017) 4187 4188 ### IMPROVEMENTS: 4189 4190 * builder/alicloud-ecs: Add security token support and set TLS handshake 4191 timeout through environment variable. [GH-5641] 4192 * builder/amazon: Add a new parameter `ssh_interface`. Valid values include 4193 `public_ip`, `private_ip`, `public_dns` or `private_dns`. [GH-5630] 4194 * builder/azure: Add sanity checks for resource group names [GH-5599] 4195 * builder/azure: Allow users to specify an existing resource group to use, 4196 instead of creating a new one for every run. [GH-5548] 4197 * builder/hyper-v: Add support for differencing disk. [GH-5458] 4198 * builder/vmware-iso: Improve logging of network errors. [GH-5456] 4199 * core: Add new `packer_version` template engine. [GH-5619] 4200 * core: Improve logic checking for downloaded ISOs in case where user has 4201 provided more than one URL in `iso_urls` [GH-5632] 4202 * provisioner/ansible-local: Add ability to clean staging directory. [GH-5618] 4203 4204 ### BUG FIXES: 4205 4206 * builder/amazon: Allow `region` to appear in `ami_regions`. [GH-5660] 4207 * builder/amazon: `C5` instance types now build more reliably. [GH-5678] 4208 * builder/amazon: Correctly set AWS region if given in template along with a 4209 profile. [GH-5676] 4210 * builder/amazon: Prevent `sriov_support` and `ena_support` from being used 4211 with spot instances, which would cause a build failure. [GH-5679] 4212 * builder/hyper-v: Fix interpolation context for user variables in 4213 `boot_command` [GH-5547] 4214 * builder/qemu: Set default disk size to 40960 MB to prevent boot failures. 4215 [GH-5588] 4216 * builder/vmware: Correctly detect Windows boot on vmware workstation. 4217 [GH-5672] 4218 * core: Fix windows path regression when downloading ISOs. [GH-5591] 4219 * provisioner/chef: Fix chef installs on Windows. [GH-5649] 4220 4221 ## 1.1.2 (November 15, 2017) 4222 4223 ### IMPROVEMENTS: 4224 4225 * builder/amazon: Correctly deregister AMIs when `force_deregister` is set. 4226 [GH-5525] 4227 * builder/digitalocean: Add `ipv6` option to enable on droplet. [GH-5534] 4228 * builder/docker: Add `aws_profile` option to control the aws profile for ECR. 4229 [GH-5470] 4230 * builder/google: Add `clean_image_name` template engine. [GH-5463] 4231 * builder/google: Allow selecting container optimized images.Β [GH-5576] 4232 * builder/google: Interpolate network and subnetwork values, rather than 4233 relying on an API call that packer may not have permission for. [GH-5343] 4234 * builder/hyper-v: Add `disk_additional_size` option to allow for up to 64 4235 additional disks. [GH-5491] 4236 * builder/hyper-v: Also disable automatic checkpoints for gen 2 VMs. [GH-5517] 4237 * builder/lxc: Add new `publish_properties` field to set image properties. 4238 [GH-5475] 4239 * builder/lxc: Add three new configuration option categories to LXC builder: 4240 `create_options`, `start_options`, and `attach_options`. [GH-5530] 4241 * builder/triton: Add `source_machine_image_filter` option to select an image 4242 ID based on a variety of parameters. [GH-5538] 4243 * builder/virtualbox-ovf: Error during prepare if source path doesn't exist. 4244 [GH-5573] 4245 * builder/virtualbox-ovf: Retry while removing VM to solve for transient 4246 errors. [GH-5512] 4247 * communicator/ssh: Add socks 5 proxy support. [GH-5439] 4248 * core/iso_config: Support relative paths in checksum file. [GH-5578] 4249 * core: Rewrite vagrantfile code to make cross-platform development easier. 4250 [GH-5539] 4251 * post-processor/docker-push: Add `aws_profile` option to control the aws 4252 profile for ECR. [GH-5470] 4253 * post-processor/vsphere: Properly capture `ovftool` output. [GH-5499] 4254 4255 ### BUG FIXES: 4256 4257 * builder/amazon: Add a delay option to security group waiter. [GH-5536] 4258 * builder/amazon: Fix regressions relating to spot instances and EBS volumes. 4259 [GH-5495] 4260 * builder/amazon: Set region from profile, if profile is set, rather than being 4261 overridden by metadata. [GH-5562] 4262 * builder/docker: Remove `login_email`, which no longer exists in the docker 4263 client. [GH-5511] 4264 * builder/hyperv: Fix admin check that was causing powershell failures. 4265 [GH-5510] 4266 * builder/oracle: Defaulting of OCI builder region will first check the packer 4267 template and the OCI config file. [GH-5407] 4268 * builder/triton: Fix a bug where partially created images can be reported as 4269 complete. [GH-5566] 4270 * post-processor/vsphere: Use the vm disk path information to re-create the vmx 4271 datastore path. [GH-5567] 4272 * provisioner/windows-restart: Wait for restart no longer endlessly loops if 4273 user specifies a custom restart check command. [GH-5563] 4274 4275 ## 1.1.1 (October 13, 2017) 4276 4277 ### IMPROVEMENTS: 4278 4279 * **New builder:** `hyperv-vmcx` for building images from existing VMs. 4280 [GH-4944] [GH-5444] 4281 * builder/amazon-instance: Add `.Token` as a variable in the 4282 `BundleUploadCommand` template. [GH-5288] 4283 * builder/amazon: Add `temporary_security_group_source_cidr` option to control 4284 ingress to source instances. [GH-5384] 4285 * builder/amazon: Output AMI Name during prevalidation. [GH-5389] 4286 * builder/amazon: Support template functions in tag keys. [GH-5381] 4287 * builder/amazon: Tag volumes on creation instead of as a separate step. 4288 [GH-5417] 4289 * builder/docker: Add option to set `--user` flag when running `exec`. 4290 [GH-5406] 4291 * builder/docker: Set file owner to container user when uploading. Can be 4292 disabled by setting `fix_upload_owner` to `false`. [GH-5422] 4293 * builder/googlecompute: Support setting labels on the resulting image. 4294 [GH-5356] 4295 * builder/hyper-v: Add `vhd_temp_path` option to control where the VHD resides 4296 while it's being provisioned. [GH-5206] 4297 * builder/hyper-v: Allow vhd or vhdx source images instead of just ISO. 4298 [GH-4944] [GH-5444] 4299 * builder/hyper-v: Disable automatic checkpoints. [GH-5374] 4300 * builder/virtualbox-ovf: Add `keep_registered` option. [GH-5336] 4301 * builder/vmware: Add `disable_vnc` option to prevent VNC connections from 4302 being made. [GH-5436] 4303 * core: Releases will now be built for ppc64le. 4304 * post-processor/vagrant: When building from a builder/hyper-v artifact, link 4305 instead of copy when available. [GH-5207] 4306 4307 4308 ### BUG FIXES: 4309 4310 * builder/cloudstack: Fix panic if build is aborted. [GH-5388] 4311 * builder/hyper-v: Respect `enable_dynamic_memory` flag. [GH-5363] 4312 * builder/puppet-masterless: Make sure directories created with sudo are 4313 writable by the packer user. [GH-5351] 4314 * provisioner/chef-solo: Fix issue installing chef-solo on Windows. [GH-5357] 4315 * provisioner/powershell: Fix issue setting environment variables by writing 4316 them to a file, instead of the command line. [GH-5345] 4317 * provisioner/powershell: Fix issue where powershell scripts could hang. 4318 [GH-5082] 4319 * provisioner/powershell: Fix Powershell progress stream leak to stderr for 4320 normal and elevated commands. [GH-5365] 4321 * provisioner/puppet-masterless: Fix bug where `puppet_bin_dir` wasn't being 4322 respected. [GH-5340] 4323 * provisioner/puppet: Fix setting facter vars on Windows. [GH-5341] 4324 4325 4326 ## 1.1.0 (September 12, 2017) 4327 4328 ### IMPROVEMENTS: 4329 4330 * builder/alicloud: Update alicloud go sdk and enable multi sites support for 4331 alicloud [GH-5219] 4332 * builder/amazon: Upgrade aws-sdk-go to 1.10.14, add tags at instance run time. 4333 [GH-5196] 4334 * builder/azure: Add object_id to windows_custom_image.json. [GH-5285] 4335 * builder/azure: Add support for storage account for managed images. [GH-5244] 4336 * builder/azure: Update pkcs12 package. [GH-5301] 4337 * builder/cloudstack: Add support for Security Groups. [GH-5175] 4338 * builder/docker: Uploading files and directories now use docker cp. [GH-5273] 4339 [GH-5333] 4340 * builder/googlecompute: Add `labels` option for labeling launched instances. 4341 [GH-5308] 4342 * builder/googlecompute: Add support for accelerator api. [GH-5137] 4343 * builder/profitbricks: added support for Cloud API v4. [GH-5233] 4344 * builder/vmware-esxi: Remote builds now respect `output_directory` [GH-4592] 4345 * builder/vmware: Set artifact ID to `VMName`. [GH-5187] 4346 * core: Build solaris binary by default. [GH-5268] [GH-5248] 4347 * core: Remove LGPL dependencies. [GH-5262] 4348 * provisioner/puppet: Add `guest_os_type` option to add support for Windows. 4349 [GH-5252] 4350 * provisioner/salt-masterless: Also use sudo to clean up if we used sudo to 4351 install. [GH-5240] 4352 4353 ### BACKWARDS INCOMPATIBILITIES: 4354 4355 * builder/amazon: Changes way that AMI artifacts are printed out after build, 4356 aligning them to builder. Could affect output parsing. [GH-5281] 4357 * builder/amazon: Split `enhanced_networking` into `sriov_support` and 4358 `ena_support` to support finer grained control. Use `packer fix 4359 <template.json>` to automatically update your template to use `ena_support` 4360 where previously there was only `enhanced_networking`. Make sure to also 4361 add `sriov_support` if you need that feature, and to ensure `ena_support` 4362 is what you intended to be in your template. [GH-5284] 4363 * builder/cloudstack: Setup temporary SSH keypair; backwards incompatible in 4364 the uncommon case that the source image allowed SSH auth with password but 4365 not with keypair. [GH-5174] 4366 * communicator/ssh: Renamed `ssh_disable_agent` to 4367 `ssh_disable_agent_forwarding`. Need to run fixer on packer configs that 4368 use `ssh_disable_agent`. [GH-5024] 4369 * communicator: Preserve left-sided white-space in remote command output. Make 4370 sure any scripts that parse this output can handle the new whitespace 4371 before upgrading. [GH-5167] 4372 * provisioner/shell: Set default for `ExpectDisconnect` to `false`. If your 4373 script causes the connection to be reset, you should set this to `true` to 4374 prevent errors. [GH-5283] 4375 4376 ### BUG FIXES: 4377 4378 * builder/amazon: `force_deregister` works in all regions, not just original 4379 region. [GH-5250] 4380 * builder/docker: Directory uploads now use the same semantics as the rest of 4381 the communicators. [GH-5333] 4382 * builder/vmware: Fix timestamp in default VMName. [GH-5274] 4383 * builder/winrm: WinRM now waits to make sure commands can run successfully 4384 before considering itself connected. [GH-5300] 4385 * core: Fix issue where some builders wouldn't respect `-on-error` behavior. 4386 [GH-5297] 4387 * provisioner/windows-restart: The first powershell provisioner after a restart 4388 now works. [GH-5272] 4389 4390 ### FEATURES: 4391 4392 * **New builder**: Oracle Cloud Infrastructure (OCI) builder for creating 4393 custom images. [GH-4554] 4394 * **New builder:** `lxc` for building lxc images. [GH-3523] 4395 * **New builder:** `lxd` for building lxd images. [GH-3625] 4396 * **New post-processor**: vSphere Template post-processor to be used with 4397 vmware-iso builder enabling user to mark a VM as a template. [GH-5114] 4398 4399 ## 1.0.4 (August 11, 2017) 4400 4401 ### IMPROVEMENTS: 4402 4403 * builder/alicloud: Increase polling timeout. [GH-5148] 4404 * builder/azure: Add `private_virtual_network_with_public_ip` option to 4405 optionally obtain a public IP. [GH-5222] 4406 * builder/googlecompute: use a more portable method of obtaining zone. 4407 [GH-5192] 4408 * builder/hyperv: Properly interpolate user variables in template. [GH-5184] 4409 * builder/parallels: Remove soon to be removed --vmtype flag in createvm. 4410 [GH-5172] 4411 * contrib: add json files to zsh completion. [GH-5195] 4412 4413 ### BUG FIXES: 4414 4415 * builder/amazon: Don't delete snapshots we didn't create. [GH-5211] 4416 * builder/amazon: fix builds when using the null communicator. [GH-5217] 4417 * builder/docker: Correctly handle case when uploading an empty directory. 4418 [GH-5234] 4419 * command/push: Don't push variables if they are unspecified. Reverts to 4420 behavior in 1.0.1. [GH-5235] 4421 * command/push: fix handling of symlinks. [GH-5226] 4422 * core: Strip query parameters from ISO URLs when checking against a checksum 4423 file. [GH-5181] 4424 * provisioner/ansible-remote: Fix issue where packer could hang communicating 4425 with ansible-remote. [GH-5146] 4426 4427 ## 1.0.3 (July 17, 2017) 4428 4429 ### IMPROVEMENTS: 4430 * builder/azure: Update to latest Azure SDK, enabling support for managed 4431 disks. [GH-4511] 4432 * builder/cloudstack: Add default cidr_list [ 0.0.0.0/0 ]. [GH-5125] 4433 * builder/cloudstack: Add support for ssh_agent_auth. [GH-5130] 4434 * builder/cloudstack: Add support for using a HTTP server. [GH-5017] 4435 * builder/cloudstack: Allow reading api_url, api_key, and secret_key from env 4436 vars. [GH-5124] 4437 * builder/cloudstack: Make expunge optional and improve logging output. 4438 [GH-5099] 4439 * builder/googlecompute: Allow using URL's for network and subnetwork. 4440 [GH-5035] 4441 * builder/hyperv: Add support for floppy_dirs with hyperv-iso builder. 4442 * builder/hyperv: Add support for override of system %temp% path. 4443 * core: Experimental Android ARM support. [GH-5111] 4444 * post-processor/atlas: Disallow packer push of vagrant.box artifacts to atlas. 4445 [GH-4780] 4446 * postprocessor/atlas: Disallow pushing vagrant.box artifacts now that Vagrant 4447 cloud is live. [GH-4780] 4448 4449 ### BUG FIXES: 4450 * builder/amazon: Fix panic that happens if ami_block_device_mappings is empty. 4451 [GH-5059] 4452 * builder/azure: Write private SSH to file in debug mode. [GH-5070] [GH-5074] 4453 * builder/cloudstack: Properly report back errors. [GH-5103] [GH-5123] 4454 * builder/docker: Fix windows filepath in docker-toolbox call [GH-4887] 4455 * builder/docker: Fix windows filepath in docker-toolbox call. [GH-4887] 4456 * builder/hyperv: Use SID to verify membership in Admin group, fixing for non- 4457 english users. [GH-5022] 4458 * builder/hyperv: Verify membership in the group Hyper-V Administrators by SID 4459 not name. [GH-5022] 4460 * builder/openstack: Update gophercloud version, fixing builds > 1 hr long. 4461 [GH-5046] 4462 * builder/parallels: Skip missing paths when looking for unnecessary files. 4463 [GH-5058] 4464 * builder/vmware-esxi: Fix VNC port discovery default timeout. [GH-5051] 4465 * communicator/ssh: Add ProvisionerTypes to communicator tests, resolving panic 4466 [GH-5116] 4467 * communicator/ssh: Resolve race condition that sometimes truncates ssh 4468 provisioner stdout [GH-4719] 4469 * post-processor/checksum: Fix interpolation of "output". [GH-5112] 4470 * push: Push vars in packer config, not just those set from command line and in 4471 var-file. [GH-5101] 4472 4473 ## 1.0.2 (June 21, 2017) 4474 4475 ### BUG FIXES: 4476 * communicator/ssh: Fix truncated stdout from remote ssh provisioner. [GH-5050] 4477 * builder/amazon: Fix bugs related to stop instance command. [GH-4719] 4478 * communicator/ssh: Fix ssh connection errors. [GH-5038] 4479 * core: Remove logging that shouldn't be there when running commands. [GH-5042] 4480 * provisioner/shell: Fix bug where scripts were being run under `sh`. [GH-5043] 4481 4482 ### IMPROVEMENTS: 4483 4484 * provisioner/windows-restart: make it clear that timeouts come from the 4485 provisioner, not winrm. [GH-5040] 4486 4487 ## 1.0.1 (June 19, 2017) 4488 4489 ### IMPROVEMENTS: 4490 4491 * builder/amazon: Allow amis to be copied to other regions, encrypted with 4492 custom KMS keys. [GH-4948] 4493 * builder/amazon: Allow configuration of api endpoint to support api-compatible 4494 cloud providers. [GH-4896] 4495 * builder/amazon: Fix regex used for ami name validation [GH-4902] 4496 * builder/amazon: Look up vpc from subnet id if no vpc was specified. [GH-4879] 4497 * builder/amazon: Print temporary security group name to the UI. [GH-4997] 4498 * builder/amazon: Support Assume Role with MFA and ECS Task Roles. Also updates 4499 to a newer version of aws-sdk-go. [GH-4996] 4500 * builder/amazon: Use retry logic when creating instance tags. [GH-4876] 4501 * builder/amazon: Validate ami name. [GH-4762] 4502 * builder/azure: Add build output to artifact. [GH-4953] 4503 * builder/azure: Use disk URI as artifact ID. [GH-4981] 4504 * builder/digitalocean: Added support for monitoring. [GH-4782] 4505 * builder/digitalocean: Support for copying snapshot to other regions. 4506 [GH-4893] 4507 * builder/hyper-v: Remove the check for administrator rights when sending key 4508 strokes to Hyper-V. [GH-4687] # builder/openstack: Fix private key error 4509 message to match documentation [GH-4898] 4510 * builder/null: Support SSH agent auth [GH-4956] 4511 * builder/openstack: Add ssh agent support. [GH-4655] 4512 * builder/openstack: Support client x509 certificates. [GH-4921] 4513 * builder/parallels-iso: Configuration of disk type, plain or expanding. 4514 [GH-4621] 4515 * builder/triton: An SSH agent can be used to authenticate requests, making 4516 `triton_key_material` optional. [GH-4838] 4517 * builder/triton: If no source machine networks are specified, instances are 4518 started on the default public and internal networks. [GH-4838] 4519 * builder/virtualbox: Add sata port count configuration option. [GH-4699] 4520 * builder/virtualbox: Don't add port forwarding when using "none" communicator. 4521 [GH-4960] 4522 * builder/vmware: Add option to remove interfaces from the vmx. [GH-4927] 4523 * builder/vmware: Properly remove mounted CDs on OS X. [GH-4810] 4524 * builder/vmware: VNC probe timeout is configurable. [GH-4919] 4525 * command/push: add `-sensitive` flag to mark pushed vars are sensitive. 4526 [GH-4970] 4527 * command/push: Vagrant support in Terraform Enterprise is deprecated. 4528 [GH-4950] 4529 * communicator/ssh: Add ssh agent support for bastion connections. [GH-4940] 4530 * communicator/winrm: Add NTLM authentication support. [GH-4979] 4531 * communicator/winrm: Add support for file downloads. [GH-4748] 4532 * core: add telemetry for better product support. [GH-5015] 4533 * core: Build binaries for arm64 [GH-4892] 4534 * post-processor/amazon-import: Add support for `license_type`. [GH-4634] 4535 * post-processor/vagrant-cloud: Get vagrant cloud token from environment. 4536 [GH-4982] 4537 * provisioner/ansible-local: Add extra-vars `packer_build_name`, 4538 `packer_builder_type`, and `packer_http_addr`. [GH-4821] 4539 * provisioner/ansible: Add `inventory_directory` option to control where to 4540 place the generated inventory file. [GH-4760] 4541 * provisioner/ansible: Add `skip_version_check` flag for when ansible will be 4542 installed from a prior provisioner. [GH-4983] 4543 * provisioner/ansible: Add extra-vars `packer_build_name` and 4544 `packer_builder_type`. [GH-4821] 4545 * provisioner/chef-solo: Add option to select Chef version. [GH-4791] 4546 * provisioner/salt: Add salt bin directory configuration. [GH-5009] 4547 * provisioner/salt: Add support for grains. [GH-4961] 4548 * provisioner/shell: Use `env` to set environment variables to support freebsd 4549 out of the box. [GH-4909] 4550 * website/docs: Clarify language, improve formatting. [GH-4866] 4551 * website/docs: Update docker metadata fields that can be changed. [GH-4867] 4552 4553 4554 ### BUG FIXES: 4555 4556 * builder/amazon-ebssurrogate: Use ami device settings when creating the AMI. 4557 [GH-4972] 4558 * builder/amazon: don't try to delete extra volumes during clean up. [GH-4930] 4559 * builder/amazon: fix `force_delete_snapshot` when the launch instance has 4560 extra volumes. [GH-4931] 4561 * builder/amazon: Only delete temporary key if we created one. [GH-4850] 4562 * builder/azure: Replace calls to panic with error returns. [GH-4846] 4563 * communicator/winrm: Use KeepAlive to keep long-running connections open. 4564 [GH-4952] 4565 * core: Correctly reject config files which have junk after valid json. 4566 [GH-4906] 4567 * post-processor/checksum: fix crash when invalid checksum is used. [GH-4812] 4568 * post-processor/vagrant-cloud: don't read files to upload in to memory first. 4569 [GH-5005] 4570 * post-processor/vagrant-cloud: only upload once under normal conditions. 4571 [GH-5008] 4572 * provisioner/ansible-local: Correctly set the default staging directory under 4573 Windows. [GH-4792] 4574 4575 ### FEATURES: 4576 4577 * **New builder:** `alicloud-ecs` for building Alicloud ECS images. [GH-4619] 4578 4579 4580 ## 1.0.0 (April 4, 2017) 4581 4582 ### BUG FIXES: 4583 4584 * builder/amazon: Fix b/c issue by reporting again the tags we create. 4585 [GH-4704] 4586 * builder/amazon: Fix crash in `step_region_copy`. [GH-4642] 4587 * builder/googlecompute: Correct values for `on_host_maintenance`. [GH-4643] 4588 * builder/googlecompute: Use "default" service account. [GH-4749] 4589 * builder/hyper-v: Don't wait for shutdown_command to return. [GH-4691] 4590 * builder/virtualbox: fix `none` communicator by allowing skipping upload of 4591 version file. [GH-4678] 4592 * builder/virtualbox: retry removing floppy controller. [GH-4705] 4593 * communicator/ssh: don't return error if we can't close connection. [GH-4741] 4594 * communicator/ssh: fix nil pointer error. [GH-4690] 4595 * core: fix version number 4596 * core: Invoking packer `--help` or `--version` now exits with status 0. 4597 [GH-4723] 4598 * core: show correct step name when debugging. [GH-4672] 4599 * communicator/winrm: Directory uploads behave more like scp. [GH-4438] 4600 4601 ### IMPROVEMENTS: 4602 4603 * builder/amazon-chroot: Ability to give an empty list in `copy_files` to 4604 prevent the default `/etc/resolv.conf` file from being copied. If 4605 `copy_files` isn't given at all, the default behavior remains. [GH-4708] 4606 * builder/amazon: set force_deregister to true on -force. [GH-4649] 4607 * builder/amazon: validate ssh key name/file. [GH-4665] 4608 * builder/ansible: Clearer error message when we have problems getting the 4609 ansible version. [GH-4694] 4610 * builder/hyper-v: validate output dir in step, not in config. [GH-4645] 4611 * More diligently try to complete azure-setup.sh. [GH-4752] 4612 * website: fix display on ios devices. [GH-4618] 4613 4614 ## 0.12.3 (March 1, 2017) 4615 4616 ### BACKWARDS INCOMPATIBILITIES: 4617 4618 * provisioner/ansible: by default, the staging dir will be randomized. [GH-4472] 4619 4620 ### FEATURES: 4621 4622 * **New builder:** `ebs-surrogate` for building AMIs from EBS volumes. [GH-4351] 4623 4624 ### IMPROVEMENTS: 4625 4626 * builder/amazon-chroot: support encrypted boot volume. [GH-4584] 4627 * builder/amazon: Add BuildRegion and SourceAMI template variables. [GH-4399] 4628 * builder/amazon: Change EC2 Windows password timeout to 20 minutes. [GH-4590] 4629 * builder/amazon: enable ena when `enhanced_networking` is set. [GH-4578] 4630 * builder/azure:: add two new config variables for temp_compute_name and 4631 temp_resource_group_name. [GH-4468] 4632 * builder/docker: create export dir if needed. [GH-4439] 4633 * builder/googlecompute: Add `on_host_maintenance` option. [GH-4544] 4634 * builder/openstack: add reuse_ips option to try to re-use existing IPs. 4635 [GH-4564] 4636 * builder/vmware-esxi: try for longer to connect to vnc port. [GH-4480] 4637 [GH-4610] 4638 * builder/vmware: allow extra options for ovftool. [GH-4536] 4639 * builder/vmware: don't cache ip address so we know if it changes. [GH-4532] 4640 * communicator/docker: preserve file mode. [GH-4443] 4641 * communicator/ssh: Use SSH agent when enabled for bastion step. [GH-4598] 4642 * communicator/winrm: support ProxyFromEnvironment. [GH-4463] 4643 * core: don't show ui color if we're not colorized. [GH-4525] 4644 * core: make VNC links clickable in terminal. [GH-4497] [GH-4498] 4645 * docs: add community page. [GH-4550] 4646 * post-processor/amazon-import: support AMI attributes on import [GH-4216] 4647 * post-processor/docker-import: print stderr on docker import failure. 4648 [GH-4529] 4649 4650 ### BUG FIXES: 4651 4652 * builder/amazon-ebsvolume: Fix interpolation of block_device. [GH-4464] 4653 * builder/amazon: Fix ssh agent authentication. [GH-4597] 4654 * builder/docker: Don't force tag if using a docker version that doesn't 4655 support it. [GH-4560] 4656 * builder/googlecompute: fix bug when creating image from custom image_family. 4657 [GH-4518] 4658 * builder/virtualbox: remove guest additions before saving image. [GH-4496] 4659 * core: always check for an error first when walking a path. [GH-4467] 4660 * core: update crypto/ssh lib to fix large file uploads. [GH-4546] 4661 * provisioner/chef-client: only upload knife config if we're cleaning. 4662 [GH-4534] 4663 4664 ## 0.12.2 (January 20, 2017) 4665 4666 ### FEATURES: 4667 4668 * **New builder:** `triton` for building images for Joyent Triton. [GH-4325] 4669 * **New provisioner:** `converge` for provisioning with converge.sh. [GH-4326] 4670 4671 ### IMPROVEMENTS: 4672 4673 * builder/hyperv-iso: add `iso_target_extension` option. [GH-4294] 4674 * builder/openstack: Add support for instance metadata. [GH-4361] 4675 * builder/openstack: Attempt to use existing floating IPs before allocating a 4676 new one. [GH-4357] 4677 * builder/parallels-iso: add `iso_target_extension` option. [GH-4294] 4678 * builder/qemu: add `iso_target_extension` option. [GH-4294] 4679 * builder/qemu: add `use_default_display` option for osx compatibility. 4680 [GH-4293] 4681 * builder/qemu: Detect input disk image format during copy/convert. [GH-4343] 4682 * builder/virtualbox-iso: add `iso_target_extension` option. [GH-4294] 4683 * builder/virtualbox: add `skip_export` option to skip exporting the VM after 4684 build completes. [GH-4339] 4685 * builder/vmware & builder/qemu: Allow configurable delay between keystrokes 4686 when typing boot command. [GH-4403] 4687 * builder/vmware-iso: add `iso_target_extension` option. [GH-4294] 4688 * builder/vmware-iso: add `skip_export` option to skip exporting the VM after 4689 build completes. [GH-4378] 4690 * builder/vmware: Try to use `ip address` to find host IP. [GH-4411] 4691 * common/step_http\_server: set `PACKER_HTTP_ADDR` env var for accessing http 4692 server from inside builder. [GH-4409] 4693 * provisioner/powershell: Allow equals sign in value of environment variables. 4694 [GH-4328] 4695 * provisioner/puppet-server: Add default facts. [GH-4286] 4696 4697 ### BUG FIXES: 4698 4699 * builder/amazon-chroot: Panic in AMI region copy step. [GH-4341] 4700 * builder/amazon: Crashes when new EBS vols are used. [GH-4308] 4701 * builder/amazon: Fix crash in amazon-instance. [GH-4372] 4702 * builder/amazon: fix run volume tagging [GH-4420] 4703 * builder/amazon: fix when using non-existent security\_group\_id. [GH-4425] 4704 * builder/amazon: Properly error if we don't have the 4705 ec2:DescribeSecurityGroups permission. [GH-4304] 4706 * builder/amazon: Properly wait for security group to exist. [GH-4369] 4707 * builder/docker: Fix crash when performing log in to ECR with an invalid URL. 4708 [GH-4385] 4709 * builder/openstack: fix for finding resource by ID. [GH-4301] 4710 * builder/qemu: Explicitly set WinRMPort for StepConnect. [GH-4321] 4711 * builder/virtualbox: Explicitly set WinRMPort for StepConnect. [GH-4321] 4712 * builder/virtualbox: Pause between each boot command element in -debug. 4713 [GH-4346] 4714 * builder/vmware builder/parallels: Fix hang when shutting down windows in 4715 certain cases. [GH-4436] 4716 * command/push: Don't interpolate variables when pushing. [GH-4389] 4717 * common/step_http_server: make port range inclusive. [GH-4398] 4718 * communicator/winrm: update winrm client, resolving `MaxMemoryPerShellMB` 4719 errors and properly error logging instead of panicking. [GH-4412] [GH-4424] 4720 * provider/windows-shell: Allows equals sign in env var value. [GH-4423] 4721 4722 ## 0.12.1 (December 15, 2016) 4723 4724 ### BACKWARDS INCOMPATIBILITIES: 4725 4726 * `ssh_username` is now required if using communicator ssh. [GH-4172] 4727 * builder/amazon: Change `shutdown_behaviour` to `shutdown_behavior`. Run 4728 "packer fix template.json" to migrate a template. [GH-4285] 4729 * builder/openstack: No long supports the `api_key` option for rackspace. 4730 [GH-4283] 4731 * post-processor/manifest: Changed `filename` field to be `output`, to be more 4732 consistent with other post-processors. `packer fix` will fix this for you. 4733 [GH-4192] 4734 * post-processor/shell-local: Now runs per-builder instead of per-file. The 4735 filename is no longer passed in as an argument to the script, but instead 4736 needs to be gleaned from the manifest post-processor. [GH-4189] 4737 4738 ### FEATURES: 4739 4740 * **New builder:** "Hyper-V" Added new builder for Hyper-V on Windows. 4741 [GH-2576] 4742 * **New builder:** "1&1" Added new builder for [1&1](https://www.1and1.com/). 4743 [GH-4163] 4744 4745 ### IMPROVEMENTS: 4746 4747 * builder/amazon-ebs: Support specifying KMS key for encryption. [GH-4023] 4748 * builder/amazon-ebsvolume: Add artifact output. [GH-4141] 4749 * builder/amazon: Add `snapshot_tag` overrides. [GH-4015] 4750 * builder/amazon: Added new region London - eu-west-2. [GH-4284] 4751 * builder/amazon: Added ca-central-1 to list of known aws regions. [GH-4274] 4752 * builder/amazon: Adds `force_delete_snapshot` flag to also cleanup snapshots 4753 if we're removing a preexisting image, as with `force_deregister_image`. 4754 [GH-4223] 4755 * builder/amazon: Support `snapshot_users` and `snapshot_groups` for sharing 4756 ebs snapshots. [GH-4243] 4757 * builder/cloudstack: Support reusing an already associated public IP. 4758 [GH-4149] 4759 * builder/docker: Introduce docker commit changes, author, and message. 4760 [GH-4202] 4761 * builder/googlecompute: Support `source_image_family`. [GH-4162] 4762 * builder/googlecompute: enable support for Google Compute XPN. [GH-4288] 4763 * builder/openstack: Added `image_members` to add new members to image after 4764 it's created. [GH-4283] 4765 * builder/openstack: Added `image_visibility` field to specify visibility of 4766 created image. [GH-4283] 4767 * builder/openstack: Automatically reauth as needed. [GH-4262] 4768 * builder/virtualbox-ovf: Can now give a URL to an ova file. [GH-3982] 4769 * communicator/ssh: adds ability to download download directories and 4770 wildcards, fix destination file mode (not hardcoded anymore). [GH-4210] 4771 * post-processor/shell-local: support spaces in script path. [GH-4144] 4772 * provisioner/ansible: Allow `winrm` communicator. [GH-4209] 4773 * provisioner/salt: Bootstrap fallback on wget if curl failed. [GH-4244] 4774 4775 ### BUG FIXES: 4776 4777 * builder/amazon: Correctly assign key from `ssh_keypair_name` to source 4778 instance. [GH-4222] 4779 * builder/amazon: Fix `source_ami_filter` ignores `owners`. [GH-4235] 4780 * builder/amazon: Fix launching spot instances in EC2 Classic [GH-4204] 4781 * builder/qemu: Fix issue where multiple <waitXX> commands on a single line 4782 in boot_command wouldn't be parsed correctly. [GH-4269] 4783 * core: Unbreak glob patterns in `floppy_files`. [GH-3890] 4784 * post-processor/checksum: cleanup, and fix output to specified file with 4785 more than one artifacts. [GH-4210] 4786 * post-processor/checksum: reset hash after each artifact file. [GH-4210] 4787 * provisioner/file: fix for directory download. [GH-4210] 4788 * provisioner/file: fix issue uploading multiple files to a directory, 4789 mentioned in [GH-4049]. [GH-4210] 4790 * provisioner/shell: Treat disconnects as retryable when running cleanup. If 4791 you have a reboot in your script, we'll now wait until the host is 4792 available before attempting to cleanup the script. [GH-4197] 4793 4794 ## 0.12.0 (November 15, 2016) 4795 4796 ### FEATURES: 4797 4798 * **New builder:** "cloudstack" Can create new templates for use with 4799 CloudStack taking either an ISO or existing template as input. [GH-3909] 4800 * **New builder:** "profitbricks" Builder for creating images in the 4801 ProfitBricks cloud. [GH-3660] 4802 * **New builder:** "amazon-ebsvolume" Can create Amazon EBS volumes which are 4803 preinitialized with a filesystem and data. [GH-4088] 4804 4805 4806 ### IMPROVEMENTS: 4807 4808 * builder/amazon: Allow polling delay override with `AWS_POLL_DELAY_SECONDS`. 4809 [GH-4083] 4810 * builder/amazon: Allow use of local SSH Agent. [GH-4050] 4811 * builder/amazon: Dynamic source AMI [GH-3817] 4812 * builder/amazon: Show AMI ID found when using `source_ami_filter`. [GH-4096] 4813 * builder/googlecompute: Support `ssh_private_key_file` in communicator. 4814 [GH-4101] 4815 * builder/googlecompute: Support custom scopes. [GH-4043] 4816 * command/push: Fix variable pushes to Atlas. Still needs Atlas server to be 4817 updated before the issue will be fixed completely. [GH-4089] 4818 * communicator/ssh: Improved SSH upload performance. [GH-3940] 4819 * contrib/azure-setup.sh: Support for azure-cli 0.10.7. [GH-4133] 4820 * docs: Fix command line variable docs. [GH-4143] 4821 * post-processor/vagrant: Fixed inconsistency between vagrant-libvirt driver 4822 and packer QEMU accelerator. [GH-4104] 4823 * provisioner/ansible: Move info messages to log [GH-4123] 4824 * provisioner/puppet: Add `puppet_bin_dir` option. [GH-4014] 4825 * provisioner/salt: Add `salt_call_args` option. [GH-4158] 4826 4827 ### BUG FIXES: 4828 4829 * builder/amazon: Fixed an error where we wouldn't fail the build even if we 4830 timed out waiting for the temporary security group to become available. 4831 [GH-4099] 4832 * builder/amazon: Properly cleanup temporary key pairs. [GH-4080] 4833 * builder/google: Fix issue where we'd hang waiting for a startup script 4834 which doesn't exist. [GH-4102] 4835 * builder/qemu: Fix keycodes for ctrl, shift and alt keys. [GH-4115] 4836 * builder/vmware: Fix keycodes for ctrl, shift and alt keys. [GH-4115] 4837 * builder/vmware: Fixed build error when shutting down. [GH-4041] 4838 * common/step_create_floppy: Fixed support for 1.44MB floppies on Windows. 4839 [GH-4135] 4840 * post-processor/googlecompute-export: Fixes scopes. [GH-4147] 4841 * provisioner/powershell: Reverted [GH-3371] fixes quoting issue. [GH-4069] 4842 * scripts: Fix build under Windows for go 1.5. [GH-4142] 4843 4844 ## 0.11.0 (October 21, 2016) 4845 4846 ### BACKWARDS INCOMPATIBILITIES: 4847 4848 * VNC and VRDP-like features in VirtualBox, VMware, and QEMU now configurable 4849 but bind to 127.0.0.1 by default to improve security. See the relevant 4850 builder docs for more info. 4851 * Docker builder requires Docker > 1.3 4852 * provisioner/chef-solo: default staging directory renamed to 4853 `packer-chef-solo`. [GH-3971] 4854 4855 ### FEATURES: 4856 4857 * **New Checksum post-processor**: Create a checksum file from your build 4858 artifacts as part of your build. [GH-3492] [GH-3790] 4859 * **New build flag** `-on-error` to allow inspection and keeping artifacts on 4860 builder errors. [GH-3885] 4861 * **New Google Compute Export post-processor**: exports an image from a Packer 4862 googlecompute builder run and uploads it to Google Cloud Storage. 4863 [GH-3760] 4864 * **New Manifest post-processor**: writes metadata about packer's output 4865 artifacts data to a JSON file. [GH-3651] 4866 4867 4868 ### IMPROVEMENTS: 4869 4870 * builder/amazon: Added `disable_stop_instance` option to prevent automatic 4871 shutdown when the build is complete. [GH-3352] 4872 * builder/amazon: Added `shutdown_behavior` option to support `stop` or 4873 `terminate` at the end of the build. [GH-3556] 4874 * builder/amazon: Added `skip_region_validation` option to allow newer or 4875 custom AWS regions. [GH-3598] 4876 * builder/amazon: Added `us-east-2` and `ap-south-1` regions. [GH-4021] 4877 [GH-3663] 4878 * builder/amazon: Support building from scratch with amazon-chroot builder. 4879 [GH-3855] [GH-3895] 4880 * builder/amazon: Support create an AMI with an `encrypt_boot` volume. 4881 [GH-3382] 4882 * builder/azure: Add `os_disk_size_gb`. [GH-3995] 4883 * builder/azure: Add location to setup script. [GH-3803] 4884 * builder/azure: Allow user to set custom data. [GH-3996] 4885 * builder/azure: Made `tenant_id` optional. [GH-3643] 4886 * builder/azure: Now pre-validates `capture_container_name` and 4887 `capture_name_prefix` [GH-3537] 4888 * builder/azure: Removed superfluous polling code for deployments. [GH-3638] 4889 * builder/azure: Support for a user defined VNET. [GH-3683] 4890 * builder/azure: Support for custom images. [GH-3575] 4891 * builder/azure: tag all resources. [GH-3764] 4892 * builder/digitalocean: Added `user_data_file` support. [GH-3933] 4893 * builder/digitalocean: Fixes timeout waiting for snapshot. [GH-3868] 4894 * builder/digitalocean: Use `state_timeout` for unlock and off transitions. 4895 [GH-3444] 4896 * builder/docker: Improved support for Docker pull from Amazon ECR. [GH-3856] 4897 * builder/google: Add `-force` option to delete old image before creating new 4898 one. [GH-3918] 4899 * builder/google: Add image license metadata. [GH-3873] 4900 * builder/google: Added support for `image_family` [GH-3531] 4901 * builder/google: Added support for startup scripts. [GH-3639] 4902 * builder/google: Create passwords for Windows instances. [GH-3932] 4903 * builder/google: Enable to select NVMe images. [GH-3338] 4904 * builder/google: Signal that startup script fished via metadata. [GH-3873] 4905 * builder/google: Use gcloud application default credentials. [GH-3655] 4906 * builder/google: provision VM without external IP address. [GH-3774] 4907 * builder/null: Can now be used with WinRM. [GH-2525] 4908 * builder/openstack: Added support for `ssh_password` instead of generating 4909 ssh keys. [GH-3976] 4910 * builder/parallels: Add support for ctrl, shift and alt keys in 4911 `boot_command`. [GH-3767] 4912 * builder/parallels: Copy directories recursively with `floppy_dirs`. 4913 [GH-2919] 4914 * builder/parallels: Now pauses between `boot_command` entries when running 4915 with `-debug` [GH-3547] 4916 * builder/parallels: Support future versions of Parallels by using the latest 4917 driver. [GH-3673] 4918 * builder/qemu: Add support for ctrl, shift and alt keys in `boot_command`. 4919 [GH-3767] 4920 * builder/qemu: Added `vnc_bind_address` option. [GH-3574] 4921 * builder/qemu: Copy directories recursively with `floppy_dirs`. [GH-2919] 4922 * builder/qemu: Now pauses between `boot_command` entries when running with 4923 `-debug` [GH-3547] 4924 * builder/qemu: Specify disk format when starting qemu. [GH-3888] 4925 * builder/virtualbox-iso: Added `hard_drive_nonrotational` and 4926 `hard_drive_discard` options to enable trim/discard. [GH-4013] 4927 * builder/virtualbox-iso: Added `keep_registered` option to skip cleaning up 4928 the image. [GH-3954] 4929 * builder/virtualbox: Add support for ctrl, shift and alt keys in 4930 `boot_command`. [GH-3767] 4931 * builder/virtualbox: Added `post_shutdown_delay` option to wait after 4932 shutting down to prevent issues removing floppy drive. [GH-3952] 4933 * builder/virtualbox: Added `vrdp_bind_address` option. [GH-3566] 4934 * builder/virtualbox: Copy directories recursively with `floppy_dirs`. 4935 [GH-2919] 4936 * builder/virtualbox: Now pauses between `boot_command` entries when running 4937 with `-debug` [GH-3542] 4938 * builder/vmware-vmx: Added `tools_upload_flavor` and `tools_upload_path` to 4939 docs. 4940 * builder/vmware: Add support for ctrl, shift and alt keys in `boot_command`. 4941 [GH-3767] 4942 * builder/vmware: Added `vnc_bind_address` option. [GH-3565] 4943 * builder/vmware: Adds passwords for VNC. [GH-2325] 4944 * builder/vmware: Copy directories recursively with `floppy_dirs`. [GH-2919] 4945 * builder/vmware: Handle connection to VM with more than one NIC on ESXi 4946 [GH-3347] 4947 * builder/vmware: Now paused between `boot_command` entries when running with 4948 `-debug` [GH-3542] 4949 * core: Supress plugin discovery from plugins. [GH-4002] 4950 * core: Test floppy disk files actually exist. [GH-3756] 4951 * core: setting `PACKER_LOG=0` now disables logging. [GH-3964] 4952 * post-processor/amazon-import: Support `ami_name` for naming imported AMI. 4953 [GH-3941] 4954 * post-processor/compress: Added support for bgzf compression. [GH-3501] 4955 * post-processor/docker: Improved support for Docker push to Amazon ECR. 4956 [GH-3856] 4957 * post-processor/docker: Preserve tags when running docker push. [GH-3631] 4958 * post-processor/vagrant: Added vsphere-esx hosts to supported machine types. 4959 [GH-3967] 4960 * provisioner/ansible-local: Support for ansible-galaxy. [GH-3350] [GH-3836] 4961 * provisioner/ansible: Improved logging and error handling. [GH-3477] 4962 * provisioner/ansible: Support scp. [GH-3861] 4963 * provisioner/chef: Added `knife_command` option and added a correct default 4964 value for Windows. [GH-3622] 4965 * provisioner/chef: Installs 64bit chef on Windows if available. [GH-3848] 4966 * provisioner/file: Now makes destination directory. [GH-3692] 4967 * provisioner/puppet: Added `execute_command` option. [GH-3614] 4968 * provisioner/salt: Added `custom_state` to specify state to run instead of 4969 `highstate`. [GH-3776] 4970 * provisioner/shell: Added `expect_disconnect` flag to fail if remote 4971 unexpectedly disconnects. [GH-4034] 4972 * scripts: Added `help` target to Makefile. [GH-3290] 4973 * vendor: Moving from Godep to govendor. See `CONTRIBUTING.md` for details. 4974 [GH-3956] 4975 * website: code examples now use inconsolata. Improve code font rendering on 4976 linux. 4977 4978 ### BUG FIXES: 4979 4980 * builder/amazon: Add 0.5 cents to discovered spot price. [GH-3662] 4981 * builder/amazon: Allow using `ssh_private_key_file` and `ssh_password`. 4982 [GH-3953] 4983 * builder/amazon: Fix packer crash when waiting for SSH. [GH-3865] 4984 * builder/amazon: Honor ssh_private_ip flag in EC2-Classic. [GH-3752] 4985 * builder/amazon: Properly clean up EBS volumes on failure. [GH-3789] 4986 * builder/amazon: Use `temporary_key_pair_name` when specified. [GH-3739] 4987 * builder/amazon: retry creating tags on images since the images might take 4988 some time to become available. [GH-3938] 4989 * builder/azure: Fix authorization setup script failing to creating service 4990 principal. [GH-3812] 4991 * builder/azure: check for empty resource group. [GH-3606] 4992 * builder/azure: fix token validity test. [GH-3609] 4993 * builder/docker: Fix file provisioner dotfile matching. [GH-3800] 4994 * builder/docker: fix docker builder with ansible provisioner. [GH-3476] 4995 * builder/qemu: Don't fail on communicator set to `none`. [GH-3681] 4996 * builder/qemu: Make `ssh_host_port_max` an inclusive bound. [GH-2784] 4997 * builder/virtualbox: Make `ssh_host_port_max` an inclusive bound. [GH-2784] 4998 * builder/virtualbox: Respect `ssh_host` [GH-3617] 4999 * builder/vmware: Do not add remotedisplay.vnc.ip to VMX data on ESXi 5000 [GH-3740] 5001 * builder/vmware: Don't check for poweron errors on ESXi. [GH-3195] 5002 * builder/vmware: Re-introduce case sensitive VMX keys. [GH-2707] 5003 * builder/vmware: Respect `ssh_host`/`winrm_host` on ESXi. [GH-3738] 5004 * command/push: Allows dot (`.`) in image names. [GH-3937] 5005 * common/iso_config: fix potential panic when iso checksum url was given but 5006 not the iso url. [GH-4004] 5007 * communicator/ssh: fixed possible panic when reconnecting fails. [GH-4008] 5008 * communicator/ssh: handle error case where server closes the connection but 5009 doesn't give us an error code. [GH-3966] 5010 * post-processor/shell-local: Do not set execute bit on artifact file. 5011 [GH-3505] 5012 * post-processor/vsphere: Fix upload failures with vsphere. [GH-3321] 5013 * provisioner/ansible: Properly set host key checking even when a custom ENV 5014 is specified. [GH-3568] 5015 * provisioner/file: Fix directory download. [GH-3899] 5016 * provisioner/powershell: fixed issue with setting environment variables. 5017 [GH-2785] 5018 * website: improved rendering on iPad. [GH-3780] 5019 5020 ## 0.10.2 (September 20, 2016) 5021 5022 ### BUG FIXES: 5023 5024 * Rebuilding with OS X Sierra and go 1.7.1 to fix bug in Sierra 5025 5026 ## 0.10.1 (May 7, 2016) 5027 5028 ### FEATURES: 5029 5030 * `azure-arm` builder: Can now build Windows images, and supports additional 5031 configuration. Please refer to the documentation for details. 5032 5033 ### IMPROVEMENTS: 5034 5035 * core: Added support for `ATLAS_CAFILE` and `ATLAS_CAPATH` [GH-3494] 5036 * builder/azure: Improved build cancellation and cleanup of partially- 5037 provisioned resources. [GH-3461] 5038 * builder/azure: Improved logging. [GH-3461] 5039 * builder/azure: Added support for US Government and China clouds. [GH-3461] 5040 * builder/azure: Users may now specify an image version. [GH-3461] 5041 * builder/azure: Added device login. [GH-3461] 5042 * builder/docker: Added `privileged` build option. [GH-3475] 5043 * builder/google: Packer now identifies its version to the service. [GH-3465] 5044 * provisioner/shell: Added `remote_folder` and `remote_file` options 5045 [GH-3462] 5046 * post-processor/compress: Added support for `bgzf` format and added 5047 `format` option. [GH-3501] 5048 5049 ### BUG FIXES: 5050 5051 * core: Fix hang after pressing enter key in `-debug` mode. [GH-3346] 5052 * provisioner/chef: Use custom values for remote validation key path 5053 [GH-3468] 5054 5055 ## 0.10.0 (March 14, 2016) 5056 5057 ### BACKWARDS INCOMPATIBILITIES: 5058 5059 * Building Packer now requires go >= 1.5 (>= 1.6 is recommended). If you want 5060 to continue building with go 1.4 you can remove the `azurearmbuilder` line 5061 from `command/plugin.go`. 5062 5063 ### FEATURES: 5064 5065 * **New `azure-arm` builder**: Build virtual machines in Azure Resource 5066 Manager 5067 5068 ### IMPROVEMENTS: 5069 5070 * builder/google: Added support for `disk_type` [GH-2830] 5071 * builder/openstack: Added support for retrieving the Administrator password 5072 when using WinRM if no `winrm_password` is set. [GH-3209] 5073 * provisioner/ansible: Added the `empty_groups` parameter. [GH-3232] 5074 * provisioner/ansible: Added the `user` parameter. [GH-3276] 5075 * provisioner/ansible: Don't use deprecated ssh option with Ansible 2.0 5076 [GH-3291] 5077 * provisioner/puppet-masterless: Add `ignore_exit_codes` parameter. [GH-3349] 5078 5079 ### BUG FIXES: 5080 5081 * builders/parallels: Handle `output_directory` containing `.` and `..` 5082 [GH-3239] 5083 * provisioner/ansible: os.Environ() should always be passed to the ansible 5084 command. [GH-3274] 5085 5086 ## 0.9.0 (February 19, 2016) 5087 5088 ### BACKWARDS INCOMPATIBILITIES: 5089 5090 * Packer now ships as a single binary, including plugins. If you install packer 5091 0.9.0 over a previous packer installation, **you must delete all of the 5092 packer-* plugin files** or packer will load out-of-date plugins from disk. 5093 * Release binaries are now provided via <https://releases.hashicorp.com>. 5094 * Packer 0.9.0 is now built with Go 1.6. 5095 * core: Plugins that implement the Communicator interface must now implement 5096 a DownloadDir method. [GH-2618] 5097 * builder/amazon: Inline `user_data` for EC2 is now base64 encoded 5098 automatically. [GH-2539] 5099 * builder/parallels: `parallels_tools_host_path` and `guest_os_distribution` 5100 have been replaced by `guest_os_type`; use `packer fix` to update your 5101 templates. [GH-2751] 5102 5103 ### FEATURES: 5104 5105 * **Chef on Windows**: The chef provisioner now has native support for 5106 Windows using Powershell and WinRM. [GH-1215] 5107 * **New `vmware-esxi` feature**: Packer can now export images from vCloud or 5108 vSphere during the build. [GH-1921] 5109 * **New Ansible Provisioner**: `ansible` provisioner supports remote 5110 provisioning to keep your build image cleaner. [GH-1969] 5111 * **New Amazon Import post-processor**: `amazon-import` allows you to upload an 5112 OVA-based VM to Amazon EC2. [GH-2962] 5113 * **Shell Local post-processor**: `shell-local` allows you to run shell 5114 commands on the host after a build has completed for custom packaging or 5115 publishing of your artifacts. [GH-2706] 5116 * **Artifice post-processor**: Override packer artifacts during post- 5117 processing. This allows you to extract artifacts from a packer builder and 5118 use them with other post-processors like compress, docker, and Atlas. 5119 5120 ### IMPROVEMENTS: 5121 5122 * core: Packer plugins are now compiled into the main binary, reducing file 5123 size and build times, and making packer easier to install. The overall 5124 plugin architecture has not changed and third-party plugins can still be 5125 loaded from disk. Please make sure your plugins are up-to-date! [GH-2854] 5126 * core: Packer now indicates line numbers for template parse errors. [GH-2742] 5127 * core: Scripts are executed via `/usr/bin/env bash` instead of `/bin/bash` 5128 for broader compatibility. [GH-2913] 5129 * core: `target_path` for builder downloads can now be specified. [GH-2600] 5130 * core: WinRM communicator now supports HTTPS protocol. [GH-3061] 5131 * core: Template syntax errors now show line, column, offset. [GH-3180] 5132 * core: SSH communicator now supports downloading directories. [GH-2618] 5133 * builder/amazon: Add support for `ebs_optimized` [GH-2806] 5134 * builder/amazon: You can now specify `0` for `spot_price` to switch to on 5135 demand instances. [GH-2845] 5136 * builder/amazon: Added `ap-northeast-2` (Seoul) [GH-3056] 5137 * builder/amazon: packer will try to derive the AZ if only a subnet is 5138 specified. [GH-3037] 5139 * builder/digitalocean: doubled instance wait timeouts to power off or 5140 shutdown (now 4 minutes) and to complete a snapshot (now 20 minutes) 5141 [GH-2939] 5142 * builder/google: `account_file` can now be provided as a JSON string 5143 [GH-2811] 5144 * builder/google: added support for `preemptible` instances. [GH-2982] 5145 * builder/google: added support for static external IPs via `address` option 5146 [GH-3030] 5147 * builder/openstack: added retry on WaitForImage 404. [GH-3009] 5148 * builder/openstack: Can specify `source_image_name` instead of the ID 5149 [GH-2577] 5150 * builder/openstack: added support for SSH over IPv6. [GH-3197] 5151 * builder/parallels: Improve support for Parallels 11. [GH-2662] 5152 * builder/parallels: Parallels disks are now compacted by default. [GH-2731] 5153 * builder/parallels: Packer will look for Parallels in 5154 `/Applications/Parallels Desktop.app` if it is not detected automatically 5155 [GH-2839] 5156 * builder/qemu: qcow2 images are now compacted by default. [GH-2748] 5157 * builder/qemu: qcow2 images can now be compressed. [GH-2748] 5158 * builder/qemu: Now specifies `virtio-scsi` by default. [GH-2422] 5159 * builder/qemu: Now checks for version-specific options. [GH-2376] 5160 * builder/qemu: Can now bypass disk cache using `iso_skip_cache` [GH-3105] 5161 * builder/qemu: `<wait>` in `boot_command` now accepts an arbitrary duration 5162 like <wait1m30s> [GH-3129] 5163 * builder/qemu: Expose `{{ .SSHHostPort }}` in templates. [GH-2884] 5164 * builder/virtualbox: Added VRDP for debugging. [GH-3188] 5165 * builder/vmware-esxi: Added private key auth for remote builds via 5166 `remote_private_key_file` [GH-2912] 5167 * post-processor/atlas: Added support for compile ID. [GH-2775] 5168 * post-processor/docker-import: Can now import Artifice artifacts. [GH-2718] 5169 * provisioner/chef: Added `encrypted_data_bag_secret_path` option. [GH-2653] 5170 * provisioner/puppet: Added the `extra_arguments` parameter. [GH-2635] 5171 * provisioner/salt: Added `no_exit_on_failure`, `log_level`, and improvements 5172 to salt command invocation. [GH-2660] 5173 5174 ### BUG FIXES: 5175 5176 * core: Random number generator is now seeded. [GH-2640] 5177 * core: Packer should now have a lot less race conditions. [GH-2824] 5178 * builder/amazon: The `no_device` option for block device mappings is now handled correctly. [GH-2398] 5179 * builder/amazon: AMI name validation now matches Amazon's spec. [GH-2774] 5180 * builder/amazon: Use snapshot size when volume size is unspecified. [GH-2480] 5181 * builder/amazon: Pass AccessKey and SecretKey when uploading bundles for 5182 instance-backed AMIs. [GH-2596] 5183 * builder/parallels: Added interpolation in `prlctl_post` [GH-2828] 5184 * builder/vmware: `format` option is now read correctly. [GH-2892] 5185 * builder/vmware-esxi: Correct endless loop in destroy validation logic 5186 [GH-2911] 5187 * provisioner/shell: No longer leaves temp scripts behind. [GH-1536] 5188 * provisioner/winrm: Now waits for reboot to complete before continuing with provisioning. [GH-2568] 5189 * post-processor/artifice: Fix truncation of files downloaded from Docker. [GH-2793] 5190 5191 5192 ## 0.8.6 (Aug 22, 2015) 5193 5194 ### IMPROVEMENTS: 5195 5196 * builder/docker: Now supports Download so it can be used with the file 5197 provisioner to download a file from a container. [GH-2585] 5198 * builder/docker: Now verifies that the artifact will be used before the build 5199 starts, unless the `discard` option is specified. This prevent failures 5200 after the build completes. [GH-2626] 5201 * post-processor/artifice: Now supports glob-like syntax for filenames. [GH-2619] 5202 * post-processor/vagrant: Like the compress post-processor, vagrant now uses a 5203 parallel gzip algorithm to compress vagrant boxes. [GH-2590] 5204 5205 ### BUG FIXES: 5206 5207 * core: When `iso_url` is a local file and the checksum is invalid, the local 5208 file will no longer be deleted. [GH-2603] 5209 * builder/parallels: Fix interpolation in `parallels_tools_guest_path` [GH-2543] 5210 5211 ## 0.8.5 (Aug 10, 2015) 5212 5213 ### FEATURES: 5214 5215 * **[Beta]** Artifice post-processor: Override packer artifacts during post- 5216 processing. This allows you to extract artifacts from a packer builder 5217 and use them with other post-processors like compress, docker, and Atlas. 5218 5219 ### IMPROVEMENTS: 5220 5221 * Many docs have been updated and corrected; big thanks to our contributors! 5222 * builder/openstack: Add debug logging for IP addresses used for SSH. [GH-2513] 5223 * builder/openstack: Add option to use existing SSH keypair. [GH-2512] 5224 * builder/openstack: Add support for Glance metadata. [GH-2434] 5225 * builder/qemu and builder/vmware: Packer's VNC connection no longer asks for 5226 an exclusive connection. [GH-2522] 5227 * provisioner/salt-masterless: Can now customize salt remote directories. [GH-2519] 5228 5229 ### BUG FIXES: 5230 5231 * builder/amazon: Improve instance cleanup by storing id sooner. [GH-2404] 5232 * builder/amazon: Only fetch windows password when using WinRM communicator. [GH-2538] 5233 * builder/openstack: Support IPv6 SSH address. [GH-2450] 5234 * builder/openstack: Track new IP address discovered during RackConnect. [GH-2514] 5235 * builder/qemu: Add 100ms delay between VNC key events. [GH-2415] 5236 * post-processor/atlas: atlas_url configuration option works now. [GH-2478] 5237 * post-processor/compress: Now supports interpolation in output config. [GH-2414] 5238 * provisioner/powershell: Elevated runs now receive environment variables. [GH-2378] 5239 * provisioner/salt-masterless: Clarify error messages when we can't create or 5240 write to the temp directory. [GH-2518] 5241 * provisioner/salt-masterless: Copy state even if /srv/salt exists already. [GH-1699] 5242 * provisioner/salt-masterless: Make sure /etc/salt exists before writing to it. [GH-2520] 5243 * provisioner/winrm: Connect to the correct port when using NAT with 5244 VirtualBox / VMware. [GH-2399] 5245 5246 ## Note: 0.8.3 was pulled and 0.8.4 was skipped. 5247 5248 ## 0.8.2 (July 17, 2015) 5249 5250 ### IMPROVEMENTS: 5251 5252 * builder/docker: Add option to use a Pty. [GH-2425] 5253 5254 ### BUG FIXES: 5255 5256 * core: Fix crash when `min_packer_version` is specified in a template. [GH-2385] 5257 * builder/amazon: Fix EC2 devices being included in EBS mappings. [GH-2459] 5258 * builder/googlecompute: Fix default name for GCE images. [GH-2400] 5259 * builder/null: Fix error message with missing ssh_host. [GH-2407] 5260 * builder/virtualbox: Use --portcount on VirtualBox 5.x. [GH-2438] 5261 * provisioner/puppet: Packer now correctly handles a directory for manifest_file. [GH-2463] 5262 * provisioner/winrm: Fix potential crash with WinRM. [GH-2416] 5263 5264 ## 0.8.1 (July 2, 2015) 5265 5266 ### IMPROVEMENTS: 5267 5268 * builder/amazon: When debug mode is enabled, the Windows administrator 5269 password for Windows instances will be shown. [GH-2351] 5270 5271 ### BUG FIXES: 5272 5273 * core: `min_packer_version` field in configs work. [GH-2356] 5274 * core: The `build_name` and `build_type` functions work in provisioners. [GH-2367] 5275 * core: Handle timeout in SSH handshake. [GH-2333] 5276 * command/build: Fix reading configuration from stdin. [GH-2366] 5277 * builder/amazon: Fix issue with sharing AMIs when using `ami_users` [GH-2308] 5278 * builder/amazon: Fix issue when using multiple Security Groups. [GH-2381] 5279 * builder/amazon: Fix for tag creation when creating new ec2 instance. [GH-2317] 5280 * builder/amazon: Fix issue with creating AMIs with multiple device mappings. [GH-2320] 5281 * builder/amazon: Fix failing AMI snapshot tagging when copying to other 5282 regions. [GH-2316] 5283 * builder/amazon: Fix setting AMI launch permissions. [GH-2348] 5284 * builder/amazon: Fix spot instance cleanup to remove the correct request. [GH-2327] 5285 * builder/amazon: Fix `bundle_prefix` not interpolating `timestamp` [GH-2352] 5286 * builder/amazon-instance: Fix issue with creating AMIs without specifying a 5287 virtualization type. [GH-2330] 5288 * builder/digitalocean: Fix builder using private IP instead of public IP. [GH-2339] 5289 * builder/google: Set default communicator settings properly. [GH-2353] 5290 * builder/vmware-iso: Setting `checksum_type` to `none` for ESX builds 5291 now works. [GH-2323] 5292 * provisioner/chef: Use knife config file vs command-line params to 5293 clean up nodes so full set of features can be used. [GH-2306] 5294 * post-processor/compress: Fixed crash in compress post-processor plugin. [GH-2311] 5295 5296 ## 0.8.0 (June 23, 2015) 5297 5298 ### BACKWARDS INCOMPATIBILITIES: 5299 5300 * core: SSH connection will no longer request a PTY by default. This 5301 can be enabled per builder. 5302 * builder/digitalocean: no longer supports the v1 API which has been 5303 deprecated for some time. Most configurations should continue to 5304 work as long as you use the `api_token` field for auth. 5305 * builder/digitalocean: `image`, `region`, and `size` are now required. 5306 * builder/openstack: auth parameters have been changed to better 5307 reflect OS terminology. Existing environment variables still work. 5308 5309 ### FEATURES: 5310 5311 * **WinRM:** You can now connect via WinRM with almost every builder. 5312 See the docs for more info. [GH-2239] 5313 * **Windows AWS Support:** Windows AMIs can now be built without any 5314 external plugins: Packer will start a Windows instance, get the 5315 admin password, and can use WinRM (above) to connect through. [GH-2240] 5316 * **Disable SSH:** Set `communicator` to "none" in any builder to disable SSH 5317 connections. Note that provisioners won't work if this is done. [GH-1591] 5318 * **SSH Agent Forwarding:** SSH Agent Forwarding will now be enabled 5319 to allow access to remote servers such as private git repos. [GH-1066] 5320 * **SSH Bastion Hosts:** You can now specify a bastion host for 5321 SSH access (works with all builders). [GH-387] 5322 * **OpenStack v3 Identity:** The OpenStack builder now supports the 5323 v3 identity API. 5324 * **Docker builder supports SSH**: The Docker builder now supports containers 5325 with SSH, just set `communicator` to "ssh" [GH-2244] 5326 * **File provisioner can download**: The file provisioner can now download 5327 files out of the build process. [GH-1909] 5328 * **New config function: `build_name`**: The name of the currently running 5329 build. [GH-2232] 5330 * **New config function: `build_type`**: The type of the currently running 5331 builder. This is useful for provisioners. [GH-2232] 5332 * **New config function: `template_dir`**: The directory to the template 5333 being built. This should be used for template-relative paths. [GH-54] 5334 * **New provisioner: shell-local**: Runs a local shell script. [GH-770] 5335 * **New provisioner: powershell**: Provision Windows machines 5336 with PowerShell scripts. [GH-2243] 5337 * **New provisioner: windows-shell**: Provision Windows machines with 5338 batch files. [GH-2243] 5339 * **New provisioner: windows-restart**: Restart a Windows machines and 5340 wait for it to come back online. [GH-2243] 5341 * **Compress post-processor supports multiple algorithms:** The compress 5342 post-processor now supports lz4 compression and compresses gzip in 5343 parallel for much faster throughput. 5344 5345 ### IMPROVEMENTS: 5346 5347 * core: Interrupt handling for SIGTERM signal as well. [GH-1858] 5348 * core: HTTP downloads support resuming. [GH-2106] 5349 * builder/*: Add `ssh_handshake_attempts` to configure the number of 5350 handshake attempts done before failure. [GH-2237] 5351 * builder/amazon: Add `force_deregister` option for automatic AMI 5352 deregistration. [GH-2221] 5353 * builder/amazon: Now applies tags to EBS snapshots. [GH-2212] 5354 * builder/amazon: Clean up orphaned volumes from Source AMIs. [GH-1783] 5355 * builder/amazon: Support custom keypairs. [GH-1837] 5356 * builder/amazon-chroot: Can now resize the root volume of the resulting 5357 AMI with the `root_volume_size` option. [GH-2289] 5358 * builder/amazon-chroot: Add `mount_options` configuration option for providing 5359 options to the `mount` command. [GH-2296] 5360 * builder/digitalocean: Save SSH key to pwd if debug mode is on. [GH-1829] 5361 * builder/digitalocean: User data support. [GH-2113] 5362 * builder/googlecompute: Option to use internal IP for connections. [GH-2152] 5363 * builder/parallels: Support Parallels Desktop 11. [GH-2199] 5364 * builder/openstack: Add `rackconnect_wait` for Rackspace customers to wait for 5365 RackConnect data to appear 5366 * builder/openstack: Add `ssh_interface` option for rackconnect for users that 5367 have prohibitive firewalls 5368 * builder/openstack: Flavor names can be used as well as refs 5369 * builder/openstack: Add `availability_zone` [GH-2016] 5370 * builder/openstack: Machine will be stopped prior to imaging if the 5371 cluster supports the `startstop` extension. [GH-2223] 5372 * builder/openstack: Support for user data. [GH-2224] 5373 * builder/qemu: Default accelerator to "tcg" on Windows. [GH-2291] 5374 * builder/virtualbox: Added option: `ssh_skip_nat_mapping` to skip the 5375 automatic port forward for SSH and to use the guest port directly. [GH-1078] 5376 * builder/virtualbox: Added SCSI support 5377 * builder/vmware: Support for additional disks. [GH-1382] 5378 * builder/vmware: Can now customize the template used for adding disks. [GH-2254] 5379 * command/fix: After fixing, the template is validated. [GH-2228] 5380 * command/push: Add `-name` flag for specifying name from CLI. [GH-2042] 5381 * command/push: Push configuration in templates supports variables. [GH-1861] 5382 * post-processor/docker-save: Can be chained. [GH-2179] 5383 * post-processor/docker-tag: Support `force` option. [GH-2055] 5384 * post-processor/docker-tag: Can be chained. [GH-2179] 5385 * post-processor/vsphere: Make more fields optional, support empty 5386 resource pools. [GH-1868] 5387 * provisioner/puppet-masterless: `working_directory` option. [GH-1831] 5388 * provisioner/puppet-masterless: `packer_build_name` and 5389 `packer_build_type` are default facts. [GH-1878] 5390 * provisioner/puppet-server: `ignore_exit_codes` option added. [GH-2280] 5391 5392 ### BUG FIXES: 5393 5394 * core: Fix potential panic for post-processor plugin exits. [GH-2098] 5395 * core: `PACKER_CONFIG` may point to a non-existent file. [GH-2226] 5396 * builder/amazon: Allow spaces in AMI names when using `clean_ami_name` [GH-2182] 5397 * builder/amazon: Remove deprecated ec2-upload-bundle parameter. [GH-1931] 5398 * builder/amazon: Use IAM Profile to upload bundle if provided. [GH-1985] 5399 * builder/amazon: Use correct exit code after SSH authentication failed. [GH-2004] 5400 * builder/amazon: Retry finding created instance for eventual 5401 consistency. [GH-2129] 5402 * builder/amazon: If no AZ is specified, use AZ chosen automatically by 5403 AWS for spot instance. [GH-2017] 5404 * builder/amazon: Private key file (only available in debug mode) 5405 is deleted on cleanup. [GH-1801] 5406 * builder/amazon: AMI copy won't copy to the source region. [GH-2123] 5407 * builder/amazon: Validate AMI doesn't exist with name prior to build. [GH-1774] 5408 * builder/amazon: Improved retry logic around waiting for instances. [GH-1764] 5409 * builder/amazon: Fix issues with creating Block Devices. [GH-2195] 5410 * builder/amazon/chroot: Retry waiting for disk attachments. [GH-2046] 5411 * builder/amazon/chroot: Only unmount path if it is mounted. [GH-2054] 5412 * builder/amazon/instance: Use `-i` in sudo commands so PATH is inherited. [GH-1930] 5413 * builder/amazon/instance: Use `--region` flag for bundle upload command. [GH-1931] 5414 * builder/digitalocean: Wait for droplet to unlock before changing state, 5415 should lower the "pending event" errors. 5416 * builder/digitalocean: Ignore invalid fields from the ever-changing v2 API 5417 * builder/digitalocean: Private images can be used as a source. [GH-1792] 5418 * builder/docker: Fixed hang on prompt while copying script 5419 * builder/docker: Use `docker exec` for newer versions of Docker for 5420 running scripts. [GH-1993] 5421 * builder/docker: Fix crash that could occur at certain timed ctrl-c. [GH-1838] 5422 * builder/docker: validate that `export_path` is not a directory. [GH-2105] 5423 * builder/google: `ssh_timeout` is respected. [GH-1781] 5424 * builder/openstack: `ssh_interface` can be used to specify the interface 5425 to retrieve the SSH IP from. [GH-2220] 5426 * builder/qemu: Add `disk_discard` option. [GH-2120] 5427 * builder/qemu: Use proper SSH port, not hardcoded to 22. [GH-2236] 5428 * builder/qemu: Find unused SSH port if SSH port is taken. [GH-2032] 5429 * builder/virtualbox: Bind HTTP server to IPv4, which is more compatible with 5430 OS installers. [GH-1709] 5431 * builder/virtualbox: Remove the floppy controller in addition to the 5432 floppy disk. [GH-1879] 5433 * builder/virtualbox: Fixed regression where downloading ISO without a 5434 ".iso" extension didn't work. [GH-1839] 5435 * builder/virtualbox: Output dir is verified at runtime, not template 5436 validation time. [GH-2233] 5437 * builder/virtualbox: Find unused SSH port if SSH port is taken. [GH-2032] 5438 * builder/vmware: Add 100ms delay between keystrokes to avoid subtle 5439 timing issues in most cases. [GH-1663] 5440 * builder/vmware: Bind HTTP server to IPv4, which is more compatible with 5441 OS installers. [GH-1709] 5442 * builder/vmware: Case-insensitive match of MAC address to find IP. [GH-1989] 5443 * builder/vmware: More robust IP parsing from ifconfig output. [GH-1999] 5444 * builder/vmware: Nested output directories for ESXi work. [GH-2174] 5445 * builder/vmware: Output dir is verified at runtime, not template 5446 validation time. [GH-2233] 5447 * command/fix: For the `virtualbox` to `virtualbox-iso` builder rename, 5448 provisioner overrides are now also fixed. [GH-2231] 5449 * command/validate: don't crash for invalid builds. [GH-2139] 5450 * post-processor/atlas: Find common archive prefix for Windows. [GH-1874] 5451 * post-processor/atlas: Fix index out of range panic. [GH-1959] 5452 * post-processor/vagrant-cloud: Fixed failing on response 5453 * post-processor/vagrant-cloud: Don't delete version on error. [GH-2014] 5454 * post-processor/vagrant-cloud: Retry failed uploads a few times 5455 * provisioner/chef-client: Fix permissions issues on default dir. [GH-2255] 5456 * provisioner/chef-client: Node cleanup works now. [GH-2257] 5457 * provisioner/puppet-masterless: Allow manifest_file to be a directory 5458 * provisioner/salt-masterless: Add `--retcode-passthrough` to salt-call 5459 * provisioner/shell: chmod executable script to 0755, not 0777. [GH-1708] 5460 * provisioner/shell: inline commands failing will fail the provisioner. [GH-2069] 5461 * provisioner/shell: single quotes in env vars are escaped. [GH-2229] 5462 * provisioner/shell: Temporary file is deleted after run. [GH-2259] 5463 * provisioner/shell: Randomize default script name to avoid strange 5464 race issues from Windows. [GH-2270] 5465 5466 ## 0.7.5 (December 9, 2014) 5467 5468 ### FEATURES: 5469 5470 * **New command: `packer push`**: Push template and files to HashiCorp's 5471 Atlas for building your templates automatically. 5472 * **New post-processor: `atlas`**: Send artifact to HashiCorp's Atlas for 5473 versioning and storing artifacts. These artifacts can then be queried 5474 using the API, Terraform, etc. 5475 5476 ### IMPROVEMENTS: 5477 5478 * builder/googlecompute: Support for ubuntu-os-cloud project 5479 * builder/googlecompute: Support for OAuth2 to avoid client secrets file 5480 * builder/googlecompute: GCE image from persistent disk instead of tarball 5481 * builder/qemu: Checksum type "none" can be used 5482 * provisioner/chef: Generate a node name if none available 5483 * provisioner/chef: Added ssl_verify_mode configuration 5484 5485 ### BUG FIXES: 5486 5487 * builder/parallels: Fixed attachment of ISO to cdrom device 5488 * builder/parallels: Fixed boot load ordering 5489 * builder/digitalocean: Fixed decoding of size 5490 * builder/digitalocean: Fixed missing content-type header in request 5491 * builder/digitalocean: Fixed use of private IP 5492 * builder/digitalocean: Fixed the artifact ID generation 5493 * builder/vsphere: Fixed credential escaping 5494 * builder/qemu: Fixed use of CDROM with disk_image 5495 * builder/aws: Fixed IP address for SSH in VPC 5496 * builder/aws: Fixed issue with multiple block devices 5497 * builder/vmware: Upload VMX to ESX5 after editing 5498 * communicator/docker: Fix handling of symlinks during upload 5499 * provisioner/chef: Fixed use of sudo in some cases 5500 * core: Fixed build name interpolation 5501 * postprocessor/vagrant: Fixed check for Vagrantfile template 5502 5503 ## 0.7.2 (October 28, 2014) 5504 5505 ### FEATURES: 5506 5507 * builder/digitalocean: API V2 support. [GH-1463] 5508 * builder/parallels: Don't depend on _prl-utils_. [GH-1499] 5509 5510 ### IMPROVEMENTS: 5511 5512 * builder/amazon/all: Support new AWS Frankfurt region. 5513 * builder/docker: Allow remote `DOCKER_HOST`, which works as long as 5514 volumes work. [GH-1594] 5515 * builder/qemu: Can set cache mode for main disk. [GH-1558] 5516 * builder/qemu: Can build from pre-existing disk. [GH-1342] 5517 * builder/vmware: Can specify path to Fusion installation with environmental 5518 variable `FUSION_APP_PATH`. [GH-1552] 5519 * builder/vmware: Can specify the HW version for the VMX. [GH-1530] 5520 * builder/vmware/esxi: Will now cache ISOs/floppies remotely. [GH-1479] 5521 * builder/vmware/vmx: Source VMX can have a disk connected via SATA. [GH-1604] 5522 * post-processors/vagrant: Support Qemu (libvirt) boxes. [GH-1330] 5523 * post-processors/vagrantcloud: Support self-hosted box URLs. 5524 5525 ### BUG FIXES: 5526 5527 * core: Fix loading plugins from pwd. [GH-1521] 5528 * builder/amazon: Prefer token in config if given. [GH-1544] 5529 * builder/amazon/all: Extended timeout for waiting for AMI. [GH-1533] 5530 * builder/virtualbox: Can read VirtualBox version on FreeBSD. [GH-1570] 5531 * builder/virtualbox: More robust reading of guest additions URL. [GH-1509] 5532 * builder/vmware: Always remove floppies/drives. [GH-1504] 5533 * builder/vmware: Wait some time so that post-VMX update aren't 5534 overwritten. [GH-1504] 5535 * builder/vmware/esxi: Retry power on if it fails. [GH-1334] 5536 * builder/vmware-vmx: Fix issue with order of boot command support. [GH-1492] 5537 * builder/amazon: Extend timeout and allow user override. [GH-1533] 5538 * builder/parallels: Ignore 'The fdd0 device does not exist' [GH-1501] 5539 * builder/parallels: Rely on Cleanup functions to detach devices. [GH-1502] 5540 * builder/parallels: Create VM without hdd and then add it later. [GH-1548] 5541 * builder/parallels: Disconnect cdrom0. [GH-1605] 5542 * builder/qemu: Don't use `-redir` flag anymore, replace with 5543 `hostfwd` options. [GH-1561] 5544 * builder/qemu: Use `pc` as default machine type instead of `pc-1.0`. 5545 * providers/aws: Ignore transient network errors. [GH-1579] 5546 * provisioner/ansible: Don't buffer output so output streams in. [GH-1585] 5547 * provisioner/ansible: Use inventory file always to avoid potentially 5548 deprecated feature. [GH-1562] 5549 * provisioner/shell: Quote environmental variables. [GH-1568] 5550 * provisioner/salt: Bootstrap over SSL. [GH-1608] 5551 * post-processors/docker-push: Work with docker-tag artifacts. [GH-1526] 5552 * post-processors/vsphere: Append "/" to object address. [GH-1615] 5553 5554 ## 0.7.1 (September 10, 2014) 5555 5556 ### FEATURES: 5557 5558 * builder/vmware: VMware Fusion Pro 7 is now supported. [GH-1478] 5559 5560 ### BUG FIXES: 5561 5562 * core: SSH will connect slightly faster if it is ready immediately. 5563 * provisioner/file: directory uploads no longer hang. [GH-1484] 5564 * provisioner/file: fixed crash on large files. [GH-1473] 5565 * scripts: Windows executable renamed to packer.exe. [GH-1483] 5566 5567 ## 0.7.0 (September 8, 2014) 5568 5569 ### BACKWARDS INCOMPATIBILITIES: 5570 5571 * The authentication configuration for Google Compute Engine has changed. 5572 The new method is much simpler, but is not backwards compatible. 5573 `packer fix` will _not_ fix this. Please read the updated GCE docs. 5574 5575 ### FEATURES: 5576 5577 * **New Post-Processor: `compress`** - Gzip compresses artifacts with files. 5578 * **New Post-Processor: `docker-save`** - Save an image. This is similar to 5579 export, but preserves the image hierarchy. 5580 * **New Post-Processor: `docker-tag`** - Tag a created image. 5581 * **New Template Functions: `upper`, `lower`** - See documentation for 5582 more details. 5583 * core: Plugins are automatically discovered if they're named properly. 5584 Packer will look in the PWD and the directory with `packer` for 5585 binaries named `packer-TYPE-NAME`. 5586 * core: Plugins placed in `~/.packer.d/plugins` are now automatically 5587 discovered. 5588 * builder/amazon: Spot instances can now be used to build EBS backed and 5589 instance store images. [GH-1139] 5590 * builder/docker: Images can now be committed instead of exported. [GH-1198] 5591 * builder/virtualbox-ovf: New `import_flags` setting can be used to add 5592 new command line flags to `VBoxManage import` to allow things such 5593 as EULAs to be accepted. [GH-1383] 5594 * builder/virtualbox-ovf: Boot commands and the HTTP server are supported. 5595 [GH-1169] 5596 * builder/vmware: VMware Player 6 is now supported. [GH-1168] 5597 * builder/vmware-vmx: Boot commands and the HTTP server are supported. 5598 [GH-1169] 5599 5600 ### IMPROVEMENTS: 5601 5602 * core: `isotime` function can take a format. [GH-1126] 5603 * builder/amazon/all: `AWS_SECURITY_TOKEN` is read and can also be 5604 set with the `token` configuration. [GH-1236] 5605 * builder/amazon/all: Can force SSH on the private IP address with 5606 `ssh_private_ip`. [GH-1229] 5607 * builder/amazon/all: String fields in device mappings can use variables. [GH-1090] 5608 * builder/amazon-instance: EBS AMIs can be used as a source. [GH-1453] 5609 * builder/digitalocean: Can set API URL endpoint. [GH-1448] 5610 * builder/digitalocean: Region supports variables. [GH-1452] 5611 * builder/docker: Can now specify login credentials to pull images. 5612 * builder/docker: Support mounting additional volumes. [GH-1430] 5613 * builder/parallels/all: Path to tools ISO is calculated automatically. [GH-1455] 5614 * builder/parallels-pvm: `reassign_mac` option to choose whether or not 5615 to generate a new MAC address. [GH-1461] 5616 * builder/qemu: Can specify "none" acceleration type. [GH-1395] 5617 * builder/qemu: Can specify "tcg" acceleration type. [GH-1395] 5618 * builder/virtualbox/all: `iso_interface` option to mount ISO with SATA. [GH-1200] 5619 * builder/vmware-vmx: Proper `floppy_files` support. [GH-1057] 5620 * command/build: Add `-color=false` flag to disable color. [GH-1433] 5621 * post-processor/docker-push: Can now specify login credentials. [GH-1243] 5622 * provisioner/chef-client: Support `chef_environment`. [GH-1190] 5623 5624 ### BUG FIXES: 5625 5626 * core: nicer error message if an encrypted private key is used for 5627 SSH. [GH-1445] 5628 * core: Fix crash that could happen with a well timed double Ctrl-C. 5629 [GH-1328] [GH-1314] 5630 * core: SSH TCP keepalive period is now 5 seconds (shorter). [GH-1232] 5631 * builder/amazon-chroot: Can properly build HVM images now. [GH-1360] 5632 * builder/amazon-chroot: Fix crash in root device check. [GH-1360] 5633 * builder/amazon-chroot: Add description that Packer made the snapshot 5634 with a time. [GH-1388] 5635 * builder/amazon-ebs: AMI is deregistered if an error. [GH-1186] 5636 * builder/amazon-instance: Fix deprecation warning for `ec2-bundle-vol` 5637 [GH-1424] 5638 * builder/amazon-instance: Add `--no-filter` to the `ec2-bundle-vol` 5639 command by default to avoid corrupting data by removing package 5640 manager certs. [GH-1137] 5641 * builder/amazon/all: `delete_on_termination` set to false will work. 5642 * builder/amazon/all: Fix race condition on setting tags. [GH-1367] 5643 * builder/amazon/all: More descriptive error messages if Amazon only 5644 sends an error code. [GH-1189] 5645 * builder/docker: Error if `DOCKER_HOST` is set. 5646 * builder/docker: Remove the container during cleanup. [GH-1206] 5647 * builder/docker: Fix case where not all output would show up from 5648 provisioners. 5649 * builder/googlecompute: add `disk_size` option. [GH-1397] 5650 * builder/googlecompute: Auth works with latest formats on Google Cloud 5651 Console. [GH-1344] 5652 * builder/openstack: Region is not required. [GH-1418] 5653 * builder/parallels-iso: ISO not removed from VM after install. [GH-1338] 5654 * builder/parallels/all: Add support for Parallels Desktop 10. [GH-1438] 5655 * builder/parallels/all: Added some navigation keys. [GH-1442] 5656 * builder/qemu: If headless, sdl display won't be used. [GH-1395] 5657 * builder/qemu: Use `512M` as `-m` default. [GH-1444] 5658 * builder/virtualbox/all: Search `VBOX_MSI_INSTALL_PATH` for path to 5659 `VBoxManage` on Windows. [GH-1337] 5660 * builder/virtualbox/all: Seed RNG to avoid same ports. [GH-1386] 5661 * builder/virtualbox/all: Better error if guest additions URL couldn't be 5662 detected. [GH-1439] 5663 * builder/virtualbox/all: Detect errors even when `VBoxManage` exits 5664 with a zero exit code. [GH-1119] 5665 * builder/virtualbox/iso: Append timestamp to default name for parallel 5666 builds. [GH-1365] 5667 * builder/vmware/all: No more error when Packer stops an already-stopped 5668 VM. [GH-1300] 5669 * builder/vmware/all: `ssh_host` accepts templates. [GH-1396] 5670 * builder/vmware/all: Don't remount floppy in VMX post step. [GH-1239] 5671 * builder/vmware/vmx: Do not re-add floppy disk files to VMX. [GH-1361] 5672 * builder/vmware-iso: Fix crash when `vnc_port_min` and max were the 5673 same value. [GH-1288] 5674 * builder/vmware-iso: Finding an available VNC port on Windows works. [GH-1372] 5675 * builder/vmware-vmx: Nice error if Clone is not supported (not VMware 5676 Fusion Pro). [GH-787] 5677 * post-processor/vagrant: Can supply your own metadata.json. [GH-1143] 5678 * provisioner/ansible-local: Use proper path on Windows. [GH-1375] 5679 * provisioner/file: Mode will now be preserved. [GH-1064] 5680 5681 ## 0.6.1 (July 20, 2014) 5682 5683 ### FEATURES: 5684 5685 * **New post processor:** `vagrant-cloud` - Push box files generated by 5686 vagrant post processor to Vagrant Cloud. [GH-1289] 5687 * Vagrant post-processor can now packer Hyper-V boxes. 5688 5689 ### IMPROVEMENTS: 5690 5691 * builder/amazon: Support for enhanced networking on HVM images. [GH-1228] 5692 * builder/amazon-ebs: Support encrypted EBS volumes. [GH-1194] 5693 * builder/ansible: Add `playbook_dir` option. [GH-1000] 5694 * builder/openstack: Add ability to configure networks. [GH-1261] 5695 * builder/openstack: Skip certificate verification. [GH-1121] 5696 * builder/parallels/all: Add ability to select interface to connect to. 5697 * builder/parallels/pvm: Support `boot_command`. [GH-1082] 5698 * builder/virtualbox/all: Attempt to use local guest additions ISO 5699 before downloading from internet. [GH-1123] 5700 * builder/virtualbox/ovf: Supports `guest_additions_mode` [GH-1035] 5701 * builder/vmware/all: Increase cleanup timeout to 120 seconds. [GH-1167] 5702 * builder/vmware/all: Add `vmx_data_post` for modifying VMX data 5703 after shutdown. [GH-1149] 5704 * builder/vmware/vmx: Supports tools uploading. [GH-1154] 5705 5706 ### BUG FIXES: 5707 5708 * core: `isotime` is the same time during the entire build. [GH-1153] 5709 * builder/amazon-common: Sort AMI strings before outputting. [GH-1305] 5710 * builder/amazon: User data can use templates/variables. [GH-1343] 5711 * builder/amazon: Can now build AMIs in GovCloud. 5712 * builder/null: SSH info can use templates/variables. [GH-1343] 5713 * builder/openstack: Workaround for gophercloud.ServerById crashing. [GH-1257] 5714 * builder/openstack: Force IPv4 addresses from address pools. [GH-1258] 5715 * builder/parallels: Do not delete entire CDROM device. [GH-1115] 5716 * builder/parallels: Errors while creating floppy disk. [GH-1225] 5717 * builder/parallels: Errors while removing floppy drive. [GH-1226] 5718 * builder/virtualbox-ovf: Supports guest additions options. [GH-1120] 5719 * builder/vmware-iso: Fix esx5 path separator in windows. [GH-1316] 5720 * builder/vmware: Remote ESXi builder now uploads floppy. [GH-1106] 5721 * builder/vmware: Remote ESXi builder no longer re-uploads ISO every 5722 time. [GH-1244] 5723 * post-processor/vsphere: Accept DOMAIN\account usernames. [GH-1178] 5724 * provisioner/chef-*: Fix remotePaths for Windows. [GH-394] 5725 5726 ## 0.6.0 (May 2, 2014) 5727 5728 ### FEATURES: 5729 5730 * **New builder:** `null` - The null builder does not produce any 5731 artifacts, but is useful for debugging provisioning scripts. [GH-970] 5732 * **New builder:** `parallels-iso` and `parallels-pvm` - These can be 5733 used to build Parallels virtual machines. [GH-1101] 5734 * **New provisioner:** `chef-client` - Provision using a the `chef-client` 5735 command, which talks to a Chef Server. [GH-855] 5736 * **New provisioner:** `puppet-server` - Provision using Puppet by 5737 communicating to a Puppet master. [GH-796] 5738 * `min_packer_version` can be specified in a Packer template to force 5739 a minimum version. [GH-487] 5740 5741 ### IMPROVEMENTS: 5742 5743 * core: RPC transport between plugins switched to MessagePack 5744 * core: Templates array values can now be comma separated strings. 5745 Most importantly, this allows for user variables to fill 5746 array configurations. [GH-950] 5747 * builder/amazon: Added `ssh_private_key_file` option. [GH-971] 5748 * builder/amazon: Added `ami_virtualization_type` option. [GH-1021] 5749 * builder/digitalocean: Regions, image names, and sizes can be 5750 names that are looked up for their valid ID. [GH-960] 5751 * builder/googlecompute: Configurable instance name. [GH-1065] 5752 * builder/openstack: Support for conventional OpenStack environmental 5753 variables such as `OS_USERNAME`, `OS_PASSWORD`, etc. [GH-768] 5754 * builder/openstack: Support `openstack_provider` option to automatically 5755 fill defaults for different OpenStack variants. [GH-912] 5756 * builder/openstack: Support security groups. [GH-848] 5757 * builder/qemu: User variable expansion in `ssh_key_path` [GH-918] 5758 * builder/qemu: Floppy disk files list can also include globs 5759 and directories. [GH-1086] 5760 * builder/virtualbox: Support an `export_opts` option which allows 5761 specifying arbitrary arguments when exporting the VM. [GH-945] 5762 * builder/virtualbox: Added `vboxmanage_post` option to run vboxmanage 5763 commands just before exporting. [GH-664] 5764 * builder/virtualbox: Floppy disk files list can also include globs 5765 and directories. [GH-1086] 5766 * builder/vmware: Workstation 10 support for Linux. [GH-900] 5767 * builder/vmware: add cloning support on Windows. [GH-824] 5768 * builder/vmware: Floppy disk files list can also include globs 5769 and directories. [GH-1086] 5770 * command/build: Added `-parallel` flag so you can disable parallelization 5771 with `-no-parallel`. [GH-924] 5772 * post-processors/vsphere: `disk_mode` option. [GH-778] 5773 * provisioner/ansible: Add `inventory_file` option. [GH-1006] 5774 * provisioner/chef-client: Add `validation_client_name` option. [GH-1056] 5775 5776 ### BUG FIXES: 5777 5778 * core: Errors are properly shown when adding bad floppy files. [GH-1043] 5779 * core: Fix some URL parsing issues on Windows. 5780 * core: Create Cache directory only when it is needed. [GH-367] 5781 * builder/amazon-instance: Use S3Endpoint for ec2-upload-bundle arg, 5782 which works for every region. [GH-904] 5783 * builder/digitalocean: updated default image_id. [GH-1032] 5784 * builder/googlecompute: Create persistent disk as boot disk via 5785 API v1. [GH-1001] 5786 * builder/openstack: Return proper error on invalid instance states. [GH-1018] 5787 * builder/virtualbox-iso: Retry unregister a few times to deal with 5788 VBoxManage randomness. [GH-915] 5789 * provisioner/ansible: Fix paths when provisioning Linux from 5790 Windows. [GH-963] 5791 * provisioner/ansible: set cwd to staging directory. [GH-1016] 5792 * provisioners/chef-client: Don't chown directory with Ubuntu. [GH-939] 5793 * provisioners/chef-solo: Deeply nested JSON works properly. [GH-1076] 5794 * provisioners/shell: Env var values can have equal signs. [GH-1045] 5795 * provisioners/shell: chmod the uploaded script file to 0777. [GH-994] 5796 * post-processor/docker-push: Allow repositories with ports. [GH-923] 5797 * post-processor/vagrant: Create parent directories for `output` path. [GH-1059] 5798 * post-processor/vsphere: datastore, network, and folder are no longer 5799 required. [GH-1091] 5800 5801 ## 0.5.2 (02/21/2014) 5802 5803 ### FEATURES: 5804 5805 * **New post-processor:** `docker-import` - Import a Docker image and give it 5806 a specific repository/tag. 5807 * **New post-processor:** `docker-push` - Push an imported image to 5808 a registry. 5809 5810 ### IMPROVEMENTS: 5811 5812 * core: Most downloads made by Packer now use a custom user agent. [GH-803] 5813 * builder/googlecompute: SSH private key will be saved to disk if `-debug` is 5814 specified. [GH-867] 5815 * builder/qemu: Can specify the name of the qemu binary. [GH-854] 5816 * builder/virtualbox-ovf: Can specify import options such as "keepallmacs". 5817 [GH-883] 5818 5819 ### BUG FIXES: 5820 5821 * core: Fix crash case if blank parameters are given to Packer. [GH-832] 5822 * core: Fix crash if big file uploads are done. [GH-897] 5823 * core: Fix crash if machine-readable output is going to a closed 5824 pipe. [GH-875] 5825 * builder/docker: user variables work properly. [GH-777] 5826 * builder/qemu: reboots are now possible in provisioners. [GH-864] 5827 * builder/virtualbox,vmware: iso\_checksum is not required if the 5828 checksum type is "none" 5829 * builder/virtualbox,vmware/qemu: Support for additional scancodes for 5830 `boot_command` such as `<up>`, `<left>`, `<insert>`, etc. [GH-808] 5831 * communicator/ssh: Send TCP keep-alives on connections. [GH-872] 5832 * post-processor/vagrant: AWS/DigitalOcean keep input artifacts by 5833 default. [GH-55] 5834 * provisioners/ansible-local: Properly upload custom playbooks. [GH-829] 5835 * provisioners/ansible-local: Better error if ansible isn't installed. 5836 [GH-836] 5837 5838 ## 0.5.1 (01/02/2014) 5839 5840 ### BUG FIXES: 5841 5842 * core: If a stream ID loops around, don't let it use stream ID 0. [GH-767] 5843 * core: Fix issue where large writes to plugins would result in stream 5844 corruption. [GH-727] 5845 * builders/virtualbox-ovf: `shutdown_timeout` config works. [GH-772] 5846 * builders/vmware-iso: Remote driver works properly again. [GH-773] 5847 5848 ## 0.5.0 (12/30/2013) 5849 5850 ### BACKWARDS INCOMPATIBILITIES: 5851 5852 * "virtualbox" builder has been renamed to "virtualbox-iso". Running your 5853 template through `packer fix` will resolve this. 5854 * "vmware" builder has been renamed to "vmware-iso". Running your template 5855 through `packer fix` will resolve this. 5856 * post-processor/vagrant: Syntax for overriding by provider has changed. 5857 See the documentation for more information. Running your template 5858 through `packer fix` should resolve this. 5859 * post-processor/vsphere: Some available configuration options were 5860 changed. Running your template through `packer fix` should resolve 5861 this. 5862 * provisioner/puppet-masterless: The `execute_command` no longer has 5863 the `Has*` variables, since the templating language now supports 5864 comparison operations. See the Go documentation for more info: 5865 http://golang.org/pkg/text/template/ 5866 5867 ### FEATURES: 5868 5869 * **New builder:** Google Compute Engine. You can now build images for 5870 use in Google Compute Engine. See the documentation for more information. 5871 [GH-715] 5872 * **New builder:** "virtualbox-ovf" can build VirtualBox images from 5873 an existing OVF or OVA. [GH-201] 5874 * **New builder:** "vmware-vmx" can build VMware images from an existing 5875 VMX. [GH-201] 5876 * Environmental variables can now be accessed as default values for 5877 user variables using the "env" function. See the documentation for more 5878 information. 5879 * "description" field in templates: write a human-readable description 5880 of what a template does. This will be shown in `packer inspect`. 5881 * Vagrant post-processor now accepts a list of files to include in the 5882 box. 5883 * All provisioners can now have a "pause\_before" parameter to wait 5884 some period of time before running that provisioner. This is useful 5885 for reboots. [GH-737] 5886 5887 ### IMPROVEMENTS: 5888 5889 * core: Plugins communicate over a single TCP connection per plugin now, 5890 instead of sometimes dozens. Performance around plugin communication 5891 dramatically increased. 5892 * core: Build names are now template processed so you can use things 5893 like user variables in them. [GH-744] 5894 * core: New "pwd" function available globally that returns the working 5895 directory. [GH-762] 5896 * builder/amazon/all: Launched EC2 instances now have a name of 5897 "Packer Builder" so that they are easily recognizable. [GH-642] 5898 * builder/amazon/all: Copying AMIs to multiple regions now happens 5899 in parallel. [GH-495] 5900 * builder/amazon/all: Ability to specify "run\_tags" to tag the instance 5901 while running. [GH-722] 5902 * builder/digitalocean: Private networking support. [GH-698] 5903 * builder/docker: A "run\_command" can be specified, configuring how 5904 the container is started. [GH-648] 5905 * builder/openstack: In debug mode, the generated SSH keypair is saved 5906 so you can SSH into the machine. [GH-746] 5907 * builder/qemu: Floppy files are supported. [GH-686] 5908 * builder/qemu: Next `run_once` option tells Qemu to run only once, 5909 which is useful for Windows installs that handle reboots for you. 5910 [GH-687] 5911 * builder/virtualbox: Nice errors if Packer can't write to 5912 the output directory. 5913 * builder/virtualbox: ISO is ejected prior to export. 5914 * builder/virtualbox: Checksum type can be "none" [GH-471] 5915 * builder/vmware: Can now specify path to the Fusion application. [GH-677] 5916 * builder/vmware: Checksum type can be "none" [GH-471] 5917 * provisioner/puppet-masterless: Can now specify a `manifest_dir` to 5918 upload manifests to the remote machine for imports. [GH-655] 5919 5920 ### BUG FIXES: 5921 5922 * core: No colored output in machine-readable output. [GH-684] 5923 * core: User variables can now be used for non-string fields. [GH-598] 5924 * core: Fix bad download paths if the download URL contained a "." 5925 before a "/" [GH-716] 5926 * core: "{{timestamp}}" values will always be the same for the entire 5927 duration of a build. [GH-744] 5928 * builder/amazon: Handle cases where security group isn't instantly 5929 available. [GH-494] 5930 * builder/virtualbox: don't download guest additions if disabled. [GH-731] 5931 * post-processor/vsphere: Uploads VM properly. [GH-694] 5932 * post-processor/vsphere: Process user variables. 5933 * provisioner/ansible-local: all configurations are processed as templates 5934 [GH-749] 5935 * provisioner/ansible-local: playbook paths are properly validated 5936 as directories, not files. [GH-710] 5937 * provisioner/chef-solo: Environments are recognized. [GH-726] 5938 5939 ## 0.4.1 (December 7, 2013) 5940 5941 ### IMPROVEMENTS: 5942 5943 * builder/amazon/ebs: New option allows associating a public IP with 5944 non-default VPC instances. [GH-660] 5945 * builder/openstack: A "proxy\_url" setting was added to define an HTTP 5946 proxy to use when building with this builder. [GH-637] 5947 5948 ### BUG FIXES: 5949 5950 * core: Don't change background color on CLI anymore, making things look 5951 a tad nicer in some terminals. 5952 * core: multiple ISO URLs works properly in all builders. [GH-683] 5953 * builder/amazon/chroot: Block when obtaining file lock to allow 5954 parallel builds. [GH-689] 5955 * builder/amazon/instance: Add location flag to upload bundle command 5956 so that building AMIs works out of us-east-1. [GH-679] 5957 * builder/qemu: Qemu arguments are templated. [GH-688] 5958 * builder/vmware: Cleanup of VMX keys works properly so cd-rom won't 5959 get stuck with ISO. [GH-685] 5960 * builder/vmware: File cleanup is more resilient to file delete races 5961 with the operating system. [GH-675] 5962 * provisioner/puppet-masterless: Check for hiera config path existence 5963 properly. [GH-656] 5964 5965 ## 0.4.0 (November 19, 2013) 5966 5967 ### FEATURES: 5968 5969 * Docker builder: build and export Docker containers, easily provisioned 5970 with any of the Packer built-in provisioners. 5971 * QEMU builder: builds a new VM compatible with KVM or Xen using QEMU. 5972 * Remote ESXi builder: builds a VMware VM using ESXi remotely using only 5973 SSH to an ESXi machine directly. 5974 * vSphere post-processor: Can upload VMware artifacts to vSphere 5975 * Vagrant post-processor can now make DigitalOcean provider boxes. [GH-504] 5976 5977 ### IMPROVEMENTS: 5978 5979 * builder/amazon/all: Can now specify a list of multiple security group 5980 IDs to apply. [GH-499] 5981 * builder/amazon/all: AWS API requests are now retried when a temporary 5982 network error occurs as well as 500 errors. [GH-559] 5983 * builder/virtualbox: Use VBOX\_INSTALL\_PATH env var on Windows to find 5984 VBoxManage. [GH-628] 5985 * post-processor/vagrant: skips gzip compression when compression_level=0 5986 * provisioner/chef-solo: Encrypted data bag support. [GH-625] 5987 5988 ### BUG FIXES: 5989 5990 * builder/amazon/chroot: Copying empty directories works. [GH-588] 5991 * builder/amazon/chroot: Chroot commands work with shell provisioners. [GH-581] 5992 * builder/amazon/chroot: Don't choose a mount point that is a partition of 5993 an already mounted device. [GH-635] 5994 * builder/virtualbox: Ctrl-C interrupts during waiting for boot. [GH-618] 5995 * builder/vmware: VMX modifications are now case-insensitive. [GH-608] 5996 * builder/vmware: VMware Fusion won't ask for VM upgrade. 5997 * builder/vmware: Ctrl-C interrupts during waiting for boot. [GH-618] 5998 * provisioner/chef-solo: Output is slightly prettier and more informative. 5999 6000 ## 0.3.11 (November 4, 2013) 6001 6002 ### FEATURES: 6003 6004 * builder/amazon/ebs: Ability to specify which availability zone to create 6005 instance in. [GH-536] 6006 6007 ### IMPROVEMENTS: 6008 6009 * core: builders can now give warnings during validation. warnings won't 6010 fail the build but may hint at potential future problems. 6011 * builder/digitalocean: Can now specify a droplet name 6012 * builder/virtualbox: Can now disable guest addition download entirely 6013 by setting "guest_additions_mode" to "disable" [GH-580] 6014 * builder/virtualbox,vmware: ISO urls can now be https. [GH-587] 6015 * builder/virtualbox,vmware: Warning if shutdown command is not specified, 6016 since it is a common case of data loss. 6017 6018 ### BUG FIXES: 6019 6020 * core: Won't panic when writing to a bad pipe. [GH-560] 6021 * builder/amazon/all: Properly scrub access key and secret key from logs. 6022 [GH-554] 6023 * builder/openstack: Properly scrub password from logs. [GH-554] 6024 * builder/virtualbox: No panic if SSH host port min/max is the same. [GH-594] 6025 * builder/vmware: checks if `ifconfig` is in `/sbin` [GH-591] 6026 * builder/vmware: Host IP lookup works for non-C locales. [GH-592] 6027 * common/uuid: Use cryptographically secure PRNG when generating 6028 UUIDs. [GH-552] 6029 * communicator/ssh: File uploads that exceed the size of memory no longer 6030 cause crashes. [GH-561] 6031 6032 ## 0.3.10 (October 20, 2013) 6033 6034 ### FEATURES: 6035 6036 * Ansible provisioner 6037 6038 ### IMPROVEMENTS: 6039 6040 * post-processor/vagrant: support instance-store AMIs built by Packer. [GH-502] 6041 * post-processor/vagrant: can now specify compression level to use 6042 when creating the box. [GH-506] 6043 6044 ### BUG FIXES: 6045 6046 * builder/all: timeout waiting for SSH connection is a failure. [GH-491] 6047 * builder/amazon: Scrub sensitive data from the logs. [GH-521] 6048 * builder/amazon: Handle the situation where an EC2 instance might not 6049 be immediately available. [GH-522] 6050 * builder/amazon/chroot: Files copied into the chroot remove destination 6051 before copy, fixing issues with dangling symlinks. [GH-500] 6052 * builder/digitalocean: don't panic if erroneous API response doesn't 6053 contain error message. [GH-492] 6054 * builder/digitalocean: scrub API keys from config debug output. [GH-516] 6055 * builder/virtualbox: error if VirtualBox version cant be detected. [GH-488] 6056 * builder/virtualbox: detect if vboxdrv isn't properly setup. [GH-488] 6057 * builder/virtualbox: sleep a bit before export to ensure the session 6058 is unlocked. [GH-512] 6059 * builder/virtualbox: create SATA drives properly on VirtualBox 4.3. [GH-547] 6060 * builder/virtualbox: support user templates in SSH key path. [GH-539] 6061 * builder/vmware: support user templates in SSH key path. [GH-539] 6062 * communicator/ssh: Fix issue where a panic could arise from a nil 6063 dereference. [GH-525] 6064 * post-processor/vagrant: Fix issue with VirtualBox OVA. [GH-548] 6065 * provisioner/salt: Move salt states to correct remote directory. [GH-513] 6066 * provisioner/shell: Won't block on certain scripts on Windows anymore. 6067 [GH-507] 6068 6069 ## 0.3.9 (October 2, 2013) 6070 6071 ### FEATURES: 6072 6073 * The Amazon chroot builder is now able to run without any `sudo` privileges 6074 by using the "command_wrapper" configuration. [GH-430] 6075 * Chef provisioner supports environments. [GH-483] 6076 6077 ### BUG FIXES: 6078 6079 * core: default user variable values don't need to be strings. [GH-456] 6080 * builder/amazon-chroot: Fix errors with waiting for state change. [GH-459] 6081 * builder/digitalocean: Use proper error message JSON key (DO API change). 6082 * communicator/ssh: SCP uploads now work properly when directories 6083 contain symlinks. [GH-449] 6084 * provisioner/chef-solo: Data bags and roles path are now properly 6085 populated when set. [GH-470] 6086 * provisioner/shell: Windows line endings are actually properly changed 6087 to Unix line endings. [GH-477] 6088 6089 ## 0.3.8 (September 22, 2013) 6090 6091 ### FEATURES: 6092 6093 * core: You can now specify `only` and `except` configurations on any 6094 provisioner or post-processor to specify a list of builds that they 6095 are valid for. [GH-438] 6096 * builders/virtualbox: Guest additions can be attached rather than uploaded, 6097 easier to handle for Windows guests. [GH-405] 6098 * provisioner/chef-solo: Ability to specify a custom Chef configuration 6099 template. 6100 * provisioner/chef-solo: Roles and data bags support. [GH-348] 6101 6102 ### IMPROVEMENTS: 6103 6104 * core: User variables can now be used for integer, boolean, etc. 6105 values. [GH-418] 6106 * core: Plugins made with incompatible versions will no longer load. 6107 * builder/amazon/all: Interrupts work while waiting for AMI to be ready. 6108 * provisioner/shell: Script line-endings are automatically converted to 6109 Unix-style line-endings. Can be disabled by setting "binary" to "true". 6110 [GH-277] 6111 6112 ### BUG FIXES: 6113 6114 * core: Set TCP KeepAlives on internally created RPC connections so that 6115 they don't die. [GH-416] 6116 * builder/amazon/all: While waiting for AMI, will detect "failed" state. 6117 * builder/amazon/all: Waiting for state will detect if the resource (AMI, 6118 instance, etc.) disappears from under it. 6119 * builder/amazon/instance: Exclude only contents of /tmp, not /tmp 6120 itself. [GH-437] 6121 * builder/amazon/instance: Make AccessKey/SecretKey available to bundle 6122 command even when they come from the environment. [GH-434] 6123 * builder/virtualbox: F1-F12 and delete scancodes now work. [GH-425] 6124 * post-processor/vagrant: Override configurations properly work. [GH-426] 6125 * provisioner/puppet-masterless: Fix failure case when both facter vars 6126 are used and prevent_sudo. [GH-415] 6127 * provisioner/puppet-masterless: User variables now work properly in 6128 manifest file and hiera path. [GH-448] 6129 6130 ## 0.3.7 (September 9, 2013) 6131 6132 ### BACKWARDS INCOMPATIBILITIES: 6133 6134 * The "event_delay" option for the DigitalOcean builder is now gone. 6135 The builder automatically waits for events to go away. Run your templates 6136 through `packer fix` to get rid of these. 6137 6138 ### FEATURES: 6139 6140 * **NEW PROVISIONER:** `puppet-masterless`. You can now provision with 6141 a masterless Puppet setup. [GH-234] 6142 * New globally available template function: `uuid`. Generates a new random 6143 UUID. 6144 * New globally available template function: `isotime`. Generates the 6145 current time in ISO standard format. 6146 * New Amazon template function: `clean_ami_name`. Substitutes '-' for 6147 characters that are illegal to use in an AMI name. 6148 6149 ### IMPROVEMENTS: 6150 6151 * builder/amazon/all: Ability to specify the format of the temporary 6152 keypair created. [GH-389] 6153 * builder/amazon/all: Support the NoDevice flag for block mappings. [GH-396] 6154 * builder/digitalocean: Retry on any pending event errors. 6155 * builder/openstack: Can now specify a project. [GH-382] 6156 * builder/virtualbox: Can now attach hard drive over SATA. [GH-391] 6157 * provisioner/file: Can now upload directories. [GH-251] 6158 6159 ### BUG FIXES: 6160 6161 * core: Detect if SCP is not enabled on the other side. [GH-386] 6162 * builder/amazon/all: When copying AMI to multiple regions, copy 6163 the metadata (tags and attributes) as well. [GH-388] 6164 * builder/amazon/all: Fix panic case where eventually consistent 6165 instance state caused an index out of bounds. 6166 * builder/virtualbox: The `vm_name` setting now properly sets the OVF 6167 name of the output. [GH-401] 6168 * builder/vmware: Autoanswer VMware dialogs. [GH-393] 6169 * command/inspect: Fix weird output for default values for optional vars. 6170 6171 ## 0.3.6 (September 2, 2013) 6172 6173 ### FEATURES: 6174 6175 * User variables can now be specified as "required", meaning the user 6176 MUST specify a value. Just set the default value to "null". [GH-374] 6177 6178 ### IMPROVEMENTS: 6179 6180 * core: Much improved interrupt handling. For example, interrupts now 6181 cancel much more quickly within provisioners. 6182 * builder/amazon: In `-debug` mode, the keypair used will be saved to 6183 the current directory so you can access the machine. [GH-373] 6184 * builder/amazon: In `-debug` mode, the DNS is outputted. 6185 * builder/openstack: IPv6 addresses supported for SSH. [GH-379] 6186 * communicator/ssh: Support for private keys encrypted using PKCS8. [GH-376] 6187 * provisioner/chef-solo: You can now use user variables in the `json` 6188 configuration for Chef. [GH-362] 6189 6190 ### BUG FIXES: 6191 6192 * core: Concurrent map access is completely gone, fixing rare issues 6193 with runtime memory corruption. [GH-307] 6194 * core: Fix possible panic when ctrl-C during provisioner run. 6195 * builder/digitalocean: Retry destroy a few times because DO sometimes 6196 gives false errors. 6197 * builder/openstack: Properly handle the case no image is made. [GH-375] 6198 * builder/openstack: Specifying a region is now required in a template. 6199 * provisioners/salt-masterless: Use filepath join to properly join paths. 6200 6201 ## 0.3.5 (August 28, 2013) 6202 6203 ### FEATURES: 6204 6205 * **NEW BUILDER:** `openstack`. You can now build on OpenStack. [GH-155] 6206 * **NEW PROVISIONER:** `chef-solo`. You can now provision with Chef 6207 using `chef-solo` from local cookbooks. 6208 * builder/amazon: Copy AMI to multiple regions with `ami_regions`. [GH-322] 6209 * builder/virtualbox,vmware: Can now use SSH keys as an auth mechanism for 6210 SSH using `ssh_key_path`. [GH-70] 6211 * builder/virtualbox,vmware: Support SHA512 as a checksum type. [GH-356] 6212 * builder/vmware: The root hard drive type can now be specified with 6213 "disk_type_id" for advanced users. [GH-328] 6214 * provisioner/salt-masterless: Ability to specify a minion config. [GH-264] 6215 * provisioner/salt-masterless: Ability to upload pillars. [GH-353] 6216 6217 ### IMPROVEMENTS: 6218 6219 * core: Output message when Ctrl-C received that we're cleaning up. [GH-338] 6220 * builder/amazon: Tagging now works with all amazon builder types. 6221 * builder/vmware: Option `ssh_skip_request_pty` for not requesting a PTY 6222 for the SSH connection. [GH-270] 6223 * builder/vmware: Specify a `vmx_template_path` in order to customize 6224 the generated VMX. [GH-270] 6225 * command/build: Machine-readable output now contains build errors, if any. 6226 * command/build: An "end" sentinel is outputted in machine-readable output 6227 for artifact listing so it is easier to know when it is over. 6228 6229 ### BUG FIXES: 6230 6231 * core: Fixed a couple cases where a double ctrl-C could panic. 6232 * core: Template validation fails if an override is specified for a 6233 non-existent builder. [GH-336] 6234 * core: The SSH connection is heartbeated so that drops can be 6235 detected. [GH-200] 6236 * builder/amazon/instance: Remove check for ec2-ami-tools because it 6237 didn't allow absolute paths to work properly. [GH-330] 6238 * builder/digitalocean: Send a soft shutdown request so that files 6239 are properly synced before shutdown. [GH-332] 6240 * command/build,command/validate: If a non-existent build is specified to 6241 '-only' or '-except', it is now an error. [GH-326] 6242 * post-processor/vagrant: Setting OutputPath with a timestamp now 6243 always works properly. [GH-324] 6244 * post-processor/vagrant: VirtualBox OVA formats now turn into 6245 Vagrant boxes properly. [GH-331] 6246 * provisioner/shell: Retry upload if start command fails, making reboot 6247 handling much more robust. 6248 6249 ## 0.3.4 (August 21, 2013) 6250 6251 ### IMPROVEMENTS: 6252 6253 * post-processor/vagrant: the file being compressed will be shown 6254 in the UI. [GH-314] 6255 6256 ### BUG FIXES: 6257 6258 * core: Avoid panics when double-interrupting Packer. 6259 * provisioner/shell: Retry shell script uploads, making reboots more 6260 robust if they happen to fail in this stage. [GH-282] 6261 6262 ## 0.3.3 (August 19, 2013) 6263 6264 ### FEATURES: 6265 6266 * builder/virtualbox: support exporting in OVA format. [GH-309] 6267 6268 ### IMPROVEMENTS: 6269 6270 * core: All HTTP downloads across Packer now support the standard 6271 proxy environmental variables (`HTTP_PROXY`, `NO_PROXY`, etc.) [GH-252] 6272 * builder/amazon: API requests will use HTTP proxy if specified by 6273 environmental variables. 6274 * builder/digitalocean: API requests will use HTTP proxy if specified 6275 by environmental variables. 6276 6277 ### BUG FIXES: 6278 6279 * core: TCP connection between plugin processes will keep-alive. [GH-312] 6280 * core: No more "unused key keep_input_artifact" for post processors. [GH-310] 6281 * post-processor/vagrant: `output_path` templates now work again. 6282 6283 ## 0.3.2 (August 18, 2013) 6284 6285 ### FEATURES: 6286 6287 * New command: `packer inspect`. This command tells you the components of 6288 a template. It respects the `-machine-readable` flag as well so you can 6289 parse out components of a template. 6290 * Packer will detect its own crashes (always a bug) and save a "crash.log" 6291 file. 6292 * builder/virtualbox: You may now specify multiple URLs for an ISO 6293 using "iso_url" in a template. The URLs will be tried in order. 6294 * builder/vmware: You may now specify multiple URLs for an ISO 6295 using "iso_url" in a template. The URLs will be tried in order. 6296 6297 ### IMPROVEMENTS: 6298 6299 * core: built with Go 1.1.2 6300 * core: packer help output now loads much faster. 6301 * builder/virtualbox: guest_additions_url can now use the `Version` 6302 variable to get the VirtualBox version. [GH-272] 6303 * builder/virtualbox: Do not check for VirtualBox as part of template 6304 validation; only check at execution. 6305 * builder/vmware: Do not check for VMware as part of template validation; 6306 only check at execution. 6307 * command/build: A path of "-" will read the template from stdin. 6308 * builder/amazon: add block device mappings. [GH-90] 6309 6310 ### BUG FIXES: 6311 6312 * windows: file URLs are easier to get right as Packer 6313 has better parsing and error handling for Windows file paths. [GH-284] 6314 * builder/amazon/all: Modifying more than one AMI attribute type no longer 6315 crashes. 6316 * builder/amazon-instance: send IAM instance profile data. [GH-294] 6317 * builder/digitalocean: API request parameters are properly URL 6318 encoded. [GH-281] 6319 * builder/virtualbox: download progress won't be shown until download 6320 actually starts. [GH-288] 6321 * builder/virtualbox: floppy files names of 13 characters are now properly 6322 written to the FAT12 filesystem. [GH-285] 6323 * builder/vmware: download progress won't be shown until download 6324 actually starts. [GH-288] 6325 * builder/vmware: interrupt works while typing commands over VNC. 6326 * builder/virtualbox: floppy files names of 13 characters are now properly 6327 written to the FAT12 filesystem. [GH-285] 6328 * post-processor/vagrant: Process user variables. [GH-295] 6329 6330 ## 0.3.1 (August 12, 2013) 6331 6332 ### IMPROVEMENTS: 6333 6334 * provisioner/shell: New setting `start_retry_timeout` which is the timeout 6335 for the provisioner to attempt to _start_ the remote process. This allows 6336 the shell provisioner to work properly with reboots. [GH-260] 6337 6338 ### BUG FIXES: 6339 6340 * core: Remote command output containing '\r' now looks much better 6341 within the Packer output. 6342 * builder/vmware: Fix issue with finding driver files. [GH-279] 6343 * provisioner/salt-masterless: Uploads work properly from Windows. [GH-276] 6344 6345 ## 0.3.0 (August 12, 2013) 6346 6347 ### BACKWARDS INCOMPATIBILITIES: 6348 6349 * All `{{.CreateTime}}` variables within templates (such as for AMI names) 6350 are now replaced with `{{timestamp}}`. Run `packer fix` to fix your 6351 templates. 6352 6353 ### FEATURES: 6354 6355 * **User Variables** allow you to specify variables within your templates 6356 that can be replaced using the command-line, files, or environmental 6357 variables. This dramatically improves the portability of packer templates. 6358 See the documentation for more information. 6359 * **Machine-readable output** can be enabled by passing the 6360 `-machine-readable` flag to _any_ Packer command. 6361 * All strings in a template are now processed for variables/functions, 6362 so things like `{{timestamp}}` can be used everywhere. More features will 6363 be added in the future. 6364 * The `amazon` builders (all of them) can now have attributes of their 6365 resulting AMIs modified, such as access permissions and product codes. 6366 6367 ### IMPROVEMENTS: 6368 6369 * builder/amazon/all: User data can be passed to start the instances. [GH-253] 6370 * provisioner/salt-masterless: `local_state_tree` is no longer required, 6371 allowing you to use shell provisioner (or others) to bring this down. 6372 [GH-269] 6373 6374 ### BUG FIXES: 6375 6376 * builder/amazon/ebs,instance: Retry deleing security group a few times. 6377 [GH-278] 6378 * builder/vmware: Workstation works on Windows XP now. [GH-238] 6379 * builder/vmware: Look for files on Windows in multiple locations 6380 using multiple environmental variables. [GH-263] 6381 * provisioner/salt-masterless: states aren't deleted after the run 6382 anymore. [GH-265] 6383 * provisioner/salt-masterless: error if any commands exit with a non-zero 6384 exit status. [GH-266] 6385 6386 ## 0.2.3 (August 7, 2013) 6387 6388 ### IMPROVEMENTS: 6389 6390 * builder/amazon/all: Added Amazon AMI tag support. [GH-233] 6391 6392 ### BUG FIXES: 6393 6394 * core: Absolute/relative filepaths on Windows now work for iso_url 6395 and other settings. [GH-240] 6396 * builder/amazon/all: instance info is refreshed while waiting for SSH, 6397 allowing Packer to see updated IP/DNS info. [GH-243] 6398 6399 ## 0.2.2 (August 1, 2013) 6400 6401 ### FEATURES: 6402 6403 * New builder: `amazon-chroot` can create EBS-backed AMIs without launching 6404 a new EC2 instance. This can shave minutes off of the AMI creation process. 6405 See the docs for more info. 6406 * New provisioner: `salt-masterless` will provision the node using Salt 6407 without a master. 6408 * The `vmware` builder now works with Workstation 9 on Windows. [GH-222] 6409 * The `vmware` builder now works with Player 5 on Linux. [GH-190] 6410 6411 ### IMPROVEMENTS: 6412 6413 * core: Colors won't be outputted on Windows unless in Cygwin. 6414 * builder/amazon/all: Added `iam_instance_profile` to launch the source 6415 image with a given IAM profile. [GH-226] 6416 6417 ### BUG FIXES: 6418 6419 * builder/virtualbox,vmware: relative paths work properly as URL 6420 configurations. [GH-215] 6421 * builder/virtualbox,vmware: fix race condition in deleting the output 6422 directory on Windows by retrying. 6423 6424 ## 0.2.1 (July 26, 2013) 6425 6426 ### FEATURES: 6427 6428 * New builder: `amazon-instance` can create instance-storage backed 6429 AMIs. 6430 * VMware builder now works with Workstation 9 on Linux. 6431 6432 ### IMPROVEMENTS: 6433 6434 * builder/amazon/all: Ctrl-C while waiting for state change works 6435 * builder/amazon/ebs: Can now launch instances into a VPC for added protection. [GH-210] 6436 * builder/virtualbox,vmware: Add backspace, delete, and F1-F12 keys to the boot 6437 command. 6438 * builder/virtualbox: massive performance improvements with big ISO files because 6439 an expensive copy is avoided. [GH-202] 6440 * builder/vmware: CD is removed prior to exporting final machine. [GH-198] 6441 6442 ### BUG FIXES: 6443 6444 * builder/amazon/all: Gracefully handle when AMI appears to not exist 6445 while AWS state is propagating. [GH-207] 6446 * builder/virtualbox: Trim carriage returns for Windows to properly 6447 detect VM state on Windows. [GH-218] 6448 * core: build names no longer cause invalid config errors. [GH-197] 6449 * command/build: If any builds fail, exit with non-zero exit status. 6450 * communicator/ssh: SCP exit codes are tested and errors are reported. [GH-195] 6451 * communicator/ssh: Properly change slash direction for Windows hosts. [GH-218] 6452 6453 ## 0.2.0 (July 16, 2013) 6454 6455 ### BACKWARDS INCOMPATIBILITIES: 6456 6457 * "iso_md5" in the virtualbox and vmware builders is replaced with 6458 "iso_checksum" and "iso_checksum_type" (with the latter set to "md5"). 6459 See the announce below on `packer fix` to automatically fix your templates. 6460 6461 ### FEATURES: 6462 6463 * **NEW COMMAND:** `packer fix` will attempt to fix templates from older 6464 versions of Packer that are now broken due to backwards incompatibilities. 6465 This command will fix the backwards incompatibilities introduced in this 6466 version. 6467 * Amazon EBS builder can now optionally use a pre-made security group 6468 instead of randomly generating one. 6469 * DigitalOcean API key and client IDs can now be passed in as 6470 environmental variables. See the documentation for more details. 6471 * VirtualBox and VMware can now have `floppy_files` specified to attach 6472 floppy disks when booting. This allows for unattended Windows installs. 6473 * `packer build` has a new `-force` flag that forces the removal of 6474 existing artifacts if they exist. [GH-173] 6475 * You can now log to a file (instead of just stderr) by setting the 6476 `PACKER_LOG_FILE` environmental variable. [GH-168] 6477 * Checksums other than MD5 can now be used. SHA1 and SHA256 can also 6478 be used. See the documentation on `iso_checksum_type` for more info. [GH-175] 6479 6480 ### IMPROVEMENTS: 6481 6482 * core: invalid keys in configuration are now considered validation 6483 errors. [GH-104] 6484 * core: all builders now share a common SSH connection core, improving 6485 SSH reliability over all the builders. 6486 * amazon-ebs: Credentials will come from IAM role if available. [GH-160] 6487 * amazon-ebs: Verify the source AMI is EBS-backed before launching. [GH-169] 6488 * shell provisioner: the build name and builder type are available in 6489 the `PACKER_BUILD_NAME` and `PACKER_BUILDER_TYPE` env vars by default, 6490 respectively. [GH-154] 6491 * vmware: error if shutdown command has non-zero exit status. 6492 6493 ### BUG FIXES: 6494 6495 * core: UI messages are now properly prefixed with spaces again. 6496 * core: If SSH connection ends, re-connection attempts will take 6497 place. [GH-152] 6498 * virtualbox: "paused" doesn't mean the VM is stopped, improving 6499 shutdown detection. 6500 * vmware: error if guest IP could not be detected. [GH-189] 6501 6502 ## 0.1.5 (July 7, 2013) 6503 6504 ### FEATURES: 6505 6506 * "file" uploader will upload files from the machine running Packer to the 6507 remote machine. 6508 * VirtualBox guest additions URL and checksum can now be specified, allowing 6509 the VirtualBox builder to have the ability to be used completely offline. 6510 6511 ### IMPROVEMENTS: 6512 6513 * core: If SCP is not available, a more descriptive error message 6514 is shown telling the user. [GH-127] 6515 * shell: Scripts are now executed by default according to their shebang, 6516 not with `/bin/sh`. [GH-105] 6517 * shell: You can specify what interpreter you want inline scripts to 6518 run with `inline_shebang`. 6519 * virtualbox: Delete the packer-made SSH port forwarding prior to 6520 exporting the VM. 6521 6522 ### BUG FIXES: 6523 6524 * core: Non-200 response codes on downloads now show proper errors. 6525 [GH-141] 6526 * amazon-ebs: SSH handshake is retried. [GH-130] 6527 * vagrant: The `BuildName` template property works properly in 6528 the output path. 6529 * vagrant: Properly configure the provider-specific post-processors so 6530 things like `vagrantfile_template` work. [GH-129] 6531 * vagrant: Close filehandles when copying files so Windows can 6532 rename files. [GH-100] 6533 6534 ## 0.1.4 (July 2, 2013) 6535 6536 ### FEATURES: 6537 6538 * virtualbox: Can now be built headless with the "Headless" option. [GH-99] 6539 * virtualbox: <wait5> and <wait10> codes for waiting 5 and 10 seconds 6540 during the boot sequence, respectively. [GH-97] 6541 * vmware: Can now be built headless with the "Headless" option. [GH-99] 6542 * vmware: <wait5> and <wait10> codes for waiting 5 and 10 seconds 6543 during the boot sequence, respectively. [GH-97] 6544 * vmware: Disks are defragmented and compacted at the end of the build. 6545 This can be disabled using "skip_compaction" 6546 6547 ### IMPROVEMENTS: 6548 6549 * core: Template syntax errors now show line and character number. [GH-56] 6550 * amazon-ebs: Access key and secret access key default to 6551 environmental variables. [GH-40] 6552 * virtualbox: Send password for keyboard-interactive auth. [GH-121] 6553 * vmware: Send password for keyboard-interactive auth. [GH-121] 6554 6555 ### BUG FIXES: 6556 6557 * vmware: Wait until shut down cleans up properly to avoid corrupt 6558 disk files. [GH-111] 6559 6560 ## 0.1.3 (July 1, 2013) 6561 6562 ### FEATURES: 6563 6564 * The VMware builder can now upload the VMware tools for you into 6565 the VM. This is opt-in, you must specify the `tools_upload_flavor` 6566 option. See the website for more documentation. 6567 6568 ### IMPROVEMENTS: 6569 6570 * digitalocean: Errors contain human-friendly error messages. [GH-85] 6571 6572 ### BUG FIXES: 6573 6574 * core: More plugin server fixes that avoid hangs on OS X 10.7. [GH-87] 6575 * vagrant: AWS boxes will keep the AMI artifact around. [GH-55] 6576 * virtualbox: More robust version parsing for uploading guest additions. [GH-69] 6577 * virtualbox: Output dir and VM name defaults depend on build name, 6578 avoiding collisions. [GH-91] 6579 * vmware: Output dir and VM name defaults depend on build name, 6580 avoiding collisions. [GH-91] 6581 6582 ## 0.1.2 (June 29, 2013) 6583 6584 ### IMPROVEMENTS: 6585 6586 * core: Template doesn't validate if there are no builders. 6587 * vmware: Delete any VMware files in the VM that aren't necessary for 6588 it to function. 6589 6590 ### BUG FIXES: 6591 6592 * core: Plugin servers consider a port in use if there is any 6593 error listening to it. This fixes I18n issues and Windows. [GH-58] 6594 * amazon-ebs: Sleep between checking instance state to avoid 6595 RequestLimitExceeded. [GH-50] 6596 * vagrant: Rename VirtualBox ovf to "box.ovf" [GH-64] 6597 * vagrant: VMware boxes have the correct provider type. 6598 * vmware: Properly populate files in artifact so that the Vagrant 6599 post-processor works. [GH-63] 6600 6601 ## 0.1.1 (June 28, 2013) 6602 6603 ### BUG FIXES: 6604 6605 * core: plugins listen explicitly on 127.0.0.1, fixing odd hangs. [GH-37] 6606 * core: fix race condition on verifying checksum of large ISOs which 6607 could cause panics. [GH-52] 6608 * virtualbox: `boot_wait` defaults to "10s" rather than 0. [GH-44] 6609 * virtualbox: if `http_port_min` and max are the same, it will no longer 6610 panic. [GH-53] 6611 * vmware: `boot_wait` defaults to "10s" rather than 0. [GH-44] 6612 * vmware: if `http_port_min` and max are the same, it will no longer 6613 panic. [GH-53] 6614 6615 ## 0.1.0 (June 28, 2013) 6616 6617 * Initial release 6618