Skip to main content

Azure Config Properties

The following properties are used to configure navio when deploying the application to an Azure environment.

tip

Avoid having any special characters such as - or _ as the first or last character in any name, as these will fail most validation rules.

Check out this naming conventions page for a good reference on Azure resource naming.

General Properties

These properties are configured in the config.sh file located in the config/ directory.

PropertyDescriptionLengthValid CharactersExample
AZURE_TENANTYour existing Azure account tenant ID (UUID or name). You can see your accounts via this command: az account list. From the output, take the tenantId property for the account you wish to use.N/AN/A9dec3c04-2347-49bd-88d5-a8ca7057bf5d
AZURE_SUBSCRIPTIONYour existing Azure account subscription name (UUID or name). You can see your accounts via this command: az account list. From the output, take the name property for the account you wish to use.N/AN/A3e9c25fc-55b3-4837-9bba-02b6eb204331
AKS_RESOURCE_GROUPAzure resource group for AKS. The setup script will create a new resource group with this name.1-64Alphanumeric, underscore, and hyphennavio-prod-rg
AKS_LOCATIONAzure resource location for AKS resource group and AKS cluster. You can see list of available locations via command: az account list-locations -o tableN/AN/Awesteurope
AKS_NAMEName of the AKS cluster.N/AAlphanumeric, underscore, and hyphenmy-company-navio-aks
AKS_KUBERNETES_VERSIONVersion of the AKS cluster. You can see list of AKS version via command: az aks get-versions --location "$AKS_LOCATION" -o table. There was a bug in AKS that broke the command. This has now been fixed.1.20.7+N/A1.20.7
DB_RESOURCE_GROUPAzure resource group for the postgres database. By default, it's the same as AKS_RESOURCE_GROUP.1-64Alphanumeric, underscore, and hyphennavio-prod-rg
DB_LOCATIONAzure resource location for database resource group and the database. By default, it's the same as AKS_LOCATION.N/AN/Awesteurope
DB_FIREWALL_EXCEPT_IP_ADDRESSYour public IP from which you execute the setup script. This IP will be added in Azure postgres firewall exceptions and is required to run the setup script (so you can run psql commands against the postgres database). You can find your public IP via command: dig +short myip.opendns.com @resolver1.opendns.com.
xxx.xxx.xxx.xxxN/A192.168.0.1
DB_SERVER_NAMEName of the postgresql database server.3-63Lowercase letters, numbers and hyphens. Can't start or end with a hyphen.my-company-navio-db
DB_HOSTPostgresql database hostname. By default, it's $DB_SERVER_NAME.postgres.database.azure.com.N/AN/Amy-company-navio-db.postgres.database.azure.com
DB_PORTPostgresql database port. The default port is 5432.N/Anumeric5432
STORAGE_RESOURCE_GROUPAzure resource group for Azure Storage Account. By default, it's the same as AKS_RESOURCE_GROUP.1-64Alphanumeric, underscore, and hyphennavio-prod-rg
STORAGE_LOCATIONAzure resource location for storage account resource group and storage account. By default, it's the same as AKS_LOCATION.N/AN/Awesteurope
STORAGE_ACCOUNT_NAMEAzure storage account name.3-24Lowercase letters, numbersmycompanynaviostorage /
STORAGE_FILESHARE_NAMEAzure fileshare name. Must be set to naviofileshare.N/AN/Anaviofileshare
AKS_NAVIO_NAMESPACEKubernetes namespace for navio application components. Must be set to navio.N/AN/Anavio

Secrets

The following properties are located in config/secrets.sh.

These secrets must also be set in order for navio to function:

  • DB_ADMIN_USERNAME: Postgres admin user username
  • DB_ADMIN_PASSWORD: Postgres admin user password
  • DB_DATABASE_NAME: Postgres database name for navio application
  • DB_DATABASE_USERNAME: Postgres username for navio application
  • DB_DATABASE_PASSWORD: Postgres password for navio application
  • NAVIO_DOCKER_REGISTRY: docker registry url for navio docker images
  • NAVIO_DOCKER_USERNAME: docker registry username for navio docker images
  • NAVIO_DOCKER_PASSWORD: docker registry password for navio docker images
  • NAVIO_APP_ACTUATOR_USERNAME: basic auth username for /actuator/prometheus endpoint in navio. Used by prometheus to scrape request data. Currently, it must be set to ACTUATOR.
  • NAVIO_APP_ACTUATOR_PASSWORD: basic auth password for /actuator/prometheus endpoint in navio. Used by prometheus to scrape request data.
  • NAVIOAPP_GOOGLE_TAG_MANAGER_ID: Google Tag Manager ID for the navio frontend _optional

Backend Properties

These properties can be found in config/backend/application-secrets.properties.

Mandatory

PropertyDescription
jwt.token.secretAuthentication token secret
jwt.token.refresh.secretRefresh token secret
jwt.token.internal.api.secretInternal API token secret
mail.sendgrid.api-keySendGrid API key

Optional

PropertyDescription
craftworks.users[0].nameUsername of a generated navio user
craftworks.users[0].passwordPassword of a generated navio user
craftworks.users[0].workspaces[0]Defaulrt workspace name for the generated navio user