Properties
name
string — required
Environment identifier. Must be lowercase, alphanumeric with hyphens only.
releaseChannel
string — optional
Default release channel for installations in this environment. When installations
don’t specify a release channel, they use the environment’s channel.
maintenanceWindow
string — optional
Maintenance window for this environment. Automated deployments will only occur during specified intervals.
config
object — optional
Configuration passed to the Ryvn environment provisioner.
config.location
string — required
Azure location where resources will be provisioned.
config.internal_root_domain
string — optional
Internal root domain for services using internal networking. If not specified, Ryvn
generates a default domain in the format {environment}.{org-slug}.ryvn.internal.
config.public_root_domain
string — optional
Public root domain for services using public networking. If not specified, Ryvn
generates a default domain in the format {environment}.{org-slug}.ryvn.run.
config.cluster_version
string — optional
Kubernetes version to use for the AKS cluster. Defaults to 1.31.
config.cluster_bootstrap_perms
boolean — optional
If true, grants cluster admin permissions to the Ryvn Agent for initial setup.
Should be disabled after bootstrap. Defaults to false.
config.aks_node_pools
object — optional
Map of AKS node pool definitions to create. Values will be merged with defaults
if not specified. Default node pools are application and system.
Each node pool supports the following properties:
| Property | Type | Description |
|---|---|---|
vm_size | string | Azure VM size (e.g., Standard_D4s_v3) |
min_count | number | Minimum node count for autoscaling |
max_count | number | Maximum node count for autoscaling |
node_count | number | Initial node count |
os_disk_size_gb | number | OS disk size in GB |
labels | map(string) | Kubernetes labels to apply to nodes |
taints | list(string) | Kubernetes taints (non-system pools only) |
key=value:effect where effect is one of
NoSchedule, PreferNoSchedule, or NoExecute.
config.vnet_cidr
string — optional
CIDR block for the virtual network. Defaults to 10.0.0.0/16.
config.zones
array — optional
List of availability zones for AKS node pools. If not specified, uses all zones available in the region.
setup
string — optional
Environment setup type. Controls who provisions the environment infrastructure.
Available values:
customer-controlled- Ryvn Provisioner (VM in the customer’s Azure subscription) provisions the infrastructureself- Ryvn Control Plane uses service principal credentials to provision the infrastructure (default)
customer-controlled, combine with customerEmail to automatically generate customer invite codes.
customerEmail
string — optional
Email address of the customer admin for this environment. Only used with setup: customer-controlled.
When specified, Ryvn automatically:
- Creates a customer organization and user account
- Sends an invite code to the customer to provision the environment
requireApproval
boolean — optional (default: false)
When true, deployments require approval before executing. See Deployment Approvals.
provider
object — required
Azure provider configuration.
provider.type
string — required
Must be azure.
provider.subscriptionId
string — optional
Azure subscription ID where resources will be provisioned.
provider.servicePrincipal
object — optional
Azure service principal credentials for authentication.
provider.servicePrincipal.appId
string — required
Azure application (client) ID.
provider.servicePrincipal.tenantId
string — required
Azure tenant ID.
provider.servicePrincipal.clientSecret
object — required
Service principal client secret configuration.
provider.servicePrincipal.clientSecret.valueFromOrgSecret
object — required
Reference to an organization-level secret containing the client secret value.
provider.servicePrincipal.clientSecret.valueFromOrgSecret.name
string — required
Name of the organization secret.
provider.servicePrincipal.clientSecret.valueFromOrgSecret.key
string — required
Key within the organization secret to get the value from.
installations
array — optional
List of service installations to deploy in this environment. See
Server, Job,
Helm Chart,
Terraform, and
Blueprint installation documentation for details.
Platform Blueprint Configuration
The Azure platform blueprint (ryvn.app/azure-platform) accepts the following configuration inputs when installed in an environment:
Observability Configuration
| Input | Type | Default | Description |
|---|---|---|---|
logRedaction | boolean | false | Enable log redaction to remove sensitive information from logs |
redactionPatterns | array | - | Regex patterns for log redaction (available when logRedaction is enabled) |
metrics | boolean | true | Enable metrics collection and forwarding |
Outputs
Environment outputs are available in service installation configs using template syntax. Reference these values to configure services with infrastructure details provisioned by Ryvn..ryvn.env.name
The name of the environment.
.ryvn.env.orgId
The organization ID.
.ryvn.env.defaultNamespace
The default Kubernetes namespace for the environment (typically same as environment name).
.ryvn.env.releaseChannel
The release channel for this environment.
.ryvn.env.provider.type
The provider type (e.g., aws, gcp, azure, k3s).