v20250801preview

package
v0.60.2 Latest Latest
Warning

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

Go to latest
Published: Sep 3, 2026 License: Apache-2.0 Imports: 18 Imported by: 0

Documentation

Index

Constants

View Source
const Version = "2025-08-01-preview"

Version represents the api version in this package.

Variables

This section is empty.

Functions

func SplitRecipeOutputs added in v0.60.0

func SplitRecipeOutputs(apiOutputs map[string]any) (map[string]string, map[string]string)

SplitRecipeOutputs separates the API `outputs` map (property->output strings, plus a nested `secrets` object) into flat outputs and secret-outputs maps. It is exported so the recipe config loader, which reads the versioned model directly, can interpret `outputs` the same way as the datamodel converter.

Types

type ActionType

type ActionType string

ActionType - Extensible enum. Indicates the action type. "Internal" refers to actions that are for internal only APIs.

const (
	// ActionTypeInternal - Actions are for internal-only APIs.
	ActionTypeInternal ActionType = "Internal"
)

func PossibleActionTypeValues

func PossibleActionTypeValues() []ActionType

PossibleActionTypeValues returns the possible values for the ActionType const type.

type ApplicationGraphConnection added in v0.53.0

type ApplicationGraphConnection struct {
	// REQUIRED; The direction of the connection. 'Outbound' indicates this connection specifies the ID of the destination and
	// 'Inbound' indicates indicates this connection specifies the ID of the source.
	Direction *Direction

	// REQUIRED; The resource ID
	ID *string

	// REQUIRED; Discriminator identifying the origin of this edge. 'Connection' edges are author-declared entries under properties.connections.
	// 'Dependency' edges are implicit dependencies derived from Bicep's dependsOn list (static graph only in Phase 1). Every
	// emitted edge carries a kind.
	Kind *ConnectionKind
}

ApplicationGraphConnection - Describes the connection between two resources.

func (ApplicationGraphConnection) MarshalJSON added in v0.53.0

func (a ApplicationGraphConnection) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ApplicationGraphConnection.

func (*ApplicationGraphConnection) UnmarshalJSON added in v0.53.0

func (a *ApplicationGraphConnection) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ApplicationGraphConnection.

type ApplicationGraphOutputResource added in v0.53.0

type ApplicationGraphOutputResource struct {
	// REQUIRED; The resource ID.
	ID *string

	// REQUIRED; The resource name.
	Name *string

	// REQUIRED; The resource type.
	Type *string

	// A deep link to the underlying resource in its cloud provider's portal (for example, the Azure portal). Empty when no link
	// is available for the resource.
	PortalURL *string
}

ApplicationGraphOutputResource - Describes an output resource that comprises an application graph resource.

func (ApplicationGraphOutputResource) MarshalJSON added in v0.53.0

func (a ApplicationGraphOutputResource) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ApplicationGraphOutputResource.

func (*ApplicationGraphOutputResource) UnmarshalJSON added in v0.53.0

func (a *ApplicationGraphOutputResource) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ApplicationGraphOutputResource.

type ApplicationGraphResource added in v0.53.0

type ApplicationGraphResource struct {
	// REQUIRED; The connections between resources in the application graph.
	Connections []*ApplicationGraphConnection

	// REQUIRED; The resource ID.
	ID *string

	// REQUIRED; The resource name.
	Name *string

	// REQUIRED; The resources that comprise this resource.
	OutputResources []*ApplicationGraphOutputResource

	// REQUIRED; provisioningState of this resource.
	ProvisioningState *string

	// REQUIRED; The resource type.
	Type *string

	// Stable hash over the authorable properties of this resource and its sorted dependsOn list. Used by tooling to classify
	// resources as added, removed, modified, or unchanged across graphs. Format: 'sha256:{hex}'.
	DiffHash *string

	// SHA-256 hex of the resource type's icon SVG, matching `iconHash` on the resource-type registry. Null when the type has
	// no icon registered. The bytes themselves are delivered inline via `ApplicationGraphResponse.icons` when the request specifies
	// `includeIcons: true`; otherwise clients fetch bytes by hash from the resource-type icon endpoint.
	IconHash *string

	// Resource-type-specific properties of the resource as returned by its resource provider. The shape of this map varies by
	// `type` (e.g. a `Radius.Compute/containers` resource exposes different keys than `Radius.Datastores/redisCaches` or any
	// user-defined resource type) and matches the `properties` returned by that resource's GET response. Top-level keys already
	// surfaced as first-class fields on this model (`provisioningState`, `connections`) are omitted. The whole `status` object
	// is also omitted because it may contain computed values that include sensitive data (for example, connection strings); the
	// redundant `status.outputResources` list is surfaced via the dedicated `outputResources` field instead. Use `diffHash` rather
	// than a byte-wise compare of this map to detect change.
	Properties map[string]any
}

ApplicationGraphResource - Describes a resource in the application graph.

func (ApplicationGraphResource) MarshalJSON added in v0.53.0

func (a ApplicationGraphResource) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ApplicationGraphResource.

func (*ApplicationGraphResource) UnmarshalJSON added in v0.53.0

func (a *ApplicationGraphResource) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ApplicationGraphResource.

type ApplicationGraphResponse added in v0.53.0

type ApplicationGraphResponse struct {
	// REQUIRED; The resources in the application graph.
	Resources []*ApplicationGraphResource

	// Map from iconHash to the verbatim SVG UTF-8 bytes for every icon referenced by any resource in this response. Populated
	// only when the request specifies `includeIcons: true`.
	Icons map[string]*string
}

ApplicationGraphResponse - Describes the application architecture and its dependencies.

func (ApplicationGraphResponse) MarshalJSON added in v0.53.0

func (a ApplicationGraphResponse) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ApplicationGraphResponse.

func (*ApplicationGraphResponse) UnmarshalJSON added in v0.53.0

func (a *ApplicationGraphResponse) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ApplicationGraphResponse.

type ApplicationProperties added in v0.53.0

type ApplicationProperties struct {
	// REQUIRED; (Required) Fully qualified resource ID of the environment the application is deployed to
	Environment *string

	// READ-ONLY; (Read Only) The status of the Application resource within the Radius control plane. Does not include the other
	// resources that compose the Application.
	ProvisioningState *ProvisioningState

	// READ-ONLY; (Read Only) Deployment details for the Application, including any output resources Radius created for it.
	Status *ResourceStatus
}

ApplicationProperties - Application properties

func (ApplicationProperties) MarshalJSON added in v0.53.0

func (a ApplicationProperties) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ApplicationProperties.

func (*ApplicationProperties) UnmarshalJSON added in v0.53.0

func (a *ApplicationProperties) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ApplicationProperties.

type ApplicationResource added in v0.53.0

type ApplicationResource struct {
	// REQUIRED; The geo-location where the resource lives
	Location *string

	// REQUIRED; The resource-specific properties for this resource.
	Properties *ApplicationProperties

	// Resource tags.
	Tags map[string]*string

	// READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
	ID *string

	// READ-ONLY; The name of the resource
	Name *string

	// READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information.
	SystemData *SystemData

	// READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
	Type *string
}

ApplicationResource - The `Radius.Core/applications` Resource Type represents a Radius Application: a logical grouping of the resources that make up a single Application, such as containers, databases, and message queues, along with the connections between them. Radius uses the Application to build the application graph, apply shared configuration, and manage its resources together throughout their lifecycle. ## Defining an Application An Application is always deployed to a Radius Environment, which is supplied through the `environment` property. To define an Application, add a `Radius.Core/applications` resource to your application definition Bicep file. ```bicep extension radius @description('The Radius Environment ID. Injected automatically by the rad CLI.') param environment string resource myApp 'Radius.Core/applications@2025-08-01-preview' = { name: 'my-app' properties: { environment: environment } } ``` ## Deploying an Application An Application is deployed with the `rad deploy` command, which deploys the Application together with the resources that belong to it: ```bash rad deploy ./app.bicep ``` ## Adding resources to an Application Resources are composed into an Application by setting their `application` property to the Application's ID. For example, to add a Container to this Application, add the following to the application definition Bicep file and set `application: myApp.id`: ```bicep resource frontend 'Radius.Compute/containers@2025-08-01-preview' = { name: 'frontend' properties: { environment: environment application: myApp.id containers: { frontend: { image: 'ghcr.io/my-org/frontend:latest' } } } } ```

func (*ApplicationResource) ConvertFrom added in v0.53.0

func (dst *ApplicationResource) ConvertFrom(src v1.DataModelInterface) error

ConvertFrom converts from version-agnostic datamodel to the versioned ApplicationResource.

func (*ApplicationResource) ConvertTo added in v0.53.0

func (src *ApplicationResource) ConvertTo() (v1.DataModelInterface, error)

ConvertTo converts from the versioned ApplicationResource to version-agnostic datamodel.

func (ApplicationResource) MarshalJSON added in v0.53.0

func (a ApplicationResource) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ApplicationResource.

func (*ApplicationResource) UnmarshalJSON added in v0.53.0

func (a *ApplicationResource) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ApplicationResource.

type ApplicationResourceListResult added in v0.53.0

type ApplicationResourceListResult struct {
	// REQUIRED; The ApplicationResource items on this page
	Value []*ApplicationResource

	// The link to the next page of items
	NextLink *string
}

ApplicationResourceListResult - The response of a ApplicationResource list operation.

func (ApplicationResourceListResult) MarshalJSON added in v0.53.0

func (a ApplicationResourceListResult) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ApplicationResourceListResult.

func (*ApplicationResourceListResult) UnmarshalJSON added in v0.53.0

func (a *ApplicationResourceListResult) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ApplicationResourceListResult.

type ApplicationsClient added in v0.53.0

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

ApplicationsClient contains the methods for the Applications group. Don't use this type directly, use NewApplicationsClient() instead.

Generated from API version 2025-08-01-preview

func NewApplicationsClient added in v0.53.0

func NewApplicationsClient(credential azcore.TokenCredential, options *arm.ClientOptions) (*ApplicationsClient, error)

NewApplicationsClient creates a new instance of ApplicationsClient with the specified values.

  • credential - used to authorize requests. Usually a credential from azidentity.
  • options - Contains optional client configuration. Pass nil to accept the default values.

func (*ApplicationsClient) CreateOrUpdate added in v0.53.0

CreateOrUpdate - Create a ApplicationResource If the operation fails it returns an *azcore.ResponseError type.

  • rootScope - The scope in which the resource is present. UCP Scope is /planes/{planeType}/{planeName}/resourceGroup/{resourcegroupID} and Azure resource scope is /subscriptions/{subscriptionID}/resourceGroup/{resourcegroupID}
  • applicationName - The application name
  • resource - Resource create parameters.
  • options - ApplicationsClientCreateOrUpdateOptions contains the optional parameters for the ApplicationsClient.CreateOrUpdate method.

func (*ApplicationsClient) Delete added in v0.53.0

func (client *ApplicationsClient) Delete(ctx context.Context, rootScope string, applicationName string, options *ApplicationsClientDeleteOptions) (ApplicationsClientDeleteResponse, error)

Delete - Delete a ApplicationResource If the operation fails it returns an *azcore.ResponseError type.

  • rootScope - The scope in which the resource is present. UCP Scope is /planes/{planeType}/{planeName}/resourceGroup/{resourcegroupID} and Azure resource scope is /subscriptions/{subscriptionID}/resourceGroup/{resourcegroupID}
  • applicationName - The application name
  • options - ApplicationsClientDeleteOptions contains the optional parameters for the ApplicationsClient.Delete method.

func (*ApplicationsClient) Get added in v0.53.0

func (client *ApplicationsClient) Get(ctx context.Context, rootScope string, applicationName string, options *ApplicationsClientGetOptions) (ApplicationsClientGetResponse, error)

Get - Get a ApplicationResource If the operation fails it returns an *azcore.ResponseError type.

  • rootScope - The scope in which the resource is present. UCP Scope is /planes/{planeType}/{planeName}/resourceGroup/{resourcegroupID} and Azure resource scope is /subscriptions/{subscriptionID}/resourceGroup/{resourcegroupID}
  • applicationName - The application name
  • options - ApplicationsClientGetOptions contains the optional parameters for the ApplicationsClient.Get method.

func (*ApplicationsClient) GetGraph added in v0.53.0

GetGraph - Gets the application graph and resources. If the operation fails it returns an *azcore.ResponseError type.

  • rootScope - The scope in which the resource is present. UCP Scope is /planes/{planeType}/{planeName}/resourceGroup/{resourcegroupID} and Azure resource scope is /subscriptions/{subscriptionID}/resourceGroup/{resourcegroupID}
  • applicationName - The application name
  • body - The content of the action request
  • options - ApplicationsClientGetGraphOptions contains the optional parameters for the ApplicationsClient.GetGraph method.

func (*ApplicationsClient) NewListByScopePager added in v0.53.0

NewListByScopePager - List ApplicationResource resources by Scope

  • rootScope - The scope in which the resource is present. UCP Scope is /planes/{planeType}/{planeName}/resourceGroup/{resourcegroupID} and Azure resource scope is /subscriptions/{subscriptionID}/resourceGroup/{resourcegroupID}
  • options - ApplicationsClientListByScopeOptions contains the optional parameters for the ApplicationsClient.NewListByScopePager method.

func (*ApplicationsClient) Update added in v0.53.0

func (client *ApplicationsClient) Update(ctx context.Context, rootScope string, applicationName string, properties ApplicationResource, options *ApplicationsClientUpdateOptions) (ApplicationsClientUpdateResponse, error)

Update - Update a ApplicationResource If the operation fails it returns an *azcore.ResponseError type.

  • rootScope - The scope in which the resource is present. UCP Scope is /planes/{planeType}/{planeName}/resourceGroup/{resourcegroupID} and Azure resource scope is /subscriptions/{subscriptionID}/resourceGroup/{resourcegroupID}
  • applicationName - The application name
  • properties - The resource properties to be updated.
  • options - ApplicationsClientUpdateOptions contains the optional parameters for the ApplicationsClient.Update method.

type ApplicationsClientCreateOrUpdateOptions added in v0.53.0

type ApplicationsClientCreateOrUpdateOptions struct {
}

ApplicationsClientCreateOrUpdateOptions contains the optional parameters for the ApplicationsClient.CreateOrUpdate method.

type ApplicationsClientCreateOrUpdateResponse added in v0.53.0

type ApplicationsClientCreateOrUpdateResponse struct {
	// The `Radius.Core/applications` Resource Type represents a Radius Application: a logical grouping of the resources that
	// make up a single Application, such as containers, databases, and message queues, along with the connections between them.
	// Radius uses the Application to build the application graph, apply shared configuration, and manage its resources together
	// throughout their lifecycle.
	// ## Defining an Application
	// An Application is always deployed to a Radius Environment, which is supplied through the `environment` property. To define
	// an Application, add a `Radius.Core/applications` resource to your application definition Bicep file.
	// “`bicep
	// extension radius
	// @description('The Radius Environment ID. Injected automatically by the rad CLI.')
	// param environment string
	// resource myApp 'Radius.Core/applications@2025-08-01-preview' = {
	// name: 'my-app'
	// properties: {
	// environment: environment
	// }
	// }
	// “`
	// ## Deploying an Application
	// An Application is deployed with the `rad deploy` command, which deploys the Application together with the resources that
	// belong to it:
	// “`bash
	// rad deploy ./app.bicep
	// “`
	// ## Adding resources to an Application
	// Resources are composed into an Application by setting their `application` property to the Application's ID. For example,
	// to add a Container to this Application, add the following to the application definition Bicep file and set `application:
	// myApp.id`:
	// “`bicep
	// resource frontend 'Radius.Compute/containers@2025-08-01-preview' = {
	// name: 'frontend'
	// properties: {
	// environment: environment
	// application: myApp.id
	// containers: {
	// frontend: {
	// image: 'ghcr.io/my-org/frontend:latest'
	// }
	// }
	// }
	// }
	// “`
	ApplicationResource
}

ApplicationsClientCreateOrUpdateResponse contains the response from method ApplicationsClient.CreateOrUpdate.

type ApplicationsClientDeleteOptions added in v0.53.0

type ApplicationsClientDeleteOptions struct {
}

ApplicationsClientDeleteOptions contains the optional parameters for the ApplicationsClient.Delete method.

type ApplicationsClientDeleteResponse added in v0.53.0

type ApplicationsClientDeleteResponse struct {
}

ApplicationsClientDeleteResponse contains the response from method ApplicationsClient.Delete.

type ApplicationsClientGetGraphOptions added in v0.53.0

type ApplicationsClientGetGraphOptions struct {
}

ApplicationsClientGetGraphOptions contains the optional parameters for the ApplicationsClient.GetGraph method.

type ApplicationsClientGetGraphResponse added in v0.53.0

type ApplicationsClientGetGraphResponse struct {
	// Describes the application architecture and its dependencies.
	ApplicationGraphResponse
}

ApplicationsClientGetGraphResponse contains the response from method ApplicationsClient.GetGraph.

type ApplicationsClientGetOptions added in v0.53.0

type ApplicationsClientGetOptions struct {
}

