Documentation
¶
Index ¶
- Constants
- type AksPlatformConfig
- type AksPlatformProperties
- type AksReplicationConfig
- type AwsAccessConfig
- type AwsEnrollmentConfiguration
- type AwsPlatformConfig
- type AwsPlatformProperties
- type AwsReplicationConfig
- type AwsRoleMapping
- type AwsServiceUserConfig
- type AwsSsoConfig
- type AwsSsoRoleMapping
- type AwsTagMapper
- type AwsTenantTags
- type AwsWorkloadIdentityConfig
- type AzureB2bUserInvitation
- type AzureCustomerAgreement
- type AzureEnterpriseEnrollment
- type AzureFunction
- type AzurePlatformConfig
- type AzurePlatformProperties
- type AzurePlatformRoleDefinition
- type AzurePlatformRoleMapping
- type AzurePreProvisioned
- type AzureProvisioning
- type AzureReplicationConfig
- type AzureRgPlatformConfig
- type AzureRgPlatformProperties
- type AzureRgReplicationConfig
- type AzureRgRoleMapping
- type AzureRoleDefinition
- type AzureRoleMapping
- type AzureServicePrincipalConfig
- type AzureSourceServicePrincipalConfig
- type AzureTagMapper
- type AzureTenantTags
- type GcpPlatformConfig
- type GcpPlatformProperties
- type GcpPlatformRoleMapping
- type GcpReplicationConfig
- type GcpRoleMapping
- type GcpServiceAccountConfig
- type GcpServiceAccountCredentialsConfig
- type GcpServiceAccountWorkloadIdentityConfig
- type GcpTagMapper
- type GcpTenantTags
- type KubernetesClientConfig
- type KubernetesPlatformConfig
- type KubernetesPlatformProperties
- type KubernetesReplicationConfig
- type KubernetesRoleMapping
- type LocationRef
- type MeshBuildingBlock
- type MeshBuildingBlockCreate
- type MeshBuildingBlockCreateMetadata
- type MeshBuildingBlockIO
- type MeshBuildingBlockMetadata
- type MeshBuildingBlockParent
- type MeshBuildingBlockSpec
- type MeshBuildingBlockStatus
- type MeshBuildingBlockV2
- type MeshBuildingBlockV2Create
- type MeshBuildingBlockV2DefinitionVersionRef
- type MeshBuildingBlockV2Metadata
- type MeshBuildingBlockV2Spec
- type MeshBuildingBlockV2Status
- type MeshBuildingBlockV2TargetRef
- type MeshLandingZone
- type MeshLandingZoneCreate
- type MeshLandingZoneMetadata
- type MeshLandingZoneSpec
- type MeshLandingZoneStatus
- type MeshPlatform
- type MeshPlatformCreate
- type MeshPlatformCreateMetadata
- type MeshPlatformMetadata
- type MeshPlatformSpec
- type MeshPlatformUpdate
- type MeshPlatformUpdateMetadata
- type MeshProject
- type MeshProjectBinding
- type MeshProjectBindingMetadata
- type MeshProjectCreate
- type MeshProjectCreateMetadata
- type MeshProjectGroupBinding
- type MeshProjectMetadata
- type MeshProjectRoleRefdeprecated
- type MeshProjectRoleRefV2
- type MeshProjectSpec
- type MeshProjectTargetRef
- type MeshProjectUserBinding
- type MeshStackProviderClient
- func (c *MeshStackProviderClient) CreateBuildingBlock(bb *MeshBuildingBlockCreate) (*MeshBuildingBlock, error)
- func (c *MeshStackProviderClient) CreateBuildingBlockV2(bb *MeshBuildingBlockV2Create) (*MeshBuildingBlockV2, error)
- func (c *MeshStackProviderClient) CreateLandingZone(landingZone *MeshLandingZoneCreate) (*MeshLandingZone, error)
- func (c *MeshStackProviderClient) CreatePlatform(platform *MeshPlatformCreate) (*MeshPlatform, error)
- func (c *MeshStackProviderClient) CreateProject(project *MeshProjectCreate) (*MeshProject, error)
- func (c *MeshStackProviderClient) CreateProjectGroupBinding(binding *MeshProjectGroupBinding) (*MeshProjectGroupBinding, error)
- func (c *MeshStackProviderClient) CreateProjectUserBinding(binding *MeshProjectUserBinding) (*MeshProjectUserBinding, error)
- func (c *MeshStackProviderClient) CreateTagDefinition(tagDefinition *MeshTagDefinition) (*MeshTagDefinition, error)
- func (c *MeshStackProviderClient) CreateTenant(tenant *MeshTenantCreate) (*MeshTenant, error)
- func (c *MeshStackProviderClient) CreateTenantV4(tenant *MeshTenantV4Create) (*MeshTenantV4, error)
- func (c *MeshStackProviderClient) CreateWorkspace(workspace *MeshWorkspaceCreate) (*MeshWorkspace, error)
- func (c *MeshStackProviderClient) CreateWorkspaceGroupBinding(binding *MeshWorkspaceGroupBinding) (*MeshWorkspaceGroupBinding, error)
- func (c *MeshStackProviderClient) CreateWorkspaceUserBinding(binding *MeshWorkspaceUserBinding) (*MeshWorkspaceUserBinding, error)
- func (c *MeshStackProviderClient) DeleteBuildingBlock(uuid string) error
- func (c *MeshStackProviderClient) DeleteBuildingBlockV2(uuid string) error
- func (c *MeshStackProviderClient) DeleteLandingZone(name string) error
- func (c *MeshStackProviderClient) DeletePlatform(uuid string) error
- func (c *MeshStackProviderClient) DeleteProjecGroupBinding(name string) error
- func (c *MeshStackProviderClient) DeleteProjecUserBinding(name string) error
- func (c *MeshStackProviderClient) DeleteProject(workspace string, name string) error
- func (c *MeshStackProviderClient) DeleteTagDefinition(name string) error
- func (c *MeshStackProviderClient) DeleteTenant(workspace string, project string, platform string) error
- func (c *MeshStackProviderClient) DeleteTenantV4(uuid string) error
- func (c *MeshStackProviderClient) DeleteWorkspace(name string) error
- func (c *MeshStackProviderClient) DeleteWorkspaceGroupBinding(name string) error
- func (c *MeshStackProviderClient) DeleteWorkspaceUserBinding(name string) error
- func (c *MeshStackProviderClient) PollBuildingBlockV2UntilCompletion(ctx context.Context, uuid string) (*MeshBuildingBlockV2, error)
- func (c *MeshStackProviderClient) PollBuildingBlockV2UntilDeletion(ctx context.Context, uuid string) error
- func (c *MeshStackProviderClient) PollTenantV4UntilCreation(ctx context.Context, uuid string) (*MeshTenantV4, error)
- func (c *MeshStackProviderClient) PollTenantV4UntilDeletion(ctx context.Context, uuid string) error
- func (c *MeshStackProviderClient) ReadBuildingBlock(uuid string) (*MeshBuildingBlock, error)
- func (c *MeshStackProviderClient) ReadBuildingBlockV2(uuid string) (*MeshBuildingBlockV2, error)
- func (c *MeshStackProviderClient) ReadLandingZone(name string) (*MeshLandingZone, error)
- func (c *MeshStackProviderClient) ReadPlatform(uuid string) (*MeshPlatform, error)
- func (c *MeshStackProviderClient) ReadProject(workspace string, name string) (*MeshProject, error)
- func (c *MeshStackProviderClient) ReadProjectGroupBinding(name string) (*MeshProjectGroupBinding, error)
- func (c *MeshStackProviderClient) ReadProjectUserBinding(name string) (*MeshProjectUserBinding, error)
- func (c *MeshStackProviderClient) ReadProjects(workspaceIdentifier string, paymentMethodIdentifier *string) (*[]MeshProject, error)
- func (c *MeshStackProviderClient) ReadTagDefinition(name string) (*MeshTagDefinition, error)
- func (c *MeshStackProviderClient) ReadTagDefinitions() (*[]MeshTagDefinition, error)
- func (c *MeshStackProviderClient) ReadTenant(workspace string, project string, platform string) (*MeshTenant, error)
- func (c *MeshStackProviderClient) ReadTenantV4(uuid string) (*MeshTenantV4, error)
- func (c *MeshStackProviderClient) ReadWorkspace(name string) (*MeshWorkspace, error)
- func (c *MeshStackProviderClient) ReadWorkspaceGroupBinding(name string) (*MeshWorkspaceGroupBinding, error)
- func (c *MeshStackProviderClient) ReadWorkspaceUserBinding(name string) (*MeshWorkspaceUserBinding, error)
- func (c *MeshStackProviderClient) UpdateLandingZone(name string, landingZone *MeshLandingZoneCreate) (*MeshLandingZone, error)
- func (c *MeshStackProviderClient) UpdatePlatform(uuid string, platform *MeshPlatformUpdate) (*MeshPlatform, error)
- func (c *MeshStackProviderClient) UpdateProject(project *MeshProjectCreate) (*MeshProject, error)
- func (c *MeshStackProviderClient) UpdateTagDefinition(tagDefinition *MeshTagDefinition) (*MeshTagDefinition, error)
- func (c *MeshStackProviderClient) UpdateWorkspace(name string, workspace *MeshWorkspaceCreate) (*MeshWorkspace, error)
- type MeshSubject
- type MeshTagDefinition
- type MeshTagDefinitionMetadata
- type MeshTagDefinitionSpec
- type MeshTagDefinitionValueType
- type MeshTenant
- type MeshTenantCreate
- type MeshTenantCreateMetadata
- type MeshTenantCreateSpec
- type MeshTenantMetadata
- type MeshTenantQuota
- type MeshTenantSpec
- type MeshTenantV4
- type MeshTenantV4Create
- type MeshTenantV4CreateMetadata
- type MeshTenantV4CreateSpec
- type MeshTenantV4Metadata
- type MeshTenantV4Spec
- type MeshTenantV4Status
- type MeshWorkspace
- type MeshWorkspaceBinding
- type MeshWorkspaceBindingMetadata
- type MeshWorkspaceCreate
- type MeshWorkspaceCreateMetadata
- type MeshWorkspaceGroupBinding
- type MeshWorkspaceMetadata
- type MeshWorkspaceRoleRef
- type MeshWorkspaceSpec
- type MeshWorkspaceSubject
- type MeshWorkspaceTargetRef
- type MeshWorkspaceUserBinding
- type OpenShiftClientConfig
- type OpenShiftPlatformConfig
- type OpenShiftPlatformProperties
- type OpenShiftPlatformRoleMapping
- type OpenShiftReplicationConfig
- type OpenShiftTagMapper
- type OpenShiftTenantTags
- type PlatformAvailability
- type PlatformConfig
- type PlatformProperties
- type PlatformRef
- type ServicePrincipalConfig
- type TagValueEmail
- type TagValueInteger
- type TagValueMultiSelect
- type TagValueNumber
- type TagValueSingleSelect
- type TagValueString
Constants ¶
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_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" )
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" )
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." )
const API_VERSION_TAG_DEFINITION = "v1"
const CONTENT_TYPE_LANDINGZONE = "application/vnd.meshcloud.api.meshlandingzone.v1-preview.hal+json"
const CONTENT_TYPE_PLATFORM = "application/vnd.meshcloud.api.meshplatform.v2-preview.hal+json"
const CONTENT_TYPE_PROJECT = "application/vnd.meshcloud.api.meshproject.v2.hal+json"
const CONTENT_TYPE_PROJECT_GROUP_BINDING = "application/vnd.meshcloud.api.meshprojectgroupbinding.v3.hal+json"
const CONTENT_TYPE_PROJECT_USER_BINDING = "application/vnd.meshcloud.api.meshprojectuserbinding.v3.hal+json"
const CONTENT_TYPE_TAG_DEFINITION = "application/vnd.meshcloud.api.meshtagdefinition.v1.hal+json"
const CONTENT_TYPE_TENANT = "application/vnd.meshcloud.api.meshtenant.v3.hal+json"
const CONTENT_TYPE_TENANT_V4 = "application/vnd.meshcloud.api.meshtenant.v4-preview.hal+json"
const CONTENT_TYPE_WORKSPACE = "application/vnd.meshcloud.api.meshworkspace.v2.hal+json"
const CONTENT_TYPE_WORKSPACE_GROUP_BINDING = "application/vnd.meshcloud.api.meshworkspacegroupbinding.v2.hal+json"
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 AksPlatformConfig ¶ added in v0.12.2
type AksPlatformConfig struct {
BaseUrl string `json:"baseUrl" tfsdk:"base_url"`
DisableSslValidation bool `json:"disableSslValidation" tfsdk:"disable_ssl_validation"`
Replication *AksReplicationConfig `json:"replication" tfsdk:"replication"`
}
type AksPlatformProperties ¶ added in v0.11.0
type AksPlatformProperties struct {
KubernetesRoleMappings []KubernetesRoleMapping `json:"kubernetesRoleMappings" tfsdk:"kubernetes_role_mappings"`
}
type AksReplicationConfig ¶ added in v0.12.2
type AksReplicationConfig struct {
AccessToken *string `json:"accessToken,omitempty" tfsdk:"access_token"`
NamespaceNamePattern *string `json:"namespaceNamePattern,omitempty" tfsdk:"namespace_name_pattern"`
GroupNamePattern *string `json:"groupNamePattern,omitempty" tfsdk:"group_name_pattern"`
ServicePrincipal *ServicePrincipalConfig `json:"servicePrincipal,omitempty" tfsdk:"service_principal"`
AksSubscriptionId *string `json:"aksSubscriptionId,omitempty" tfsdk:"aks_subscription_id"`
AksClusterName *string `json:"aksClusterName,omitempty" tfsdk:"aks_cluster_name"`
AksResourceGroup *string `json:"aksResourceGroup,omitempty" tfsdk:"aks_resource_group"`
RedirectUrl *string `json:"redirectUrl,omitempty" tfsdk:"redirect_url"`
SendAzureInvitationMail *bool `json:"sendAzureInvitationMail,omitempty" tfsdk:"send_azure_invitation_mail"`
UserLookUpStrategy *string `json:"userLookUpStrategy,omitempty" tfsdk:"user_look_up_strategy"`
AdministrativeUnitId *string `json:"administrativeUnitId,omitempty" tfsdk:"administrative_unit_id"`
}
type AwsAccessConfig ¶ added in v0.12.2
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.2
type AwsPlatformConfig ¶ added in v0.12.2
type AwsPlatformConfig struct {
Region *string `json:"region,omitempty" tfsdk:"region"`
Replication *AwsReplicationConfig `json:"replication,omitempty" tfsdk:"replication"`
}
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.2
type AwsReplicationConfig struct {
AccessConfig *AwsAccessConfig `json:"accessConfig,omitempty" tfsdk:"access_config"`
WaitForExternalAvm *bool `json:"waitForExternalAvm,omitempty" tfsdk:"wait_for_external_avm"`
AutomationAccountRole *string `json:"automationAccountRole,omitempty" tfsdk:"automation_account_role"`
AutomationAccountExternalId *string `json:"automationAccountExternalId,omitempty" tfsdk:"automation_account_external_id"`
AccountAccessRole *string `json:"accountAccessRole,omitempty" tfsdk:"account_access_role"`
AccountAliasPattern *string `json:"accountAliasPattern,omitempty" tfsdk:"account_alias_pattern"`
EnforceAccountAlias *bool `json:"enforceAccountAlias,omitempty" tfsdk:"enforce_account_alias"`
AccountEmailPattern *string `json:"accountEmailPattern,omitempty" tfsdk:"account_email_pattern"`
TenantTags *AwsTenantTags `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,omitempty" tfsdk:"self_downgrade_access_role"`
SkipUserGroupPermissionCleanup *bool `json:"skipUserGroupPermissionCleanup,omitempty" tfsdk:"skip_user_group_permission_cleanup"`
AllowHierarchicalOrganizationalUnitAssignment *bool `json:"allowHierarchicalOrganizationalUnitAssignment,omitempty" tfsdk:"allow_hierarchical_organizational_unit_assignment"`
}
AWS-specific replication configuration structures
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.2
type AwsSsoConfig ¶ added in v0.12.2
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,omitempty" tfsdk:"sso_access_token"`
AwsRoleMappings []AwsSsoRoleMapping `json:"awsRoleMappings" tfsdk:"aws_role_mappings"`
SignInUrl *string `json:"signInUrl,omitempty" tfsdk:"sign_in_url"`
}
type AwsSsoRoleMapping ¶ added in v0.12.2
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 AwsTagMapper ¶ added in v0.12.2
type AwsTenantTags ¶ added in v0.12.2
type AwsTenantTags struct {
NamespacePrefix string `json:"namespacePrefix" tfsdk:"namespace_prefix"`
TagMappers []AwsTagMapper `json:"tagMappers" tfsdk:"tag_mappers"`
}
type AwsWorkloadIdentityConfig ¶ added in v0.12.2
type AwsWorkloadIdentityConfig struct {
RoleArn string `json:"roleArn" tfsdk:"role_arn"`
}
type AzureB2bUserInvitation ¶ added in v0.12.2
type AzureCustomerAgreement ¶ added in v0.12.2
type AzureCustomerAgreement struct {
SourceServicePrincipal *AzureSourceServicePrincipalConfig `json:"sourceServicePrincipal,omitempty" 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 *int `json:"subscriptionCreationErrorCooldownSec,omitempty" tfsdk:"subscription_creation_error_cooldown_sec"`
}
type AzureEnterpriseEnrollment ¶ added in v0.12.2
type AzureEnterpriseEnrollment struct {
EnrollmentAccountId string `json:"enrollmentAccountId" tfsdk:"enrollment_account_id"`
SubscriptionOfferType string `json:"subscriptionOfferType" tfsdk:"subscription_offer_type"`
UseLegacySubscriptionEnrollment *bool `json:"useLegacySubscriptionEnrollment,omitempty" tfsdk:"use_legacy_subscription_enrollment"`
SubscriptionCreationErrorCooldownSec *int `json:"subscriptionCreationErrorCooldownSec,omitempty" tfsdk:"subscription_creation_error_cooldown_sec"`
}
type AzureFunction ¶ added in v0.11.0
type AzurePlatformConfig ¶ added in v0.12.2
type AzurePlatformConfig struct {
EntraTenant *string `json:"entraTenant,omitempty" tfsdk:"entra_tenant"`
Replication *AzureReplicationConfig `json:"replication,omitempty" tfsdk:"replication"`
}
type AzurePlatformProperties ¶ added in v0.11.0
type AzurePlatformProperties struct {
AzureRoleMappings []AzureRoleMapping `json:"azureRoleMappings" tfsdk:"azure_role_mappings"`
AzureManagementGroupId string `json:"azureManagementGroupId" tfsdk:"azure_management_group_id"`
}
type AzurePlatformRoleDefinition ¶ added in v0.12.2
type AzurePlatformRoleMapping ¶ added in v0.12.2
type AzurePlatformRoleMapping struct {
MeshProjectRoleRef MeshProjectRoleRefV2 `json:"projectRoleRef" tfsdk:"project_role_ref"`
AzureRole AzurePlatformRoleDefinition `json:"azureRole" tfsdk:"azure_role"`
}
type AzurePreProvisioned ¶ added in v0.12.2
type AzurePreProvisioned struct {
UnusedSubscriptionNamePrefix string `json:"unusedSubscriptionNamePrefix" tfsdk:"unused_subscription_name_prefix"`
}
type AzureProvisioning ¶ added in v0.12.2
type AzureProvisioning struct {
SubscriptionOwnerObjectIds []string `json:"subscriptionOwnerObjectIds,omitempty" tfsdk:"subscription_owner_object_ids"`
EnterpriseEnrollment *AzureEnterpriseEnrollment `json:"enterpriseEnrollment,omitempty" tfsdk:"enterprise_enrollment"`
CustomerAgreement *AzureCustomerAgreement `json:"customerAgreement,omitempty" tfsdk:"customer_agreement"`
PreProvisioned *AzurePreProvisioned `json:"preProvisioned,omitempty" tfsdk:"pre_provisioned"`
}
type AzureReplicationConfig ¶ added in v0.12.2
type AzureReplicationConfig struct {
ServicePrincipal *AzureServicePrincipalConfig `json:"servicePrincipal,omitempty" tfsdk:"service_principal"`
Provisioning *AzureProvisioning `json:"provisioning,omitempty" tfsdk:"provisioning"`
B2bUserInvitation *AzureB2bUserInvitation `json:"b2bUserInvitation,omitempty" tfsdk:"b2b_user_invitation"`
SubscriptionNamePattern *string `json:"subscriptionNamePattern,omitempty" tfsdk:"subscription_name_pattern"`
GroupNamePattern *string `json:"groupNamePattern,omitempty" tfsdk:"group_name_pattern"`
BlueprintServicePrincipal *string `json:"blueprintServicePrincipal,omitempty" tfsdk:"blueprint_service_principal"`
BlueprintLocation *string `json:"blueprintLocation,omitempty" tfsdk:"blueprint_location"`
AzureRoleMappings []AzurePlatformRoleMapping `json:"azureRoleMappings,omitempty" tfsdk:"azure_role_mappings"`
TenantTags *AzureTenantTags `json:"tenantTags,omitempty" tfsdk:"tenant_tags"`
UserLookUpStrategy *string `json:"userLookUpStrategy,omitempty" tfsdk:"user_look_up_strategy"`
SkipUserGroupPermissionCleanup *bool `json:"skipUserGroupPermissionCleanup,omitempty" tfsdk:"skip_user_group_permission_cleanup"`
AdministrativeUnitId *string `json:"administrativeUnitId,omitempty" tfsdk:"administrative_unit_id"`
AllowHierarchicalManagementGroupAssignment *bool `json:"allowHierarchicalManagementGroupAssignment,omitempty" tfsdk:"allow_hierarchical_management_group_assignment"`
}
Azure-specific replication configuration structures
type AzureRgPlatformConfig ¶ added in v0.12.2
type AzureRgPlatformConfig struct {
EntraTenant *string `json:"entraTenant,omitempty" 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.2
type AzureRgReplicationConfig struct {
ServicePrincipal *AzureServicePrincipalConfig `json:"servicePrincipal,omitempty" tfsdk:"service_principal"`
Subscription *string `json:"subscription,omitempty" tfsdk:"subscription"`
ResourceGroupNamePattern *string `json:"resourceGroupNamePattern,omitempty" tfsdk:"resource_group_name_pattern"`
UserGroupNamePattern *string `json:"userGroupNamePattern,omitempty" tfsdk:"user_group_name_pattern"`
B2bUserInvitation *AzureB2bUserInvitation `json:"b2bUserInvitation,omitempty" tfsdk:"b2b_user_invitation"`
UserLookUpStrategy *string `json:"userLookUpStrategy,omitempty" tfsdk:"user_look_up_strategy"`
TenantTags *AzureTenantTags `json:"tenantTags,omitempty" tfsdk:"tenant_tags"`
SkipUserGroupPermissionCleanup *bool `json:"skipUserGroupPermissionCleanup,omitempty" tfsdk:"skip_user_group_permission_cleanup"`
AdministrativeUnitId *string `json:"administrativeUnitId,omitempty" tfsdk:"administrative_unit_id"`
AllowHierarchicalManagementGroupAssignment *bool `json:"allowHierarchicalManagementGroupAssignment,omitempty" 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 AzureRoleDefinition ¶ added in v0.11.0
type AzureRoleMapping ¶ added in v0.11.0
type AzureRoleMapping 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.2
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"`
}
Azure-specific service principal configurations
type AzureSourceServicePrincipalConfig ¶ added in v0.12.2
type AzureTagMapper ¶ added in v0.12.2
type AzureTenantTags ¶ added in v0.12.2
type AzureTenantTags struct {
NamespacePrefix string `json:"namespacePrefix" tfsdk:"namespace_prefix"`
TagMappers []AzureTagMapper `json:"tagMappers" tfsdk:"tag_mappers"`
}
type GcpPlatformConfig ¶ added in v0.12.2
type GcpPlatformConfig struct {
Replication *GcpReplicationConfig `json:"replication" tfsdk:"replication"`
}
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.2
type GcpPlatformRoleMapping struct {
MeshProjectRoleRef MeshProjectRoleRefV2 `json:"projectRoleRef" tfsdk:"project_role_ref"`
GcpRole string `json:"gcpRole" tfsdk:"gcp_role"`
}
type GcpReplicationConfig ¶ added in v0.12.2
type GcpReplicationConfig struct {
ServiceAccountConfig *GcpServiceAccountConfig `json:"serviceAccountConfig,omitempty" tfsdk:"service_account_config"`
Domain *string `json:"domain,omitempty" tfsdk:"domain"`
CustomerId *string `json:"customerId,omitempty" tfsdk:"customer_id"`
GroupNamePattern *string `json:"groupNamePattern,omitempty" tfsdk:"group_name_pattern"`
ProjectNamePattern *string `json:"projectNamePattern,omitempty" tfsdk:"project_name_pattern"`
ProjectIdPattern *string `json:"projectIdPattern,omitempty" tfsdk:"project_id_pattern"`
BillingAccountId *string `json:"billingAccountId,omitempty" tfsdk:"billing_account_id"`
UserLookupStrategy *string `json:"userLookupStrategy,omitempty" tfsdk:"user_lookup_strategy"`
GcpRoleMappings []GcpPlatformRoleMapping `json:"gcpRoleMappings,omitempty" tfsdk:"gcp_role_mappings"`
AllowHierarchicalFolderAssignment *bool `json:"allowHierarchicalFolderAssignment,omitempty" tfsdk:"allow_hierarchical_folder_assignment"`
TenantTags *GcpTenantTags `json:"tenantTags,omitempty" tfsdk:"tenant_tags"`
SkipUserGroupPermissionCleanup *bool `json:"skipUserGroupPermissionCleanup,omitempty" 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.2
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.2
type GcpServiceAccountCredentialsConfig struct {
ServiceAccountCredentialsB64 *string `json:"serviceAccountCredentialsB64,omitempty" tfsdk:"service_account_credentials_b64"`
}
type GcpServiceAccountWorkloadIdentityConfig ¶ added in v0.12.2
type GcpTagMapper ¶ added in v0.12.2
type GcpTenantTags ¶ added in v0.12.2
type GcpTenantTags struct {
NamespacePrefix string `json:"namespacePrefix" tfsdk:"namespace_prefix"`
TagMappers []GcpTagMapper `json:"tagMappers" tfsdk:"tag_mappers"`
}
type KubernetesClientConfig ¶ added in v0.12.2
type KubernetesClientConfig struct {
AccessToken *string `json:"accessToken,omitempty" tfsdk:"access_token"`
}
type KubernetesPlatformConfig ¶ added in v0.12.2
type KubernetesPlatformConfig struct {
BaseUrl string `json:"baseUrl" tfsdk:"base_url"`
DisableSslValidation bool `json:"disableSslValidation" tfsdk:"disable_ssl_validation"`
Replication *KubernetesReplicationConfig `json:"replication" tfsdk:"replication"`
}
type KubernetesPlatformProperties ¶ added in v0.11.0
type KubernetesPlatformProperties struct {
KubernetesRoleMappings []KubernetesRoleMapping `json:"kubernetesRoleMappings" tfsdk:"kubernetes_role_mappings"`
}
type KubernetesReplicationConfig ¶ added in v0.12.2
type KubernetesReplicationConfig struct {
ClientConfig *KubernetesClientConfig `json:"clientConfig,omitempty" tfsdk:"client_config"`
NamespaceNamePattern *string `json:"namespaceNamePattern,omitempty" 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.2
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 MeshBuildingBlockIO ¶
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 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 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 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 PlatformRef `json:"platformRef" tfsdk:"platform_ref"`
PlatformProperties *PlatformProperties `json:"platformProperties,omitempty" tfsdk:"platform_properties"`
}
type MeshLandingZoneStatus ¶ added in v0.11.0
type MeshPlatform ¶ added in v0.12.2
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.2
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.2
type MeshPlatformMetadata ¶ added in v0.12.2
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 MeshPlatformSpec ¶ added in v0.12.2
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"`
}
type MeshPlatformUpdate ¶ added in v0.12.2
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.2
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 MeshProjectGroupBinding ¶ added in v0.4.0
type MeshProjectGroupBinding = MeshProjectBinding
type MeshProjectMetadata ¶
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 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 MeshProjectUserBinding ¶
type MeshProjectUserBinding = MeshProjectBinding
type MeshStackProviderClient ¶
type MeshStackProviderClient struct {
// contains filtered or unexported fields
}
func (*MeshStackProviderClient) CreateBuildingBlock ¶ added in v0.5.0
func (c *MeshStackProviderClient) CreateBuildingBlock(bb *MeshBuildingBlockCreate) (*MeshBuildingBlock, error)
func (*MeshStackProviderClient) CreateBuildingBlockV2 ¶ added in v0.7.0
func (c *MeshStackProviderClient) CreateBuildingBlockV2(bb *MeshBuildingBlockV2Create) (*MeshBuildingBlockV2, error)
func (*MeshStackProviderClient) CreateLandingZone ¶ added in v0.11.0
func (c *MeshStackProviderClient) CreateLandingZone(landingZone *MeshLandingZoneCreate) (*MeshLandingZone, error)
func (*MeshStackProviderClient) CreatePlatform ¶ added in v0.12.2
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.11.0
func (c *MeshStackProviderClient) CreateWorkspaceGroupBinding(binding *MeshWorkspaceGroupBinding) (*MeshWorkspaceGroupBinding, error)
func (*MeshStackProviderClient) CreateWorkspaceUserBinding ¶ added in v0.11.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) DeletePlatform ¶ added in v0.12.2
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.11.0
func (c *MeshStackProviderClient) DeleteWorkspaceGroupBinding(name string) error
func (*MeshStackProviderClient) DeleteWorkspaceUserBinding ¶ added in v0.11.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) ReadPlatform ¶ added in v0.12.2
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.11.0
func (c *MeshStackProviderClient) ReadWorkspaceGroupBinding(name string) (*MeshWorkspaceGroupBinding, error)
func (*MeshStackProviderClient) ReadWorkspaceUserBinding ¶ added in v0.11.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) UpdatePlatform ¶ added in v0.12.2
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 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 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 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 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.11.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.11.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 MeshWorkspaceGroupBinding ¶ added in v0.11.0
type MeshWorkspaceGroupBinding = MeshWorkspaceBinding
type MeshWorkspaceMetadata ¶ added in v0.8.0
type MeshWorkspaceRoleRef ¶ added in v0.11.0
type MeshWorkspaceRoleRef struct {
Name string `json:"name" tfsdk:"name"`
}
type MeshWorkspaceSpec ¶ added in v0.8.0
type MeshWorkspaceSubject ¶ added in v0.11.0
type MeshWorkspaceSubject struct {
Name string `json:"name" tfsdk:"name"`
}
type MeshWorkspaceTargetRef ¶ added in v0.11.0
type MeshWorkspaceTargetRef struct {
Name string `json:"name" tfsdk:"name"`
}
type MeshWorkspaceUserBinding ¶ added in v0.11.0
type MeshWorkspaceUserBinding = MeshWorkspaceBinding
type OpenShiftClientConfig ¶ added in v0.12.2
type OpenShiftClientConfig struct {
AccessToken *string `json:"accessToken,omitempty" tfsdk:"access_token"`
}
type OpenShiftPlatformConfig ¶ added in v0.12.2
type OpenShiftPlatformConfig struct {
BaseUrl string `json:"baseUrl" tfsdk:"base_url"`
DisableSslValidation bool `json:"disableSslValidation" tfsdk:"disable_ssl_validation"`
Replication *OpenShiftReplicationConfig `json:"replication" tfsdk:"replication"`
}
type OpenShiftPlatformProperties ¶ added in v0.11.0
type OpenShiftPlatformProperties struct {
OpenShiftTemplate *string `json:"openShiftTemplate,omitempty" tfsdk:"openshift_template"`
}
type OpenShiftPlatformRoleMapping ¶ added in v0.12.2
type OpenShiftPlatformRoleMapping struct {
MeshProjectRoleRef MeshProjectRoleRefV2 `json:"projectRoleRef" tfsdk:"project_role_ref"`
OpenShiftRole string `json:"openshiftRole" tfsdk:"openshift_role"`
}
type OpenShiftReplicationConfig ¶ added in v0.12.2
type OpenShiftReplicationConfig struct {
ClientConfig *OpenShiftClientConfig `json:"clientConfig,omitempty" tfsdk:"client_config"`
WebConsoleUrl *string `json:"webConsoleUrl,omitempty" tfsdk:"web_console_url"`
ProjectNamePattern *string `json:"projectNamePattern,omitempty" tfsdk:"project_name_pattern"`
EnableTemplateInstantiation *bool `json:"enableTemplateInstantiation,omitempty" tfsdk:"enable_template_instantiation"`
OpenShiftRoleMappings []OpenShiftPlatformRoleMapping `json:"openshiftRoleMappings,omitempty" tfsdk:"openshift_role_mappings"`
IdentityProviderName *string `json:"identityProviderName,omitempty" tfsdk:"identity_provider_name"`
TenantTags *OpenShiftTenantTags `json:"tenantTags,omitempty" tfsdk:"tenant_tags"`
}
type OpenShiftTagMapper ¶ added in v0.12.2
type OpenShiftTenantTags ¶ added in v0.12.2
type OpenShiftTenantTags struct {
NamespacePrefix string `json:"namespacePrefix" tfsdk:"namespace_prefix"`
TagMappers []OpenShiftTagMapper `json:"tagMappers" tfsdk:"tag_mappers"`
}
type PlatformAvailability ¶ added in v0.12.2
type PlatformConfig ¶ added in v0.12.2
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 PlatformProperties ¶ added in v0.11.0
type PlatformProperties 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 PlatformRef ¶ added in v0.11.0
type ServicePrincipalConfig ¶ added in v0.12.2
type ServicePrincipalConfig 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 TagValueEmail ¶ added in v0.6.0
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 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 TagValueString ¶ added in v0.6.0
Source Files
¶
- buildingblock.go
- buildingblock_v2.go
- client.go
- landingzone.go
- platform.go
- platform_properties_aks.go
- platform_properties_aws.go
- platform_properties_azure.go
- platform_properties_azurerg.go
- platform_properties_gcp.go
- platform_properties_kubernetes.go
- platform_properties_openshift.go
- project.go
- project_binding.go
- project_group_binding.go
- project_user_binding.go
- status_code_checker.go
- tag_definition.go
- tenant.go
- tenant_v4.go
- workspace.go
- workspace_binding.go
- workspace_group_binding.go
- workspace_user_binding.go