Help us shape the future of Go! Take the 2026 Go Developer Survey

client

package
v0.15.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 26, 2025 License: MPL-2.0 Imports: 11 Imported by: 0

Documentation

Index

Constants

View Source
const (
	MESH_BUILDING_BLOCK_IO_TYPE_STRING        = "STRING"
	MESH_BUILDING_BLOCK_IO_TYPE_INTEGER       = "INTEGER"
	MESH_BUILDING_BLOCK_IO_TYPE_BOOLEAN       = "BOOLEAN"
	MESH_BUILDING_BLOCK_IO_TYPE_SINGLE_SELECT = "SINGLE_SELECT"
	MESH_BUILDING_BLOCK_IO_TYPE_MULTI_SELECT  = "MULTI_SELECT"
	MESH_BUILDING_BLOCK_IO_TYPE_FILE          = "FILE"
	MESH_BUILDING_BLOCK_IO_TYPE_LIST          = "LIST"
	MESH_BUILDING_BLOCK_IO_TYPE_CODE          = "CODE"

	CONTENT_TYPE_BUILDING_BLOCK = "application/vnd.meshcloud.api.meshbuildingblock.v1.hal+json"
)
View Source
const (
	CONTENT_TYPE_BUILDING_BLOCK_V2 = "application/vnd.meshcloud.api.meshbuildingblock.v2-preview.hal+json"

	// Building Block Status Constants
	BUILDING_BLOCK_STATUS_WAITING_FOR_DEPENDENT_INPUT = "WAITING_FOR_DEPENDENT_INPUT"
	BUILDING_BLOCK_STATUS_WAITING_FOR_OPERATOR_INPUT  = "WAITING_FOR_OPERATOR_INPUT"
	BUILDING_BLOCK_STATUS_PENDING                     = "PENDING"
	BUILDING_BLOCK_STATUS_IN_PROGRESS                 = "IN_PROGRESS"
	BUILDING_BLOCK_STATUS_SUCCEEDED                   = "SUCCEEDED"
	BUILDING_BLOCK_STATUS_FAILED                      = "FAILED"
)
View Source
const (
	ERROR_GENERIC_CLIENT_ERROR   = "client error"
	ERROR_GENERIC_API_ERROR      = "api error"
	ERROR_AUTHENTICATION_FAILURE = "Not authorized. Check api key and secret."
	ERROR_ENDPOINT_LOOKUP        = "Could not fetch endpoints for meshStack."
)
View Source
const API_VERSION_TAG_DEFINITION = "v1"
View Source
const CONTENT_TYPE_LANDINGZONE = "application/vnd.meshcloud.api.meshlandingzone.v1-preview.hal+json"
View Source
const CONTENT_TYPE_PAYMENT_METHOD = "application/vnd.meshcloud.api.meshpaymentmethod.v2.hal+json"
View Source
const CONTENT_TYPE_PLATFORM = "application/vnd.meshcloud.api.meshplatform.v2-preview.hal+json"
View Source
const CONTENT_TYPE_PROJECT = "application/vnd.meshcloud.api.meshproject.v2.hal+json"
View Source
const CONTENT_TYPE_PROJECT_GROUP_BINDING = "application/vnd.meshcloud.api.meshprojectgroupbinding.v3.hal+json"
View Source
const CONTENT_TYPE_PROJECT_USER_BINDING = "application/vnd.meshcloud.api.meshprojectuserbinding.v3.hal+json"
View Source
const CONTENT_TYPE_TAG_DEFINITION = "application/vnd.meshcloud.api.meshtagdefinition.v1.hal+json"
View Source
const CONTENT_TYPE_TENANT = "application/vnd.meshcloud.api.meshtenant.v3.hal+json"
View Source
const CONTENT_TYPE_TENANT_V4 = "application/vnd.meshcloud.api.meshtenant.v4-preview.hal+json"
View Source
const CONTENT_TYPE_WORKSPACE = "application/vnd.meshcloud.api.meshworkspace.v2.hal+json"
View Source
const CONTENT_TYPE_WORKSPACE_GROUP_BINDING = "application/vnd.meshcloud.api.meshworkspacegroupbinding.v2.hal+json"
View Source
const CONTENT_TYPE_WORKSPACE_USER_BINDING = "application/vnd.meshcloud.api.meshworkspaceuserbinding.v2.hal+json"

Variables

This section is empty.

Functions

This section is empty.

Types

type AksMeteringConfig added in v0.13.0

type AksMeteringConfig struct {
	ClientConfig KubernetesClientConfig               `json:"clientConfig" tfsdk:"client_config"`
	Processing   MeshPlatformMeteringProcessingConfig `json:"processing" tfsdk:"processing"`
}

type AksPlatformConfig added in v0.12.0

type AksPlatformConfig struct {
	BaseUrl              string                `json:"baseUrl" tfsdk:"base_url"`
	DisableSslValidation bool                  `json:"disableSslValidation" tfsdk:"disable_ssl_validation"`
	Replication          *AksReplicationConfig `json:"replication" tfsdk:"replication"`
	Metering             *AksMeteringConfig    `json:"metering,omitempty" tfsdk:"metering"`
}

type AksPlatformProperties added in v0.11.0

type AksPlatformProperties struct {
	KubernetesRoleMappings []KubernetesRoleMapping `json:"kubernetesRoleMappings" tfsdk:"kubernetes_role_mappings"`
}

type AksReplicationConfig added in v0.12.0

type AksReplicationConfig struct {
	AccessToken             string                    `json:"accessToken" tfsdk:"access_token"`
	NamespaceNamePattern    string                    `json:"namespaceNamePattern" tfsdk:"namespace_name_pattern"`
	GroupNamePattern        string                    `json:"groupNamePattern" tfsdk:"group_name_pattern"`
	ServicePrincipal        AksServicePrincipalConfig `json:"servicePrincipal" tfsdk:"service_principal"`
	AksSubscriptionId       string                    `json:"aksSubscriptionId" tfsdk:"aks_subscription_id"`
	AksClusterName          string                    `json:"aksClusterName" tfsdk:"aks_cluster_name"`
	AksResourceGroup        string                    `json:"aksResourceGroup" tfsdk:"aks_resource_group"`
	RedirectUrl             *string                   `json:"redirectUrl,omitempty" tfsdk:"redirect_url"`
	SendAzureInvitationMail bool                      `json:"sendAzureInvitationMail" tfsdk:"send_azure_invitation_mail"`
	UserLookUpStrategy      string                    `json:"userLookUpStrategy" tfsdk:"user_look_up_strategy"`
	AdministrativeUnitId    *string                   `json:"administrativeUnitId,omitempty" tfsdk:"administrative_unit_id"`
}

type AksServicePrincipalConfig added in v0.13.0

type AksServicePrincipalConfig struct {
	ClientId                    string  `json:"clientId" tfsdk:"client_id"`
	AuthType                    string  `json:"authType" tfsdk:"auth_type"`
	CredentialsAuthClientSecret *string `json:"credentialsAuthClientSecret,omitempty" tfsdk:"credentials_auth_client_secret"`
	EntraTenant                 string  `json:"entraTenant" tfsdk:"entra_tenant"`
	ObjectId                    string  `json:"objectId" tfsdk:"object_id"`
}

type AwsAccessConfig added in v0.12.0

type AwsAccessConfig struct {
	OrganizationRootAccountRole       string                     `json:"organizationRootAccountRole" tfsdk:"organization_root_account_role"`
	OrganizationRootAccountExternalId *string                    `json:"organizationRootAccountExternalId,omitempty" tfsdk:"organization_root_account_external_id"`
	ServiceUserConfig                 *AwsServiceUserConfig      `json:"serviceUserConfig,omitempty" tfsdk:"service_user_config"`
	WorkloadIdentityConfig            *AwsWorkloadIdentityConfig `json:"workloadIdentityConfig,omitempty" tfsdk:"workload_identity_config"`
}

type AwsEnrollmentConfiguration added in v0.12.0

type AwsEnrollmentConfiguration struct {
	ManagementAccountId     string `json:"managementAccountId" tfsdk:"management_account_id"`
	AccountFactoryProductId string `json:"accountFactoryProductId" tfsdk:"account_factory_product_id"`
}

type AwsMeteringConfig added in v0.13.0

type AwsMeteringConfig struct {
	AccessConfig                   AwsAccessConfig                      `json:"accessConfig" tfsdk:"access_config"`
	Filter                         string                               `json:"filter" tfsdk:"filter"`
	ReservedInstanceFairChargeback bool                                 `json:"reservedInstanceFairChargeback" tfsdk:"reserved_instance_fair_chargeback"`
	SavingsPlanFairChargeback      bool                                 `json:"savingsPlanFairChargeback" tfsdk:"savings_plan_fair_chargeback"`
	Processing                     MeshPlatformMeteringProcessingConfig `json:"processing" tfsdk:"processing"`
}

type AwsPlatformConfig added in v0.12.0

type AwsPlatformConfig struct {
	Region      string                `json:"region,omitempty" tfsdk:"region"`
	Replication *AwsReplicationConfig `json:"replication,omitempty" tfsdk:"replication"`
	Metering    *AwsMeteringConfig    `json:"metering,omitempty" tfsdk:"metering"`
}

type AwsPlatformProperties added in v0.11.0

type AwsPlatformProperties struct {
	AwsTargetOrgUnitId string           `json:"awsTargetOrgUnitId" tfsdk:"aws_target_org_unit_id"`
	AwsEnrollAccount   bool             `json:"awsEnrollAccount" tfsdk:"aws_enroll_account"`
	AwsLambdaArn       *string          `json:"awsLambdaArn" tfsdk:"aws_lambda_arn"`
	AwsRoleMappings    []AwsRoleMapping `json:"awsRoleMappings" tfsdk:"aws_role_mappings"`
}

type AwsReplicationConfig added in v0.12.0