ApplicationsClientGetOptions contains the optional parameters for the ApplicationsClient.Get method.

type ApplicationsClientGetResponse added in v0.53.0

type ApplicationsClientGetResponse struct {
	// The `Radius.Core/applications` Resource Type represents a Radius Application: a logical grouping of the resources that
	// make up a single Application, such as containers, databases, and message queues, along with the connections between them.
	// Radius uses the Application to build the application graph, apply shared configuration, and manage its resources together
	// throughout their lifecycle.
	// ## Defining an Application
	// An Application is always deployed to a Radius Environment, which is supplied through the `environment` property. To define
	// an Application, add a `Radius.Core/applications` resource to your application definition Bicep file.
	// “`bicep
	// extension radius
	// @description('The Radius Environment ID. Injected automatically by the rad CLI.')
	// param environment string
	// resource myApp 'Radius.Core/applications@2025-08-01-preview' = {
	// name: 'my-app'
	// properties: {
	// environment: environment
	// }
	// }
	// “`
	// ## Deploying an Application
	// An Application is deployed with the `rad deploy` command, which deploys the Application together with the resources that
	// belong to it:
	// “`bash
	// rad deploy ./app.bicep
	// “`
	// ## Adding resources to an Application
	// Resources are composed into an Application by setting their `application` property to the Application's ID. For example,
	// to add a Container to this Application, add the following to the application definition Bicep file and set `application:
	// myApp.id`:
	// “`bicep
	// resource frontend 'Radius.Compute/containers@2025-08-01-preview' = {
	// name: 'frontend'
	// properties: {
	// environment: environment
	// application: myApp.id
	// containers: {
	// frontend: {
	// image: 'ghcr.io/my-org/frontend:latest'
	// }
	// }
	// }
	// }
	// “`
	ApplicationResource
}

ApplicationsClientGetResponse contains the response from method ApplicationsClient.Get.

type ApplicationsClientListByScopeOptions added in v0.53.0

type ApplicationsClientListByScopeOptions struct {
}

ApplicationsClientListByScopeOptions contains the optional parameters for the ApplicationsClient.NewListByScopePager method.

type ApplicationsClientListByScopeResponse added in v0.53.0

type ApplicationsClientListByScopeResponse struct {
	// The response of a ApplicationResource list operation.
	ApplicationResourceListResult
}

ApplicationsClientListByScopeResponse contains the response from method ApplicationsClient.NewListByScopePager.

type ApplicationsClientUpdateOptions added in v0.53.0

type ApplicationsClientUpdateOptions struct {
}

ApplicationsClientUpdateOptions contains the optional parameters for the ApplicationsClient.Update method.

type ApplicationsClientUpdateResponse added in v0.53.0

type ApplicationsClientUpdateResponse struct {
	// The `Radius.Core/applications` Resource Type represents a Radius Application: a logical grouping of the resources that
	// make up a single Application, such as containers, databases, and message queues, along with the connections between them.
	// Radius uses the Application to build the application graph, apply shared configuration, and manage its resources together
	// throughout their lifecycle.
	// ## Defining an Application
	// An Application is always deployed to a Radius Environment, which is supplied through the `environment` property. To define
	// an Application, add a `Radius.Core/applications` resource to your application definition Bicep file.
	// “`bicep
	// extension radius
	// @description('The Radius Environment ID. Injected automatically by the rad CLI.')
	// param environment string
	// resource myApp 'Radius.Core/applications@2025-08-01-preview' = {
	// name: 'my-app'
	// properties: {
	// environment: environment
	// }
	// }
	// “`
	// ## Deploying an Application
	// An Application is deployed with the `rad deploy` command, which deploys the Application together with the resources that
	// belong to it:
	// “`bash
	// rad deploy ./app.bicep
	// “`
	// ## Adding resources to an Application
	// Resources are composed into an Application by setting their `application` property to the Application's ID. For example,
	// to add a Container to this Application, add the following to the application definition Bicep file and set `application:
	// myApp.id`:
	// “`bicep
	// resource frontend 'Radius.Compute/containers@2025-08-01-preview' = {
	// name: 'frontend'
	// properties: {
	// environment: environment
	// application: myApp.id
	// containers: {
	// frontend: {
	// image: 'ghcr.io/my-org/frontend:latest'
	// }
	// }
	// }
	// }
	// “`
	ApplicationResource
}

ApplicationsClientUpdateResponse contains the response from method ApplicationsClient.Update.

type AzureContainerInstanceCompute added in v0.53.0

type AzureContainerInstanceCompute struct {
	// REQUIRED; The Azure container instance compute kind
	Kind *string

	// Configuration for supported external identity providers
	Identity *IdentitySettings

	// The resource group to use for the environment.
	ResourceGroup *string

	// The resource id of the compute resource for application environment.
	ResourceID *string
}

AzureContainerInstanceCompute - The Azure container instance compute configuration

func (*AzureContainerInstanceCompute) GetEnvironmentCompute added in v0.53.0

func (a *AzureContainerInstanceCompute) GetEnvironmentCompute() *EnvironmentCompute

GetEnvironmentCompute implements the EnvironmentComputeClassification interface for type AzureContainerInstanceCompute.

func (AzureContainerInstanceCompute) MarshalJSON added in v0.53.0

func (a AzureContainerInstanceCompute) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureContainerInstanceCompute.

func (*AzureContainerInstanceCompute) UnmarshalJSON added in v0.53.0

func (a *AzureContainerInstanceCompute) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureContainerInstanceCompute.

type BicepAuthenticationMethod added in v0.58.0

type BicepAuthenticationMethod string

BicepAuthenticationMethod - Supported authentication methods for private Bicep registries.

const (
	// BicepAuthenticationMethodAwsIrsa - AWS IAM Roles for Service Accounts authentication.
	BicepAuthenticationMethodAwsIrsa BicepAuthenticationMethod = "AwsIrsa"
	// BicepAuthenticationMethodAzureWI - Azure Workload Identity authentication.
	BicepAuthenticationMethodAzureWI BicepAuthenticationMethod = "AzureWI"
	// BicepAuthenticationMethodBasicAuth - Username/password authentication.
	BicepAuthenticationMethodBasicAuth BicepAuthenticationMethod = "BasicAuth"
)

func PossibleBicepAuthenticationMethodValues added in v0.58.0

func PossibleBicepAuthenticationMethodValues() []BicepAuthenticationMethod

PossibleBicepAuthenticationMethodValues returns the possible values for the BicepAuthenticationMethod const type.

type BicepRegistryAuthentication added in v0.58.0

type BicepRegistryAuthentication struct {
	// (Optional) How Radius authenticates to the registry.
	AuthenticationMethod *BicepAuthenticationMethod

	// (Optional) AWS IAM Role ARN for IRSA authentication. Required when `authenticationMethod` is `AwsIrsa`.
	AwsIamRoleArn *string

	// (Optional) Azure Workload Identity client ID. Required when `authenticationMethod` is `AzureWI`.
	AzureWiClientID *string

	// (Optional) Azure Workload Identity tenant ID. Required when `authenticationMethod` is `AzureWI`.
	AzureWiTenantID *string

	// (Optional) The ID of a `Radius.Security/secrets` resource containing the username and password. Required when `authenticationMethod`
	// is `BasicAuth`.
	BasicAuthSecretID *string
}

BicepRegistryAuthentication - Authentication configuration for a single private Bicep registry. Only `BasicAuth` is currently supported, and it requires `basicAuthSecretId`; the controller rejects configs that omit it. `AzureWI` and `AwsIrsa` will be supported in the future.

func (BicepRegistryAuthentication) MarshalJSON added in v0.58.0

func (b BicepRegistryAuthentication) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type BicepRegistryAuthentication.

func (*BicepRegistryAuthentication) UnmarshalJSON added in v0.58.0

func (b *BicepRegistryAuthentication) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type BicepRegistryAuthentication.

type BicepSettingsClient added in v0.60.0

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

BicepSettingsClient contains the methods for the BicepSettings group. Don't use this type directly, use NewBicepSettingsClient() instead.

Generated from API version 2025-08-01-preview

func NewBicepSettingsClient added in v0.60.0

func NewBicepSettingsClient(credential azcore.TokenCredential, options *arm.ClientOptions) (*BicepSettingsClient, error)

NewBicepSettingsClient creates a new instance of BicepSettingsClient with the specified values.

  • credential - used to authorize requests. Usually a credential from azidentity.
  • options - Contains optional client configuration. Pass nil to accept the default values.

func (*BicepSettingsClient) CreateOrUpdate added in v0.60.0

CreateOrUpdate - Create a BicepSettingsResource If the operation fails it returns an *azcore.ResponseError type.

  • rootScope - The scope in which the resource is present. UCP Scope is /planes/{planeType}/{planeName}/resourceGroup/{resourcegroupID} and Azure resource scope is /subscriptions/{subscriptionID}/resourceGroup/{resourcegroupID}
  • bicepSettingsName - Bicep settings name
  • resource - Resource create parameters.
  • options - BicepSettingsClientCreateOrUpdateOptions contains the optional parameters for the BicepSettingsClient.CreateOrUpdate method.

func (*BicepSettingsClient) Delete added in v0.60.0

func (client *BicepSettingsClient) Delete(ctx context.Context, rootScope string, bicepSettingsName string, options *BicepSettingsClientDeleteOptions) (BicepSettingsClientDeleteResponse, error)

Delete - Delete a BicepSettingsResource If the operation fails it returns an *azcore.ResponseError type.

  • rootScope - The scope in which the resource is present. UCP Scope is /planes/{planeType}/{planeName}/resourceGroup/{resourcegroupID} and Azure resource scope is /subscriptions/{subscriptionID}/resourceGroup/{resourcegroupID}
  • bicepSettingsName - Bicep settings name
  • options - BicepSettingsClientDeleteOptions contains the optional parameters for the BicepSettingsClient.Delete method.

func (*BicepSettingsClient) Get added in v0.60.0

func (client *BicepSettingsClient) Get(ctx context.Context, rootScope string, bicepSettingsName string, options *BicepSettingsClientGetOptions) (BicepSettingsClientGetResponse, error)

Get - Get a BicepSettingsResource If the operation fails it returns an *azcore.ResponseError type.

  • rootScope - The scope in which the resource is present. UCP Scope is /planes/{planeType}/{planeName}/resourceGroup/{resourcegroupID} and Azure resource scope is /subscriptions/{subscriptionID}/resourceGroup/{resourcegroupID}
  • bicepSettingsName - Bicep settings name
  • options - BicepSettingsClientGetOptions contains the optional parameters for the BicepSettingsClient.Get method.

func (*BicepSettingsClient) NewListByScopePager added in v0.60.0

NewListByScopePager - List BicepSettingsResource resources by Scope

  • rootScope - The scope in which the resource is present. UCP Scope is /planes/{planeType}/{planeName}/resourceGroup/{resourcegroupID} and Azure resource scope is /subscriptions/{subscriptionID}/resourceGroup/{resourcegroupID}
  • options - BicepSettingsClientListByScopeOptions contains the optional parameters for the BicepSettingsClient.NewListByScopePager method.

func (*BicepSettingsClient) Update added in v0.60.0

func (client *BicepSettingsClient) Update(ctx context.Context, rootScope string, bicepSettingsName string, properties BicepSettingsResource, options *BicepSettingsClientUpdateOptions) (BicepSettingsClientUpdateResponse, error)

Update - Update a BicepSettingsResource If the operation fails it returns an *azcore.ResponseError type.

  • rootScope - The scope in which the resource is present. UCP Scope is /planes/{planeType}/{planeName}/resourceGroup/{resourcegroupID} and Azure resource scope is /subscriptions/{subscriptionID}/resourceGroup/{resourcegroupID}
  • bicepSettingsName - Bicep settings name
  • properties - The resource properties to be updated.
  • options - BicepSettingsClientUpdateOptions contains the optional parameters for the BicepSettingsClient.Update method.

type BicepSettingsClientCreateOrUpdateOptions added in v0.60.0

type BicepSettingsClientCreateOrUpdateOptions struct {
}

BicepSettingsClientCreateOrUpdateOptions contains the optional parameters for the BicepSettingsClient.CreateOrUpdate method.

type BicepSettingsClientCreateOrUpdateResponse added in v0.60.0

type BicepSettingsClientCreateOrUpdateResponse struct {
	// The `Radius.Core/bicepSettings` Resource Type holds reusable Bicep engine settings that Environments apply when running
	// Bicep Recipes. Its primary use is authenticating to private Bicep registries: OCI registries, such as Azure Container Registry,
	// that host the Recipe templates referenced by a Recipe Pack.
	// Platform engineers define a `Radius.Core/bicepSettings` resource once and reference it from any Environment whose Recipes
	// pull templates from a private registry.
	// ## Defining Bicep settings
	// Configure `registryAuthentications`, keyed by registry hostname. When a Recipe template is pulled from a matching host,
	// Radius authenticates using the configured method. The example below uses basic authentication, reading the username and
	// password from a secret:
	// “`bicep
	// extension radius
	// @description('The Radius Environment ID. Injected automatically by the rad CLI.')
	// param environment string
	// resource registrySecret 'Radius.Security/secrets@2025-08-01-preview' = {
	// name: 'registry-credentials'
	// properties: {
	// environment: environment
	// data: {
	// username: { value: 'my-username' }
	// password: { value: 'my-password' }
	// }
	// }
	// }
	// resource bicepRegistry 'Radius.Core/bicepSettings@2025-08-01-preview' = {
	// name: 'private-registry'
	// properties: {
	// registryAuthentications: {
	// 'corp.azurecr.io': {
	// authenticationMethod: 'BasicAuth'
	// basicAuthSecretId: registrySecret.id
	// }
	// }
	// }
	// }
	// “`
	// Basic authentication is supported via `BasicAuth` (username and password from a secret). `AwsIrsa` and `AzureWI` will be
	// implemented in the future.
	// ## Deploying Bicep settings
	// Deploy the settings resource with the `rad deploy` command:
	// “`bash
	// rad deploy ./bicep-settings.bicep
	// “`
	// ## Referencing Bicep settings from an Environment
	// Reference the settings from an Environment by setting its `bicepSettings` property to the resource ID. Every Bicep Recipe
	// run in that Environment then uses the configured registry authentication:
	// “`bicep
	// extension radius
	// resource bicepRegistry 'Radius.Core/bicepSettings@2025-08-01-preview' existing = {
	// name: 'private-registry'
	// }
	// resource myEnvironment 'Radius.Core/environments@2025-08-01-preview' = {
	// name: 'my-environment'
	// properties: {
	// bicepSettings: bicepRegistry.id
	// }
	// }
	// “`
	BicepSettingsResource
}

BicepSettingsClientCreateOrUpdateResponse contains the response from method BicepSettingsClient.CreateOrUpdate.

type BicepSettingsClientDeleteOptions added in v0.60.0

type BicepSettingsClientDeleteOptions struct {
}

BicepSettingsClientDeleteOptions contains the optional parameters for the BicepSettingsClient.Delete method.

type BicepSettingsClientDeleteResponse added in v0.60.0

type BicepSettingsClientDeleteResponse struct {
}

BicepSettingsClientDeleteResponse contains the response from method BicepSettingsClient.Delete.

type BicepSettingsClientGetOptions added in v0.60.0

type BicepSettingsClientGetOptions struct {
}

BicepSettingsClientGetOptions contains the optional parameters for the BicepSettingsClient.Get method.

type BicepSettingsClientGetResponse added in v0.60.0

type BicepSettingsClientGetResponse struct {
	// The `Radius.Core/bicepSettings` Resource Type holds reusable Bicep engine settings that Environments apply when running
	// Bicep Recipes. Its primary use is authenticating to private Bicep registries: OCI registries, such as Azure Container Registry,
	// that host the Recipe templates referenced by a Recipe Pack.
	// Platform engineers define a `Radius.Core/bicepSettings` resource once and reference it from any Environment whose Recipes
	// pull templates from a private registry.
	// ## Defining Bicep settings
	// Configure `registryAuthentications`, keyed by registry hostname. When a Recipe template is pulled from a matching host,
	// Radius authenticates using the configured method. The example below uses basic authentication, reading the username and
	// password from a secret:
	// “`bicep
	// extension radius
	// @description('The Radius Environment ID. Injected automatically by the rad CLI.')
	// param environment string
	// resource registrySecret 'Radius.Security/secrets@2025-08-01-preview' = {
	// name: 'registry-credentials'
	// properties: {
	// environment: environment
	// data: {
	// username: { value: 'my-username' }
	// password: { value: 'my-password' }
	// }
	// }
	// }
	// resource bicepRegistry 'Radius.Core/bicepSettings@2025-08-01-preview' = {
	// name: 'private-registry'
	// properties: {
	// registryAuthentications: {
	// 'corp.azurecr.io': {
	// authenticationMethod: 'BasicAuth'
	// basicAuthSecretId: registrySecret.id
	// }
	// }
	// }
	// }
	// “`
	// Basic authentication is supported via `BasicAuth` (username and password from a secret). `AwsIrsa` and `AzureWI` will be
	// implemented in the future.
	// ## Deploying Bicep settings
	// Deploy the settings resource with the `rad deploy` command:
	// “`bash
	// rad deploy ./bicep-settings.bicep
	// “`
	// ## Referencing Bicep settings from an Environment
	// Reference the settings from an Environment by setting its `bicepSettings` property to the resource ID. Every Bicep Recipe
	// run in that Environment then uses the configured registry authentication:
	// “`bicep
	// extension radius
	// resource bicepRegistry 'Radius.Core/bicepSettings@2025-08-01-preview' existing = {
	// name: 'private-registry'
	// }
	// resource myEnvironment 'Radius.Core/environments@2025-08-01-preview' = {
	// name: 'my-environment'
	// properties: {
	// bicepSettings: bicepRegistry.id
	// }
	// }
	// “`
	BicepSettingsResource
}

