You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Represents a meshStackbuilding block definition with version information merged into a single resource.
6
+
Manages a meshBuildingBlockDefinition in meshStack. Building Block Definitions define reusable automation components that can be executed on workspaces or tenants. This resource combines the building block definition metadata with version information in a single resource for simplified management.
7
7
---
8
8
9
9
# meshstack_building_block_definition (Resource)
10
10
11
-
Represents a meshStackbuilding block definition with version information merged into a single resource.
11
+
Manages a meshBuildingBlockDefinition in meshStack. Building Block Definitions define reusable automation components that can be executed on workspaces or tenants. This resource combines the building block definition metadata with version information in a single resource for simplified management.
-`metadata` (Attributes) (see [below for nested schema](#nestedatt--metadata))
305
-
-`spec` (Attributes) (see [below for nested schema](#nestedatt--spec))
304
+
-`metadata` (Attributes) Metadata of the building block definition. Contains identifiers and ownership details. (see [below for nested schema](#nestedatt--metadata))
305
+
-`spec` (Attributes) Specification of the building block definition. Contains configuration settings for the building block. (see [below for nested schema](#nestedatt--spec))
306
306
-`version_spec` (Attributes) Version specification for the building block definition. (see [below for nested schema](#nestedatt--version_spec))
-`owned_by_workspace` (String) The workspace that owns this building block definition.
323
+
-`owned_by_workspace` (String) Identifier of the workspace that owns this building block definition.
324
324
325
325
Optional:
326
326
327
-
-`tags` (Map of List of String) Tags associated with this building block definition.
327
+
-`tags` (Map of List of String) Key/value pairs of tags set on the building block definition. Values are arrays of strings.
328
328
329
329
Read-Only:
330
330
331
-
-`uuid` (String) Unique identifier of the building block definition (server-generated).
331
+
-`uuid` (String) UUID to uniquely identify the building block definition.
332
332
333
333
334
334
<aid="nestedatt--spec"></a>
335
335
### Nested Schema for `spec`
336
336
337
337
Required:
338
338
339
-
-`description` (String) Description of the building block definition.
340
-
-`display_name` (String) Display name for the building block definition.
339
+
-`description` (String) Description of the building block definition as shown in meshPanel.
340
+
-`display_name` (String) Display name of the building block definition as shown in meshPanel.
341
341
342
342
Optional:
343
343
344
-
-`documentation_url` (String) URL for additional documentation.
344
+
-`documentation_url` (String) URL pointing to documentation for the building block definition.
345
345
-`notification_subscribers` (List of String) List of subscribers to notify about events related to this building block. Prefix usernames with `user:` and emails with `email:`.
346
346
-`readme` (String) Detailed readme/documentation in markdown format.
347
-
-`run_transparency` (Boolean) Whether to enable run transparency for this building block.
348
-
-`support_url` (String) URL for support resources.
347
+
-`run_transparency` (Boolean) Specifies the building block run control. When set to `true`, both platform teams and workspace users can view detailed run logs and re-run building blocks. When set to `false` (default), only platform teams have this access.
348
+
-`support_url` (String) URL pointing to support resources for the building block definition.
349
349
-`supported_platforms` (Attributes Set) List of platform identifiers that this building block supports. Required and must be non-empty if target_type is `TENANT_LEVEL` (see [below for nested schema](#nestedatt--spec--supported_platforms))
350
-
-`symbol` (String) Icon symbol for the building block definition.
351
-
-`target_type` (String) Target type for building blocks using this definition. One of `TENANT_LEVEL`, `WORKSPACE_LEVEL`.
350
+
-`symbol` (String) Symbol/icon of the building block definition as shown in meshPanel.
351
+
-`target_type` (String) Type of building block definition. Determines where building blocks can be attached. One of `TENANT_LEVEL`, `WORKSPACE_LEVEL`.
352
352
-`use_in_landing_zones_only` (Boolean) Whether this building block can only be used in landing zones.
353
353
354
354
<aid="nestedatt--spec--supported_platforms"></a>
@@ -373,9 +373,9 @@ Optional:
373
373
-`deletion_mode` (String) Deletion behavior. One of `DELETE`, `PURGE`.
374
374
-`dependency_refs` (Attributes List) List of refs to building block definitions this definition depends on. (see [below for nested schema](#nestedatt--version_spec--dependency_refs))
375
375
-`implementation` (Attributes) Implementation configuration for the building block. Must contain exactly one of `manual`, `terraform`, `github_workflows`, `gitlab_pipeline`, or `azure_devops_pipeline`. (see [below for nested schema](#nestedatt--version_spec--implementation))
376
-
-`inputs` (Attributes Map) Building block definition inputs. Map from input name to input configuration. (see [below for nested schema](#nestedatt--version_spec--inputs))
376
+
-`inputs` (Attributes Map) Map of input definitions for the building block. Keys are input names, values are input configuration objects. Inputs define parameters that building blocks can receive. (see [below for nested schema](#nestedatt--version_spec--inputs))
377
377
-`only_apply_once_per_tenant` (Boolean) Whether this building block can only be applied once per tenant.
378
-
-`outputs` (Attributes Map) Building block definition outputs. Map from output name to output configuration. (see [below for nested schema](#nestedatt--version_spec--outputs))
378
+
-`outputs` (Attributes Map) Map of output definitions for the building block. Keys are output names, values are output configuration objects. Outputs define values that building blocks produce and can be consumed by other building blocks. (see [below for nested schema](#nestedatt--version_spec--outputs))
379
379
-`runner_ref` (Attributes) Reference to the runner to run the implementation. If omitted, the pre-defined shared runner is used suitable for the given `implementation` choice (see [below for nested schema](#nestedatt--version_spec--runner_ref))
380
380
381
381
Read-Only:
@@ -542,36 +542,36 @@ Read-Only:
542
542
543
543
Required:
544
544
545
-
-`assignment_type` (String) How the input value is assigned. One of `AUTHOR`, `USER_INPUT`, `PLATFORM_OPERATOR_MANUAL_INPUT`, `BUILDING_BLOCK_OUTPUT`, `PLATFORM_TENANT_ID`, `WORKSPACE_IDENTIFIER`, `PROJECT_IDENTIFIER`, `FULL_PLATFORM_IDENTIFIER`, `TENANT_BUILDING_BLOCK_UUID`, `STATIC`, `USER_PERMISSIONS`.
546
-
-`display_name` (String) Display name for the input shown to users.
547
-
-`type` (String) Input type. One of `STRING`, `CODE`, `INTEGER`, `BOOLEAN`, `FILE`, `LIST`, `SINGLE_SELECT`, `MULTI_SELECT`.
545
+
-`assignment_type` (String) How the input value is assigned. One of `AUTHOR`, `USER_INPUT`, `PLATFORM_OPERATOR_MANUAL_INPUT`, `BUILDING_BLOCK_OUTPUT`, `PLATFORM_TENANT_ID`, `WORKSPACE_IDENTIFIER`, `PROJECT_IDENTIFIER`, `FULL_PLATFORM_IDENTIFIER`, `TENANT_BUILDING_BLOCK_UUID`, `STATIC`, `USER_PERMISSIONS`. Determines which additional attributes are required or allowed.
546
+
-`display_name` (String) Human-readable display name for the input.
547
+
-`type` (String) Data type of the input. One of `STRING`, `CODE`, `INTEGER`, `BOOLEAN`, `FILE`, `LIST`, `SINGLE_SELECT`, `MULTI_SELECT`.
548
548
549
549
Optional:
550
550
551
-
-`argument` (String) Argument value for static assignment types. Must be provided if `assignment_type` is one of `STATIC`, `BUILDING_BLOCK_OUTPUT`. Otherwise it must not be provided. The value must be passed through `jsonencode` to support dynamic typing as given by `type` attribute. In case of `BUILDING_BLOCK_OUTPUT`, must have the format `jsonencode("<BuildingBlockDefinitionUuid>.<outputName>")`.
552
-
-`default_value` (String) Default value for the input. Can be provided if `assignment_type` is one of `USER_INPUT`, `PLATFORM_OPERATOR_MANUAL_INPUT`.
553
-
-`description` (String) Description of the input parameter.
554
-
-`is_environment` (Boolean) Whether this input is exposed as an environment variable.
555
-
-`selectable_values` (Set of String) Set of allowed values for `SINGLE_SELECT` or `MULTI_SELECT` types.
556
-
-`sensitive` (Attributes) Sensitive input values, mutually exclusive with non-sensitive `argument` and `default_value` attributes. You can provide an empty attribute `sensitive = {}` to mark this input sensitive without providing `argument` or `default_value`. Sensitive input values are only supported for `argument_type` of `USER_INPUT`, `PLATFORM_OPERATOR_MANUAL_INPUT`, `STATIC`. (see [below for nested schema](#nestedatt--version_spec--inputs--sensitive))
557
-
-`updateable_by_consumer` (Boolean) Whether consumers can update this input value.
558
-
-`validation_regex_error_message` (String) Error message shown when validation regex fails.
559
-
-`value_validation_regex` (String) Regular expression to validate input values.
551
+
-`argument` (String) Argument value for the input, depending on the assignment type. **Required**if `assignment_type` is `STATIC`, `BUILDING_BLOCK_OUTPUT`. **Must not be provided** for other assignment types. The value must be passed through `jsonencode()` to support dynamic typing as defined by the `type` attribute. For `BUILDING_BLOCK_OUTPUT`, the value must have the format `jsonencode("<BuildingBlockDefinitionUuid>.<outputName>")`.
552
+
-`default_value` (String) Default value for the input. **Can only be provided** if `assignment_type` is `USER_INPUT`, `PLATFORM_OPERATOR_MANUAL_INPUT`. Must be passed through `jsonencode()` to match the `type` attribute.
553
+
-`description` (String) Description explaining the purpose and usage of the input.
554
+
-`is_environment` (Boolean) Whether this input is exposed as an environment variable (when `true`) or as a regular variable (when `false`).
555
+
-`selectable_values` (Set of String) List of allowed values for the input. **Required** when `type` is `SINGLE_SELECT` or `MULTI_SELECT`.
556
+
-`sensitive` (Attributes) Configuration for sensitive input values. **Mutually exclusive** with the non-sensitive `argument` and `default_value` attributes. When an input is marked as sensitive, use the nested `sensitive.argument` or `sensitive.default_value` instead of the top-level attributes. You can provide an empty attribute `sensitive = {}` to mark this input as sensitive without providing values. Sensitive inputs are **only supported** for `assignment_type` of `USER_INPUT`, `PLATFORM_OPERATOR_MANUAL_INPUT`, `STATIC`. (see [below for nested schema](#nestedatt--version_spec--inputs--sensitive))
557
+
-`updateable_by_consumer` (Boolean) Whether the input value can be updated by consumers without admin or platform operator permissions.
558
+
-`validation_regex_error_message` (String) Error message to display when regex validation fails.
559
+
-`value_validation_regex` (String) Regular expression pattern to validate input values.
### Nested Schema for `version_spec.inputs.sensitive`
563
563
564
564
Optional:
565
565
566
-
-`argument` (Attributes) Sensitive variant of `argument` attribute. See there for further explanation. (see [below for nested schema](#nestedatt--version_spec--inputs--sensitive--argument))
567
-
-`default_value` (Attributes) Sensitive variant of `default_value` attribute. See there for further explanation. (see [below for nested schema](#nestedatt--version_spec--inputs--sensitive--default_value))
566
+
-`argument` (Attributes) Sensitive variant of the `argument` attribute. Contains encrypted secret data. (see [below for nested schema](#nestedatt--version_spec--inputs--sensitive--argument))
567
+
-`default_value` (Attributes) Sensitive variant of the `default_value` attribute. Contains encrypted secret data. (see [below for nested schema](#nestedatt--version_spec--inputs--sensitive--default_value))
### Nested Schema for `version_spec.inputs.sensitive.argument`
571
571
572
572
Required:
573
573
574
-
-`secret_value` (String, Sensitive, [Write-only](https://developer.hashicorp.com/terraform/language/resources/ephemeral#write-only-arguments)) Sensitive variant of `argument` attribute. See there for further explanation.
574
+
-`secret_value` (String, Sensitive, [Write-only](https://developer.hashicorp.com/terraform/language/resources/ephemeral#write-only-arguments)) Sensitive variant of the `argument` attribute. Contains encrypted secret data.
575
575
576
576
Optional:
577
577
@@ -587,7 +587,7 @@ Read-Only:
587
587
588
588
Required:
589
589
590
-
-`secret_value` (String, Sensitive, [Write-only](https://developer.hashicorp.com/terraform/language/resources/ephemeral#write-only-arguments)) Sensitive variant of `default_value` attribute. See there for further explanation.
590
+
-`secret_value` (String, Sensitive, [Write-only](https://developer.hashicorp.com/terraform/language/resources/ephemeral#write-only-arguments)) Sensitive variant of the `default_value` attribute. Contains encrypted secret data.
591
591
592
592
Optional:
593
593
@@ -605,9 +605,9 @@ Read-Only:
605
605
606
606
Required:
607
607
608
-
-`assignment_type` (String) How the output is assigned. One of `NONE`, `PLATFORM_TENANT_ID`, `SIGN_IN_URL`, `RESOURCE_URL`, `SUMMARY`.
609
-
-`display_name` (String) Display name for the output shown to users.
610
-
-`type` (String) Output type. One of `STRING`, `CODE`, `INTEGER`, `BOOLEAN`, `FILE`, `LIST`, `SINGLE_SELECT`, `MULTI_SELECT`.
608
+
-`assignment_type` (String) How the output is used. One of `NONE`, `PLATFORM_TENANT_ID`, `SIGN_IN_URL`, `RESOURCE_URL`, `SUMMARY`.
609
+
-`display_name` (String) Human-readable display name for the output.
610
+
-`type` (String) Data type of the output. One of `STRING`, `CODE`, `INTEGER`, `BOOLEAN`, `FILE`, `LIST`, `SINGLE_SELECT`, `MULTI_SELECT`.
0 commit comments