guide
Environments
Definition
Environments are defined inside the envs array of the main.json file like this:
{
"$schema": "https://hulk.cyncly-platform.com/schemas/main.json",
"team": "your team identifier",
"project": "Your project name",
"envs": [
{
"name": "staging",
"abbr": "stg",
"rg": "my-project-stg-rg",
"subscription": "My non-production subscription"
}
],
"resources": []
}
Requirements
namemust be unique and one ofprod,nonprod,dev,sandbox,staging,shared,preprod,test,canary,demo,qat, oruat.abbris required. It selects the value Hulk substitutes for{env}; use the canonical name to preserve full environment names, or a supported shorter form such asstg,prd, orsbox.rgis the existing or target Azure resource group for this environment.subscriptionis the Azure subscription name used by the deployment workflow.
How it works
The {env} keyword is a reserved variable inside the schema that will be statically replaced when parsing your hulk files.
This value is the abbr field of the environment that matches the -e/--env flag. The canonical environment name remains stable for variable maps and CLI selection even when the deployed resource-name abbreviation is shorter. For example, use "name": "staging" and "abbr": "stg"; variable maps use the staging key.
This value can be used anywhere in your files where you need the value of the current environment (e.g App Settings, resource names, custom domains, etc).