BicepSettingsClientGetResponse contains the response from method BicepSettingsClient.Get.

type BicepSettingsClientListByScopeOptions added in v0.60.0

type BicepSettingsClientListByScopeOptions struct {
}

BicepSettingsClientListByScopeOptions contains the optional parameters for the BicepSettingsClient.NewListByScopePager method.

type BicepSettingsClientListByScopeResponse added in v0.60.0

type BicepSettingsClientListByScopeResponse struct {
	// The response of a BicepSettingsResource list operation.
	BicepSettingsResourceListResult
}

BicepSettingsClientListByScopeResponse contains the response from method BicepSettingsClient.NewListByScopePager.

type BicepSettingsClientUpdateOptions added in v0.60.0

type BicepSettingsClientUpdateOptions struct {
}

BicepSettingsClientUpdateOptions contains the optional parameters for the BicepSettingsClient.Update method.

type BicepSettingsClientUpdateResponse added in v0.60.0

type BicepSettingsClientUpdateResponse struct {
	// The `Radius.Core/bicepSettings` Resource Type holds reusable Bicep engine settings that Environments apply when running
	// Bicep Recipes. Its primary use is authenticating to private Bicep registries: OCI registries, such as Azure Container Registry,
	// that host the Recipe templates referenced by a Recipe Pack.
	// Platform engineers define a `Radius.Core/bicepSettings` resource once and reference it from any Environment whose Recipes
	// pull templates from a private registry.
	// ## Defining Bicep settings
	// Configure `registryAuthentications`, keyed by registry hostname. When a Recipe template is pulled from a matching host,
	// Radius authenticates using the configured method. The example below uses basic authentication, reading the username and
	// password from a secret:
	// “`bicep
	// extension radius
	// @description('The Radius Environment ID. Injected automatically by the rad CLI.')
	// param environment string
	// resource registrySecret 'Radius.Security/secrets@2025-08-01-preview' = {
	// name: 'registry-credentials'
	// properties: {
	// environment: environment
	// data: {
	// username: { value: 'my-username' }
	// password: { value: 'my-password' }
	// }
	// }
	// }
	// resource bicepRegistry 'Radius.Core/bicepSettings@2025-08-01-preview' = {
	// name: 'private-registry'
	// properties: {
	// registryAuthentications: {
	// 'corp.azurecr.io': {
	// authenticationMethod: 'BasicAuth'
	// basicAuthSecretId: registrySecret.id
	// }
	// }
	// }
	// }
	// “`
	// Basic authentication is supported via `BasicAuth` (username and password from a secret). `AwsIrsa` and `AzureWI` will be
	// implemented in the future.
	// ## Deploying Bicep settings
	// Deploy the settings resource with the `rad deploy` command:
	// “`bash
	// rad deploy ./bicep-settings.bicep
	// “`
	// ## Referencing Bicep settings from an Environment
	// Reference the settings from an Environment by setting its `bicepSettings` property to the resource ID. Every Bicep Recipe
	// run in that Environment then uses the configured registry authentication:
	// “`bicep
	// extension radius
	// resource bicepRegistry 'Radius.Core/bicepSettings@2025-08-01-preview' existing = {
	// name: 'private-registry'
	// }
	// resource myEnvironment 'Radius.Core/environments@2025-08-01-preview' = {
	// name: 'my-environment'
	// properties: {
	// bicepSettings: bicepRegistry.id
	// }
	// }
	// “`
	BicepSettingsResource
}

BicepSettingsClientUpdateResponse contains the response from method BicepSettingsClient.Update.

type BicepSettingsProperties added in v0.60.0

type BicepSettingsProperties struct {
	// (Optional) Authentication for private Bicep registries that host Recipe templates, keyed by registry hostname such as `corp.acr.io`.
	// Radius matches a registry by the hostname in the Recipe source.
	RegistryAuthentications map[string]*BicepRegistryAuthentication

	// READ-ONLY; (Read Only) The status of the Bicep settings resource within the Radius control plane.
	ProvisioningState *ProvisioningState

	// READ-ONLY; (Read Only) Resource IDs of the Environments that reference this Bicep settings resource.
	ReferencedBy []*string
}

BicepSettingsProperties - Bicep settings properties.

func (BicepSettingsProperties) MarshalJSON added in v0.60.0

func (b BicepSettingsProperties) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type BicepSettingsProperties.

func (*BicepSettingsProperties) UnmarshalJSON added in v0.60.0

func (b *BicepSettingsProperties) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type BicepSettingsProperties.

type BicepSettingsResource added in v0.60.0

type BicepSettingsResource struct {
	// REQUIRED; The geo-location where the resource lives
	Location *string

	// REQUIRED; The resource-specific properties for this resource.
	Properties *BicepSettingsProperties

	// Resource tags.
	Tags map[string]*string

	// READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
	ID *string

	// READ-ONLY; The name of the resource
	Name *string

	// READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information.
	SystemData *SystemData

	// READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
	Type *string
}

BicepSettingsResource - The `Radius.Core/bicepSettings` Resource Type holds reusable Bicep engine settings that Environments apply when running Bicep Recipes. Its primary use is authenticating to private Bicep registries: OCI registries, such as Azure Container Registry, that host the Recipe templates referenced by a Recipe Pack. Platform engineers define a `Radius.Core/bicepSettings` resource once and reference it from any Environment whose Recipes pull templates from a private registry. ## Defining Bicep settings Configure `registryAuthentications`, keyed by registry hostname. When a Recipe template is pulled from a matching host, Radius authenticates using the configured method. The example below uses basic authentication, reading the username and password from a secret: ```bicep extension radius @description('The Radius Environment ID. Injected automatically by the rad CLI.') param environment string resource registrySecret 'Radius.Security/secrets@2025-08-01-preview' = { name: 'registry-credentials' properties: { environment: environment data: { username: { value: 'my-username' } password: { value: 'my-password' } } } } resource bicepRegistry 'Radius.Core/bicepSettings@2025-08-01-preview' = { name: 'private-registry' properties: { registryAuthentications: { 'corp.azurecr.io': { authenticationMethod: 'BasicAuth' basicAuthSecretId: registrySecret.id } } } } ``` Basic authentication is supported via `BasicAuth` (username and password from a secret). `AwsIrsa` and `AzureWI` will be implemented in the future. ## Deploying Bicep settings Deploy the settings resource with the `rad deploy` command: ```bash rad deploy ./bicep-settings.bicep ``` ## Referencing Bicep settings from an Environment Reference the settings from an Environment by setting its `bicepSettings` property to the resource ID. Every Bicep Recipe run in that Environment then uses the configured registry authentication: ```bicep extension radius resource bicepRegistry 'Radius.Core/bicepSettings@2025-08-01-preview' existing = { name: 'private-registry' } resource myEnvironment 'Radius.Core/environments@2025-08-01-preview' = { name: 'my-environment' properties: { bicepSettings: bicepRegistry.id } } ```

func (*BicepSettingsResource) ConvertFrom added in v0.60.0

func (dst *BicepSettingsResource) ConvertFrom(src v1.DataModelInterface) error

ConvertFrom converts from version-agnostic datamodel to the versioned BicepSettings resource.

func (*BicepSettingsResource) ConvertTo added in v0.60.0

func (src *BicepSettingsResource) ConvertTo() (v1.DataModelInterface, error)

ConvertTo converts from the versioned BicepSettings resource to version-agnostic datamodel.

func (BicepSettingsResource) MarshalJSON added in v0.60.0

func (b BicepSettingsResource) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type BicepSettingsResource.

func (*BicepSettingsResource) UnmarshalJSON added in v0.60.0

func (b *BicepSettingsResource) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type BicepSettingsResource.

type BicepSettingsResourceListResult added in v0.60.0

type BicepSettingsResourceListResult struct {
	// REQUIRED; The BicepSettingsResource items on this page
	Value []*BicepSettingsResource

	// The link to the next page of items
	NextLink *string
}

BicepSettingsResourceListResult - The response of a BicepSettingsResource list operation.

func (BicepSettingsResourceListResult) MarshalJSON added in v0.60.0

func (b BicepSettingsResourceListResult) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type BicepSettingsResourceListResult.

func (*BicepSettingsResourceListResult) UnmarshalJSON added in v0.60.0

func (b *BicepSettingsResourceListResult) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type BicepSettingsResourceListResult.

type ClientFactory

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

ClientFactory is a client factory used to create any client in this module. Don't use this type directly, use NewClientFactory instead.

func NewClientFactory

func NewClientFactory(credential azcore.TokenCredential, options *arm.ClientOptions) (*ClientFactory, error)

NewClientFactory creates a new instance of ClientFactory with the specified values. The parameter values will be propagated to any client created from this factory.

  • credential - used to authorize requests. Usually a credential from azidentity.
  • options - pass nil to accept the default values.

func (*ClientFactory) NewApplicationsClient added in v0.53.0

func (c *ClientFactory) NewApplicationsClient() *ApplicationsClient

NewApplicationsClient creates a new instance of ApplicationsClient.

func (*ClientFactory) NewBicepSettingsClient added in v0.60.0

func (c *ClientFactory) NewBicepSettingsClient() *BicepSettingsClient

NewBicepSettingsClient creates a new instance of BicepSettingsClient.

func (*ClientFactory) NewEnvironmentsClient

func (c *ClientFactory) NewEnvironmentsClient() *EnvironmentsClient

NewEnvironmentsClient creates a new instance of EnvironmentsClient.

func (*ClientFactory) NewOperationsClient

func (c *ClientFactory) NewOperationsClient() *OperationsClient

NewOperationsClient creates a new instance of OperationsClient.

func (*ClientFactory) NewRecipePacksClient added in v0.53.0

func (c *ClientFactory) NewRecipePacksClient() *RecipePacksClient

NewRecipePacksClient creates a new instance of RecipePacksClient.

func (*ClientFactory) NewTerraformSettingsClient added in v0.60.0

func (c *ClientFactory) NewTerraformSettingsClient() *TerraformSettingsClient

NewTerraformSettingsClient creates a new instance of TerraformSettingsClient.

type ConnectionKind added in v0.60.0

type ConnectionKind string

ConnectionKind - The origin of a connection: 'Connection' for author-declared entries in properties.connections, 'Dependency' for implicit entries derived from Bicep's dependsOn list.

const (
	// ConnectionKindConnection - The edge was declared by the author in properties.connections.
	ConnectionKindConnection ConnectionKind = "Connection"
	// ConnectionKindDependency - The edge was inferred from a Bicep dependsOn entry (implicit dependency). Not emitted by the
	// runtime graph in Phase 1 — runtime dependency extraction is Phase 2.
	ConnectionKindDependency ConnectionKind = "Dependency"
)

func PossibleConnectionKindValues added in v0.60.0

func PossibleConnectionKindValues() []ConnectionKind

PossibleConnectionKindValues returns the possible values for the ConnectionKind const type.

type CreatedByType

type CreatedByType string

CreatedByType - The kind of entity that created the resource.

const (
	// CreatedByTypeApplication - The entity was created by an application.
	CreatedByTypeApplication CreatedByType = "Application"
	// CreatedByTypeKey - The entity was created by a key.
	CreatedByTypeKey CreatedByType = "Key"
	// CreatedByTypeManagedIdentity - The entity was created by a managed identity.
	CreatedByTypeManagedIdentity CreatedByType = "ManagedIdentity"
	// CreatedByTypeUser - The entity was created by a user.
	CreatedByTypeUser CreatedByType = "User"
)

func PossibleCreatedByTypeValues

func PossibleCreatedByTypeValues() []CreatedByType

PossibleCreatedByTypeValues returns the possible values for the CreatedByType const type.

type Direction added in v0.53.0

type Direction string

Direction - The direction of a connection.

const (
	// DirectionInbound - The resource defining this connection accepts inbound connections from the resource specified by this
	// id.
	DirectionInbound Direction = "Inbound"
	// DirectionOutbound - The resource defining this connection makes an outbound connection resource specified by this id.
	DirectionOutbound Direction = "Outbound"
)

func PossibleDirectionValues added in v0.53.0

func PossibleDirectionValues() []Direction

PossibleDirectionValues returns the possible values for the Direction const type.

type EnvironmentCompute added in v0.53.0

type EnvironmentCompute struct {
	// REQUIRED; Discriminator property for EnvironmentCompute.
	Kind *string

	// Configuration for supported external identity providers
	Identity *IdentitySettings

	// The resource id of the compute resource for application environment.
	ResourceID *string
}

EnvironmentCompute - Represents backing compute resource

func (*EnvironmentCompute) GetEnvironmentCompute added in v0.53.0

func (e *EnvironmentCompute) GetEnvironmentCompute() *EnvironmentCompute

GetEnvironmentCompute implements the EnvironmentComputeClassification interface for type EnvironmentCompute.

func (EnvironmentCompute) MarshalJSON added in v0.53.0

func (e EnvironmentCompute) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type EnvironmentCompute.

func (*EnvironmentCompute) UnmarshalJSON added in v0.53.0

func (e *EnvironmentCompute) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type EnvironmentCompute.

type EnvironmentComputeClassification added in v0.53.0

type EnvironmentComputeClassification interface {
	// GetEnvironmentCompute returns the EnvironmentCompute content of the underlying type.
	GetEnvironmentCompute() *EnvironmentCompute
}

EnvironmentComputeClassification provides polymorphic access to related types. Call the interface's GetEnvironmentCompute() method to access the common type. Use a type switch to determine the concrete type. The possible types are: - *AzureContainerInstanceCompute, *EnvironmentCompute, *KubernetesCompute

type EnvironmentProperties

type EnvironmentProperties struct {
	// (Optional) Resource ID of a `Radius.Core/bicepSettings` resource that supplies Bicep engine settings, such as private registry
	// authentication, used when running Bicep Recipes in this Environment.
	BicepSettings *string

	// (Optional) Target compute platform and cloud provider accounts that resources are deployed into. When created with the
	// Radius CLI, defaults to Kubernetes in the `default` namespace.
	Providers *Providers

	// (Optional) Resource IDs of the Recipe Packs this Environment uses to provision infrastructure for application resources.
	// When created with the Radius CLI, defaults to the `default` Recipe Pack in the `default` resource group.
	RecipePacks []*string

	// (Optional) Parameters passed to Recipes when they run, keyed by resource type. Values here override the default parameters
	// defined in the Recipe Pack for every resource of that type deployed to this Environment.
	RecipeParameters map[string]*RecipeParameterValue

	// (Optional) When true, the Environment is simulated and does not deploy real infrastructure. Recipes are evaluated but no
	// resources are provisioned, which is useful for validating application definitions. Defaults to `false` if not specified.
	Simulated *bool

	// (Optional) Resource ID of a `Radius.Core/terraformSettings` resource that supplies Terraform CLI settings, such as private
	// registry credentials, used when running Terraform Recipes in this Environment.
	TerraformSettings *string

	// READ-ONLY; (Read Only) The status of the Environment resource within the Radius control plane. Does not include the resources
	// deployed to the Environment.
	ProvisioningState *ProvisioningState
}

EnvironmentProperties - Environment properties

func (EnvironmentProperties) MarshalJSON

func (e EnvironmentProperties) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type EnvironmentProperties.

func (*EnvironmentProperties) UnmarshalJSON

func (e *EnvironmentProperties) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type EnvironmentProperties.

type EnvironmentResource

type EnvironmentResource struct {
	// REQUIRED; The geo-location where the resource lives
	Location *string

	// REQUIRED; The resource-specific properties for this resource.
	Properties *EnvironmentProperties

	// Resource tags.
	Tags map[string]*string

	// READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
	ID *string

	// READ-ONLY; The name of the resource
	Name *string

	// READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information.
	SystemData *SystemData

	// READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
	Type *string
}