type AwsReplicationConfig struct {
	AccessConfig                                  AwsAccessConfig             `json:"accessConfig" tfsdk:"access_config"`
	WaitForExternalAvm                            bool                        `json:"waitForExternalAvm" tfsdk:"wait_for_external_avm"`
	AutomationAccountRole                         string                      `json:"automationAccountRole" tfsdk:"automation_account_role"`
	AutomationAccountExternalId                   *string                     `json:"automationAccountExternalId,omitempty" tfsdk:"automation_account_external_id"`
	AccountAccessRole                             string                      `json:"accountAccessRole" tfsdk:"account_access_role"`
	AccountAliasPattern                           string                      `json:"accountAliasPattern" tfsdk:"account_alias_pattern"`
	EnforceAccountAlias                           bool                        `json:"enforceAccountAlias" tfsdk:"enforce_account_alias"`
	AccountEmailPattern                           string                      `json:"accountEmailPattern" tfsdk:"account_email_pattern"`
	TenantTags                                    *MeshTenantTags             `json:"tenantTags,omitempty" tfsdk:"tenant_tags"`
	AwsSso                                        *AwsSsoConfig               `json:"awsSso,omitempty" tfsdk:"aws_sso"`
	EnrollmentConfiguration                       *AwsEnrollmentConfiguration `json:"enrollmentConfiguration,omitempty" tfsdk:"enrollment_configuration"`
	SelfDowngradeAccessRole                       bool                        `json:"selfDowngradeAccessRole" tfsdk:"self_downgrade_access_role"`
	SkipUserGroupPermissionCleanup                bool                        `json:"skipUserGroupPermissionCleanup" tfsdk:"skip_user_group_permission_cleanup"`
	AllowHierarchicalOrganizationalUnitAssignment bool                        `json:"allowHierarchicalOrganizationalUnitAssignment" tfsdk:"allow_hierarchical_organizational_unit_assignment"`
}

type AwsRoleMapping added in v0.11.0

type AwsRoleMapping struct {
	MeshProjectRoleRef MeshProjectRoleRefV2 `json:"projectRoleRef" tfsdk:"project_role_ref"`
	PlatformRole       string               `json:"platformRole" tfsdk:"platform_role"`
	Policies           []string             `json:"policies" tfsdk:"policies"`
}

type AwsServiceUserConfig added in v0.12.0

type AwsServiceUserConfig struct {
	AccessKey string `json:"accessKey" tfsdk:"access_key"`
	SecretKey string `json:"secretKey" tfsdk:"secret_key"`
}

type AwsSsoConfig added in v0.12.0

type AwsSsoConfig struct {
	ScimEndpoint     string              `json:"scimEndpoint" tfsdk:"scim_endpoint"`
	Arn              string              `json:"arn" tfsdk:"arn"`
	GroupNamePattern string              `json:"groupNamePattern" tfsdk:"group_name_pattern"`
	SsoAccessToken   string              `json:"ssoAccessToken" tfsdk:"sso_access_token"`
	AwsRoleMappings  []AwsSsoRoleMapping `json:"awsRoleMappings" tfsdk:"aws_role_mappings"`
	SignInUrl        string              `json:"signInUrl" tfsdk:"sign_in_url"`
}

type AwsSsoRoleMapping added in v0.12.0

type AwsSsoRoleMapping struct {
	MeshProjectRoleRef MeshProjectRoleRefV2 `json:"projectRoleRef" tfsdk:"project_role_ref"`
	AwsRole            string               `json:"awsRole" tfsdk:"aws_role"`
	PermissionSetArns  []string             `json:"permissionSetArns" tfsdk:"permission_set_arns"`
}

type AwsWorkloadIdentityConfig added in v0.12.0

type AwsWorkloadIdentityConfig struct {
	RoleArn string `json:"roleArn" tfsdk:"role_arn"`
}

type AzureCustomerAgreementConfig added in v0.13.0

type AzureCustomerAgreementConfig struct {
	SourceServicePrincipal               AzureGraphApiCredentials `json:"sourceServicePrincipal" tfsdk:"source_service_principal"`
	DestinationEntraId                   string                   `json:"destinationEntraId" tfsdk:"destination_entra_id"`
	SourceEntraTenant                    string                   `json:"sourceEntraTenant" tfsdk:"source_entra_tenant"`
	BillingScope                         string                   `json:"billingScope" tfsdk:"billing_scope"`
	SubscriptionCreationErrorCooldownSec int64                    `json:"subscriptionCreationErrorCooldownSec" tfsdk:"subscription_creation_error_cooldown_sec"`
}

type AzureEnterpriseEnrollmentConfig added in v0.13.0

type AzureEnterpriseEnrollmentConfig struct {
	EnrollmentAccountId                  string `json:"enrollmentAccountId" tfsdk:"enrollment_account_id"`
	SubscriptionOfferType                string `json:"subscriptionOfferType" tfsdk:"subscription_offer_type"`
	UseLegacySubscriptionEnrollment      bool   `json:"useLegacySubscriptionEnrollment" tfsdk:"use_legacy_subscription_enrollment"`
	SubscriptionCreationErrorCooldownSec int64  `json:"subscriptionCreationErrorCooldownSec" tfsdk:"subscription_creation_error_cooldown_sec"`
}

type AzureFunction added in v0.11.0

type AzureFunction struct {
	AzureFunctionUrl   string `json:"azureFunctionUrl" tfsdk:"azure_function_url"`
	AzureFunctionScope string `json:"azureFunctionScope" tfsdk:"azure_function_scope"`
}

type AzureGraphApiCredentials added in v0.13.0

type AzureGraphApiCredentials struct {
	ClientId                    string  `json:"clientId" tfsdk:"client_id"`
	AuthType                    string  `json:"authType" tfsdk:"auth_type"`
	CredentialsAuthClientSecret *string `json:"credentialsAuthClientSecret,omitempty" tfsdk:"credentials_auth_client_secret"`
}

type AzureInviteB2BUserConfig added in v0.13.0

type AzureInviteB2BUserConfig struct {
	RedirectUrl             string `json:"redirectUrl" tfsdk:"redirect_url"`
	SendAzureInvitationMail bool   `json:"sendAzureInvitationMail" tfsdk:"send_azure_invitation_mail"`
}

type AzureMeteringConfig added in v0.13.0

type AzureMeteringConfig struct {
	ServicePrincipal AzureServicePrincipalConfig          `json:"servicePrincipal" tfsdk:"service_principal"`
	Processing       MeshPlatformMeteringProcessingConfig `json:"processing" tfsdk:"processing"`
}

type AzurePlatformConfig added in v0.12.0

type AzurePlatformConfig struct {
	EntraTenant string                  `json:"entraTenant" tfsdk:"entra_tenant"`
	Replication *AzureReplicationConfig `json:"replication,omitempty" tfsdk:"replication"`
	Metering    *AzureMeteringConfig    `json:"metering,omitempty" tfsdk:"metering"`
}

type AzurePlatformProperties added in v0.11.0

type AzurePlatformProperties struct {
	AzureRoleMappings      []AzureRoleMappingProperty `json:"azureRoleMappings" tfsdk:"azure_role_mappings"`
	AzureManagementGroupId string                     `json:"azureManagementGroupId" tfsdk:"azure_management_group_id"`
}

type AzurePreProvisionedSubscriptionConfig added in v0.13.0

type AzurePreProvisionedSubscriptionConfig struct {
	UnusedSubscriptionNamePrefix string `json:"unusedSubscriptionNamePrefix" tfsdk:"unused_subscription_name_prefix"`
}

type AzureReplicationConfig added in v0.12.0

type AzureReplicationConfig struct {
	ServicePrincipal                           AzureServicePrincipalConfig          `json:"servicePrincipal" tfsdk:"service_principal"`
	Provisioning                               *AzureSubscriptionProvisioningConfig `json:"provisioning,omitempty" tfsdk:"provisioning"`
	B2bUserInvitation                          *AzureInviteB2BUserConfig            `json:"b2bUserInvitation,omitempty" tfsdk:"b2b_user_invitation"`
	SubscriptionNamePattern                    string                               `json:"subscriptionNamePattern" tfsdk:"subscription_name_pattern"`
	GroupNamePattern                           string                               `json:"groupNamePattern" tfsdk:"group_name_pattern"`
	BlueprintServicePrincipal                  string                               `json:"blueprintServicePrincipal" tfsdk:"blueprint_service_principal"`
	BlueprintLocation                          string                               `json:"blueprintLocation" tfsdk:"blueprint_location"`
	AzureRoleMappings                          []AzureRoleMapping                   `json:"azureRoleMappings" tfsdk:"azure_role_mappings"`
	TenantTags                                 *MeshTenantTags                      `json:"tenantTags,omitempty" tfsdk:"tenant_tags"`
	UserLookUpStrategy                         string                               `json:"userLookUpStrategy" tfsdk:"user_look_up_strategy"`
	SkipUserGroupPermissionCleanup             bool                                 `json:"skipUserGroupPermissionCleanup" tfsdk:"skip_user_group_permission_cleanup"`
	AdministrativeUnitId                       *string                              `json:"administrativeUnitId,omitempty" tfsdk:"administrative_unit_id"`
	AllowHierarchicalManagementGroupAssignment bool                                 `json:"allowHierarchicalManagementGroupAssignment" tfsdk:"allow_hierarchical_management_group_assignment"`
}

type AzureRgPlatformConfig added in v0.12.0

type AzureRgPlatformConfig struct {
	EntraTenant string                    `json:"entraTenant" tfsdk:"entra_tenant"`
	Replication *AzureRgReplicationConfig `json:"replication,omitempty" tfsdk:"replication"`
}

type AzureRgPlatformProperties added in v0.11.0

type AzureRgPlatformProperties struct {
	AzureRgLocation     string               `json:"azureRgLocation" tfsdk:"azure_rg_location"`
	AzureRgRoleMappings []AzureRgRoleMapping `json:"azureRgRoleMappings" tfsdk:"azure_rg_role_mappings"`
	AzureFunction       *AzureFunction       `json:"azureFunction,omitempty" tfsdk:"azure_function"`
}

