resourcetypescontrib

package module
v0.0.0-...-0017101 Latest Latest
Warning

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

Go to latest
Published: Jun 12, 2026 License: Apache-2.0 Imports: 0 Imported by: 0

README

Radius Resource Types and Recipes Contributions

Overview

This repository contains the Resource Type definitions and Recipes for deploying those Resource Types via Radius. It includes:

  • Resource Type Defintions: Schema definitions for Resource Types available for developers to use while defining their application
  • Recipes: Platform-specific Infrastructure as Code used to deploy the associated Resource Type
  • Recipe Packs: Bundled collections of Recipes organized compute platform or deployment scenario (coming soon)

What are Resource Types?

Resource Types are abstractions that define the schema for resources in the Radius. They provide a consistent interface that enables developers to define their application's resources that is separated from the platform engineer's implementation.

What are Recipes?

Recipes define how the Resource Types are provisioned on different compute platforms and cloud environments. Recipes provide the implementation of the interface defined in the Resource Type definition. To learn more about Recipes, please visit Recipes overview in the Radius documentation.

What are Recipe Packs?

Recipe Packs are collections of Recipes that are grouped together to provide a complete solution for a specific compute platform or deployment scenario. Recipe Packs enable platform engineers to easily add an entire collection of Recipes to a Radius Environment. The Recipe Packs feature is currently under development.

Repository Structure

resource-types-contrib/
├── <resource_type_namespace>/          # Namespace excluding Radius; the namespace Radius.Data is in the Data directory
│   └── <resource_type_name>/           # e.g., redisCaches/
│       ├── README.md                   # Documentation for platform engineers
│       ├── <resource_type_name>.yaml/  # e.g., redisCaches.yaml
│       └── recipes/                    # Recipes for this type
│               ├── <platform-service>  # e.g., aws-memorydb/
│               │       ├── bicep
│               │       │       ├── aws-memorydb.bicep
│               │       │       └── aws-memorydb.params
│               │       └── terraform
│               │               ├── main.tf
│               │               └── var.tf
│               ├── <platform-service>  # e.g., azure-cache/
│               │       ├── bicep
│               │       │       ├── azure-cache.bicep
│               │       │       └── azure-cache.params
│               │       └── terraform
│               │               ├── main.tf
│               │               └── var.tf
│               └── <platform-service>  # e.g., kubernetes/
│                       ├── bicep
│                       │       ├── kubernetes-redis.bicep
│                       │       └── kubernetes-redis.params
│                       └── terraform
│                               ├── main.tf
│                               └── var.tf
└── recipe-packs/
    ├── azure-aci/                      # Azure Container Instances Recipes
    ├── kubernetes/                     # Kubernetes platform Recipes
    └── ...

Default resource types in Radius

Resource types in this repository are available for users to register via rad resource-type create. A subset of these are also registered as defaults in Radius, meaning they are available out of the box without any user action.

The list of default resource types is managed in the Radius repository via deploy/manifest/defaults.yaml. To make a resource type a default:

  1. Add the resource type manifest to this repository and merge the PR.
  2. In the Radius repository, add the resource type to deploy/manifest/defaults.yaml, run make update-resource-types, and create a PR. Once this PR is merged, the type is available and the Bicep extension is published.

For more details, see the defaults.yaml file in the Radius repository.

Contributing

Community members can contribute new Resource Types, Recipes, and Recipe Packs to this repository. We welcome contributions in many forms: submitting issues, writing code, participating in discussions, reviewing pull requests. For information on contributing, follow these guides:

Thanks to everyone who has contributed!

License

This project is licensed under the MIT License - see the LICENSE file for details.

Code of Conduct

Please refer to our Radius Community Code of Conduct

Documentation

Overview

Package resourcetypescontrib provides community-maintained resource type definitions for the Radius platform. It contains no executable Go code; the package exists so that other Go modules can depend on this repository and use "go mod download" to fetch a pinned version of the YAML manifest files it contains.

Jump to

Keyboard shortcuts

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