EnvironmentResource - The `Radius.Core/environments` Resource Type represents a Radius Environment: the deployment target that platform engineers configure for their developers. Every Radius Application is deployed to an Environment through its `environment` property. An Environment defines three things for the Applications deployed to it: - **Where resources are deployed**: the target compute platform and cloud provider accounts, set through the `providers` property. - **Which Recipes are used**: the Recipe Packs whose Recipes provision the infrastructure backing application resources, set through the `recipePacks` property. - **Advanced Terraform and Bicep settings**: environment-wide Recipe parameters and Terraform or Bicep engine configuration applied when Recipes run. ## Defining an Environment The simplest Environment can be created directly with the `rad environment create` command, without a Bicep file: ```bash rad environment create my-environment ``` For more advanced configurations, define an Environment as a `Radius.Core/environments` resource in a Bicep file. For example: ```bicep extension radius resource myEnvironment 'Radius.Core/environments@2025-08-01-preview' = { name: 'my-environment' properties: { recipePacks: [ myRecipePack.id ] providers: { kubernetes: { namespace: 'my-namespace' } } } } resource myRecipePack 'Radius.Core/recipePacks@2025-08-01-preview' existing = { name: 'my-recipe-pack' } ``` Both properties are optional. When you create an Environment with the Radius CLI, an omitted `providers` defaults to Kubernetes in the `default` namespace, and an omitted `recipePacks` defaults to the `default` Recipe Pack in the `default` resource group. ## Deploying an Environment Deploy a defined Environment with the `rad deploy` command: ```bash rad deploy ./environment.bicep ``` ## Cloud providers To use Recipes that provision resources in a cloud provider, you must configure that provider's account details on the Environment by setting the `providers` property. For AWS, set the account ID and the region resources are deployed to: ```bicep extension radius resource myEnvironment 'Radius.Core/environments@2025-08-01-preview' = { name: 'my-environment' properties: { providers: { aws: { accountId: '123456789012' region: 'us-west-2' } } } } ``` For Azure, set the subscription ID and the name of the resource group that resources are deployed to: ```bicep extension radius resource myEnvironment 'Radius.Core/environments@2025-08-01-preview' = { name: 'my-environment' properties: { providers: { azure: { subscriptionId: '00000000-0000-0000-0000-000000000000' resourceGroupName: 'my-resource-group' } } } } ``` The `providers` property selects the target account, but the credentials Radius uses to authenticate to AWS and Azure are configured separately with the `rad credential register` command. ## Recipe Packs A Recipe Pack is a collection of Recipes, defined as a separate `Radius.Core/recipePacks` resource. A Recipe is an infrastructure-as-code module, a Terraform module or Bicep template, that provisions the infrastructure backing an application resource. Reference one or more Recipe Packs by their resource IDs in the `recipePacks` property to control which Recipes are used. See the `Radius.Core/recipePacks` documentation for details. Use `recipeParameters` to pass environment-specific parameters to the Recipes defined in the referenced Recipe Packs, for example to standardize configuration such as SKUs or instance sizes across an Environment. ## Advanced Terraform and Bicep settings For advanced Terraform and Bicep settings, such as private module sources and registry authentication, reference a `Radius.Core/terraformSettings` or `Radius.Core/bicepSettings` resource from the `terraformSettings` and `bicepSettings` properties.

func (*EnvironmentResource) ConvertFrom

func (dst *EnvironmentResource) ConvertFrom(src v1.DataModelInterface) error

ConvertFrom converts from version-agnostic datamodel to the versioned Environment resource.

func (*EnvironmentResource) ConvertTo

func (src *EnvironmentResource) ConvertTo() (v1.DataModelInterface, error)

ConvertTo converts from the versioned Environment resource to version-agnostic datamodel.

func (EnvironmentResource) MarshalJSON

func (e EnvironmentResource) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type EnvironmentResource.

func (*EnvironmentResource) UnmarshalJSON

func (e *EnvironmentResource) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type EnvironmentResource.

type EnvironmentResourceListResult

type EnvironmentResourceListResult struct {
	// REQUIRED; The EnvironmentResource items on this page
	Value []*EnvironmentResource

	// The link to the next page of items
	NextLink *string
}

EnvironmentResourceListResult - The response of a EnvironmentResource list operation.

func (EnvironmentResourceListResult) MarshalJSON

func (e EnvironmentResourceListResult) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type EnvironmentResourceListResult.

func (*EnvironmentResourceListResult) UnmarshalJSON

func (e *EnvironmentResourceListResult) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type EnvironmentResourceListResult.

type EnvironmentsClient

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

EnvironmentsClient contains the methods for the Environments group. Don't use this type directly, use NewEnvironmentsClient() instead.

Generated from API version 2025-08-01-preview

func NewEnvironmentsClient

func NewEnvironmentsClient(credential azcore.TokenCredential, options *arm.ClientOptions) (*EnvironmentsClient, error)

NewEnvironmentsClient creates a new instance of EnvironmentsClient with the specified values.

  • credential - used to authorize requests. Usually a credential from azidentity.
  • options - Contains optional client configuration. Pass nil to accept the default values.

func (*EnvironmentsClient) CreateOrUpdate

CreateOrUpdate - Create a EnvironmentResource If the operation fails it returns an *azcore.ResponseError type.

  • rootScope - The scope in which the resource is present. UCP Scope is /planes/{planeType}/{planeName}/resourceGroup/{resourcegroupID} and Azure resource scope is /subscriptions/{subscriptionID}/resourceGroup/{resourcegroupID}
  • environmentName - environment name
  • resource - Resource create parameters.
  • options - EnvironmentsClientCreateOrUpdateOptions contains the optional parameters for the EnvironmentsClient.CreateOrUpdate method.

func (*EnvironmentsClient) Delete

func (client *EnvironmentsClient) Delete(ctx context.Context, rootScope string, environmentName string, options *EnvironmentsClientDeleteOptions) (EnvironmentsClientDeleteResponse, error)

Delete - Delete a EnvironmentResource If the operation fails it returns an *azcore.ResponseError type.

  • rootScope - The scope in which the resource is present. UCP Scope is /planes/{planeType}/{planeName}/resourceGroup/{resourcegroupID} and Azure resource scope is /subscriptions/{subscriptionID}/resourceGroup/{resourcegroupID}
  • environmentName - environment name
  • options - EnvironmentsClientDeleteOptions contains the optional parameters for the EnvironmentsClient.Delete method.

func (*EnvironmentsClient) Get

func (client *EnvironmentsClient) Get(ctx context.Context, rootScope string, environmentName string, options *EnvironmentsClientGetOptions) (EnvironmentsClientGetResponse, error)

Get - Get a EnvironmentResource If the operation fails it returns an *azcore.ResponseError type.

  • rootScope - The scope in which the resource is present. UCP Scope is /planes/{planeType}/{planeName}/resourceGroup/{resourcegroupID} and Azure resource scope is /subscriptions/{subscriptionID}/resourceGroup/{resourcegroupID}
  • environmentName - environment name
  • options - EnvironmentsClientGetOptions contains the optional parameters for the EnvironmentsClient.Get method.

func (*EnvironmentsClient) NewListByScopePager

NewListByScopePager - List EnvironmentResource resources by Scope

  • rootScope - The scope in which the resource is present. UCP Scope is /planes/{planeType}/{planeName}/resourceGroup/{resourcegroupID} and Azure resource scope is /subscriptions/{subscriptionID}/resourceGroup/{resourcegroupID}
  • options - EnvironmentsClientListByScopeOptions contains the optional parameters for the EnvironmentsClient.NewListByScopePager method.

func (*EnvironmentsClient) Update

func (client *EnvironmentsClient) Update(ctx context.Context, rootScope string, environmentName string, properties EnvironmentResource, options *EnvironmentsClientUpdateOptions) (EnvironmentsClientUpdateResponse, error)

Update - Update a EnvironmentResource If the operation fails it returns an *azcore.ResponseError type.

  • rootScope - The scope in which the resource is present. UCP Scope is /planes/{planeType}/{planeName}/resourceGroup/{resourcegroupID} and Azure resource scope is /subscriptions/{subscriptionID}/resourceGroup/{resourcegroupID}
  • environmentName - environment name
  • properties - The resource properties to be updated.
  • options - EnvironmentsClientUpdateOptions contains the optional parameters for the EnvironmentsClient.Update method.

type EnvironmentsClientCreateOrUpdateOptions

type EnvironmentsClientCreateOrUpdateOptions struct {
}

EnvironmentsClientCreateOrUpdateOptions contains the optional parameters for the EnvironmentsClient.CreateOrUpdate method.

type EnvironmentsClientCreateOrUpdateResponse

type EnvironmentsClientCreateOrUpdateResponse struct {
	// The `Radius.Core/environments` Resource Type represents a Radius Environment: the deployment target that platform engineers
	// configure for their developers. Every Radius Application is deployed to an Environment through its `environment` property.
	// An Environment defines three things for the Applications deployed to it:
	// - **Where resources are deployed**: the target compute platform and cloud provider accounts, set through the `providers`
	// property.
	// - **Which Recipes are used**: the Recipe Packs whose Recipes provision the infrastructure backing application resources,
	// set through the `recipePacks` property.
	// - **Advanced Terraform and Bicep settings**: environment-wide Recipe parameters and Terraform or Bicep engine configuration
	// applied when Recipes run.
	// ## Defining an Environment
	// The simplest Environment can be created directly with the `rad environment create` command, without a Bicep file:
	// “`bash
	// rad environment create my-environment
	// “`
	// For more advanced configurations, define an Environment as a `Radius.Core/environments` resource in a Bicep file. For example:
	// “`bicep
	// extension radius
	// resource myEnvironment 'Radius.Core/environments@2025-08-01-preview' = {
	// name: 'my-environment'
	// properties: {
	// recipePacks: [
	// myRecipePack.id
	// ]
	// providers: {
	// kubernetes: {
	// namespace: 'my-namespace'
	// }
	// }
	// }
	// }
	// resource myRecipePack 'Radius.Core/recipePacks@2025-08-01-preview' existing = {
	// name: 'my-recipe-pack'
	// }
	// “`
	// Both properties are optional. When you create an Environment with the Radius CLI, an omitted `providers` defaults to Kubernetes
	// in the `default` namespace, and an omitted `recipePacks` defaults to the `default` Recipe Pack in the `default` resource
	// group.
	// ## Deploying an Environment
	// Deploy a defined Environment with the `rad deploy` command:
	// “`bash
	// rad deploy ./environment.bicep
	// “`
	// ## Cloud providers
	// To use Recipes that provision resources in a cloud provider, you must configure that provider's account details on the
	// Environment by setting the `providers` property. For AWS, set the account ID and the region resources are deployed to:
	// “`bicep
	// extension radius
	// resource myEnvironment 'Radius.Core/environments@2025-08-01-preview' = {
	// name: 'my-environment'
	// properties: {
	// providers: {
	// aws: {
	// accountId: '123456789012'
	// region: 'us-west-2'
	// }
	// }
	// }
	// }
	// “`
	// For Azure, set the subscription ID and the name of the resource group that resources are deployed to:
	// “`bicep
	// extension radius
	// resource myEnvironment 'Radius.Core/environments@2025-08-01-preview' = {
	// name: 'my-environment'
	// properties: {
	// providers: {
	// azure: {
	// subscriptionId: '00000000-0000-0000-0000-000000000000'
	// resourceGroupName: 'my-resource-group'
	// }
	// }
	// }
	// }
	// “`
	// The `providers` property selects the target account, but the credentials Radius uses to authenticate to AWS and Azure are
	// configured separately with the `rad credential register` command.
	// ## Recipe Packs
	// A Recipe Pack is a collection of Recipes, defined as a separate `Radius.Core/recipePacks` resource. A Recipe is an infrastructure-as-code
	// module, a Terraform module or Bicep template, that provisions the infrastructure backing an application resource. Reference
	// one or more Recipe Packs by their resource IDs in the `recipePacks` property to control which Recipes are used. See the
	// `Radius.Core/recipePacks` documentation for details.
	// Use `recipeParameters` to pass environment-specific parameters to the Recipes defined in the referenced Recipe Packs, for
	// example to standardize configuration such as SKUs or instance sizes across an Environment.
	// ## Advanced Terraform and Bicep settings
	// For advanced Terraform and Bicep settings, such as private module sources and registry authentication, reference a `Radius.Core/terraformSettings`
	// or `Radius.Core/bicepSettings` resource from the `terraformSettings` and `bicepSettings` properties.
	EnvironmentResource
}

EnvironmentsClientCreateOrUpdateResponse contains the response from method EnvironmentsClient.CreateOrUpdate.

type EnvironmentsClientDeleteOptions

type EnvironmentsClientDeleteOptions struct {
}

EnvironmentsClientDeleteOptions contains the optional parameters for the EnvironmentsClient.Delete method.

type EnvironmentsClientDeleteResponse

type EnvironmentsClientDeleteResponse struct {
}

EnvironmentsClientDeleteResponse contains the response from method EnvironmentsClient.Delete.

type EnvironmentsClientGetOptions

type EnvironmentsClientGetOptions struct {
}

EnvironmentsClientGetOptions contains the optional parameters for the EnvironmentsClient.Get method.

type EnvironmentsClientGetResponse

type EnvironmentsClientGetResponse struct {
	// The `Radius.Core/environments` Resource Type represents a Radius Environment: the deployment target that platform engineers
	// configure for their developers. Every Radius Application is deployed to an Environment through its `environment` property.
	// An Environment defines three things for the Applications deployed to it:
	// - **Where resources are deployed**: the target compute platform and cloud provider accounts, set through the `providers`
	// property.
	// - **Which Recipes are used**: the Recipe Packs whose Recipes provision the infrastructure backing application resources,
	// set through the `recipePacks` property.
	// - **Advanced Terraform and Bicep settings**: environment-wide Recipe parameters and Terraform or Bicep engine configuration
	// applied when Recipes run.
	// ## Defining an Environment
	// The simplest Environment can be created directly with the `rad environment create` command, without a Bicep file:
	// “`bash
	// rad environment create my-environment
	// “`
	// For more advanced configurations, define an Environment as a `Radius.Core/environments` resource in a Bicep file. For example:
	// “`bicep
	// extension radius
	// resource myEnvironment 'Radius.Core/environments@2025-08-01-preview' = {
	// name: 'my-environment'
	// properties: {
	// recipePacks: [
	// myRecipePack.id
	// ]
	// providers: {
	// kubernetes: {
	// namespace: 'my-namespace'
	// }
	// }
	// }
	// }
	// resource myRecipePack 'Radius.Core/recipePacks@2025-08-01-preview' existing = {
	// name: 'my-recipe-pack'
	// }
	// “`
	// Both properties are optional. When you create an Environment with the Radius CLI, an omitted `providers` defaults to Kubernetes
	// in the `default` namespace, and an omitted `recipePacks` defaults to the `default` Recipe Pack in the `default` resource
	// group.
	// ## Deploying an Environment
	// Deploy a defined Environment with the `rad deploy` command:
	// “`bash
	// rad deploy ./environment.bicep
	// “`
	// ## Cloud providers
	// To use Recipes that provision resources in a cloud provider, you must configure that provider's account details on the
	// Environment by setting the `providers` property. For AWS, set the account ID and the region resources are deployed to:
	// “`bicep
	// extension radius
	// resource myEnvironment 'Radius.Core/environments@2025-08-01-preview' = {
	// name: 'my-environment'
	// properties: {
	// providers: {
	// aws: {
	// accountId: '123456789012'
	// region: 'us-west-2'
	// }
	// }
	// }
	// }
	// “`
	// For Azure, set the subscription ID and the name of the resource group that resources are deployed to:
	// “`bicep
	// extension radius
	// resource myEnvironment 'Radius.Core/environments@2025-08-01-preview' = {
	// name: 'my-environment'
	// properties: {
	// providers: {
	// azure: {
	// subscriptionId: '00000000-0000-0000-0000-000000000000'
	// resourceGroupName: 'my-resource-group'
	// }
	// }
	// }
	// }
	// “`
	// The `providers` property selects the target account, but the credentials Radius uses to authenticate to AWS and Azure are
	// configured separately with the `rad credential register` command.
	// ## Recipe Packs
	// A Recipe Pack is a collection of Recipes, defined as a separate `Radius.Core/recipePacks` resource. A Recipe is an infrastructure-as-code
	// module, a Terraform module or Bicep template, that provisions the infrastructure backing an application resource. Reference
	// one or more Recipe Packs by their resource IDs in the `recipePacks` property to control which Recipes are used. See the
	// `Radius.Core/recipePacks` documentation for details.
	// Use `recipeParameters` to pass environment-specific parameters to the Recipes defined in the referenced Recipe Packs, for
	// example to standardize configuration such as SKUs or instance sizes across an Environment.
	// ## Advanced Terraform and Bicep settings
	// For advanced Terraform and Bicep settings, such as private module sources and registry authentication, reference a `Radius.Core/terraformSettings`
	// or `Radius.Core/bicepSettings` resource from the `terraformSettings` and `bicepSettings` properties.
	EnvironmentResource
}

EnvironmentsClientGetResponse contains the response from method EnvironmentsClient.Get.

type EnvironmentsClientListByScopeOptions

type EnvironmentsClientListByScopeOptions struct {
}

EnvironmentsClientListByScopeOptions contains the optional parameters for the EnvironmentsClient.NewListByScopePager method.

type EnvironmentsClientListByScopeResponse

type EnvironmentsClientListByScopeResponse struct {
	// The response of a EnvironmentResource list operation.
	EnvironmentResourceListResult
}

EnvironmentsClientListByScopeResponse contains the response from method EnvironmentsClient.NewListByScopePager.