type AzureRgReplicationConfig added in v0.12.0

type AzureRgReplicationConfig struct {
	ServicePrincipal                           AzureServicePrincipalConfig `json:"servicePrincipal" tfsdk:"service_principal"`
	Subscription                               string                      `json:"subscription" tfsdk:"subscription"`
	ResourceGroupNamePattern                   string                      `json:"resourceGroupNamePattern" tfsdk:"resource_group_name_pattern"`
	UserGroupNamePattern                       string                      `json:"userGroupNamePattern" tfsdk:"user_group_name_pattern"`
	B2bUserInvitation                          *AzureInviteB2BUserConfig   `json:"b2bUserInvitation,omitempty" tfsdk:"b2b_user_invitation"`
	UserLookUpStrategy                         string                      `json:"userLookUpStrategy" tfsdk:"user_look_up_strategy"`
	TenantTags                                 *MeshTenantTags             `json:"tenantTags,omitempty" tfsdk:"tenant_tags"`
	SkipUserGroupPermissionCleanup             bool                        `json:"skipUserGroupPermissionCleanup" tfsdk:"skip_user_group_permission_cleanup"`
	AdministrativeUnitId                       *string                     `json:"administrativeUnitId,omitempty" tfsdk:"administrative_unit_id"`
	AllowHierarchicalManagementGroupAssignment bool                        `json:"allowHierarchicalManagementGroupAssignment" tfsdk:"allow_hierarchical_management_group_assignment"`
}

type AzureRgRoleMapping added in v0.11.0

type AzureRgRoleMapping struct {
	MeshProjectRoleRef     MeshProjectRoleRefV2 `json:"projectRoleRef" tfsdk:"project_role_ref"`
	AzureGroupSuffix       string               `json:"azureGroupSuffix" tfsdk:"azure_group_suffix"`
	AzureRoleDefinitionIds []string             `json:"azureRoleDefinitionIds" tfsdk:"azure_role_definition_ids"`
}

type AzureRole added in v0.13.0

type AzureRole struct {
	Alias string `json:"alias" tfsdk:"alias"`
	Id    string `json:"id" tfsdk:"id"`
}

type AzureRoleDefinition added in v0.11.0

type AzureRoleDefinition struct {
	AzureRoleDefinitionId string  `json:"azureRoleDefinitionId" tfsdk:"azure_role_definition_id"`
	AbacCondition         *string `json:"abacCondition" tfsdk:"abac_condition"`
}

type AzureRoleMapping added in v0.11.0

type AzureRoleMapping struct {
	MeshProjectRoleRef MeshProjectRoleRefV2 `json:"projectRoleRef" tfsdk:"project_role_ref"`
	AzureRole          AzureRole            `json:"azureRole" tfsdk:"azure_role"`
}

type AzureRoleMappingProperty added in v0.13.0

type AzureRoleMappingProperty struct {
	MeshProjectRoleRef   MeshProjectRoleRefV2  `json:"projectRoleRef" tfsdk:"project_role_ref"`
	AzureGroupSuffix     string                `json:"azureGroupSuffix" tfsdk:"azure_group_suffix"`
	AzureRoleDefinitions []AzureRoleDefinition `json:"azureRoleDefinitions" tfsdk:"azure_role_definitions"`
}

type AzureServicePrincipalConfig added in v0.12.0

type AzureServicePrincipalConfig struct {
	ClientId                    string  `json:"clientId" tfsdk:"client_id"`
	AuthType                    string  `json:"authType" tfsdk:"auth_type"`
	CredentialsAuthClientSecret *string `json:"credentialsAuthClientSecret,omitempty" tfsdk:"credentials_auth_client_secret"`
	ObjectId                    string  `json:"objectId" tfsdk:"object_id"`
}

type AzureSubscriptionProvisioningConfig added in v0.13.0

type AzureSubscriptionProvisioningConfig struct {
	SubscriptionOwnerObjectIds []string                               `json:"subscriptionOwnerObjectIds" tfsdk:"subscription_owner_object_ids"`
	EnterpriseEnrollment       *AzureEnterpriseEnrollmentConfig       `json:"enterpriseEnrollment,omitempty" tfsdk:"enterprise_enrollment"`
	CustomerAgreement          *AzureCustomerAgreementConfig          `json:"customerAgreement,omitempty" tfsdk:"customer_agreement"`
	PreProvisioned             *AzurePreProvisionedSubscriptionConfig `json:"preProvisioned,omitempty" tfsdk:"pre_provisioned"`
}

type GcpMeteringConfig added in v0.13.0

type GcpMeteringConfig struct {
	ServiceAccountConfig                    GcpServiceAccountConfig              `json:"serviceAccountConfig" tfsdk:"service_account_config"`
	BigqueryTable                           string                               `json:"bigqueryTable" tfsdk:"bigquery_table"`
	BigqueryTableForCarbonFootprint         *string                              `json:"bigqueryTableForCarbonFootprint,omitempty" tfsdk:"bigquery_table_for_carbon_footprint"`
	CarbonFootprintDataCollectionStartMonth *string                              `json:"carbonFootprintDataCollectionStartMonth,omitempty" tfsdk:"carbon_footprint_data_collection_start_month"`
	PartitionTimeColumn                     string                               `json:"partitionTimeColumn" tfsdk:"partition_time_column"`
	AdditionalFilter                        *string                              `json:"additionalFilter,omitempty" tfsdk:"additional_filter"`
	Processing                              MeshPlatformMeteringProcessingConfig `json:"processing" tfsdk:"processing"`
}

type GcpPlatformConfig added in v0.12.0

type GcpPlatformConfig struct {
	Replication *GcpReplicationConfig `json:"replication,omitempty" tfsdk:"replication"`
	Metering    *GcpMeteringConfig    `json:"metering,omitempty" tfsdk:"metering"`
}

type GcpPlatformProperties added in v0.11.0

type GcpPlatformProperties struct {
	GcpCloudFunctionUrl *string          `json:"gcpCloudFunctionUrl,omitempty" tfsdk:"gcp_cloud_function_url"`
	GcpFolderId         *string          `json:"gcpFolderId,omitempty" tfsdk:"gcp_folder_id"`
	GcpRoleMappings     []GcpRoleMapping `json:"gcpRoleMappings" tfsdk:"gcp_role_mappings"`
}

type GcpPlatformRoleMapping added in v0.12.0

type GcpPlatformRoleMapping struct {
	MeshProjectRoleRef MeshProjectRoleRefV2 `json:"projectRoleRef" tfsdk:"project_role_ref"`
	GcpRole            string               `json:"gcpRole" tfsdk:"gcp_role"`
}

type GcpReplicationConfig added in v0.12.0

type GcpReplicationConfig struct {
	ServiceAccountConfig              GcpServiceAccountConfig  `json:"serviceAccountConfig" tfsdk:"service_account_config"`
	Domain                            string                   `json:"domain" tfsdk:"domain"`
	CustomerId                        string                   `json:"customerId" tfsdk:"customer_id"`
	GroupNamePattern                  string                   `json:"groupNamePattern" tfsdk:"group_name_pattern"`
	ProjectNamePattern                string                   `json:"projectNamePattern" tfsdk:"project_name_pattern"`
	ProjectIdPattern                  string                   `json:"projectIdPattern" tfsdk:"project_id_pattern"`
	BillingAccountId                  string                   `json:"billingAccountId" tfsdk:"billing_account_id"`
	UserLookupStrategy                string                   `json:"userLookupStrategy" tfsdk:"user_lookup_strategy"`
	UsedExternalIdType                *string                  `json:"usedExternalIdType,omitempty" tfsdk:"used_external_id_type"`
	GcpRoleMappings                   []GcpPlatformRoleMapping `json:"gcpRoleMappings" tfsdk:"gcp_role_mappings"`
	AllowHierarchicalFolderAssignment bool                     `json:"allowHierarchicalFolderAssignment" tfsdk:"allow_hierarchical_folder_assignment"`
	TenantTags                        *MeshTenantTags          `json:"tenantTags,omitempty" tfsdk:"tenant_tags"`
	SkipUserGroupPermissionCleanup    bool                     `json:"skipUserGroupPermissionCleanup" tfsdk:"skip_user_group_permission_cleanup"`
}

type GcpRoleMapping added in v0.11.0

type GcpRoleMapping struct {
	MeshProjectRoleRef MeshProjectRoleRefV2 `json:"projectRoleRef" tfsdk:"project_role_ref"`
	PlatformRoles      []string             `json:"platformRoles" tfsdk:"platform_roles"`
}

type GcpServiceAccountConfig added in v0.12.0

type GcpServiceAccountConfig struct {
	ServiceAccountCredentialsConfig      *GcpServiceAccountCredentialsConfig      `json:"serviceAccountCredentialsConfig,omitempty" tfsdk:"service_account_credentials_config"`
	ServiceAccountWorkloadIdentityConfig *GcpServiceAccountWorkloadIdentityConfig `json:"serviceAccountWorkloadIdentityConfig,omitempty" tfsdk:"service_account_workload_identity_config"`
}

type GcpServiceAccountCredentialsConfig added in v0.12.0

type GcpServiceAccountCredentialsConfig struct {
	ServiceAccountCredentialsB64 string `json:"serviceAccountCredentialsB64" tfsdk:"service_account_credentials_b64"`
}

type GcpServiceAccountWorkloadIdentityConfig added in v0.12.0

type GcpServiceAccountWorkloadIdentityConfig struct {
	Audience            string `json:"audience" tfsdk:"audience"`
	ServiceAccountEmail string `json:"serviceAccountEmail" tfsdk:"service_account_email"`
}

type KubernetesClientConfig added in v0.12.0

type KubernetesClientConfig struct {
	AccessToken string `json:"accessToken" tfsdk:"access_token"`
}

type KubernetesMeteringConfig added in v0.13.0

