diff --git a/README.md b/README.md index 04360eb..638d76c 100644 --- a/README.md +++ b/README.md @@ -48,23 +48,23 @@ The above custom role is similar to the "write" pre-existing role, but blocks ac | [terraform](#requirement\_terraform) | >= 1.3.0 | | [aws](#requirement\_aws) | >= 4.0.0 | | [random](#requirement\_random) | >= 3.0.0 | -| [tfe](#requirement\_tfe) | >= 0.51.0 | +| [tfe](#requirement\_tfe) | >= 0.61.0 | ## Providers | Name | Version | |------|---------| | [random](#provider\_random) | >= 3.0.0 | -| [tfe](#provider\_tfe) | >= 0.51.0 | +| [tfe](#provider\_tfe) | >= 0.61.0 | ## Modules | Name | Source | Version | |------|--------|---------| -| [tfe-workspace](#module\_tfe-workspace) | schubergphilis/mcaf-workspace/tfe | ~> 2.0 | +| [tfe-workspace](#module\_tfe-workspace) | schubergphilis/mcaf-workspace/tfe | ~> 2.1.0 | | [workspace\_iam\_role](#module\_workspace\_iam\_role) | schubergphilis/mcaf-role/aws | ~> 0.4.0 | | [workspace\_iam\_role\_oidc](#module\_workspace\_iam\_role\_oidc) | schubergphilis/mcaf-role/aws | ~> 0.4.0 | -| [workspace\_iam\_user](#module\_workspace\_iam\_user) | schubergphilis/mcaf-user/aws | ~> 0.4 | +| [workspace\_iam\_user](#module\_workspace\_iam\_user) | schubergphilis/mcaf-user/aws | ~> 0.4.0 | ## Resources @@ -86,7 +86,6 @@ The above custom role is similar to the "write" pre-existing role, but blocks ac | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| | [name](#input\_name) | A name for the Terraform workspace | `string` | n/a | yes | -| [oauth\_token\_id](#input\_oauth\_token\_id) | The OAuth token ID of the VCS provider | `string` | n/a | yes | | [terraform\_organization](#input\_terraform\_organization) | The Terraform Enterprise organization to create the workspace in | `string` | n/a | yes | | [agent\_pool\_id](#input\_agent\_pool\_id) | Agent pool ID, requires "execution\_mode" to be set to agent | `string` | `null` | no | | [agent\_role\_arns](#input\_agent\_role\_arns) | IAM role ARNs used by Terraform Cloud Agent to assume role in the created account | `list(string)` | `null` | no | @@ -102,8 +101,10 @@ The above custom role is similar to the "write" pre-existing role, but blocks ac | [description](#input\_description) | A description for the workspace | `string` | `null` | no | | [execution\_mode](#input\_execution\_mode) | Which execution mode to use | `string` | `"remote"` | no | | [file\_triggers\_enabled](#input\_file\_triggers\_enabled) | Whether to filter runs based on the changed files in a VCS push | `bool` | `true` | no | +| [github\_app\_installation\_id](#input\_github\_app\_installation\_id) | The GitHub App installation ID to use | `string` | `null` | no | | [global\_remote\_state](#input\_global\_remote\_state) | Allow all workspaces in the organization to read the state of this workspace | `bool` | `null` | no | | [notification\_configuration](#input\_notification\_configuration) | Notification configuration, using name as key and config as value |
map(object({| `{}` | no | +| [oauth\_token\_id](#input\_oauth\_token\_id) | The OAuth token ID of the VCS provider | `string` | `null` | no | | [oidc\_settings](#input\_oidc\_settings) | OIDC settings to use if "auth\_method" is set to "iam\_role\_oidc" |
destination_type = string
enabled = optional(bool, true)
url = string
triggers = optional(list(string), [
"run:created",
"run:planning",
"run:needs_attention",
"run:applying",
"run:completed",
"run:errored",
])
}))
object({| `null` | no | | [path](#input\_path) | Path in which to create the IAM role or user | `string` | `null` | no | | [permissions\_boundary\_arn](#input\_permissions\_boundary\_arn) | ARN of the policy that is used to set the permissions boundary for the IAM role or IAM user | `string` | `null` | no | diff --git a/main.tf b/main.tf index 7cd64ea..b497651 100644 --- a/main.tf +++ b/main.tf @@ -8,7 +8,7 @@ locals { module "tfe-workspace" { source = "schubergphilis/mcaf-workspace/tfe" - version = "~> 2.0" + version = "~> 2.1.0" name = var.name agent_pool_id = var.execution_mode == "agent" ? var.agent_pool_id : null @@ -23,6 +23,7 @@ module "tfe-workspace" { description = var.description execution_mode = var.execution_mode file_triggers_enabled = var.file_triggers_enabled + github_app_installation_id = var.repository_identifier != null ? var.github_app_installation_id : null global_remote_state = var.global_remote_state notification_configuration = var.notification_configuration oauth_token_id = var.repository_identifier != null ? var.oauth_token_id : null @@ -83,7 +84,7 @@ module "workspace_iam_user" { count = var.auth_method == "iam_user" ? 1 : 0 source = "schubergphilis/mcaf-user/aws" - version = "~> 0.4" + version = "~> 0.4.0" name = var.username path = var.path diff --git a/variables.tf b/variables.tf index 6e55186..cf8197a 100644 --- a/variables.tf +++ b/variables.tf @@ -103,6 +103,12 @@ variable "file_triggers_enabled" { description = "Whether to filter runs based on the changed files in a VCS push" } +variable "github_app_installation_id" { + type = string + default = null + description = "The GitHub App installation ID to use" +} + variable "global_remote_state" { type = bool default = null @@ -135,6 +141,7 @@ variable "notification_configuration" { variable "oauth_token_id" { type = string + default = null description = "The OAuth token ID of the VCS provider" } diff --git a/versions.tf b/versions.tf index 89c0264..5cf9c59 100644 --- a/versions.tf +++ b/versions.tf @@ -12,7 +12,7 @@ terraform { } tfe = { source = "hashicorp/tfe" - version = ">= 0.51.0" + version = ">= 0.61.0" } } }
audience = optional(string, "aws.workload.identity")
provider_arn = string
site_address = optional(string, "app.terraform.io")
})