type EnvironmentsClientUpdateOptions

type EnvironmentsClientUpdateOptions struct {
}

EnvironmentsClientUpdateOptions contains the optional parameters for the EnvironmentsClient.Update method.

type EnvironmentsClientUpdateResponse

type EnvironmentsClientUpdateResponse struct {
	// The `Radius.Core/environments` Resource Type represents a Radius Environment: the deployment target that platform engineers
	// configure for their developers. Every Radius Application is deployed to an Environment through its `environment` property.
	// An Environment defines three things for the Applications deployed to it:
	// - **Where resources are deployed**: the target compute platform and cloud provider accounts, set through the `providers`
	// property.
	// - **Which Recipes are used**: the Recipe Packs whose Recipes provision the infrastructure backing application resources,
	// set through the `recipePacks` property.
	// - **Advanced Terraform and Bicep settings**: environment-wide Recipe parameters and Terraform or Bicep engine configuration
	// applied when Recipes run.
	// ## Defining an Environment
	// The simplest Environment can be created directly with the `rad environment create` command, without a Bicep file:
	// “`bash
	// rad environment create my-environment
	// “`
	// For more advanced configurations, define an Environment as a `Radius.Core/environments` resource in a Bicep file. For example:
	// “`bicep
	// extension radius
	// resource myEnvironment 'Radius.Core/environments@2025-08-01-preview' = {
	// name: 'my-environment'
	// properties: {
	// recipePacks: [
	// myRecipePack.id
	// ]
	// providers: {
	// kubernetes: {
	// namespace: 'my-namespace'
	// }
	// }
	// }
	// }
	// resource myRecipePack 'Radius.Core/recipePacks@2025-08-01-preview' existing = {
	// name: 'my-recipe-pack'
	// }
	// “`
	// Both properties are optional. When you create an Environment with the Radius CLI, an omitted `providers` defaults to Kubernetes
	// in the `default` namespace, and an omitted `recipePacks` defaults to the `default` Recipe Pack in the `default` resource
	// group.
	// ## Deploying an Environment
	// Deploy a defined Environment with the `rad deploy` command:
	// “`bash
	// rad deploy ./environment.bicep
	// “`
	// ## Cloud providers
	// To use Recipes that provision resources in a cloud provider, you must configure that provider's account details on the
	// Environment by setting the `providers` property. For AWS, set the account ID and the region resources are deployed to:
	// “`bicep
	// extension radius
	// resource myEnvironment 'Radius.Core/environments@2025-08-01-preview' = {
	// name: 'my-environment'
	// properties: {
	// providers: {
	// aws: {
	// accountId: '123456789012'
	// region: 'us-west-2'
	// }
	// }
	// }
	// }
	// “`
	// For Azure, set the subscription ID and the name of the resource group that resources are deployed to:
	// “`bicep
	// extension radius
	// resource myEnvironment 'Radius.Core/environments@2025-08-01-preview' = {
	// name: 'my-environment'
	// properties: {
	// providers: {
	// azure: {
	// subscriptionId: '00000000-0000-0000-0000-000000000000'
	// resourceGroupName: 'my-resource-group'
	// }
	// }
	// }
	// }
	// “`
	// The `providers` property selects the target account, but the credentials Radius uses to authenticate to AWS and Azure are
	// configured separately with the `rad credential register` command.
	// ## Recipe Packs
	// A Recipe Pack is a collection of Recipes, defined as a separate `Radius.Core/recipePacks` resource. A Recipe is an infrastructure-as-code
	// module, a Terraform module or Bicep template, that provisions the infrastructure backing an application resource. Reference
	// one or more Recipe Packs by their resource IDs in the `recipePacks` property to control which Recipes are used. See the
	// `Radius.Core/recipePacks` documentation for details.
	// Use `recipeParameters` to pass environment-specific parameters to the Recipes defined in the referenced Recipe Packs, for
	// example to standardize configuration such as SKUs or instance sizes across an Environment.
	// ## Advanced Terraform and Bicep settings
	// For advanced Terraform and Bicep settings, such as private module sources and registry authentication, reference a `Radius.Core/terraformSettings`
	// or `Radius.Core/bicepSettings` resource from the `terraformSettings` and `bicepSettings` properties.
	EnvironmentResource
}

EnvironmentsClientUpdateResponse contains the response from method EnvironmentsClient.Update.

type GetGraphRequest added in v0.60.0

type GetGraphRequest struct {
	// Optional caller-supplied dependency edges, grouped by source resource ID. Each entry maps a source Radius resource ID to
	// the list of outbound Kind: Dependency edges leaving that source. Every entry MUST have direction: Outbound and kind: Dependency;
	// entries that don't are ignored. The server merges these onto the connection-only graph it computes from stored resources:
	// excluded types are dropped, unknown endpoints are dropped, and any pair already present as Kind: Connection wins over the
	// caller-supplied Dependency. Typically populated by `rad app graph -a <name> <app.bicep>` after compiling the Bicep template
	// locally.
	DependsOnEdges map[string][]*ApplicationGraphConnection

	// When true, `ApplicationGraphResponse.icons` is populated with the SVG bytes for every distinct `iconHash` referenced by
	// the response's resources. When false or omitted, only per-resource `iconHash` values are returned.
	IncludeIcons *bool
}

GetGraphRequest - Request body for the getGraph action.

func (GetGraphRequest) MarshalJSON added in v0.60.0

func (g GetGraphRequest) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type GetGraphRequest.

func (*GetGraphRequest) UnmarshalJSON added in v0.60.0

func (g *GetGraphRequest) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type GetGraphRequest.

type IdentitySettingKind

type IdentitySettingKind string

IdentitySettingKind - IdentitySettingKind is the kind of supported external identity setting

const (
	// IdentitySettingKindAzureComWorkload - azure ad workload identity
	IdentitySettingKindAzureComWorkload IdentitySettingKind = "azure.com.workload"
	// IdentitySettingKindSystemAssigned - System assigned managed identity
	IdentitySettingKindSystemAssigned IdentitySettingKind = "systemAssigned"
	// IdentitySettingKindSystemAssignedUserAssigned - System assigned and user assigned managed identity
	IdentitySettingKindSystemAssignedUserAssigned IdentitySettingKind = "systemAssignedUserAssigned"
	// IdentitySettingKindUndefined - undefined identity
	IdentitySettingKindUndefined IdentitySettingKind = "undefined"
	// IdentitySettingKindUserAssigned - User assigned managed identity
	IdentitySettingKindUserAssigned IdentitySettingKind = "userAssigned"
)

func PossibleIdentitySettingKindValues

func PossibleIdentitySettingKindValues() []IdentitySettingKind

PossibleIdentitySettingKindValues returns the possible values for the IdentitySettingKind const type.

type IdentitySettings

type IdentitySettings struct {
	// REQUIRED; kind of identity setting
	Kind *IdentitySettingKind

	// The list of user assigned managed identities
	ManagedIdentity []*string

	// The URI for your compute platform's OIDC issuer
	OidcIssuer *string

	// The resource ID of the provisioned identity
	Resource *string
}

IdentitySettings is the external identity setting.

func (IdentitySettings) MarshalJSON

func (i IdentitySettings) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type IdentitySettings.

func (*IdentitySettings) UnmarshalJSON

func (i *IdentitySettings) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type IdentitySettings.

type KubernetesCompute added in v0.53.0

type KubernetesCompute struct {
	// REQUIRED; The Kubernetes compute kind
	Kind *string

	// REQUIRED; The namespace to use for the environment.
	Namespace *string

	// Configuration for supported external identity providers
	Identity *IdentitySettings

	// The resource id of the compute resource for application environment.
	ResourceID *string
}

KubernetesCompute - The Kubernetes compute configuration

func (*KubernetesCompute) GetEnvironmentCompute added in v0.53.0

func (k *KubernetesCompute) GetEnvironmentCompute() *EnvironmentCompute

GetEnvironmentCompute implements the EnvironmentComputeClassification interface for type KubernetesCompute.

func (KubernetesCompute) MarshalJSON added in v0.53.0

func (k KubernetesCompute) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type KubernetesCompute.

func (*KubernetesCompute) UnmarshalJSON added in v0.53.0

func (k *KubernetesCompute) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type KubernetesCompute.

type Operation

type Operation struct {
	// Localized display information for this particular operation.
	Display *OperationDisplay

	// READ-ONLY; Extensible enum. Indicates the action type. "Internal" refers to actions that are for internal only APIs.
	ActionType *ActionType

	// READ-ONLY; Whether the operation applies to data-plane. This is "true" for data-plane operations and "false" for Azure
	// Resource Manager/control-plane operations.
	IsDataAction *bool

	// READ-ONLY; The name of the operation, as per Resource-Based Access Control (RBAC). Examples: "Microsoft.Compute/virtualMachines/write",
	// "Microsoft.Compute/virtualMachines/capture/action"
	Name *string

	// READ-ONLY; The intended executor of the operation; as in Resource Based Access Control (RBAC) and audit logs UX. Default
	// value is "user,system"
	Origin *Origin
}

Operation - REST API Operation

Details of a REST API operation, returned from the Resource Provider Operations API

func (Operation) MarshalJSON

func (o Operation) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type Operation.

func (*Operation) UnmarshalJSON

func (o *Operation) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type Operation.

type OperationDisplay

type OperationDisplay struct {
	// READ-ONLY; The short, localized friendly description of the operation; suitable for tool tips and detailed views.
	Description *string

	// READ-ONLY; The concise, localized friendly name for the operation; suitable for dropdowns. E.g. "Create or Update Virtual
	// Machine", "Restart Virtual Machine".
	Operation *string

	// READ-ONLY; The localized friendly form of the resource provider name, e.g. "Microsoft Monitoring Insights" or "Microsoft
	// Compute".
	Provider *string

	// READ-ONLY; The localized friendly name of the resource type related to this operation. E.g. "Virtual Machines" or "Job
	// Schedule Collections".
	Resource *string
}

OperationDisplay - Localized display information for an operation.

func (OperationDisplay) MarshalJSON

func (o OperationDisplay) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type OperationDisplay.

func (*OperationDisplay) UnmarshalJSON

func (o *OperationDisplay) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type OperationDisplay.

type OperationListResult

type OperationListResult struct {
	// REQUIRED; The Operation items on this page
	Value []*Operation

	// The link to the next page of items
	NextLink *string
}

OperationListResult - A list of REST API operations supported by an Azure Resource Provider. It contains an URL link to get the next set of results.

func (OperationListResult) MarshalJSON

func (o OperationListResult) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type OperationListResult.

func (*OperationListResult) UnmarshalJSON

func (o *OperationListResult) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type OperationListResult.

type OperationsClient

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

OperationsClient contains the methods for the Operations group. Don't use this type directly, use NewOperationsClient() instead.

Generated from API version 2025-08-01-preview

func NewOperationsClient

func NewOperationsClient(credential azcore.TokenCredential, options *arm.ClientOptions) (*OperationsClient, error)

NewOperationsClient creates a new instance of OperationsClient with the specified values.

  • credential - used to authorize requests. Usually a credential from azidentity.
  • options - Contains optional client configuration. Pass nil to accept the default values.

func (*OperationsClient) NewListPager

NewListPager - List the operations for the provider

  • options - OperationsClientListOptions contains the optional parameters for the OperationsClient.NewListPager method.

type OperationsClientListOptions

type OperationsClientListOptions struct {
}

OperationsClientListOptions contains the optional parameters for the OperationsClient.NewListPager method.

type OperationsClientListResponse

type OperationsClientListResponse struct {
	// A list of REST API operations supported by an Azure Resource Provider. It contains an URL link to get the next set of results.
	OperationListResult
}

OperationsClientListResponse contains the response from method OperationsClient.NewListPager.

type Origin

type Origin string

Origin - The intended executor of the operation; as in Resource Based Access Control (RBAC) and audit logs UX. Default value is "user,system"

const (
	// OriginSystem - Indicates the operation is initiated by a system.
	OriginSystem Origin = "system"
	// OriginUser - Indicates the operation is initiated by a user.
	OriginUser Origin = "user"
	// OriginUserSystem - Indicates the operation is initiated by a user or system.
	OriginUserSystem Origin = "user,system"
)

func PossibleOriginValues

func PossibleOriginValues() []Origin

PossibleOriginValues returns the possible values for the Origin const type.

type OutputResource added in v0.53.0

type OutputResource struct {
	// The UCP resource ID of the underlying resource.
	ID *string

	// The logical identifier scoped to the owning Radius resource. This is only needed or used when a resource has a dependency
	// relationship. LocalIDs do not have any particular format or meaning beyond being compared to determine dependency relationships.
	LocalID *string

	// Determines whether Radius manages the lifecycle of the underlying resource.
	RadiusManaged *bool
}

OutputResource - Properties of an output resource.

func (OutputResource) MarshalJSON added in v0.53.0

func (o OutputResource) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type OutputResource.

func (*OutputResource) UnmarshalJSON added in v0.53.0

func (o *OutputResource) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type OutputResource.

type Providers

type Providers struct {
	// (Optional) Configuration for deploying resources to AWS.
	Aws *ProvidersAws

	// (Optional) Configuration for deploying resources to Azure.
	Azure *ProvidersAzure

	// (Optional) Configuration for deploying resources to Kubernetes.
	Kubernetes *ProvidersKubernetes
}

func (Providers) MarshalJSON

func (p Providers) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type Providers.

func (*Providers) UnmarshalJSON

func (p *Providers) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type Providers.

type ProvidersAws

type ProvidersAws struct {
	// REQUIRED; (Required) ID of the AWS account that resources are deployed into.
	AccountID *string

	// REQUIRED; (Required) AWS region that resources are deployed into.
	Region *string
}

ProvidersAws - The AWS cloud provider definition.

func (ProvidersAws) MarshalJSON

func (p ProvidersAws) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ProvidersAws.

func (*ProvidersAws) UnmarshalJSON

func (p *ProvidersAws) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ProvidersAws.

type ProvidersAzure

type ProvidersAzure struct {
	// REQUIRED; (Required) ID of the Azure subscription that resources are deployed into.
	SubscriptionID *string

	// (Optional) Managed or workload identity Radius uses to authenticate to Azure when deploying resources.
	Identity *IdentitySettings

	// (Optional) Name of the Azure resource group that resources are deployed into. Most Bicep and Terraform Recipes expect a
	// resource group in the deployment context, so set this whenever deploying Azure resources.
	ResourceGroupName *string
}

ProvidersAzure - The Azure cloud provider definition.

func (ProvidersAzure) MarshalJSON

func (p ProvidersAzure) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ProvidersAzure.

func (*ProvidersAzure) UnmarshalJSON

func (p *ProvidersAzure) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ProvidersAzure.

type ProvidersKubernetes

type ProvidersKubernetes struct {
	// REQUIRED; (Required) Kubernetes namespace that workloads are deployed into.
	Namespace *string
}

func (ProvidersKubernetes) MarshalJSON

func (p ProvidersKubernetes) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ProvidersKubernetes.

func (*ProvidersKubernetes) UnmarshalJSON

func (p *ProvidersKubernetes) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ProvidersKubernetes.

type ProvisioningState

type ProvisioningState string

ProvisioningState - Provisioning state of the resource at the time the operation was called

const (
	// ProvisioningStateAccepted - The resource create request has been accepted
	ProvisioningStateAccepted ProvisioningState = "Accepted"
	// ProvisioningStateCanceled - The resource provisioning has been canceled
	ProvisioningStateCanceled ProvisioningState = "Canceled"
	// ProvisioningStateCreating - The resource is being created
	ProvisioningStateCreating ProvisioningState = "Creating"
	// ProvisioningStateDeleting - The resource is being deleted
	ProvisioningStateDeleting ProvisioningState = "Deleting"
	// ProvisioningStateFailed - The resource provisioning has failed
	ProvisioningStateFailed ProvisioningState = "Failed"
	// ProvisioningStateProvisioning - The resource is being provisioned
	ProvisioningStateProvisioning ProvisioningState = "Provisioning"
	// ProvisioningStateSucceeded - The resource has been successfully provisioned
	ProvisioningStateSucceeded ProvisioningState = "Succeeded"
	// ProvisioningStateUpdating - The resource is being updated
	ProvisioningStateUpdating ProvisioningState = "Updating"
)

func PossibleProvisioningStateValues

func PossibleProvisioningStateValues() []ProvisioningState

PossibleProvisioningStateValues returns the possible values for the ProvisioningState const type.

type RecipeDefinition added in v0.53.0

type RecipeDefinition struct {
	// REQUIRED; (Required) The kind of Recipe, which determines how Radius runs it.
	Kind *RecipeKind

	// REQUIRED; (Required) Location of the Recipe. For Bicep Recipes this is an OCI registry reference. For Terraform Recipes
	// this is the module source such as a Git URL or a Terraform registry module.
	Source *string

	// (Optional) Maps the module outputs onto the resource type properties for recipes that point directly at a Bicep or Terraform
	// module. Each value is the module output name for a non-secret property. Under the reserved `secrets` key a nested object
	// maps secret property names to module output names and always routes those outputs to the resource secret outputs.
	Outputs map[string]any

	// (Optional) Default parameter values passed to the Recipe when it runs. An Environment can override these per resource type
	// through its `recipeParameters` property.
	Parameters map[string]any

	// (Optional) Connect to the source using HTTP instead of HTTPS. Use this only when the source does not support HTTPS such
	// as a locally hosted registry for Bicep recipes. Defaults to `false` if not specified.
	PlainHTTP *bool
}