type KubernetesMeteringConfig struct {
	ClientConfig KubernetesClientConfig               `json:"clientConfig" tfsdk:"client_config"`
	Processing   MeshPlatformMeteringProcessingConfig `json:"processing" tfsdk:"processing"`
}

type KubernetesPlatformConfig added in v0.12.0

type KubernetesPlatformConfig struct {
	BaseUrl              string                       `json:"baseUrl" tfsdk:"base_url"`
	DisableSslValidation bool                         `json:"disableSslValidation" tfsdk:"disable_ssl_validation"`
	Replication          *KubernetesReplicationConfig `json:"replication" tfsdk:"replication"`
	Metering             *KubernetesMeteringConfig    `json:"metering,omitempty" tfsdk:"metering"`
}

type KubernetesPlatformProperties added in v0.11.0

type KubernetesPlatformProperties struct {
	KubernetesRoleMappings []KubernetesRoleMapping `json:"kubernetesRoleMappings" tfsdk:"kubernetes_role_mappings"`
}

type KubernetesReplicationConfig added in v0.12.0

type KubernetesReplicationConfig struct {
	ClientConfig         KubernetesClientConfig `json:"clientConfig" tfsdk:"client_config"`
	NamespaceNamePattern string                 `json:"namespaceNamePattern" tfsdk:"namespace_name_pattern"`
}

type KubernetesRoleMapping added in v0.11.0

type KubernetesRoleMapping struct {
	MeshProjectRoleRef MeshProjectRoleRefV2 `json:"projectRoleRef" tfsdk:"project_role_ref"`
	PlatformRoles      []string             `json:"platformRoles" tfsdk:"platform_roles"`
}

type LocationRef added in v0.12.0

type LocationRef struct {
	Kind string `json:"kind" tfsdk:"kind"`
	Name string `json:"name" tfsdk:"name"`
}

type MeshBuildingBlock

type MeshBuildingBlock struct {
	ApiVersion string                    `json:"apiVersion" tfsdk:"api_version"`
	Kind       string                    `json:"kind" tfsdk:"kind"`
	Metadata   MeshBuildingBlockMetadata `json:"metadata" tfsdk:"metadata"`
	Spec       MeshBuildingBlockSpec     `json:"spec" tfsdk:"spec"`
	Status     MeshBuildingBlockStatus   `json:"status" tfsdk:"status"`
}

type MeshBuildingBlockCreate added in v0.5.0

type MeshBuildingBlockCreate struct {
	ApiVersion string                          `json:"apiVersion" tfsdk:"api_version"`
	Kind       string                          `json:"kind" tfsdk:"kind"`
	Metadata   MeshBuildingBlockCreateMetadata `json:"metadata" tfsdk:"metadata"`
	Spec       MeshBuildingBlockSpec           `json:"spec" tfsdk:"spec"`
}

type MeshBuildingBlockCreateMetadata added in v0.5.0

type MeshBuildingBlockCreateMetadata struct {
	DefinitionUuid    string `json:"definitionUuid" tfsdk:"definition_uuid"`
	DefinitionVersion int64  `json:"definitionVersion" tfsdk:"definition_version"`
	TenantIdentifier  string `json:"tenantIdentifier" tfsdk:"tenant_identifier"`
}

type MeshBuildingBlockIO

type MeshBuildingBlockIO struct {
	Key       string `json:"key" tfsdk:"key"`
	Value     any    `json:"value" tfsdk:"value"`
	ValueType string `json:"valueType" tfsdk:"value_type"`
}

type MeshBuildingBlockMetadata

type MeshBuildingBlockMetadata struct {
	Uuid                string  `json:"uuid" tfsdk:"uuid"`
	DefinitionUuid      string  `json:"definitionUuid" tfsdk:"definition_uuid"`
	DefinitionVersion   int64   `json:"definitionVersion" tfsdk:"definition_version"`
	TenantIdentifier    string  `json:"tenantIdentifier" tfsdk:"tenant_identifier"`
	ForcePurge          bool    `json:"forcePurge" tfsdk:"force_purge"`
	CreatedOn           string  `json:"createdOn" tfsdk:"created_on"`
	MarkedForDeletionOn *string `json:"markedForDeletionOn" tfsdk:"marked_for_deletion_on"`
	MarkedForDeletionBy *string `json:"markedForDeletionBy" tfsdk:"marked_for_deletion_by"`
}

type MeshBuildingBlockParent

type MeshBuildingBlockParent struct {
	BuildingBlockUuid string `json:"buildingBlockUuid" tfsdk:"buildingblock_uuid"`
	DefinitionUuid    string `json:"definitionUuid" tfsdk:"definition_uuid"`
}

type MeshBuildingBlockSpec

type MeshBuildingBlockSpec struct {
	DisplayName          string                    `json:"displayName" tfsdk:"display_name"`
	Inputs               []MeshBuildingBlockIO     `json:"inputs" tfsdk:"inputs"`
	ParentBuildingBlocks []MeshBuildingBlockParent `json:"parentBuildingBlocks" tfsdk:"parent_building_blocks"`
}

type MeshBuildingBlockStatus

type MeshBuildingBlockStatus struct {
	Status  string                `json:"status" tfsdk:"status"`
	Outputs []MeshBuildingBlockIO `json:"outputs" tfsdk:"outputs"`
}

type MeshBuildingBlockV2 added in v0.7.0

type MeshBuildingBlockV2 struct {
	ApiVersion string                      `json:"apiVersion" tfsdk:"api_version"`
	Kind       string                      `json:"kind" tfsdk:"kind"`
	Metadata   MeshBuildingBlockV2Metadata `json:"metadata" tfsdk:"metadata"`
	Spec       MeshBuildingBlockV2Spec     `json:"spec" tfsdk:"spec"`
	Status     MeshBuildingBlockV2Status   `json:"status" tfsdk:"status"`
}

type MeshBuildingBlockV2Create added in v0.7.0

type MeshBuildingBlockV2Create struct {
	ApiVersion string                  `json:"apiVersion" tfsdk:"api_version"`
	Kind       string                  `json:"kind" tfsdk:"kind"`
	Spec       MeshBuildingBlockV2Spec `json:"spec" tfsdk:"spec"`
}

type MeshBuildingBlockV2DefinitionVersionRef added in v0.7.0

type MeshBuildingBlockV2DefinitionVersionRef struct {
	Uuid string `json:"uuid" tfsdk:"uuid"`
}

type MeshBuildingBlockV2Metadata added in v0.7.0

type MeshBuildingBlockV2Metadata struct {
	Uuid                string  `json:"uuid" tfsdk:"uuid"`
	OwnedByWorkspace    string  `json:"ownedByWorkspace" tfsdk:"owned_by_workspace"`
	CreatedOn           string  `json:"createdOn" tfsdk:"created_on"`
	MarkedForDeletionOn *string `json:"markedForDeletionOn" tfsdk:"marked_for_deletion_on"`
	MarkedForDeletionBy *string `json:"markedForDeletionBy" tfsdk:"marked_for_deletion_by"`
}

type MeshBuildingBlockV2Spec added in v0.7.0

type MeshBuildingBlockV2Spec struct {
	BuildingBlockDefinitionVersionRef MeshBuildingBlockV2DefinitionVersionRef `json:"buildingBlockDefinitionVersionRef" tfsdk:"building_block_definition_version_ref"`
	TargetRef                         MeshBuildingBlockV2TargetRef            `json:"targetRef" tfsdk:"target_ref"`
	DisplayName                       string                                  `json:"displayName" tfsdk:"display_name"`

	Inputs               []MeshBuildingBlockIO     `json:"inputs" tfsdk:"inputs"`
	ParentBuildingBlocks []MeshBuildingBlockParent `json:"parentBuildingBlocks" tfsdk:"parent_building_blocks"`
}

type MeshBuildingBlockV2Status added in v0.7.0

type MeshBuildingBlockV2Status struct {
	Status     string                `json:"status" tfsdk:"status"`
	Outputs    []MeshBuildingBlockIO `json:"outputs" tfsdk:"outputs"`
	ForcePurge bool                  `json:"forcePurge" tfsdk:"force_purge"`
}

type MeshBuildingBlockV2TargetRef added in v0.7.0

type MeshBuildingBlockV2TargetRef struct {
	Kind       string  `json:"kind" tfsdk:"kind"`
	Uuid       *string `json:"uuid" tfsdk:"uuid"`
	Identifier *string `json:"identifier" tfsdk:"identifier"`
}

type MeshLandingZone added in v0.11.0

type MeshLandingZone struct {
	ApiVersion string                  `json:"apiVersion" tfsdk:"api_version"`
	Kind       string                  `json:"kind" tfsdk:"kind"`
	Metadata   MeshLandingZoneMetadata `json:"metadata" tfsdk:"metadata"`
	Spec       MeshLandingZoneSpec     `json:"spec" tfsdk:"spec"`
	Status     MeshLandingZoneStatus   `json:"status" tfsdk:"status"`
}

type MeshLandingZoneCreate added in v0.11.0

type MeshLandingZoneCreate struct {
	ApiVersion string                  `json:"apiVersion" tfsdk:"api_version"`
	Metadata   MeshLandingZoneMetadata `json:"metadata" tfsdk:"metadata"`
	Spec       MeshLandingZoneSpec     `json:"spec" tfsdk:"spec"`
}

type MeshLandingZoneMetadata added in v0.11.0

type MeshLandingZoneMetadata struct {
	Name string              `json:"name" tfsdk:"name"`
	Tags map[string][]string `json:"tags" tfsdk:"tags"`
}

type MeshLandingZonePlatformProperties added in v0.13.0

type MeshLandingZonePlatformProperties struct {
	Type       string                        `json:"type" tfsdk:"type"`
	Aws        *AwsPlatformProperties        `json:"aws" tfsdk:"aws"`
	Aks        *AksPlatformProperties        `json:"aks" tfsdk:"aks"`
	Azure      *AzurePlatformProperties      `json:"azure" tfsdk:"azure"`
	AzureRg    *AzureRgPlatformProperties    `json:"azurerg" tfsdk:"azurerg"`
	Gcp        *GcpPlatformProperties        `json:"gcp" tfsdk:"gcp"`
	Kubernetes *KubernetesPlatformProperties `json:"kubernetes" tfsdk:"kubernetes"`
	OpenShift  *OpenShiftPlatformProperties  `json:"openshift" tfsdk:"openshift"`
}

