Skip to content
This repository has been archived by the owner on Sep 20, 2022. It is now read-only.

we-work-in-the-cloud/terraform-ibm-secrets-manager

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Helpers for Secrets Manager

This module helps to create secret groups and secrets with Terraform.

To use the module, specify one of:

  • resource_secret_group
  • resource_secret_arbitrary
  • resource_secret_username_password
  • resource_secret_iam_credentials
  • resource_secret_imported_cert
  • resource_secret_public_cert
  • resource_secret_private_cert
  • resource_secret_kv
module "my_secret_group" {
  source = "we-work-in-the-cloud/secrets-manager/ibm"

  iam_token = data.ibm_iam_auth_token.tokendata.iam_access_token
  endpoint  = var.secrets_manager_endpoint

  resource_secret_group = {
    name        = "my-secret-group"
    description = "my-secret-group-description"
  }
}

Requirements

Name Version
terraform >= 1.0
restapi >= 1.17

Providers

Name Version
null n/a
restapi >= 1.17

Inputs

Name Description Type Default Required
endpoint Endpoint to the Secrets Manager instance string n/a yes
iam_token IAM token to make API calls to the Secrets Manager instance string n/a yes
resource_secret_arbitrary Set the values for this input to create a secret of type arbitrary
object({
name = string
description = string
secret_group_id = string
labels = list(string)
custom_metadata = any
version_custom_metadata = any
expiration_date = string
payload = string
})
null no
resource_secret_group Set the values for this input to create a secret group
object({
name = string
description = string
})
null no
resource_secret_iam_credentials Set the values for this input to create a secret of type iam_credentials
object({
name = string
description = string
secret_group_id = string
labels = list(string)
custom_metadata = any
version_custom_metadata = any
ttl = string
access_groups = list(string)
service_id = string
reuse_api_key = bool
})
null no
resource_secret_imported_cert Set the values for this input to create a secret of type imported_cert
object({
name = string
description = string
secret_group_id = string
labels = list(string)
custom_metadata = any
version_custom_metadata = any
certificate = string
private_key = string
intermediate = string
})
null no
resource_secret_kv Set the values for this input to create a secret of type kv
object({
name = string
description = string
secret_group_id = string
labels = list(string)
custom_metadata = any
version_custom_metadata = any
payload = any
})
null no
resource_secret_private_cert Set the values for this input to create a secret of type private_cert
object({
name = string
description = string
secret_group_id = string
labels = list(string)
custom_metadata = any
version_custom_metadata = any
alt_names = any // list(string) or string
ip_sans = string
uri_sans = string
other_sans = list(string)
ttl = string
format = string
private_key_format = string
exclude_cn_from_sans = bool
rotation = object({
auto_rotate = bool
rotate_keys = bool
interval = number
unit = string
})
})
null no
resource_secret_public_cert Set the values for this input to create a secret of type public_cert
object({
name = string
description = string
secret_group_id = string
labels = list(string)
custom_metadata = any
version_custom_metadata = any
bundle_certs = bool
ca = string
dns = string
key_algorithm = string
alt_names = any // list(string) or string
common_name = string
rotation = object({
auto_rotate = bool
rotate_keys = bool
interval = number
unit = string
})
})
null no
resource_secret_username_password Set the values for this input to create a secret of type username_password
object({
name = string
description = string
secret_group_id = string
labels = list(string)
custom_metadata = any
version_custom_metadata = any
username = string
password = string
expiration_date = string
})
null no

Outputs

Name Description
id ID of the created secret group or secret

License

Apache 2 Licensed. See LICENSE for full details.


Generated with terraform-docs markdown table . --hide-empty