RecipeDefinition - Recipe definition for a specific resource type

func (RecipeDefinition) MarshalJSON added in v0.53.0

func (r RecipeDefinition) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type RecipeDefinition.

func (*RecipeDefinition) UnmarshalJSON added in v0.53.0

func (r *RecipeDefinition) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type RecipeDefinition.

type RecipeKind added in v0.53.0

type RecipeKind string

RecipeKind - The type of recipe

const (
	// RecipeKindBicep - Bicep recipe
	RecipeKindBicep RecipeKind = "bicep"
	// RecipeKindTerraform - Terraform recipe
	RecipeKindTerraform RecipeKind = "terraform"
)

func PossibleRecipeKindValues added in v0.53.0

func PossibleRecipeKindValues() []RecipeKind

PossibleRecipeKindValues returns the possible values for the RecipeKind const type.

type RecipePackProperties added in v0.53.0

type RecipePackProperties struct {
	// REQUIRED; (Required) The Recipes in this pack, keyed by the resource type each Recipe provisions. Each key is a resource
	// type such as `Radius.Data/redisCaches`.
	Recipes map[string]*RecipeDefinition

	// READ-ONLY; (Read Only) The status of the Recipe Pack resource within the Radius control plane.
	ProvisioningState *ProvisioningState

	// READ-ONLY; (Read Only) Resource IDs of the Environments that reference this Recipe Pack.
	ReferencedBy []*string
}

RecipePackProperties - Recipe Pack properties

func (RecipePackProperties) MarshalJSON added in v0.53.0

func (r RecipePackProperties) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type RecipePackProperties.

func (*RecipePackProperties) UnmarshalJSON added in v0.53.0

func (r *RecipePackProperties) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type RecipePackProperties.

type RecipePackResource added in v0.53.0

type RecipePackResource struct {
	// REQUIRED; The geo-location where the resource lives
	Location *string

	// REQUIRED; The resource-specific properties for this resource.
	Properties *RecipePackProperties

	// Resource tags.
	Tags map[string]*string

	// READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
	ID *string

	// READ-ONLY; The name of the resource
	Name *string

	// READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information.
	SystemData *SystemData

	// READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
	Type *string
}

RecipePackResource - The `Radius.Core/recipePacks` Resource Type represents a Recipe Pack: a named collection of Recipes that platform engineers assign to an Environment. A Recipe maps a resource type (such as `Radius.Data/redisCaches`) to an infrastructure-as-code module, a Terraform module or Bicep template, that provisions the infrastructure backing that resource when a developer deploys it. A Recipe Pack is defined as its own resource and referenced from an Environment's `recipePacks` property, so one Recipe Pack can be shared across many Environments. ## Defining a Recipe Pack Each entry in the `recipes` map is keyed by resource type. Set the recipe `kind` (`bicep` or `terraform`) and its `source` (an OCI registry reference for Bicep recipes, or a module source for Terraform recipes). ```bicep extension radius resource dataRecipes 'Radius.Core/recipePacks@2025-08-01-preview' = { name: 'data-recipes' properties: { recipes: { 'Radius.Data/redisCaches': { kind: 'bicep' source: 'ghcr.io/my-org/recipes/redis:latest' } 'Radius.Data/postgreSqlDatabases': { kind: 'terraform' source: 'git::https://github.com/my-org/recipes//postgresql' } } } } ``` ## Recipe parameters Each Recipe can declare default `parameters` that are passed to its module. Platform engineers set baseline values here, and developers get them automatically. An Environment can override these values per resource type through its `recipeParameters` property. ```bicep resource dataRecipes 'Radius.Core/recipePacks@2025-08-01-preview' = { name: 'data-recipes' properties: { recipes: { 'Radius.Data/redisCaches': { kind: 'bicep' source: 'ghcr.io/my-org/recipes/redis:latest' parameters: { sku: 'Standard' capacity: 1 } } } } } ``` ## Deploying a Recipe Pack Deploy the Bicep file with `rad deploy` to create the Recipe Pack resource. Once deployed, list and inspect Recipe Packs with the `rad recipe-pack list` and `rad recipe-pack show` commands. ## Referencing a Recipe Pack from an Environment An Environment references a Recipe Pack through its `recipePacks` property. When the Recipe Pack and the Environment are deployed to the same resource group, declare it as an `existing` resource and reference its `.id`: ```bicep extension radius resource dataRecipes 'Radius.Core/recipePacks@2025-08-01-preview' existing = { name: 'data-recipes' } resource myEnvironment 'Radius.Core/environments@2025-08-01-preview' = { name: 'my-environment' properties: { recipePacks: [ dataRecipes.id ] } } ``` To reference a Recipe Pack in a different resource group, use its full resource ID instead: ```bicep recipePacks: [ '/planes/radius/local/resourceGroups/shared/providers/Radius.Core/recipePacks/data-recipes' ] ``` Radius is installed with a `default` Recipe Pack in the `default` resource group. When you create an Environment with the Radius CLI and do not set `recipePacks`, the Environment uses this `default` Recipe Pack. Prebuilt Recipe Packs and the Recipes they reference are published in the [resource-types-contrib](https://github.com/radius-project/resource-types-contrib) repository.

func (*RecipePackResource) ConvertFrom added in v0.53.0

func (dst *RecipePackResource) ConvertFrom(src v1.DataModelInterface) error

ConvertFrom converts from version-agnostic datamodel to the versioned RecipePack resource.

func (*RecipePackResource) ConvertTo added in v0.53.0

func (src *RecipePackResource) ConvertTo() (v1.DataModelInterface, error)

ConvertTo converts from the versioned RecipePack resource to version-agnostic datamodel.

func (RecipePackResource) MarshalJSON added in v0.53.0

func (r RecipePackResource) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type RecipePackResource.

func (*RecipePackResource) UnmarshalJSON added in v0.53.0

func (r *RecipePackResource) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type RecipePackResource.

type RecipePackResourceListResult added in v0.53.0

type RecipePackResourceListResult struct {
	// REQUIRED; The RecipePackResource items on this page
	Value []*RecipePackResource

	// The link to the next page of items
	NextLink *string
}

RecipePackResourceListResult - The response of a RecipePackResource list operation.

func (RecipePackResourceListResult) MarshalJSON added in v0.53.0

func (r RecipePackResourceListResult) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type RecipePackResourceListResult.

func (*RecipePackResourceListResult) UnmarshalJSON added in v0.53.0

func (r *RecipePackResourceListResult) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type RecipePackResourceListResult.

type RecipePacksClient added in v0.53.0

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

RecipePacksClient contains the methods for the RecipePacks group. Don't use this type directly, use NewRecipePacksClient() instead.

Generated from API version 2025-08-01-preview

func NewRecipePacksClient added in v0.53.0

func NewRecipePacksClient(credential azcore.TokenCredential, options *arm.ClientOptions) (*RecipePacksClient, error)

NewRecipePacksClient creates a new instance of RecipePacksClient with the specified values.

  • credential - used to authorize requests. Usually a credential from azidentity.
  • options - Contains optional client configuration. Pass nil to accept the default values.

func (*RecipePacksClient) CreateOrUpdate added in v0.53.0

CreateOrUpdate - Create a RecipePackResource If the operation fails it returns an *azcore.ResponseError type.

  • rootScope - The scope in which the resource is present. UCP Scope is /planes/{planeType}/{planeName}/resourceGroup/{resourcegroupID} and Azure resource scope is /subscriptions/{subscriptionID}/resourceGroup/{resourcegroupID}
  • recipePackName - Recipe pack name
  • resource - Resource create parameters.
  • options - RecipePacksClientCreateOrUpdateOptions contains the optional parameters for the RecipePacksClient.CreateOrUpdate method.

func (*RecipePacksClient) Delete added in v0.53.0

func (client *RecipePacksClient) Delete(ctx context.Context, rootScope string, recipePackName string, options *RecipePacksClientDeleteOptions) (RecipePacksClientDeleteResponse, error)

Delete - Delete a RecipePackResource If the operation fails it returns an *azcore.ResponseError type.

  • rootScope - The scope in which the resource is present. UCP Scope is /planes/{planeType}/{planeName}/resourceGroup/{resourcegroupID} and Azure resource scope is /subscriptions/{subscriptionID}/resourceGroup/{resourcegroupID}
  • recipePackName - Recipe pack name
  • options - RecipePacksClientDeleteOptions contains the optional parameters for the RecipePacksClient.Delete method.

func (*RecipePacksClient) Get added in v0.53.0

func (client *RecipePacksClient) Get(ctx context.Context, rootScope string, recipePackName string, options *RecipePacksClientGetOptions) (RecipePacksClientGetResponse, error)

Get - Get a RecipePackResource If the operation fails it returns an *azcore.ResponseError type.

  • rootScope - The scope in which the resource is present. UCP Scope is /planes/{planeType}/{planeName}/resourceGroup/{resourcegroupID} and Azure resource scope is /subscriptions/{subscriptionID}/resourceGroup/{resourcegroupID}
  • recipePackName - Recipe pack name
  • options - RecipePacksClientGetOptions contains the optional parameters for the RecipePacksClient.Get method.

func (*RecipePacksClient) NewListByScopePager added in v0.53.0

NewListByScopePager - List RecipePackResource resources by Scope

  • rootScope - The scope in which the resource is present. UCP Scope is /planes/{planeType}/{planeName}/resourceGroup/{resourcegroupID} and Azure resource scope is /subscriptions/{subscriptionID}/resourceGroup/{resourcegroupID}
  • options - RecipePacksClientListByScopeOptions contains the optional parameters for the RecipePacksClient.NewListByScopePager method.

func (*RecipePacksClient) Update added in v0.53.0

func (client *RecipePacksClient) Update(ctx context.Context, rootScope string, recipePackName string, properties RecipePackResource, options *RecipePacksClientUpdateOptions) (RecipePacksClientUpdateResponse, error)

Update - Update a RecipePackResource If the operation fails it returns an *azcore.ResponseError type.

  • rootScope - The scope in which the resource is present. UCP Scope is /planes/{planeType}/{planeName}/resourceGroup/{resourcegroupID} and Azure resource scope is /subscriptions/{subscriptionID}/resourceGroup/{resourcegroupID}
  • recipePackName - Recipe pack name
  • properties - The resource properties to be updated.
  • options - RecipePacksClientUpdateOptions contains the optional parameters for the RecipePacksClient.Update method.

type RecipePacksClientCreateOrUpdateOptions added in v0.53.0

type RecipePacksClientCreateOrUpdateOptions struct {
}

RecipePacksClientCreateOrUpdateOptions contains the optional parameters for the RecipePacksClient.CreateOrUpdate method.

type RecipePacksClientCreateOrUpdateResponse added in v0.53.0

type RecipePacksClientCreateOrUpdateResponse struct {
	// The `Radius.Core/recipePacks` Resource Type represents a Recipe Pack: a named collection of Recipes that platform engineers
	// assign to an Environment. A Recipe maps a resource type (such as `Radius.Data/redisCaches`) to an infrastructure-as-code
	// module, a Terraform module or Bicep template, that provisions the infrastructure backing that resource when a developer
	// deploys it.
	// A Recipe Pack is defined as its own resource and referenced from an Environment's `recipePacks` property, so one Recipe
	// Pack can be shared across many Environments.
	// ## Defining a Recipe Pack
	// Each entry in the `recipes` map is keyed by resource type. Set the recipe `kind` (`bicep` or `terraform`) and its `source`
	// (an OCI registry reference for Bicep recipes, or a module source for Terraform recipes).
	// “`bicep
	// extension radius
	// resource dataRecipes 'Radius.Core/recipePacks@2025-08-01-preview' = {
	// name: 'data-recipes'
	// properties: {
	// recipes: {
	// 'Radius.Data/redisCaches': {
	// kind: 'bicep'
	// source: 'ghcr.io/my-org/recipes/redis:latest'
	// }
	// 'Radius.Data/postgreSqlDatabases': {
	// kind: 'terraform'
	// source: 'git::https://github.com/my-org/recipes//postgresql'
	// }
	// }
	// }
	// }
	// “`
	// ## Recipe parameters
	// Each Recipe can declare default `parameters` that are passed to its module. Platform engineers set baseline values here,
	// and developers get them automatically. An Environment can override these values per resource type through its `recipeParameters`
	// property.
	// “`bicep
	// resource dataRecipes 'Radius.Core/recipePacks@2025-08-01-preview' = {
	// name: 'data-recipes'
	// properties: {
	// recipes: {
	// 'Radius.Data/redisCaches': {
	// kind: 'bicep'
	// source: 'ghcr.io/my-org/recipes/redis:latest'
	// parameters: {
	// sku: 'Standard'
	// capacity: 1
	// }
	// }
	// }
	// }
	// }
	// “`
	// ## Deploying a Recipe Pack
	// Deploy the Bicep file with `rad deploy` to create the Recipe Pack resource. Once deployed, list and inspect Recipe Packs
	// with the `rad recipe-pack list` and `rad recipe-pack show` commands.
	// ## Referencing a Recipe Pack from an Environment
	// An Environment references a Recipe Pack through its `recipePacks` property. When the Recipe Pack and the Environment are
	// deployed to the same resource group, declare it as an `existing` resource and reference its `.id`:
	// “`bicep
	// extension radius
	// resource dataRecipes 'Radius.Core/recipePacks@2025-08-01-preview' existing = {
	// name: 'data-recipes'
	// }
	// resource myEnvironment 'Radius.Core/environments@2025-08-01-preview' = {
	// name: 'my-environment'
	// properties: {
	// recipePacks: [
	// dataRecipes.id
	// ]
	// }
	// }
	// “`
	// To reference a Recipe Pack in a different resource group, use its full resource ID instead:
	// “`bicep
	// recipePacks: [
	// '/planes/radius/local/resourceGroups/shared/providers/Radius.Core/recipePacks/data-recipes'
	// ]
	// “`
	// Radius is installed with a `default` Recipe Pack in the `default` resource group. When you create an Environment with the
	// Radius CLI and do not set `recipePacks`, the Environment uses this `default` Recipe Pack.
	// Prebuilt Recipe Packs and the Recipes they reference are published in the [resource-types-contrib](https://github.com/radius-project/resource-types-contrib)
	// repository.
	RecipePackResource
}

RecipePacksClientCreateOrUpdateResponse contains the response from method RecipePacksClient.CreateOrUpdate.

type RecipePacksClientDeleteOptions added in v0.53.0

type RecipePacksClientDeleteOptions struct {
}

RecipePacksClientDeleteOptions contains the optional parameters for the RecipePacksClient.Delete method.

type RecipePacksClientDeleteResponse added in v0.53.0

type RecipePacksClientDeleteResponse struct {
}

RecipePacksClientDeleteResponse contains the response from method RecipePacksClient.Delete.

type RecipePacksClientGetOptions added in v0.53.0

type RecipePacksClientGetOptions struct {
}

RecipePacksClientGetOptions contains the optional parameters for the RecipePacksClient.Get method.

type RecipePacksClientGetResponse added in v0.53.0