type MeshLandingZonePlatformRef added in v0.13.0

type MeshLandingZonePlatformRef struct {
	Uuid string `json:"uuid" tfsdk:"uuid"`
	Kind string `json:"kind" tfsdk:"kind"`
}

type MeshLandingZoneQuota added in v0.13.0

type MeshLandingZoneQuota struct {
	Key   string `json:"key" tfsdk:"key"`
	Value int64  `json:"value" tfsdk:"value"`
}

type MeshLandingZoneSpec added in v0.11.0

type MeshLandingZoneSpec struct {
	DisplayName                 string                             `json:"displayName" tfsdk:"display_name"`
	Description                 string                             `json:"description" tfsdk:"description"`
	AutomateDeletionApproval    bool                               `json:"automateDeletionApproval" tfsdk:"automate_deletion_approval"`
	AutomateDeletionReplication bool                               `json:"automateDeletionReplication" tfsdk:"automate_deletion_replication"`
	InfoLink                    *string                            `json:"infoLink,omitempty" tfsdk:"info_link"`
	PlatformRef                 MeshLandingZonePlatformRef         `json:"platformRef" tfsdk:"platform_ref"`
	PlatformProperties          *MeshLandingZonePlatformProperties `json:"platformProperties,omitempty" tfsdk:"platform_properties"`
	Quotas                      []MeshLandingZoneQuota             `json:"quotas" tfsdk:"quotas"`
}

type MeshLandingZoneStatus added in v0.11.0

type MeshLandingZoneStatus struct {
	Disabled   bool `json:"disabled" tfsdk:"disabled"`
	Restricted bool `json:"restricted" tfsdk:"restricted"`
}

type MeshPaymentMethod added in v0.14.0

type MeshPaymentMethod struct {
	ApiVersion string                    `json:"apiVersion" tfsdk:"api_version"`
	Kind       string                    `json:"kind" tfsdk:"kind"`
	Metadata   MeshPaymentMethodMetadata `json:"metadata" tfsdk:"metadata"`
	Spec       MeshPaymentMethodSpec     `json:"spec" tfsdk:"spec"`
}

type MeshPaymentMethodCreate added in v0.14.0

type MeshPaymentMethodCreate struct {
	ApiVersion string                          `json:"apiVersion" tfsdk:"api_version"`
	Metadata   MeshPaymentMethodCreateMetadata `json:"metadata" tfsdk:"metadata"`
	Spec       MeshPaymentMethodSpec           `json:"spec" tfsdk:"spec"`
}

type MeshPaymentMethodCreateMetadata added in v0.14.0

type MeshPaymentMethodCreateMetadata struct {
	Name             string `json:"name" tfsdk:"name"`
	OwnedByWorkspace string `json:"ownedByWorkspace" tfsdk:"owned_by_workspace"`
}

type MeshPaymentMethodMetadata added in v0.14.0

type MeshPaymentMethodMetadata struct {
	Name             string  `json:"name" tfsdk:"name"`
	OwnedByWorkspace string  `json:"ownedByWorkspace" tfsdk:"owned_by_workspace"`
	CreatedOn        string  `json:"createdOn" tfsdk:"created_on"`
	DeletedOn        *string `json:"deletedOn" tfsdk:"deleted_on"`
}

type MeshPaymentMethodSpec added in v0.14.0

type MeshPaymentMethodSpec struct {
	DisplayName    string              `json:"displayName" tfsdk:"display_name"`
	ExpirationDate *string             `json:"expirationDate,omitempty" tfsdk:"expiration_date"`
	Amount         *int64              `json:"amount,omitempty" tfsdk:"amount"`
	Tags           map[string][]string `json:"tags,omitempty" tfsdk:"tags"`
}

type MeshPlatform added in v0.12.0

type MeshPlatform struct {
	ApiVersion string               `json:"apiVersion" tfsdk:"api_version"`
	Kind       string               `json:"kind" tfsdk:"kind"`
	Metadata   MeshPlatformMetadata `json:"metadata" tfsdk:"metadata"`
	Spec       MeshPlatformSpec     `json:"spec" tfsdk:"spec"`
}

type MeshPlatformCreate added in v0.12.0

type MeshPlatformCreate struct {
	ApiVersion string                     `json:"apiVersion" tfsdk:"api_version"`
	Metadata   MeshPlatformCreateMetadata `json:"metadata" tfsdk:"metadata"`
	Spec       MeshPlatformSpec           `json:"spec" tfsdk:"spec"`
}

type MeshPlatformCreateMetadata added in v0.12.0

type MeshPlatformCreateMetadata struct {
	Name             string `json:"name" tfsdk:"name"`
	OwnedByWorkspace string `json:"ownedByWorkspace" tfsdk:"owned_by_workspace"`
}

type MeshPlatformMetadata added in v0.12.0

type MeshPlatformMetadata struct {
	Name             string  `json:"name" tfsdk:"name"`
	OwnedByWorkspace string  `json:"ownedByWorkspace" tfsdk:"owned_by_workspace"`
	Uuid             string  `json:"uuid" tfsdk:"uuid"`
	CreatedOn        string  `json:"createdOn" tfsdk:"created_on"`
	DeletedOn        *string `json:"deletedOn" tfsdk:"deleted_on"`
}

type MeshPlatformMeteringProcessingConfig added in v0.13.0

type MeshPlatformMeteringProcessingConfig struct {
	CompactTimelinesAfterDays int64 `json:"compactTimelinesAfterDays" tfsdk:"compact_timelines_after_days"`
	DeleteRawDataAfterDays    int64 `json:"deleteRawDataAfterDays" tfsdk:"delete_raw_data_after_days"`
}

type MeshPlatformSpec added in v0.12.0

type MeshPlatformSpec struct {
	DisplayName            string               `json:"displayName" tfsdk:"display_name"`
	Description            string               `json:"description" tfsdk:"description"`
	Endpoint               string               `json:"endpoint" tfsdk:"endpoint"`
	SupportUrl             *string              `json:"supportUrl,omitempty" tfsdk:"support_url"`
	DocumentationUrl       *string              `json:"documentationUrl,omitempty" tfsdk:"documentation_url"`
	LocationRef            LocationRef          `json:"locationRef" tfsdk:"location_ref"`
	ContributingWorkspaces []string             `json:"contributingWorkspaces" tfsdk:"contributing_workspaces"`
	Availability           PlatformAvailability `json:"availability" tfsdk:"availability"`
	Config                 PlatformConfig       `json:"config" tfsdk:"config"`
	QuotaDefinitions       []QuotaDefinition    `json:"quotaDefinitions" tfsdk:"quota_definitions"`
}

type MeshPlatformUpdate added in v0.12.0

type MeshPlatformUpdate struct {
	ApiVersion string                     `json:"apiVersion" tfsdk:"api_version"`
	Metadata   MeshPlatformUpdateMetadata `json:"metadata" tfsdk:"metadata"`
	Spec       MeshPlatformSpec           `json:"spec" tfsdk:"spec"`
}

type MeshPlatformUpdateMetadata added in v0.12.0

type MeshPlatformUpdateMetadata struct {
	Name             string `json:"name" tfsdk:"name"`
	OwnedByWorkspace string `json:"ownedByWorkspace" tfsdk:"owned_by_workspace"`
	Uuid             string `json:"uuid" tfsdk:"uuid"`
}

type MeshProject

type MeshProject struct {
	ApiVersion string              `json:"apiVersion" tfsdk:"api_version"`
	Kind       string              `json:"kind" tfsdk:"kind"`
	Metadata   MeshProjectMetadata `json:"metadata" tfsdk:"metadata"`
	Spec       MeshProjectSpec     `json:"spec" tfsdk:"spec"`
}

type MeshProjectBinding added in v0.4.0

type MeshProjectBinding struct {
	ApiVersion string                     `json:"apiVersion" tfsdk:"api_version"`
	Kind       string                     `json:"kind" tfsdk:"kind"`
	Metadata   MeshProjectBindingMetadata `json:"metadata" tfsdk:"metadata"`
	RoleRef    MeshProjectRoleRef         `json:"roleRef" tfsdk:"role_ref"`
	TargetRef  MeshProjectTargetRef       `json:"targetRef" tfsdk:"target_ref"`
	Subject    MeshSubject                `json:"subject" tfsdk:"subject"`
}

type MeshProjectBindingMetadata added in v0.4.0

type MeshProjectBindingMetadata struct {
	Name string `json:"name" tfsdk:"name"`
}

type MeshProjectCreate

type MeshProjectCreate struct {
	Metadata MeshProjectCreateMetadata `json:"metadata" tfsdk:"metadata"`
	Spec     MeshProjectSpec           `json:"spec" tfsdk:"spec"`
}

type MeshProjectCreateMetadata

type MeshProjectCreateMetadata struct {
	Name             string `json:"name" tfsdk:"name"`
	OwnedByWorkspace string `json:"ownedByWorkspace" tfsdk:"owned_by_workspace"`
}

type MeshProjectGroupBinding added in v0.4.0

type MeshProjectGroupBinding = MeshProjectBinding

type MeshProjectMetadata

type MeshProjectMetadata struct {
	Name             string  `json:"name" tfsdk:"name"`
	OwnedByWorkspace string  `json:"ownedByWorkspace" tfsdk:"owned_by_workspace"`
	CreatedOn        string  `json:"createdOn" tfsdk:"created_on"`
	DeletedOn        *string `json:"deletedOn" tfsdk:"deleted_on"`
}

type MeshProjectRoleRef deprecated

type MeshProjectRoleRef struct {
	Name string `json:"name" tfsdk:"name"`
}

