Fix GCP HCL image_encryption_key fields and use the same casing in JSON and HCL2
this closes #9997
This commit is contained in:
parent
c4866504e1
commit
ef32147a4a
|
@ -87,13 +87,19 @@ type Config struct {
|
||||||
// * kmsKeyName - The name of the encryption key that is stored in Google Cloud KMS.
|
// * kmsKeyName - The name of the encryption key that is stored in Google Cloud KMS.
|
||||||
// * RawKey: - A 256-bit customer-supplied encryption key, encodes in RFC 4648 base64.
|
// * RawKey: - A 256-bit customer-supplied encryption key, encodes in RFC 4648 base64.
|
||||||
//
|
//
|
||||||
// example:
|
// examples:
|
||||||
//
|
//
|
||||||
// ```json
|
// ```json
|
||||||
// {
|
// {
|
||||||
// "kmsKeyName": "projects/${project}/locations/${region}/keyRings/computeEngine/cryptoKeys/computeEngine/cryptoKeyVersions/4"
|
// "kmsKeyName": "projects/${project}/locations/${region}/keyRings/computeEngine/cryptoKeys/computeEngine/cryptoKeyVersions/4"
|
||||||
// }
|
// }
|
||||||
// ```
|
// ```
|
||||||
|
//
|
||||||
|
// ```hcl
|
||||||
|
// image_encryption_key {
|
||||||
|
// kmsKeyName = "projects/${var.project}/locations/${var.region}/keyRings/computeEngine/cryptoKeys/computeEngine/cryptoKeyVersions/4"
|
||||||
|
// }
|
||||||
|
// ```
|
||||||
ImageEncryptionKey *CustomerEncryptionKey `mapstructure:"image_encryption_key" required:"false"`
|
ImageEncryptionKey *CustomerEncryptionKey `mapstructure:"image_encryption_key" required:"false"`
|
||||||
// The name of the image family to which the resulting image belongs. You
|
// The name of the image family to which the resulting image belongs. You
|
||||||
// can create disks by specifying an image family instead of a specific
|
// can create disks by specifying an image family instead of a specific
|
||||||
|
@ -539,11 +545,11 @@ func (c *Config) Prepare(raws ...interface{}) ([]string, error) {
|
||||||
type CustomerEncryptionKey struct {
|
type CustomerEncryptionKey struct {
|
||||||
// KmsKeyName: The name of the encryption key that is stored in Google
|
// KmsKeyName: The name of the encryption key that is stored in Google
|
||||||
// Cloud KMS.
|
// Cloud KMS.
|
||||||
KmsKeyName string `json:"kmsKeyName,omitempty"`
|
KmsKeyName string `mapstructure:"kmsKeyName" json:"kmsKeyName,omitempty"`
|
||||||
|
|
||||||
// RawKey: Specifies a 256-bit customer-supplied encryption key, encoded
|
// RawKey: Specifies a 256-bit customer-supplied encryption key, encoded
|
||||||
// in RFC 4648 base64 to either encrypt or decrypt this resource.
|
// in RFC 4648 base64 to either encrypt or decrypt this resource.
|
||||||
RawKey string `json:"rawKey,omitempty"`
|
RawKey string `mapstructure:"rawKey" json:"rawKey,omitempty"`
|
||||||
}
|
}
|
||||||
|
|
||||||
func (k *CustomerEncryptionKey) ComputeType() *compute.CustomerEncryptionKey {
|
func (k *CustomerEncryptionKey) ComputeType() *compute.CustomerEncryptionKey {
|
||||||
|
|
|
@ -242,8 +242,8 @@ func (*FlatConfig) HCL2Spec() map[string]hcldec.Spec {
|
||||||
// FlatCustomerEncryptionKey is an auto-generated flat version of CustomerEncryptionKey.
|
// FlatCustomerEncryptionKey is an auto-generated flat version of CustomerEncryptionKey.
|
||||||
// Where the contents of a field with a `mapstructure:,squash` tag are bubbled up.
|
// Where the contents of a field with a `mapstructure:,squash` tag are bubbled up.
|
||||||
type FlatCustomerEncryptionKey struct {
|
type FlatCustomerEncryptionKey struct {
|
||||||
KmsKeyName *string `json:"kmsKeyName,omitempty" cty:"kms_key_name" hcl:"kms_key_name"`
|
KmsKeyName *string `mapstructure:"kmsKeyName" json:"kmsKeyName,omitempty" cty:"kmsKeyName" hcl:"kmsKeyName"`
|
||||||
RawKey *string `json:"rawKey,omitempty" cty:"raw_key" hcl:"raw_key"`
|
RawKey *string `mapstructure:"rawKey" json:"rawKey,omitempty" cty:"rawKey" hcl:"rawKey"`
|
||||||
}
|
}
|
||||||
|
|
||||||
// FlatMapstructure returns a new FlatCustomerEncryptionKey.
|
// FlatMapstructure returns a new FlatCustomerEncryptionKey.
|
||||||
|
@ -258,8 +258,8 @@ func (*CustomerEncryptionKey) FlatMapstructure() interface{ HCL2Spec() map[strin
|
||||||
// The decoded values from this spec will then be applied to a FlatCustomerEncryptionKey.
|
// The decoded values from this spec will then be applied to a FlatCustomerEncryptionKey.
|
||||||
func (*FlatCustomerEncryptionKey) HCL2Spec() map[string]hcldec.Spec {
|
func (*FlatCustomerEncryptionKey) HCL2Spec() map[string]hcldec.Spec {
|
||||||
s := map[string]hcldec.Spec{
|
s := map[string]hcldec.Spec{
|
||||||
"kms_key_name": &hcldec.AttrSpec{Name: "kms_key_name", Type: cty.String, Required: false},
|
"kmsKeyName": &hcldec.AttrSpec{Name: "kmsKeyName", Type: cty.String, Required: false},
|
||||||
"raw_key": &hcldec.AttrSpec{Name: "raw_key", Type: cty.String, Required: false},
|
"rawKey": &hcldec.AttrSpec{Name: "rawKey", Type: cty.String, Required: false},
|
||||||
}
|
}
|
||||||
return s
|
return s
|
||||||
}
|
}
|
||||||
|
|
|
@ -53,7 +53,7 @@
|
||||||
* kmsKeyName - The name of the encryption key that is stored in Google Cloud KMS.
|
* kmsKeyName - The name of the encryption key that is stored in Google Cloud KMS.
|
||||||
* RawKey: - A 256-bit customer-supplied encryption key, encodes in RFC 4648 base64.
|
* RawKey: - A 256-bit customer-supplied encryption key, encodes in RFC 4648 base64.
|
||||||
|
|
||||||
example:
|
examples:
|
||||||
|
|
||||||
```json
|
```json
|
||||||
{
|
{
|
||||||
|
@ -61,6 +61,12 @@
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
|
```hcl
|
||||||
|
image_encryption_key {
|
||||||
|
kmsKeyName = "projects/${var.project}/locations/${var.region}/keyRings/computeEngine/cryptoKeys/computeEngine/cryptoKeyVersions/4"
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
- `image_family` (string) - The name of the image family to which the resulting image belongs. You
|
- `image_family` (string) - The name of the image family to which the resulting image belongs. You
|
||||||
can create disks by specifying an image family instead of a specific
|
can create disks by specifying an image family instead of a specific
|
||||||
image name. The image family always returns its latest image that is not
|
image name. The image family always returns its latest image that is not
|
||||||
|
|
|
@ -0,0 +1,7 @@
|
||||||
|
<!-- Code generated from the comments of the CustomerEncryptionKey struct in builder/googlecompute/config.go; DO NOT EDIT MANUALLY -->
|
||||||
|
|
||||||
|
- `kmsKeyName` (string) - KmsKeyName: The name of the encryption key that is stored in Google
|
||||||
|
Cloud KMS.
|
||||||
|
|
||||||
|
- `rawKey` (string) - RawKey: Specifies a 256-bit customer-supplied encryption key, encoded
|
||||||
|
in RFC 4648 base64 to either encrypt or decrypt this resource.
|
Loading…
Reference in New Issue