type RecipePacksClientGetResponse struct {
	// The `Radius.Core/recipePacks` Resource Type represents a Recipe Pack: a named collection of Recipes that platform engineers
	// assign to an Environment. A Recipe maps a resource type (such as `Radius.Data/redisCaches`) to an infrastructure-as-code
	// module, a Terraform module or Bicep template, that provisions the infrastructure backing that resource when a developer
	// deploys it.
	// A Recipe Pack is defined as its own resource and referenced from an Environment's `recipePacks` property, so one Recipe
	// Pack can be shared across many Environments.
	// ## Defining a Recipe Pack
	// Each entry in the `recipes` map is keyed by resource type. Set the recipe `kind` (`bicep` or `terraform`) and its `source`
	// (an OCI registry reference for Bicep recipes, or a module source for Terraform recipes).
	// “`bicep
	// extension radius
	// resource dataRecipes 'Radius.Core/recipePacks@2025-08-01-preview' = {
	// name: 'data-recipes'
	// properties: {
	// recipes: {
	// 'Radius.Data/redisCaches': {
	// kind: 'bicep'
	// source: 'ghcr.io/my-org/recipes/redis:latest'
	// }
	// 'Radius.Data/postgreSqlDatabases': {
	// kind: 'terraform'
	// source: 'git::https://github.com/my-org/recipes//postgresql'
	// }
	// }
	// }
	// }
	// “`
	// ## Recipe parameters
	// Each Recipe can declare default `parameters` that are passed to its module. Platform engineers set baseline values here,
	// and developers get them automatically. An Environment can override these values per resource type through its `recipeParameters`
	// property.
	// “`bicep
	// resource dataRecipes 'Radius.Core/recipePacks@2025-08-01-preview' = {
	// name: 'data-recipes'
	// properties: {
	// recipes: {
	// 'Radius.Data/redisCaches': {
	// kind: 'bicep'
	// source: 'ghcr.io/my-org/recipes/redis:latest'
	// parameters: {
	// sku: 'Standard'
	// capacity: 1
	// }
	// }
	// }
	// }
	// }
	// “`
	// ## Deploying a Recipe Pack
	// Deploy the Bicep file with `rad deploy` to create the Recipe Pack resource. Once deployed, list and inspect Recipe Packs
	// with the `rad recipe-pack list` and `rad recipe-pack show` commands.
	// ## Referencing a Recipe Pack from an Environment
	// An Environment references a Recipe Pack through its `recipePacks` property. When the Recipe Pack and the Environment are
	// deployed to the same resource group, declare it as an `existing` resource and reference its `.id`:
	// “`bicep
	// extension radius
	// resource dataRecipes 'Radius.Core/recipePacks@2025-08-01-preview' existing = {
	// name: 'data-recipes'
	// }
	// resource myEnvironment 'Radius.Core/environments@2025-08-01-preview' = {
	// name: 'my-environment'
	// properties: {
	// recipePacks: [
	// dataRecipes.id
	// ]
	// }
	// }
	// “`
	// To reference a Recipe Pack in a different resource group, use its full resource ID instead:
	// “`bicep
	// recipePacks: [
	// '/planes/radius/local/resourceGroups/shared/providers/Radius.Core/recipePacks/data-recipes'
	// ]
	// “`
	// Radius is installed with a `default` Recipe Pack in the `default` resource group. When you create an Environment with the
	// Radius CLI and do not set `recipePacks`, the Environment uses this `default` Recipe Pack.
	// Prebuilt Recipe Packs and the Recipes they reference are published in the [resource-types-contrib](https://github.com/radius-project/resource-types-contrib)
	// repository.
	RecipePackResource
}

RecipePacksClientGetResponse contains the response from method RecipePacksClient.Get.

type RecipePacksClientListByScopeOptions added in v0.53.0

type RecipePacksClientListByScopeOptions struct {
}

RecipePacksClientListByScopeOptions contains the optional parameters for the RecipePacksClient.NewListByScopePager method.

type RecipePacksClientListByScopeResponse added in v0.53.0

type RecipePacksClientListByScopeResponse struct {
	// The response of a RecipePackResource list operation.
	RecipePackResourceListResult
}

RecipePacksClientListByScopeResponse contains the response from method RecipePacksClient.NewListByScopePager.

type RecipePacksClientUpdateOptions added in v0.53.0

type RecipePacksClientUpdateOptions struct {
}

RecipePacksClientUpdateOptions contains the optional parameters for the RecipePacksClient.Update method.

type RecipePacksClientUpdateResponse added in v0.53.0

type RecipePacksClientUpdateResponse struct {
	// The `Radius.Core/recipePacks` Resource Type represents a Recipe Pack: a named collection of Recipes that platform engineers
	// assign to an Environment. A Recipe maps a resource type (such as `Radius.Data/redisCaches`) to an infrastructure-as-code
	// module, a Terraform module or Bicep template, that provisions the infrastructure backing that resource when a developer
	// deploys it.
	// A Recipe Pack is defined as its own resource and referenced from an Environment's `recipePacks` property, so one Recipe
	// Pack can be shared across many Environments.
	// ## Defining a Recipe Pack
	// Each entry in the `recipes` map is keyed by resource type. Set the recipe `kind` (`bicep` or `terraform`) and its `source`
	// (an OCI registry reference for Bicep recipes, or a module source for Terraform recipes).
	// “`bicep
	// extension radius
	// resource dataRecipes 'Radius.Core/recipePacks@2025-08-01-preview' = {
	// name: 'data-recipes'
	// properties: {
	// recipes: {
	// 'Radius.Data/redisCaches': {
	// kind: 'bicep'
	// source: 'ghcr.io/my-org/recipes/redis:latest'
	// }
	// 'Radius.Data/postgreSqlDatabases': {
	// kind: 'terraform'
	// source: 'git::https://github.com/my-org/recipes//postgresql'
	// }
	// }
	// }
	// }
	// “`
	// ## Recipe parameters
	// Each Recipe can declare default `parameters` that are passed to its module. Platform engineers set baseline values here,
	// and developers get them automatically. An Environment can override these values per resource type through its `recipeParameters`
	// property.
	// “`bicep
	// resource dataRecipes 'Radius.Core/recipePacks@2025-08-01-preview' = {
	// name: 'data-recipes'
	// properties: {
	// recipes: {
	// 'Radius.Data/redisCaches': {
	// kind: 'bicep'
	// source: 'ghcr.io/my-org/recipes/redis:latest'
	// parameters: {
	// sku: 'Standard'
	// capacity: 1
	// }
	// }
	// }
	// }
	// }
	// “`
	// ## Deploying a Recipe Pack
	// Deploy the Bicep file with `rad deploy` to create the Recipe Pack resource. Once deployed, list and inspect Recipe Packs
	// with the `rad recipe-pack list` and `rad recipe-pack show` commands.
	// ## Referencing a Recipe Pack from an Environment
	// An Environment references a Recipe Pack through its `recipePacks` property. When the Recipe Pack and the Environment are
	// deployed to the same resource group, declare it as an `existing` resource and reference its `.id`:
	// “`bicep
	// extension radius
	// resource dataRecipes 'Radius.Core/recipePacks@2025-08-01-preview' existing = {
	// name: 'data-recipes'
	// }
	// resource myEnvironment 'Radius.Core/environments@2025-08-01-preview' = {
	// name: 'my-environment'
	// properties: {
	// recipePacks: [
	// dataRecipes.id
	// ]
	// }
	// }
	// “`
	// To reference a Recipe Pack in a different resource group, use its full resource ID instead:
	// “`bicep
	// recipePacks: [
	// '/planes/radius/local/resourceGroups/shared/providers/Radius.Core/recipePacks/data-recipes'
	// ]
	// “`
	// Radius is installed with a `default` Recipe Pack in the `default` resource group. When you create an Environment with the
	// Radius CLI and do not set `recipePacks`, the Environment uses this `default` Recipe Pack.
	// Prebuilt Recipe Packs and the Recipes they reference are published in the [resource-types-contrib](https://github.com/radius-project/resource-types-contrib)
	// repository.
	RecipePackResource
}

RecipePacksClientUpdateResponse contains the response from method RecipePacksClient.Update.

type RecipeParameterValue added in v0.60.0

type RecipeParameterValue struct {
	AdditionalProperties map[string]any
}

RecipeParameterValue - Recipe parameter configuration for a specific resource type.

func (RecipeParameterValue) MarshalJSON added in v0.60.0

func (r RecipeParameterValue) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type RecipeParameterValue.

func (*RecipeParameterValue) UnmarshalJSON added in v0.60.0

func (r *RecipeParameterValue) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type RecipeParameterValue.

type RecipeStatus added in v0.53.0

type RecipeStatus struct {
	// REQUIRED; TemplateKind is the kind of the recipe template used by the portable resource upon deployment.
	TemplateKind *string

	// REQUIRED; TemplatePath is the path of the recipe consumed by the portable resource upon deployment.
	TemplatePath *string

	// TemplateVersion is the version number of the template.
	TemplateVersion *string
}

RecipeStatus - Recipe status at deployment time for a resource.

func (RecipeStatus) MarshalJSON added in v0.53.0

func (r RecipeStatus) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type RecipeStatus.

func (*RecipeStatus) UnmarshalJSON added in v0.53.0

func (r *RecipeStatus) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type RecipeStatus.

type ResourceStatus added in v0.53.0

type ResourceStatus struct {
	// The compute resource associated with the resource.
	Compute EnvironmentComputeClassification

	// Properties of an output resource
	OutputResources []*OutputResource

	// READ-ONLY; The recipe data at the time of deployment
	Recipe *RecipeStatus
}

ResourceStatus - Status of a resource.

func (ResourceStatus) MarshalJSON added in v0.53.0

func (r ResourceStatus) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ResourceStatus.

func (*ResourceStatus) UnmarshalJSON added in v0.53.0

func (r *ResourceStatus) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ResourceStatus.

type SystemData

type SystemData struct {
	// The timestamp of resource creation (UTC).
	CreatedAt *time.Time

	// The identity that created the resource.
	CreatedBy *string

	// The type of identity that created the resource.
	CreatedByType *CreatedByType

	// The timestamp of resource last modification (UTC)
	LastModifiedAt *time.Time

	// The identity that last modified the resource.
	LastModifiedBy *string

	// The type of identity that last modified the resource.
	LastModifiedByType *CreatedByType
}

SystemData - Metadata pertaining to creation and last modification of the resource.

func (SystemData) MarshalJSON

func (s SystemData) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type SystemData.

func (*SystemData) UnmarshalJSON

func (s *SystemData) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type SystemData.

type TerraformCredentialConfig added in v0.58.0

type TerraformCredentialConfig struct {
	// (Optional) The ID of a `Radius.Security/secrets` resource containing the authentication token. The secret must have a key
	// named `token`.
	Secret *string
}

TerraformCredentialConfig - Credential configuration for a Terraform registry or module source host.

func (TerraformCredentialConfig) MarshalJSON added in v0.58.0

func (t TerraformCredentialConfig) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type TerraformCredentialConfig.

func (*TerraformCredentialConfig) UnmarshalJSON added in v0.58.0

func (t *TerraformCredentialConfig) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type TerraformCredentialConfig.

type TerraformProviderDirect added in v0.58.0

type TerraformProviderDirect struct {
	// (Optional) Provider address patterns to exclude from direct installation.
	Exclude []*string

	// (Optional) Provider address patterns to include for direct installation.
	Include []*string
}

TerraformProviderDirect - Direct provider installation configuration.

func (TerraformProviderDirect) MarshalJSON added in v0.58.0

func (t TerraformProviderDirect) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type TerraformProviderDirect.

func (*TerraformProviderDirect) UnmarshalJSON added in v0.58.0

func (t *TerraformProviderDirect) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type TerraformProviderDirect.

type TerraformProviderInstallation added in v0.58.0

type TerraformProviderInstallation struct {
	// (Optional) Providers to install directly from the public registry rather than a mirror.
	Direct *TerraformProviderDirect

	// (Optional) A network mirror to install providers from instead of the public registry.
	NetworkMirror *TerraformProviderMirror
}

TerraformProviderInstallation - Provider installation configuration for Terraform CLI.

func (TerraformProviderInstallation) MarshalJSON added in v0.58.0

func (t TerraformProviderInstallation) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type TerraformProviderInstallation.

func (*TerraformProviderInstallation) UnmarshalJSON added in v0.58.0

func (t *TerraformProviderInstallation) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type TerraformProviderInstallation.

type TerraformProviderMirror added in v0.58.0

type TerraformProviderMirror struct {
	// (Optional) Provider address patterns to exclude from this mirror.
	Exclude []*string

	// (Optional) Provider address patterns to include from this mirror.
	Include []*string

	// (Optional) The URL of the provider mirror.
	URL *string
}

TerraformProviderMirror - Network mirror configuration for Terraform providers.

func (TerraformProviderMirror) MarshalJSON added in v0.58.0

func (t TerraformProviderMirror) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type TerraformProviderMirror.

func (*TerraformProviderMirror) UnmarshalJSON added in v0.58.0

func (t *TerraformProviderMirror) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type TerraformProviderMirror.

type TerraformSettingsClient added in v0.60.0

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

TerraformSettingsClient contains the methods for the TerraformSettings group. Don't use this type directly, use NewTerraformSettingsClient() instead.

Generated from API version 2025-08-01-preview

func NewTerraformSettingsClient added in v0.60.0

func NewTerraformSettingsClient(credential azcore.TokenCredential, options *arm.ClientOptions) (*TerraformSettingsClient, error)

NewTerraformSettingsClient creates a new instance of TerraformSettingsClient with the specified values.

  • credential - used to authorize requests. Usually a credential from azidentity.
  • options - Contains optional client configuration. Pass nil to accept the default values.

func (*TerraformSettingsClient) CreateOrUpdate added in v0.60.0

CreateOrUpdate - Create a TerraformSettingsResource If the operation fails it returns an *azcore.ResponseError type.

  • rootScope - The scope in which the resource is present. UCP Scope is /planes/{planeType}/{planeName}/resourceGroup/{resourcegroupID} and Azure resource scope is /subscriptions/{subscriptionID}/resourceGroup/{resourcegroupID}
  • terraformSettingsName - Terraform settings name
  • resource - Resource create parameters.
  • options - TerraformSettingsClientCreateOrUpdateOptions contains the optional parameters for the TerraformSettingsClient.CreateOrUpdate method.

func (*TerraformSettingsClient) Delete added in v0.60.0

Delete - Delete a TerraformSettingsResource If the operation fails it returns an *azcore.ResponseError type.

  • rootScope - The scope in which the resource is present. UCP Scope is /planes/{planeType}/{planeName}/resourceGroup/{resourcegroupID} and Azure resource scope is /subscriptions/{subscriptionID}/resourceGroup/{resourcegroupID}
  • terraformSettingsName - Terraform settings name
  • options - TerraformSettingsClientDeleteOptions contains the optional parameters for the TerraformSettingsClient.Delete method.

func (*TerraformSettingsClient) Get added in v0.60.0

Get - Get a TerraformSettingsResource If the operation fails it returns an *azcore.ResponseError type.

  • rootScope - The scope in which the resource is present. UCP Scope is /planes/{planeType}/{planeName}/resourceGroup/{resourcegroupID} and Azure resource scope is /subscriptions/{subscriptionID}/resourceGroup/{resourcegroupID}
  • terraformSettingsName - Terraform settings name
  • options - TerraformSettingsClientGetOptions contains the optional parameters for the TerraformSettingsClient.Get method.

func (*TerraformSettingsClient) NewListByScopePager added in v0.60.0

NewListByScopePager - List TerraformSettingsResource resources by Scope

  • rootScope - The scope in which the resource is present. UCP Scope is /planes/{planeType}/{planeName}/resourceGroup/{resourcegroupID} and Azure resource scope is /subscriptions/{subscriptionID}/resourceGroup/{resourcegroupID}
  • options - TerraformSettingsClientListByScopeOptions contains the optional parameters for the TerraformSettingsClient.NewListByScopePager method.

func (*TerraformSettingsClient) Update added in v0.60.0

Update - Update a TerraformSettingsResource If the operation fails it returns an *azcore.ResponseError type.

  • rootScope - The scope in which the resource is present. UCP Scope is /planes/{planeType}/{planeName}/resourceGroup/{resourcegroupID} and Azure resource scope is /subscriptions/{subscriptionID}/resourceGroup/{resourcegroupID}
  • terraformSettingsName - Terraform settings name
  • properties - The resource properties to be updated.
  • options - TerraformSettingsClientUpdateOptions contains the optional parameters for the TerraformSettingsClient.Update method.

type TerraformSettingsClientCreateOrUpdateOptions added in v0.60.0

type TerraformSettingsClientCreateOrUpdateOptions struct {
}

TerraformSettingsClientCreateOrUpdateOptions contains the optional parameters for the TerraformSettingsClient.CreateOrUpdate method.

type TerraformSettingsClientCreateOrUpdateResponse added in v0.60.0

type TerraformSettingsClientCreateOrUpdateResponse struct {
	// The `Radius.Core/terraformSettings` Resource Type holds reusable Terraform CLI settings that Environments apply when running
	// Terraform Recipes. Its primary use is authenticating to private Terraform registries that host the modules referenced by
	// a Recipe Pack, along with configuring provider installation and injecting environment variables during Recipe execution.
	// Platform engineers define a `Radius.Core/terraformSettings` resource once and reference it from any Environment whose Recipes
	// pull modules from a private registry.
	// ## Defining Terraform settings
	// Configure `terraformrc.credentials`, keyed by registry hostname, to authenticate to a private Terraform registry. Each
	// entry points to a secret whose `token` key holds the registry token:
	// “`bicep
	// extension radius
	// @description('The Radius Environment ID. Injected automatically by the rad CLI.')
	// param environment string
	// resource registrySecret 'Radius.Security/secrets@2025-08-01-preview' = {
	// name: 'terraform-registry-token'
	// properties: {
	// environment: environment
	// data: {
	// token: { value: 'my-registry-token' }
	// }
	// }
	// }
	// resource terraformRegistry 'Radius.Core/terraformSettings@2025-08-01-preview' = {
	// name: 'private-registry'
	// properties: {
	// terraformrc: {
	// credentials: {
	// 'app.terraform.io': {
	// secret: registrySecret.id
	// }
	// }
	// }
	// }
	// }
	// “`
	// Two other settings are available: provider installation and environment variables.
	// ### Provider installation
	// In air-gapped or internal environments, use `terraformrc.providerInstallation` to install providers from a network mirror
	// instead of the public registry. Set the mirror `url`, optionally narrow it with `include` or `exclude` provider address
	// patterns, and use `direct` to control which providers are still downloaded directly:
	// “`bicep
	// resource providerMirror 'Radius.Core/terraformSettings@2025-08-01-preview' = {
	// name: 'internal-mirror'
	// properties: {
	// terraformrc: {
	// providerInstallation: {
	// networkMirror: {
	// url: 'https://terraform.corp.example.com/providers/'
	// include: ['*']
	// }
	// direct: {
	// exclude: ['*']
	// }
	// }
	// }
	// }
	// }
	// “`
	// ### Environment variables
	// Use `env` to inject environment variables into every Terraform Recipe run, for example to raise the Terraform log level
	// for troubleshooting or to tune CLI behavior:
	// “`bicep
	// resource terraformLogging 'Radius.Core/terraformSettings@2025-08-01-preview' = {
	// name: 'terraform-logging'
	// properties: {
	// env: {
	// TF_LOG: 'TRACE'
	// TF_REGISTRY_CLIENT_TIMEOUT: '15'
	// }
	// }
	// }
	// “`
	// ## Deploying Terraform settings
	// Deploy the settings resource with the `rad deploy` command:
	// “`bash
	// rad deploy ./terraform-settings.bicep
	// “`
	// ## Referencing Terraform settings from an Environment
	// Reference the settings from an Environment by setting its `terraformSettings` property to the resource ID. Every Terraform
	// Recipe run in that Environment then uses the configured registry credentials:
	// “`bicep
	// extension radius
	// resource terraformRegistry 'Radius.Core/terraformSettings@2025-08-01-preview' existing = {
	// name: 'private-registry'
	// }
	// resource myEnvironment 'Radius.Core/environments@2025-08-01-preview' = {
	// name: 'my-environment'
	// properties: {
	// terraformSettings: terraformRegistry.id
	// }
	// }
	// “`
	TerraformSettingsResource
}

