Skip to content

Latest commit

 

History

History
78 lines (64 loc) · 7.36 KB

File metadata and controls

78 lines (64 loc) · 7.36 KB

workspace

This module creates following resources.

  • tfe_workspace
  • tfe_workspace_settings
  • tfe_workspace_policy_set (optional)
  • tfe_workspace_variable_set (optional)
  • tfe_team_access (optional)

Requirements

Name Version
terraform >= 1.12
tfe >= 0.68

Providers

Name Version
tfe 0.68.2

Modules

No modules.

Resources

Name Type
tfe_team_access.this resource
tfe_workspace.this resource
tfe_workspace_policy_set.this resource
tfe_workspace_settings.this resource
tfe_workspace_variable_set.this resource
tfe_teams.this data source

Inputs

Name Description Type Default Required
name (Required) The name of the workspace. string n/a yes
description (Optional) A description to help you identify the workspace. string "Managed by Terraform." no
exclusive_tags_enabled (Optional) Whether to explicitly ignore which are not defined by this module. Defaults to true. bool true no
execution_mode (Optional) The execution mode for the workspace. Valid values are local, remote or agent. When set to local, the workspace will be used for state storage only.
NOTE: If you omit this attribute, the resource configures the workspace to use your organization's default execution mode (which in turn defaults to remote).
string null no
global_remote_state (Optional) Whether the workspace allows all workspaces in the organization to access its state data during runs. If false, then only specifically approved workspaces can access its state. By default, HashiCorp recommends you do not allow other workspaces to access their state. We recommend that you follow the principle of least privilege and only enable state access between workspaces that specifically need information from each other. Defaults to false. bool false no
organization (Optional) A name of the organization. If omitted, organization must be defined in the provider config. string null no
policy_set (Optional) The ID of the policy set to configure. string null no
project (Optional) The ID of the project where the workspace should be created. string null no
queue_all_runs (Optional) Whether the workspace should start automatically performing runs immediately after its creation. Defaults to true. When set to false, runs triggered by a webhook (such as a commit in VCS) will not be queued until at least one run has been manually queued. bool true no
remote_state_consumer_workspaces (Optional) A set of workspace IDs that will be granted read access to this workspace's remote state data. set(string) [] no
ssh_key (Optional) The ID of an SSH key to assign to the workspace. string null no
tags (Optional) A map of tags to add to all resources. map(string) {} no
team_access (Optional) A configurations for team access to the workspace. Each item of team_access block as defined below.
(Required) team - The ID of the team to grant access to the workspace.
(Optional) role - The role to assign to the team for the workspace. Valid values are READ, PLAN, WRITE, ADMIN, or CUSTOM. Defaults to READ.
READ - Baseline permissions for reading a workspace
PLAN - Read permissions plus the ability to create runs
WRITE - Read, plan and write permissions
ADMIN - Full control of the workspace
CUSTOM - Create a custom permission set for this team
list(object({
team = string
role = optional(string, "READ")
}))
[] no
variable_set (Optional) A name of the variable set to configure. string null no

Outputs

Name Description
description The description of the workspace.
execution_mode The execution mode for the workspace.
global_remote_state Whether the workspace allows all workspaces in the organization to access its state data during runs.
id The ID of the workspace.
name The name of the workspace.
organization The name of the organization.
policy_set The ID of the policy set configured.
project The project which the workspace belongs to.
queue_all_runs Whether the workspace is configured to automatically queue all runs.
remote_state_consumer_workspaces A set of workspace IDs that have read access to this workspace's remote state data.
ssh_key The ID of the SSH key assigned to the workspace.
statistics The statistics of the workspace.
team_access The team access configurations for the workspace.
url The URL to the browsable HTML overview of the workspace.
variable_set The ID of the variable set configured.