Deprecated: Use MeshProjectRoleRefV2 if possible. The convention is to also provide the `kind`, so this struct should only be used for meshobjects that violate our API conventions.

type MeshProjectRoleRefV2 added in v0.11.0

type MeshProjectRoleRefV2 struct {
	Name string `json:"name" tfsdk:"name"`
	Kind string `json:"kind" tfsdk:"kind"`
}

type MeshProjectSpec

type MeshProjectSpec struct {
	DisplayName                       string              `json:"displayName" tfsdk:"display_name"`
	Tags                              map[string][]string `json:"tags" tfsdk:"tags"`
	PaymentMethodIdentifier           *string             `json:"paymentMethodIdentifier" tfsdk:"payment_method_identifier"`
	SubstitutePaymentMethodIdentifier *string             `json:"substitutePaymentMethodIdentifier" tfsdk:"substitute_payment_method_identifier"`
}

type MeshProjectTargetRef

type MeshProjectTargetRef struct {
	Name             string `json:"name" tfsdk:"name"`
	OwnedByWorkspace string `json:"ownedByWorkspace" tfsdk:"owned_by_workspace"`
}

type MeshProjectUserBinding

type MeshProjectUserBinding = MeshProjectBinding

type MeshStackProviderClient

type MeshStackProviderClient struct {
	// contains filtered or unexported fields
}

func NewClient

func NewClient(rootUrl *url.URL, apiKey string, apiSecret string) (*MeshStackProviderClient, error)

func (*MeshStackProviderClient) CreateBuildingBlock added in v0.5.0

func (*MeshStackProviderClient) CreateBuildingBlockV2 added in v0.7.0

func (*MeshStackProviderClient) CreateLandingZone added in v0.11.0

func (c *MeshStackProviderClient) CreateLandingZone(landingZone *MeshLandingZoneCreate) (*MeshLandingZone, error)

func (*MeshStackProviderClient) CreatePaymentMethod added in v0.14.0

func (c *MeshStackProviderClient) CreatePaymentMethod(paymentMethod *MeshPaymentMethodCreate) (*MeshPaymentMethod, error)

func (*MeshStackProviderClient) CreatePlatform added in v0.12.0

func (c *MeshStackProviderClient) CreatePlatform(platform *MeshPlatformCreate) (*MeshPlatform, error)

func (*MeshStackProviderClient) CreateProject

func (c *MeshStackProviderClient) CreateProject(project *MeshProjectCreate) (*MeshProject, error)

func (*MeshStackProviderClient) CreateProjectGroupBinding added in v0.4.0

func (c *MeshStackProviderClient) CreateProjectGroupBinding(binding *MeshProjectGroupBinding) (*MeshProjectGroupBinding, error)

func (*MeshStackProviderClient) CreateProjectUserBinding

func (c *MeshStackProviderClient) CreateProjectUserBinding(binding *MeshProjectUserBinding) (*MeshProjectUserBinding, error)

func (*MeshStackProviderClient) CreateTagDefinition added in v0.6.0

func (c *MeshStackProviderClient) CreateTagDefinition(tagDefinition *MeshTagDefinition) (*MeshTagDefinition, error)

func (*MeshStackProviderClient) CreateTenant

func (c *MeshStackProviderClient) CreateTenant(tenant *MeshTenantCreate) (*MeshTenant, error)

func (*MeshStackProviderClient) CreateTenantV4 added in v0.8.0

func (c *MeshStackProviderClient) CreateTenantV4(tenant *MeshTenantV4Create) (*MeshTenantV4, error)

func (*MeshStackProviderClient) CreateWorkspace added in v0.8.0

func (c *MeshStackProviderClient) CreateWorkspace(workspace *MeshWorkspaceCreate) (*MeshWorkspace, error)

func (*MeshStackProviderClient) CreateWorkspaceGroupBinding added in v0.10.0

func (c *MeshStackProviderClient) CreateWorkspaceGroupBinding(binding *MeshWorkspaceGroupBinding) (*MeshWorkspaceGroupBinding, error)

func (*MeshStackProviderClient) CreateWorkspaceUserBinding added in v0.10.0

func (c *MeshStackProviderClient) CreateWorkspaceUserBinding(binding *MeshWorkspaceUserBinding) (*MeshWorkspaceUserBinding, error)

func (*MeshStackProviderClient) DeleteBuildingBlock added in v0.5.0

func (c *MeshStackProviderClient) DeleteBuildingBlock(uuid string) error

func (*MeshStackProviderClient) DeleteBuildingBlockV2 added in v0.7.0

func (c *MeshStackProviderClient) DeleteBuildingBlockV2(uuid string) error

func (*MeshStackProviderClient) DeleteLandingZone added in v0.11.0

func (c *MeshStackProviderClient) DeleteLandingZone(name string) error

func (*MeshStackProviderClient) DeletePaymentMethod added in v0.14.0

func (c *MeshStackProviderClient) DeletePaymentMethod(identifier string) error

func (*MeshStackProviderClient) DeletePlatform added in v0.12.0

func (c *MeshStackProviderClient) DeletePlatform(uuid string) error

func (*MeshStackProviderClient) DeleteProjecGroupBinding added in v0.4.0

func (c *MeshStackProviderClient) DeleteProjecGroupBinding(name string) error

func (*MeshStackProviderClient) DeleteProjecUserBinding

func (c *MeshStackProviderClient) DeleteProjecUserBinding(name string) error

func (*MeshStackProviderClient) DeleteProject

func (c *MeshStackProviderClient) DeleteProject(workspace string, name string) error

func (*MeshStackProviderClient) DeleteTagDefinition added in v0.6.0

func (c *MeshStackProviderClient) DeleteTagDefinition(name string) error

func (*MeshStackProviderClient) DeleteTenant

func (c *MeshStackProviderClient) DeleteTenant(workspace string, project string, platform string) error

func (*MeshStackProviderClient) DeleteTenantV4 added in v0.8.0

func (c *MeshStackProviderClient) DeleteTenantV4(uuid string) error

func (*MeshStackProviderClient) DeleteWorkspace added in v0.8.0

func (c *MeshStackProviderClient) DeleteWorkspace(name string) error

func (*MeshStackProviderClient) DeleteWorkspaceGroupBinding added in v0.10.0

func (c *MeshStackProviderClient) DeleteWorkspaceGroupBinding(name string) error

func (*MeshStackProviderClient) DeleteWorkspaceUserBinding added in v0.10.0

func (c *MeshStackProviderClient) DeleteWorkspaceUserBinding(name string) error

func (*MeshStackProviderClient) PollBuildingBlockV2UntilCompletion added in v0.9.0

func (c *MeshStackProviderClient) PollBuildingBlockV2UntilCompletion(ctx context.Context, uuid string) (*MeshBuildingBlockV2, error)

PollBuildingBlockV2UntilCompletion polls a building block until it reaches a terminal state (SUCCEEDED or FAILED) Returns the final building block state or an error if polling fails or times out

func (*MeshStackProviderClient) PollBuildingBlockV2UntilDeletion added in v0.9.0

func (c *MeshStackProviderClient) PollBuildingBlockV2UntilDeletion(ctx context.Context, uuid string) error

PollBuildingBlockV2UntilDeletion polls a building block until it is deleted (not found) Returns nil on successful deletion or an error if polling fails or times out

func (*MeshStackProviderClient) PollTenantV4UntilCreation added in v0.9.0

func (c *MeshStackProviderClient) PollTenantV4UntilCreation(ctx context.Context, uuid string) (*MeshTenantV4, error)

PollTenantV4UntilCreation polls a tenant until creation completes (platformTenantId is set) Returns the final tenant state or an error if polling fails or times out

func (*MeshStackProviderClient) PollTenantV4UntilDeletion added in v0.9.0

func (c *MeshStackProviderClient) PollTenantV4UntilDeletion(ctx context.Context, uuid string) error

PollTenantV4UntilDeletion polls a tenant until it is deleted (not found) Returns nil on successful deletion or an error if polling fails or times out

func (*MeshStackProviderClient) ReadBuildingBlock

func (c *MeshStackProviderClient) ReadBuildingBlock(uuid string) (*MeshBuildingBlock, error)

func (*MeshStackProviderClient) ReadBuildingBlockV2 added in v0.7.0

func (c *MeshStackProviderClient) ReadBuildingBlockV2(uuid string) (*MeshBuildingBlockV2, error)

func (*MeshStackProviderClient) ReadLandingZone added in v0.11.0

func (c *MeshStackProviderClient) ReadLandingZone(name string) (*MeshLandingZone, error)

func (*MeshStackProviderClient) ReadPaymentMethod added in v0.14.0

func (c *MeshStackProviderClient) ReadPaymentMethod(workspace string, identifier string) (*MeshPaymentMethod, error)

func (*MeshStackProviderClient) ReadPlatform added in v0.12.0

func (c *MeshStackProviderClient) ReadPlatform(uuid string) (*MeshPlatform, error)

func (*MeshStackProviderClient) ReadProject

func (c *MeshStackProviderClient) ReadProject(workspace string, name string) (*MeshProject, error)

func (*MeshStackProviderClient) ReadProjectGroupBinding added in v0.4.0

func (c *MeshStackProviderClient) ReadProjectGroupBinding(name string) (*MeshProjectGroupBinding, error)

func (*MeshStackProviderClient) ReadProjectUserBinding

func (c *MeshStackProviderClient) ReadProjectUserBinding(name string) (*MeshProjectUserBinding, error)

func (*MeshStackProviderClient) ReadProjects

func (c *MeshStackProviderClient) ReadProjects(workspaceIdentifier string, paymentMethodIdentifier *string) (*[]MeshProject, error)

func (*MeshStackProviderClient) ReadTagDefinition added in v0.6.0

func (c *MeshStackProviderClient) ReadTagDefinition(name string) (*MeshTagDefinition, error)

func (*MeshStackProviderClient) ReadTagDefinitions added in v0.6.0

