Documentation
¶
Index ¶
- Constants
- func SplitRecipeOutputs(apiOutputs map[string]any) (map[string]string, map[string]string)
- type ActionType
- type ApplicationGraphConnection
- type ApplicationGraphOutputResource
- type ApplicationGraphResource
- type ApplicationGraphResponse
- type ApplicationProperties
- type ApplicationResource
- type ApplicationResourceListResult
- type ApplicationsClient
- func (client *ApplicationsClient) CreateOrUpdate(ctx context.Context, rootScope string, applicationName string, ...) (ApplicationsClientCreateOrUpdateResponse, error)
- func (client *ApplicationsClient) Delete(ctx context.Context, rootScope string, applicationName string, ...) (ApplicationsClientDeleteResponse, error)
- func (client *ApplicationsClient) Get(ctx context.Context, rootScope string, applicationName string, ...) (ApplicationsClientGetResponse, error)
- func (client *ApplicationsClient) GetGraph(ctx context.Context, rootScope string, applicationName string, ...) (ApplicationsClientGetGraphResponse, error)
- func (client *ApplicationsClient) NewListByScopePager(rootScope string, options *ApplicationsClientListByScopeOptions) *runtime.Pager[ApplicationsClientListByScopeResponse]
- func (client *ApplicationsClient) Update(ctx context.Context, rootScope string, applicationName string, ...) (ApplicationsClientUpdateResponse, error)
- type ApplicationsClientCreateOrUpdateOptions
- type ApplicationsClientCreateOrUpdateResponse
- type ApplicationsClientDeleteOptions
- type ApplicationsClientDeleteResponse
- type ApplicationsClientGetGraphOptions
- type ApplicationsClientGetGraphResponse
- type ApplicationsClientGetOptions
- type ApplicationsClientGetResponse
- type ApplicationsClientListByScopeOptions
- type ApplicationsClientListByScopeResponse
- type ApplicationsClientUpdateOptions
- type ApplicationsClientUpdateResponse
- type AzureContainerInstanceCompute
- type BicepAuthenticationMethod
- type BicepRegistryAuthentication
- type BicepSettingsClient
- func (client *BicepSettingsClient) CreateOrUpdate(ctx context.Context, rootScope string, bicepSettingsName string, ...) (BicepSettingsClientCreateOrUpdateResponse, error)
- func (client *BicepSettingsClient) Delete(ctx context.Context, rootScope string, bicepSettingsName string, ...) (BicepSettingsClientDeleteResponse, error)
- func (client *BicepSettingsClient) Get(ctx context.Context, rootScope string, bicepSettingsName string, ...) (BicepSettingsClientGetResponse, error)
- func (client *BicepSettingsClient) NewListByScopePager(rootScope string, options *BicepSettingsClientListByScopeOptions) *runtime.Pager[BicepSettingsClientListByScopeResponse]
- func (client *BicepSettingsClient) Update(ctx context.Context, rootScope string, bicepSettingsName string, ...) (BicepSettingsClientUpdateResponse, error)
- type BicepSettingsClientCreateOrUpdateOptions
- type BicepSettingsClientCreateOrUpdateResponse
- type BicepSettingsClientDeleteOptions
- type BicepSettingsClientDeleteResponse
- type BicepSettingsClientGetOptions
- type BicepSettingsClientGetResponse
- type BicepSettingsClientListByScopeOptions
- type BicepSettingsClientListByScopeResponse
- type BicepSettingsClientUpdateOptions
- type BicepSettingsClientUpdateResponse
- type BicepSettingsProperties
- type BicepSettingsResource
- type BicepSettingsResourceListResult
- type ClientFactory
- func (c *ClientFactory) NewApplicationsClient() *ApplicationsClient
- func (c *ClientFactory) NewBicepSettingsClient() *BicepSettingsClient
- func (c *ClientFactory) NewEnvironmentsClient() *EnvironmentsClient
- func (c *ClientFactory) NewOperationsClient() *OperationsClient
- func (c *ClientFactory) NewRecipePacksClient() *RecipePacksClient
- func (c *ClientFactory) NewTerraformSettingsClient() *TerraformSettingsClient
- type ConnectionKind
- type CreatedByType
- type Direction
- type EnvironmentCompute
- type EnvironmentComputeClassification
- type EnvironmentProperties
- type EnvironmentResource
- type EnvironmentResourceListResult
- type EnvironmentsClient
- func (client *EnvironmentsClient) CreateOrUpdate(ctx context.Context, rootScope string, environmentName string, ...) (EnvironmentsClientCreateOrUpdateResponse, error)
- func (client *EnvironmentsClient) Delete(ctx context.Context, rootScope string, environmentName string, ...) (EnvironmentsClientDeleteResponse, error)
- func (client *EnvironmentsClient) Get(ctx context.Context, rootScope string, environmentName string, ...) (EnvironmentsClientGetResponse, error)
- func (client *EnvironmentsClient) NewListByScopePager(rootScope string, options *EnvironmentsClientListByScopeOptions) *runtime.Pager[EnvironmentsClientListByScopeResponse]
- func (client *EnvironmentsClient) Update(ctx context.Context, rootScope string, environmentName string, ...) (EnvironmentsClientUpdateResponse, error)
- type EnvironmentsClientCreateOrUpdateOptions
- type EnvironmentsClientCreateOrUpdateResponse
- type EnvironmentsClientDeleteOptions
- type EnvironmentsClientDeleteResponse
- type EnvironmentsClientGetOptions
- type EnvironmentsClientGetResponse
- type EnvironmentsClientListByScopeOptions
- type EnvironmentsClientListByScopeResponse
- type EnvironmentsClientUpdateOptions
- type EnvironmentsClientUpdateResponse
- type GetGraphRequest
- type IdentitySettingKind
- type IdentitySettings
- type KubernetesCompute
- type Operation
- type OperationDisplay
- type OperationListResult
- type OperationsClient
- type OperationsClientListOptions
- type OperationsClientListResponse
- type Origin
- type OutputResource
- type Providers
- type ProvidersAws
- type ProvidersAzure
- type ProvidersKubernetes
- type ProvisioningState
- type RecipeDefinition
- type RecipeKind
- type RecipePackProperties
- type RecipePackResource
- type RecipePackResourceListResult
- type RecipePacksClient
- func (client *RecipePacksClient) CreateOrUpdate(ctx context.Context, rootScope string, recipePackName string, ...) (RecipePacksClientCreateOrUpdateResponse, error)
- func (client *RecipePacksClient) Delete(ctx context.Context, rootScope string, recipePackName string, ...) (RecipePacksClientDeleteResponse, error)
- func (client *RecipePacksClient) Get(ctx context.Context, rootScope string, recipePackName string, ...) (RecipePacksClientGetResponse, error)
- func (client *RecipePacksClient) NewListByScopePager(rootScope string, options *RecipePacksClientListByScopeOptions) *runtime.Pager[RecipePacksClientListByScopeResponse]
- func (client *RecipePacksClient) Update(ctx context.Context, rootScope string, recipePackName string, ...) (RecipePacksClientUpdateResponse, error)
- type RecipePacksClientCreateOrUpdateOptions
- type RecipePacksClientCreateOrUpdateResponse
- type RecipePacksClientDeleteOptions
- type RecipePacksClientDeleteResponse
- type RecipePacksClientGetOptions
- type RecipePacksClientGetResponse
- type RecipePacksClientListByScopeOptions
- type RecipePacksClientListByScopeResponse
- type RecipePacksClientUpdateOptions
- type RecipePacksClientUpdateResponse
- type RecipeParameterValue
- type RecipeStatus
- type ResourceStatus
- type SystemData
- type TerraformCredentialConfig
- type TerraformProviderDirect
- type TerraformProviderInstallation
- type TerraformProviderMirror
- type TerraformSettingsClient
- func (client *TerraformSettingsClient) CreateOrUpdate(ctx context.Context, rootScope string, terraformSettingsName string, ...) (TerraformSettingsClientCreateOrUpdateResponse, error)
- func (client *TerraformSettingsClient) Delete(ctx context.Context, rootScope string, terraformSettingsName string, ...) (TerraformSettingsClientDeleteResponse, error)
- func (client *TerraformSettingsClient) Get(ctx context.Context, rootScope string, terraformSettingsName string, ...) (TerraformSettingsClientGetResponse, error)
- func (client *TerraformSettingsClient) NewListByScopePager(rootScope string, options *TerraformSettingsClientListByScopeOptions) *runtime.Pager[TerraformSettingsClientListByScopeResponse]
- func (client *TerraformSettingsClient) Update(ctx context.Context, rootScope string, terraformSettingsName string, ...) (TerraformSettingsClientUpdateResponse, error)
- type TerraformSettingsClientCreateOrUpdateOptions
- type TerraformSettingsClientCreateOrUpdateResponse
- type TerraformSettingsClientDeleteOptions
- type TerraformSettingsClientDeleteResponse
- type TerraformSettingsClientGetOptions
- type TerraformSettingsClientGetResponse
- type TerraformSettingsClientListByScopeOptions
- type TerraformSettingsClientListByScopeResponse
- type TerraformSettingsClientUpdateOptions
- type TerraformSettingsClientUpdateResponse
- type TerraformSettingsProperties
- type TerraformSettingsResource
- type TerraformSettingsResourceListResult
- type TerraformrcConfig
Constants ¶
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
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
func (client *ApplicationsClient) CreateOrUpdate(ctx context.Context, rootScope string, applicationName string, resource ApplicationResource, options *ApplicationsClientCreateOrUpdateOptions) (ApplicationsClientCreateOrUpdateResponse, error)
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
func (client *ApplicationsClient) GetGraph(ctx context.Context, rootScope string, applicationName string, body GetGraphRequest, options *ApplicationsClientGetGraphOptions) (ApplicationsClientGetGraphResponse, error)
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
func (client *ApplicationsClient) NewListByScopePager(rootScope string, options *ApplicationsClientListByScopeOptions) *runtime.Pager[ApplicationsClientListByScopeResponse]
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
func (client *BicepSettingsClient) CreateOrUpdate(ctx context.Context, rootScope string, bicepSettingsName string, resource BicepSettingsResource, options *BicepSettingsClientCreateOrUpdateOptions) (BicepSettingsClientCreateOrUpdateResponse, error)
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
func (client *BicepSettingsClient) NewListByScopePager(rootScope string, options *BicepSettingsClientListByScopeOptions) *runtime.Pager[BicepSettingsClientListByScopeResponse]
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 ¶
func (client *EnvironmentsClient) CreateOrUpdate(ctx context.Context, rootScope string, environmentName string, resource EnvironmentResource, options *EnvironmentsClientCreateOrUpdateOptions) (EnvironmentsClientCreateOrUpdateResponse, error)
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 ¶
func (client *EnvironmentsClient) NewListByScopePager(rootScope string, options *EnvironmentsClientListByScopeOptions) *runtime.Pager[EnvironmentsClientListByScopeResponse]
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 ¶
MarshalJSON implements the json.Marshaller interface for type Operation.
func (*Operation) UnmarshalJSON ¶
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 ¶
func (client *OperationsClient) NewListPager(options *OperationsClientListOptions) *runtime.Pager[OperationsClientListResponse]
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 ¶
MarshalJSON implements the json.Marshaller interface for type Providers.
func (*Providers) UnmarshalJSON ¶
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
func (client *RecipePacksClient) CreateOrUpdate(ctx context.Context, rootScope string, recipePackName string, resource RecipePackResource, options *RecipePacksClientCreateOrUpdateOptions) (RecipePacksClientCreateOrUpdateResponse, error)
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
func (client *RecipePacksClient) NewListByScopePager(rootScope string, options *RecipePacksClientListByScopeOptions) *runtime.Pager[RecipePacksClientListByScopeResponse]
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
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
func (client *TerraformSettingsClient) CreateOrUpdate(ctx context.Context, rootScope string, terraformSettingsName string, resource TerraformSettingsResource, options *TerraformSettingsClientCreateOrUpdateOptions) (TerraformSettingsClientCreateOrUpdateResponse, error)
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
func (client *TerraformSettingsClient) Delete(ctx context.Context, rootScope string, terraformSettingsName string, options *TerraformSettingsClientDeleteOptions) (TerraformSettingsClientDeleteResponse, error)
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
func (client *TerraformSettingsClient) Get(ctx context.Context, rootScope string, terraformSettingsName string, options *TerraformSettingsClientGetOptions) (TerraformSettingsClientGetResponse, error)
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
func (client *TerraformSettingsClient) NewListByScopePager(rootScope string, options *TerraformSettingsClientListByScopeOptions) *runtime.Pager[TerraformSettingsClientListByScopeResponse]
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
func (client *TerraformSettingsClient) Update(ctx context.Context, rootScope string, terraformSettingsName string, properties TerraformSettingsResource, options *TerraformSettingsClientUpdateOptions) (TerraformSettingsClientUpdateResponse, error)
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
func (src *TerraformSettingsResource) ConvertTo() (v1.DataModelInterface, error)
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.
Source Files
¶
- application_conversion.go
- bicepsettings_conversion.go
- environment_conversion.go
- recipepack_conversion.go
- terraformsettings_conversion.go
- version.go
- zz_generated_applications_client.go
- zz_generated_bicepsettings_client.go
- zz_generated_client_factory.go
- zz_generated_constants.go
- zz_generated_environments_client.go
- zz_generated_interfaces.go
- zz_generated_models.go
- zz_generated_models_serde.go
- zz_generated_operations_client.go
- zz_generated_options.go
- zz_generated_polymorphic_helpers.go
- zz_generated_recipepacks_client.go
- zz_generated_responses.go
- zz_generated_terraformsettings_client.go
- zz_generated_version.go