Commit Graph
4 Commits
Author SHA1 Message Date
Eng Zer Jun f5ec0f1c57 test: use T.Setenv to set env vars in tests
This commit replaces `os.Setenv` with `t.Setenv` in tests. The
environment variable is automatically restored to its original value
when the test and all its subtests complete.

Reference: https://pkg.go.dev/testing#T.Setenv
Signed-off-by: Eng Zer Jun <[email protected]>
2022-09-20 14:54:20 -04:00
Jenna GoldstrichandWilken Rivera 1dd7532846 Support packer plugins installed plugins in JSON (and HCL without required block) (#11712)
* Parse plugins from nested installed directories in json/non-required block HCL

* Add Packer Plugins installed test

* Add checksum validation for multi-component plugins installed by the packer plugins subcommand (#11732)

This change copies a bit of the logic in hcl2template/plugin in order to
strengthen the check for multi-component plugins installed via the
`packer plugins install` commands.

* Replace ioutil with os pkg

In go1.16 the ioutil std lib package was deprecated in favor of the os
and io packages. This change just updates all Temp creation methods to
their os pkg equivalents.

Co-authored-by: Wilken Rivera <[email protected]>
2022-04-21 15:14:47 -04:00
Megan Marsh bd7b31853e Multi plugin naming (#10608) 2021-02-15 11:10:43 +01:00
Adrien Delorme ed091163be HCL2 Parse packer.required_plugins block + packer init (#10304)
This adds the new `required_plugins` block to be nested under the packer block.

Example:
```hcl
packer {
  required_plugins {
    aws = {
      version = ">= 2.7.0"
      source = "azr/aws"
    }
    azure = ">= 2.7.0"
  }
}
```

For example on darwin_amd64 Packer will install those under :
* "${PACKER_HOME_DIR}/plugin/github.com/azr/amazon/packer-plugin-amazon_2.7.0_x5.0_darwin_amd64"
* "${PACKER_HOME_DIR}/plugin/github.com/hashicorp/azure/packer-plugin-azure_2.7.0_x5.0_darwin_amd64_x5"

+ docs
+ tests
2021-02-02 18:05:04 +01:00