func (c *MeshStackProviderClient) ReadTagDefinitions() (*[]MeshTagDefinition, error)

func (*MeshStackProviderClient) ReadTenant

func (c *MeshStackProviderClient) ReadTenant(workspace string, project string, platform string) (*MeshTenant, error)

func (*MeshStackProviderClient) ReadTenantV4 added in v0.8.0

func (c *MeshStackProviderClient) ReadTenantV4(uuid string) (*MeshTenantV4, error)

func (*MeshStackProviderClient) ReadWorkspace added in v0.8.0

func (c *MeshStackProviderClient) ReadWorkspace(name string) (*MeshWorkspace, error)

func (*MeshStackProviderClient) ReadWorkspaceGroupBinding added in v0.10.0

func (c *MeshStackProviderClient) ReadWorkspaceGroupBinding(name string) (*MeshWorkspaceGroupBinding, error)

func (*MeshStackProviderClient) ReadWorkspaceUserBinding added in v0.10.0

func (c *MeshStackProviderClient) ReadWorkspaceUserBinding(name string) (*MeshWorkspaceUserBinding, error)

func (*MeshStackProviderClient) UpdateLandingZone added in v0.11.0

func (c *MeshStackProviderClient) UpdateLandingZone(name string, landingZone *MeshLandingZoneCreate) (*MeshLandingZone, error)

func (*MeshStackProviderClient) UpdatePaymentMethod added in v0.14.0

func (c *MeshStackProviderClient) UpdatePaymentMethod(identifier string, paymentMethod *MeshPaymentMethodCreate) (*MeshPaymentMethod, error)

func (*MeshStackProviderClient) UpdatePlatform added in v0.12.0

func (c *MeshStackProviderClient) UpdatePlatform(uuid string, platform *MeshPlatformUpdate) (*MeshPlatform, error)

func (*MeshStackProviderClient) UpdateProject

func (c *MeshStackProviderClient) UpdateProject(project *MeshProjectCreate) (*MeshProject, error)

func (*MeshStackProviderClient) UpdateTagDefinition added in v0.6.0

func (c *MeshStackProviderClient) UpdateTagDefinition(tagDefinition *MeshTagDefinition) (*MeshTagDefinition, error)

func (*MeshStackProviderClient) UpdateWorkspace added in v0.8.0

func (c *MeshStackProviderClient) UpdateWorkspace(name string, workspace *MeshWorkspaceCreate) (*MeshWorkspace, error)

type MeshSubject

type MeshSubject struct {
	Name string `json:"name" tfsdk:"name"`
}

type MeshTagDefinition added in v0.6.0

type MeshTagDefinition struct {
	ApiVersion string                    `json:"apiVersion" tfsdk:"api_version"`
	Kind       string                    `json:"kind" tfsdk:"kind"`
	Metadata   MeshTagDefinitionMetadata `json:"metadata" tfsdk:"metadata"`
	Spec       MeshTagDefinitionSpec     `json:"spec" tfsdk:"spec"`
}

type MeshTagDefinitionMetadata added in v0.6.0

type MeshTagDefinitionMetadata struct {
	Name string `json:"name" tfsdk:"name"`
}

type MeshTagDefinitionSpec added in v0.6.0

type MeshTagDefinitionSpec struct {
	TargetKind     string                     `json:"targetKind" tfsdk:"target_kind"`
	Key            string                     `json:"key" tfsdk:"key"`
	ValueType      MeshTagDefinitionValueType `json:"valueType" tfsdk:"value_type"`
	Description    string                     `json:"description" tfsdk:"description"`
	DisplayName    string                     `json:"displayName" tfsdk:"display_name"`
	SortOrder      int64                      `json:"sortOrder" tfsdk:"sort_order"`
	Mandatory      bool                       `json:"mandatory" tfsdk:"mandatory"`
	Immutable      bool                       `json:"immutable" tfsdk:"immutable"`
	Restricted     bool                       `json:"restricted" tfsdk:"restricted"`
	ReplicationKey *string                    `json:"replicationKey,omitempty" tfsdk:"replication_key"`
}

type MeshTagDefinitionValueType added in v0.6.0

type MeshTagDefinitionValueType struct {
	String       *TagValueString       `json:"string,omitempty" tfsdk:"string"`
	Email        *TagValueEmail        `json:"email,omitempty" tfsdk:"email"`
	Integer      *TagValueInteger      `json:"integer,omitempty" tfsdk:"integer"`
	Number       *TagValueNumber       `json:"number,omitempty" tfsdk:"number"`
	SingleSelect *TagValueSingleSelect `json:"singleSelect,omitempty" tfsdk:"single_select"`
	MultiSelect  *TagValueMultiSelect  `json:"multiSelect,omitempty" tfsdk:"multi_select"`
}

type MeshTenant

type MeshTenant struct {
	ApiVersion string             `json:"apiVersion" tfsdk:"api_version"`
	Kind       string             `json:"kind" tfsdk:"kind"`
	Metadata   MeshTenantMetadata `json:"metadata" tfsdk:"metadata"`
	Spec       MeshTenantSpec     `json:"spec" tfsdk:"spec"`
}

type MeshTenantCreate

type MeshTenantCreate struct {
	Metadata MeshTenantCreateMetadata `json:"metadata" tfsdk:"metadata"`
	Spec     MeshTenantCreateSpec     `json:"spec" tfsdk:"spec"`
}

type MeshTenantCreateMetadata

type MeshTenantCreateMetadata struct {
	OwnedByProject     string `json:"ownedByProject" tfsdk:"owned_by_project"`
	OwnedByWorkspace   string `json:"ownedByWorkspace" tfsdk:"owned_by_workspace"`
	PlatformIdentifier string `json:"platformIdentifier" tfsdk:"platform_identifier"`
}

type MeshTenantCreateSpec

type MeshTenantCreateSpec struct {
	LocalId               *string            `json:"localId" tfsdk:"local_id"`
	LandingZoneIdentifier *string            `json:"landingZoneIdentifier" tfsdk:"landing_zone_identifier"`
	Quotas                *[]MeshTenantQuota `json:"quotas" tfsdk:"quotas"`
}

type MeshTenantMetadata

type MeshTenantMetadata struct {
	OwnedByProject     string              `json:"ownedByProject" tfsdk:"owned_by_project"`
	OwnedByWorkspace   string              `json:"ownedByWorkspace" tfsdk:"owned_by_workspace"`
	PlatformIdentifier string              `json:"platformIdentifier" tfsdk:"platform_identifier"`
	AssignedTags       map[string][]string `json:"assignedTags" tfsdk:"assigned_tags"`
	DeletedOn          *string             `json:"deletedOn" tfsdk:"deleted_on"`
}

type MeshTenantQuota

type MeshTenantQuota struct {
	Key   string `json:"key" tfsdk:"key"`
	Value int64  `json:"value" tfsdk:"value"`
}

type MeshTenantSpec

type MeshTenantSpec struct {
	LocalId               *string           `json:"localId" tfsdk:"local_id"`
	LandingZoneIdentifier string            `json:"landingZoneIdentifier" tfsdk:"landing_zone_identifier"`
	Quotas                []MeshTenantQuota `json:"quotas" tfsdk:"quotas"`
}

type MeshTenantTags added in v0.13.0

type MeshTenantTags struct {
	NamespacePrefix string      `json:"namespacePrefix" tfsdk:"namespace_prefix"`
	TagMappers      []TagMapper `json:"tagMappers" tfsdk:"tag_mappers"`
}

type MeshTenantV4 added in v0.8.0

type MeshTenantV4 struct {
	ApiVersion string               `json:"apiVersion" tfsdk:"api_version"`
	Kind       string               `json:"kind" tfsdk:"kind"`
	Metadata   MeshTenantV4Metadata `json:"metadata" tfsdk:"metadata"`
	Spec       MeshTenantV4Spec     `json:"spec" tfsdk:"spec"`
	Status     MeshTenantV4Status   `json:"status" tfsdk:"status"`
}

type MeshTenantV4Create added in v0.8.0

type MeshTenantV4Create struct {
	Metadata MeshTenantV4CreateMetadata `json:"metadata" tfsdk:"metadata"`
	Spec     MeshTenantV4CreateSpec     `json:"spec" tfsdk:"spec"`
}

type MeshTenantV4CreateMetadata added in v0.8.0

type MeshTenantV4CreateMetadata struct {
	OwnedByProject   string `json:"ownedByProject" tfsdk:"owned_by_project"`
	OwnedByWorkspace string `json:"ownedByWorkspace" tfsdk:"owned_by_workspace"`
}

type MeshTenantV4CreateSpec added in v0.8.0

type MeshTenantV4CreateSpec struct {
	PlatformIdentifier    string             `json:"platformIdentifier" tfsdk:"platform_identifier"`
	LandingZoneIdentifier *string            `json:"landingZoneIdentifier" tfsdk:"landing_zone_identifier"`
	PlatformTenantId      *string            `json:"platformTenantId" tfsdk:"platform_tenant_id"`
	Quotas                *[]MeshTenantQuota `json:"quotas" tfsdk:"quotas"`
}

type MeshTenantV4Metadata added in v0.8.0

type MeshTenantV4Metadata struct {
	Uuid                string  `json:"uuid" tfsdk:"uuid"`
	OwnedByProject      string  `json:"ownedByProject" tfsdk:"owned_by_project"`
	OwnedByWorkspace    string  `json:"ownedByWorkspace" tfsdk:"owned_by_workspace"`
	CreatedOn           string  `json:"createdOn" tfsdk:"created_on"`
	MarkedForDeletionOn *string `json:"markedForDeletionOn" tfsdk:"marked_for_deletion_on"`
	DeletedOn           *string `json:"deletedOn" tfsdk:"deleted_on"`
}

type MeshTenantV4Spec added in v0.8.0