TerraformSettingsClientCreateOrUpdateResponse contains the response from method TerraformSettingsClient.CreateOrUpdate.

type TerraformSettingsClientDeleteOptions added in v0.60.0

type TerraformSettingsClientDeleteOptions struct {
}

TerraformSettingsClientDeleteOptions contains the optional parameters for the TerraformSettingsClient.Delete method.

type TerraformSettingsClientDeleteResponse added in v0.60.0

type TerraformSettingsClientDeleteResponse struct {
}

TerraformSettingsClientDeleteResponse contains the response from method TerraformSettingsClient.Delete.

type TerraformSettingsClientGetOptions added in v0.60.0

type TerraformSettingsClientGetOptions struct {
}

TerraformSettingsClientGetOptions contains the optional parameters for the TerraformSettingsClient.Get method.

type TerraformSettingsClientGetResponse added in v0.60.0

type TerraformSettingsClientGetResponse struct {
	// The `Radius.Core/terraformSettings` Resource Type holds reusable Terraform CLI settings that Environments apply when running
	// Terraform Recipes. Its primary use is authenticating to private Terraform registries that host the modules referenced by
	// a Recipe Pack, along with configuring provider installation and injecting environment variables during Recipe execution.
	// Platform engineers define a `Radius.Core/terraformSettings` resource once and reference it from any Environment whose Recipes
	// pull modules from a private registry.
	// ## Defining Terraform settings
	// Configure `terraformrc.credentials`, keyed by registry hostname, to authenticate to a private Terraform registry. Each
	// entry points to a secret whose `token` key holds the registry token:
	// “`bicep
	// extension radius
	// @description('The Radius Environment ID. Injected automatically by the rad CLI.')
	// param environment string
	// resource registrySecret 'Radius.Security/secrets@2025-08-01-preview' = {
	// name: 'terraform-registry-token'
	// properties: {
	// environment: environment
	// data: {
	// token: { value: 'my-registry-token' }
	// }
	// }
	// }
	// resource terraformRegistry 'Radius.Core/terraformSettings@2025-08-01-preview' = {
	// name: 'private-registry'
	// properties: {
	// terraformrc: {
	// credentials: {
	// 'app.terraform.io': {
	// secret: registrySecret.id
	// }
	// }
	// }
	// }
	// }
	// “`
	// Two other settings are available: provider installation and environment variables.
	// ### Provider installation
	// In air-gapped or internal environments, use `terraformrc.providerInstallation` to install providers from a network mirror
	// instead of the public registry. Set the mirror `url`, optionally narrow it with `include` or `exclude` provider address
	// patterns, and use `direct` to control which providers are still downloaded directly:
	// “`bicep
	// resource providerMirror 'Radius.Core/terraformSettings@2025-08-01-preview' = {
	// name: 'internal-mirror'
	// properties: {
	// terraformrc: {
	// providerInstallation: {
	// networkMirror: {
	// url: 'https://terraform.corp.example.com/providers/'
	// include: ['*']
	// }
	// direct: {
	// exclude: ['*']
	// }
	// }
	// }
	// }
	// }
	// “`
	// ### Environment variables
	// Use `env` to inject environment variables into every Terraform Recipe run, for example to raise the Terraform log level
	// for troubleshooting or to tune CLI behavior:
	// “`bicep
	// resource terraformLogging 'Radius.Core/terraformSettings@2025-08-01-preview' = {
	// name: 'terraform-logging'
	// properties: {
	// env: {
	// TF_LOG: 'TRACE'
	// TF_REGISTRY_CLIENT_TIMEOUT: '15'
	// }
	// }
	// }
	// “`
	// ## Deploying Terraform settings
	// Deploy the settings resource with the `rad deploy` command:
	// “`bash
	// rad deploy ./terraform-settings.bicep
	// “`
	// ## Referencing Terraform settings from an Environment
	// Reference the settings from an Environment by setting its `terraformSettings` property to the resource ID. Every Terraform
	// Recipe run in that Environment then uses the configured registry credentials:
	// “`bicep
	// extension radius
	// resource terraformRegistry 'Radius.Core/terraformSettings@2025-08-01-preview' existing = {
	// name: 'private-registry'
	// }
	// resource myEnvironment 'Radius.Core/environments@2025-08-01-preview' = {
	// name: 'my-environment'
	// properties: {
	// terraformSettings: terraformRegistry.id
	// }
	// }
	// “`
	TerraformSettingsResource
}

TerraformSettingsClientGetResponse contains the response from method TerraformSettingsClient.Get.

type TerraformSettingsClientListByScopeOptions added in v0.60.0

type TerraformSettingsClientListByScopeOptions struct {
}

TerraformSettingsClientListByScopeOptions contains the optional parameters for the TerraformSettingsClient.NewListByScopePager method.

type TerraformSettingsClientListByScopeResponse added in v0.60.0

type TerraformSettingsClientListByScopeResponse struct {
	// The response of a TerraformSettingsResource list operation.
	TerraformSettingsResourceListResult
}

TerraformSettingsClientListByScopeResponse contains the response from method TerraformSettingsClient.NewListByScopePager.

type TerraformSettingsClientUpdateOptions added in v0.60.0

type TerraformSettingsClientUpdateOptions struct {
}

TerraformSettingsClientUpdateOptions contains the optional parameters for the TerraformSettingsClient.Update method.

type TerraformSettingsClientUpdateResponse added in v0.60.0

type TerraformSettingsClientUpdateResponse struct {
	// The `Radius.Core/terraformSettings` Resource Type holds reusable Terraform CLI settings that Environments apply when running
	// Terraform Recipes. Its primary use is authenticating to private Terraform registries that host the modules referenced by
	// a Recipe Pack, along with configuring provider installation and injecting environment variables during Recipe execution.
	// Platform engineers define a `Radius.Core/terraformSettings` resource once and reference it from any Environment whose Recipes
	// pull modules from a private registry.
	// ## Defining Terraform settings
	// Configure `terraformrc.credentials`, keyed by registry hostname, to authenticate to a private Terraform registry. Each
	// entry points to a secret whose `token` key holds the registry token:
	// “`bicep
	// extension radius
	// @description('The Radius Environment ID. Injected automatically by the rad CLI.')
	// param environment string
	// resource registrySecret 'Radius.Security/secrets@2025-08-01-preview' = {
	// name: 'terraform-registry-token'
	// properties: {
	// environment: environment
	// data: {
	// token: { value: 'my-registry-token' }
	// }
	// }
	// }
	// resource terraformRegistry 'Radius.Core/terraformSettings@2025-08-01-preview' = {
	// name: 'private-registry'
	// properties: {
	// terraformrc: {
	// credentials: {
	// 'app.terraform.io': {
	// secret: registrySecret.id
	// }
	// }
	// }
	// }
	// }
	// “`
	// Two other settings are available: provider installation and environment variables.
	// ### Provider installation
	// In air-gapped or internal environments, use `terraformrc.providerInstallation` to install providers from a network mirror
	// instead of the public registry. Set the mirror `url`, optionally narrow it with `include` or `exclude` provider address
	// patterns, and use `direct` to control which providers are still downloaded directly:
	// “`bicep
	// resource providerMirror 'Radius.Core/terraformSettings@2025-08-01-preview' = {
	// name: 'internal-mirror'
	// properties: {
	// terraformrc: {
	// providerInstallation: {
	// networkMirror: {
	// url: 'https://terraform.corp.example.com/providers/'
	// include: ['*']
	// }
	// direct: {
	// exclude: ['*']
	// }
	// }
	// }
	// }
	// }
	// “`
	// ### Environment variables
	// Use `env` to inject environment variables into every Terraform Recipe run, for example to raise the Terraform log level
	// for troubleshooting or to tune CLI behavior:
	// “`bicep
	// resource terraformLogging 'Radius.Core/terraformSettings@2025-08-01-preview' = {
	// name: 'terraform-logging'
	// properties: {
	// env: {
	// TF_LOG: 'TRACE'
	// TF_REGISTRY_CLIENT_TIMEOUT: '15'
	// }
	// }
	// }
	// “`
	// ## Deploying Terraform settings
	// Deploy the settings resource with the `rad deploy` command:
	// “`bash
	// rad deploy ./terraform-settings.bicep
	// “`
	// ## Referencing Terraform settings from an Environment
	// Reference the settings from an Environment by setting its `terraformSettings` property to the resource ID. Every Terraform
	// Recipe run in that Environment then uses the configured registry credentials:
	// “`bicep
	// extension radius
	// resource terraformRegistry 'Radius.Core/terraformSettings@2025-08-01-preview' existing = {
	// name: 'private-registry'
	// }
	// resource myEnvironment 'Radius.Core/environments@2025-08-01-preview' = {
	// name: 'my-environment'
	// properties: {
	// terraformSettings: terraformRegistry.id
	// }
	// }
	// “`
	TerraformSettingsResource
}

TerraformSettingsClientUpdateResponse contains the response from method TerraformSettingsClient.Update.

type TerraformSettingsProperties added in v0.60.0

type TerraformSettingsProperties struct {
	// (Optional) Environment variables injected into the Terraform process during Recipe execution.
	Env map[string]*string

	// (Optional) Settings for the Terraform CLI configuration file. Radius renders these into a `.terraformrc` file used when
	// running Terraform Recipes.
	Terraformrc *TerraformrcConfig

	// READ-ONLY; (Read Only) The status of the Terraform settings resource within the Radius control plane.
	ProvisioningState *ProvisioningState

	// READ-ONLY; (Read Only) Resource IDs of the Environments that reference this Terraform settings resource.
	ReferencedBy []*string
}

TerraformSettingsProperties - Terraform settings properties.

func (TerraformSettingsProperties) MarshalJSON added in v0.60.0

func (t TerraformSettingsProperties) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type TerraformSettingsProperties.

func (*TerraformSettingsProperties) UnmarshalJSON added in v0.60.0

func (t *TerraformSettingsProperties) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type TerraformSettingsProperties.

type TerraformSettingsResource added in v0.60.0

type TerraformSettingsResource struct {
	// REQUIRED; The geo-location where the resource lives
	Location *string

	// REQUIRED; The resource-specific properties for this resource.
	Properties *TerraformSettingsProperties

	// Resource tags.
	Tags map[string]*string

	// READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
	ID *string

	// READ-ONLY; The name of the resource
	Name *string

	// READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information.
	SystemData *SystemData

	// READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
	Type *string
}

TerraformSettingsResource - The `Radius.Core/terraformSettings` Resource Type holds reusable Terraform CLI settings that Environments apply when running Terraform Recipes. Its primary use is authenticating to private Terraform registries that host the modules referenced by a Recipe Pack, along with configuring provider installation and injecting environment variables during Recipe execution. Platform engineers define a `Radius.Core/terraformSettings` resource once and reference it from any Environment whose Recipes pull modules from a private registry. ## Defining Terraform settings Configure `terraformrc.credentials`, keyed by registry hostname, to authenticate to a private Terraform registry. Each entry points to a secret whose `token` key holds the registry token: ```bicep extension radius @description('The Radius Environment ID. Injected automatically by the rad CLI.') param environment string resource registrySecret 'Radius.Security/secrets@2025-08-01-preview' = { name: 'terraform-registry-token' properties: { environment: environment data: { token: { value: 'my-registry-token' } } } } resource terraformRegistry 'Radius.Core/terraformSettings@2025-08-01-preview' = { name: 'private-registry' properties: { terraformrc: { credentials: { 'app.terraform.io': { secret: registrySecret.id } } } } } ``` Two other settings are available: provider installation and environment variables. ### Provider installation In air-gapped or internal environments, use `terraformrc.providerInstallation` to install providers from a network mirror instead of the public registry. Set the mirror `url`, optionally narrow it with `include` or `exclude` provider address patterns, and use `direct` to control which providers are still downloaded directly: ```bicep resource providerMirror 'Radius.Core/terraformSettings@2025-08-01-preview' = { name: 'internal-mirror' properties: { terraformrc: { providerInstallation: { networkMirror: { url: 'https://terraform.corp.example.com/providers/' include: ['*'] } direct: { exclude: ['*'] } } } } } ``` ### Environment variables Use `env` to inject environment variables into every Terraform Recipe run, for example to raise the Terraform log level for troubleshooting or to tune CLI behavior: ```bicep resource terraformLogging 'Radius.Core/terraformSettings@2025-08-01-preview' = { name: 'terraform-logging' properties: { env: { TF_LOG: 'TRACE' TF_REGISTRY_CLIENT_TIMEOUT: '15' } } } ``` ## Deploying Terraform settings Deploy the settings resource with the `rad deploy` command: ```bash rad deploy ./terraform-settings.bicep ``` ## Referencing Terraform settings from an Environment Reference the settings from an Environment by setting its `terraformSettings` property to the resource ID. Every Terraform Recipe run in that Environment then uses the configured registry credentials: ```bicep extension radius resource terraformRegistry 'Radius.Core/terraformSettings@2025-08-01-preview' existing = { name: 'private-registry' } resource myEnvironment 'Radius.Core/environments@2025-08-01-preview' = { name: 'my-environment' properties: { terraformSettings: terraformRegistry.id } } ```

func (*TerraformSettingsResource) ConvertFrom added in v0.60.0

func (dst *TerraformSettingsResource) ConvertFrom(src v1.DataModelInterface) error

ConvertFrom converts from version-agnostic datamodel to the versioned TerraformSettings resource.

func (*TerraformSettingsResource) ConvertTo added in v0.60.0

ConvertTo converts from the versioned TerraformSettings resource to version-agnostic datamodel.

func (TerraformSettingsResource) MarshalJSON added in v0.60.0

func (t TerraformSettingsResource) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type TerraformSettingsResource.

func (*TerraformSettingsResource) UnmarshalJSON added in v0.60.0

func (t *TerraformSettingsResource) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type TerraformSettingsResource.

type TerraformSettingsResourceListResult added in v0.60.0

type TerraformSettingsResourceListResult struct {
	// REQUIRED; The TerraformSettingsResource items on this page
	Value []*TerraformSettingsResource

	// The link to the next page of items
	NextLink *string
}

TerraformSettingsResourceListResult - The response of a TerraformSettingsResource list operation.

func (TerraformSettingsResourceListResult) MarshalJSON added in v0.60.0

func (t TerraformSettingsResourceListResult) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type TerraformSettingsResourceListResult.

func (*TerraformSettingsResourceListResult) UnmarshalJSON added in v0.60.0

func (t *TerraformSettingsResourceListResult) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type TerraformSettingsResourceListResult.

type TerraformrcConfig added in v0.58.0

type TerraformrcConfig struct {
	// (Optional) Credentials for authenticating to private Terraform registries such as `app.terraform.io`. Maps a registry hostname
	// to its credential configuration. This authenticates to Terraform CLI registries over HTTP and does not authenticate Git-based
	// module sources, which use a separate mechanism.
	Credentials map[string]*TerraformCredentialConfig

	// (Optional) Controls where Terraform installs providers from, such as a network mirror instead of the public registry.
	ProviderInstallation *TerraformProviderInstallation
}

TerraformrcConfig - Terraform CLI configuration file (.terraformrc) settings. See https://developer.hashicorp.com/terraform/cli/config for details.

func (TerraformrcConfig) MarshalJSON added in v0.58.0

func (t TerraformrcConfig) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type TerraformrcConfig.

func (*TerraformrcConfig) UnmarshalJSON added in v0.58.0

func (t *TerraformrcConfig) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type TerraformrcConfig.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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