type MeshTenantV4Spec struct {
	PlatformIdentifier    string             `json:"platformIdentifier" tfsdk:"platform_identifier"`
	PlatformTenantId      *string            `json:"platformTenantId" tfsdk:"platform_tenant_id"`
	LandingZoneIdentifier *string            `json:"landingZoneIdentifier" tfsdk:"landing_zone_identifier"`
	Quotas                *[]MeshTenantQuota `json:"quotas" tfsdk:"quotas"`
}

type MeshTenantV4Status added in v0.8.0

type MeshTenantV4Status struct {
	TenantName                  string              `json:"tenantName" tfsdk:"tenant_name"`
	PlatformTypeIdentifier      string              `json:"platformTypeIdentifier" tfsdk:"platform_type_identifier"`
	PlatformWorkspaceIdentifier *string             `json:"platformWorkspaceIdentifier" tfsdk:"platform_workspace_identifier"`
	Tags                        map[string][]string `json:"tags" tfsdk:"tags"`
}

type MeshWorkspace added in v0.8.0

type MeshWorkspace struct {
	ApiVersion string                `json:"apiVersion" tfsdk:"api_version"`
	Kind       string                `json:"kind" tfsdk:"kind"`
	Metadata   MeshWorkspaceMetadata `json:"metadata" tfsdk:"metadata"`
	Spec       MeshWorkspaceSpec     `json:"spec" tfsdk:"spec"`
}

type MeshWorkspaceBinding added in v0.10.0

type MeshWorkspaceBinding struct {
	ApiVersion string                       `json:"apiVersion" tfsdk:"api_version"`
	Kind       string                       `json:"kind" tfsdk:"kind"`
	Metadata   MeshWorkspaceBindingMetadata `json:"metadata" tfsdk:"metadata"`
	RoleRef    MeshWorkspaceRoleRef         `json:"roleRef" tfsdk:"role_ref"`
	TargetRef  MeshWorkspaceTargetRef       `json:"targetRef" tfsdk:"target_ref"`
	Subject    MeshWorkspaceSubject         `json:"subject" tfsdk:"subject"`
}

type MeshWorkspaceBindingMetadata added in v0.10.0

type MeshWorkspaceBindingMetadata struct {
	Name string `json:"name" tfsdk:"name"`
}

type MeshWorkspaceCreate added in v0.8.0

type MeshWorkspaceCreate struct {
	ApiVersion string                      `json:"apiVersion" tfsdk:"api_version"`
	Metadata   MeshWorkspaceCreateMetadata `json:"metadata" tfsdk:"metadata"`
	Spec       MeshWorkspaceSpec           `json:"spec" tfsdk:"spec"`
}

type MeshWorkspaceCreateMetadata added in v0.8.0

type MeshWorkspaceCreateMetadata struct {
	Name string              `json:"name" tfsdk:"name"`
	Tags map[string][]string `json:"tags" tfsdk:"tags"`
}

type MeshWorkspaceGroupBinding added in v0.10.0

type MeshWorkspaceGroupBinding = MeshWorkspaceBinding

type MeshWorkspaceMetadata added in v0.8.0

type MeshWorkspaceMetadata struct {
	Name      string              `json:"name" tfsdk:"name"`
	CreatedOn string              `json:"createdOn" tfsdk:"created_on"`
	DeletedOn *string             `json:"deletedOn" tfsdk:"deleted_on"`
	Tags      map[string][]string `json:"tags" tfsdk:"tags"`
}

type MeshWorkspaceRoleRef added in v0.10.0

type MeshWorkspaceRoleRef struct {
	Name string `json:"name" tfsdk:"name"`
}

type MeshWorkspaceSpec added in v0.8.0

type MeshWorkspaceSpec struct {
	DisplayName                  string `json:"displayName" tfsdk:"display_name"`
	PlatformBuilderAccessEnabled *bool  `json:"platformBuilderAccessEnabled,omitempty" tfsdk:"platform_builder_access_enabled"`
}

type MeshWorkspaceSubject added in v0.10.0

type MeshWorkspaceSubject struct {
	Name string `json:"name" tfsdk:"name"`
}

type MeshWorkspaceTargetRef added in v0.10.0

type MeshWorkspaceTargetRef struct {
	Name string `json:"name" tfsdk:"name"`
}

type MeshWorkspaceUserBinding added in v0.10.0

type MeshWorkspaceUserBinding = MeshWorkspaceBinding

type OpenShiftMeteringConfig added in v0.13.0

type OpenShiftMeteringConfig struct {
	ClientConfig KubernetesClientConfig               `json:"clientConfig" tfsdk:"client_config"`
	Processing   MeshPlatformMeteringProcessingConfig `json:"processing" tfsdk:"processing"`
}

type OpenShiftPlatformConfig added in v0.12.0

type OpenShiftPlatformConfig struct {
	BaseUrl              string                      `json:"baseUrl" tfsdk:"base_url"`
	DisableSslValidation bool                        `json:"disableSslValidation" tfsdk:"disable_ssl_validation"`
	Replication          *OpenShiftReplicationConfig `json:"replication" tfsdk:"replication"`
	Metering             *OpenShiftMeteringConfig    `json:"metering,omitempty" tfsdk:"metering"`
}

type OpenShiftPlatformProperties added in v0.11.0

type OpenShiftPlatformProperties struct {
	OpenShiftTemplate *string `json:"openShiftTemplate,omitempty" tfsdk:"openshift_template"`
}

type OpenShiftPlatformRoleMapping added in v0.12.0

type OpenShiftPlatformRoleMapping struct {
	MeshProjectRoleRef MeshProjectRoleRefV2 `json:"projectRoleRef" tfsdk:"project_role_ref"`
	OpenShiftRole      string               `json:"openshiftRole" tfsdk:"openshift_role"`
}

type OpenShiftReplicationConfig added in v0.12.0

type OpenShiftReplicationConfig struct {
	ClientConfig                KubernetesClientConfig         `json:"clientConfig" tfsdk:"client_config"`
	WebConsoleUrl               *string                        `json:"webConsoleUrl,omitempty" tfsdk:"web_console_url"`
	ProjectNamePattern          string                         `json:"projectNamePattern" tfsdk:"project_name_pattern"`
	EnableTemplateInstantiation bool                           `json:"enableTemplateInstantiation" tfsdk:"enable_template_instantiation"`
	OpenShiftRoleMappings       []OpenShiftPlatformRoleMapping `json:"openshiftRoleMappings" tfsdk:"openshift_role_mappings"`
	IdentityProviderName        string                         `json:"identityProviderName" tfsdk:"identity_provider_name"`
	TenantTags                  *MeshTenantTags                `json:"tenantTags,omitempty" tfsdk:"tenant_tags"`
}

type PlatformAvailability added in v0.12.0

type PlatformAvailability struct {
	Restriction            string   `json:"restriction" tfsdk:"restriction"`
	PublicationState       string   `json:"publicationState" tfsdk:"publication_state"`
	RestrictedToWorkspaces []string `json:"restrictedToWorkspaces,omitempty" tfsdk:"restricted_to_workspaces"`
}

type PlatformConfig added in v0.12.0

type PlatformConfig struct {
	Type       string                    `json:"type" tfsdk:"type"`
	Aws        *AwsPlatformConfig        `json:"aws,omitempty" tfsdk:"aws"`
	Aks        *AksPlatformConfig        `json:"aks,omitempty" tfsdk:"aks"`
	Azure      *AzurePlatformConfig      `json:"azure,omitempty" tfsdk:"azure"`
	AzureRg    *AzureRgPlatformConfig    `json:"azurerg,omitempty" tfsdk:"azurerg"`
	Gcp        *GcpPlatformConfig        `json:"gcp,omitempty" tfsdk:"gcp"`
	Kubernetes *KubernetesPlatformConfig `json:"kubernetes,omitempty" tfsdk:"kubernetes"`
	OpenShift  *OpenShiftPlatformConfig  `json:"openshift,omitempty" tfsdk:"openshift"`
}

type QuotaDefinition added in v0.12.4

type QuotaDefinition struct {
	QuotaKey              string `json:"quotaKey" tfsdk:"quota_key"`
	MinValue              int    `json:"minValue" tfsdk:"min_value"`
	MaxValue              int    `json:"maxValue" tfsdk:"max_value"`
	Unit                  string `json:"unit" tfsdk:"unit"`
	AutoApprovalThreshold int    `json:"autoApprovalThreshold" tfsdk:"auto_approval_threshold"`
	Description           string `json:"description" tfsdk:"description"`
	Label                 string `json:"label" tfsdk:"label"`
}

type TagMapper added in v0.13.0

type TagMapper struct {
	Key          string `json:"key" tfsdk:"key"`
	ValuePattern string `json:"valuePattern" tfsdk:"value_pattern"`
}

type TagValueEmail added in v0.6.0

type TagValueEmail struct {
	DefaultValue    *string `json:"defaultValue,omitempty" tfsdk:"default_value"`
	ValidationRegex *string `json:"validationRegex,omitempty" tfsdk:"validation_regex"`
}

type TagValueInteger added in v0.6.0

type TagValueInteger struct {
	DefaultValue *int64 `json:"defaultValue,omitempty" tfsdk:"default_value"`
}

type TagValueMultiSelect added in v0.6.0

type TagValueMultiSelect struct {
	Options      []string  `json:"options,omitempty" tfsdk:"options"`
	DefaultValue *[]string `json:"defaultValue,omitempty" tfsdk:"default_value"`
}

type TagValueNumber added in v0.6.0

type TagValueNumber struct {
	DefaultValue *float64 `json:"defaultValue,omitempty" tfsdk:"default_value"`
}

type TagValueSingleSelect added in v0.6.0

type TagValueSingleSelect struct {
	Options      []string `json:"options,omitempty" tfsdk:"options"`
	DefaultValue *string  `json:"defaultValue,omitempty" tfsdk:"default_value"`
}

type TagValueString added in v0.6.0

type TagValueString struct {
	DefaultValue    *string `json:"defaultValue,omitempty" tfsdk:"default_value"`
	ValidationRegex *string `json:"validationRegex,omitempty" tfsdk:"validation_regex"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL