NovopsConfigFile

Type: object

Main Novops config file


Global configurations for Novops and modules

Type: object

Global Novops configuration defining behavior for modules


AWS module configs

Type: object

Global AWS config

Type: string or null

Override endpoint for all AWS services Can be used with tools like LocalStack, for example http://localhost:4566/

Type: string or null

AWS Profile name. Must exist locally in AWS config.

It's advised not to use this directly as profile name configuration is higly dependent on local configuration. Prefer using AWS_PROFILE environment variable where needed.

Type: null


Novops default configurations

Type: object

Type: string or null

Default environment name, selected by default if no user input is provided


Hashicorp Vault module configs

Type: object

Type: string or null

Address in form http(s)://HOST:PORT

Example: https://vault.mycompany.org:8200

Type: string or null

Vault token as plain string

Use for testing only. DO NOT COMMIT NOVOPS CONFIG WITH THIS SET.

Type: string or null

Vault token path.

Example: /var/secrets/vault-token

Type: boolean or null

Whether to enable TLS verify (true by default)

Type: null

Type: object

Source of truth defining files and variables loaded by Novops

Environments are named uniquely (such as "dev", "prod"...) to allow for different configs to be loaded in various contexts

Each additional property must conform to the following schema

Type: object

Modules to be loaded for an environment. Each module defines one or more Input which will be resolved into Outputs (files & variables)


Assume an AWS Role from local config.

Outputs environment variables AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY and AWS_SESSION_TOKEN with temporary credentials for IAM Role.

Type: object

Type: object

Assume an IAM Role

Type: string or null

Source profile. Must exist in config.

Type: array or null

Files resolving to concrete files on local filesystem and environment variables pointing to file

No Additional Items

Each item of this array must be:

Type: object

Type: object

File content

Type: object

Reference an AWS Secret Manager secret

Type: object

Structure to request a Secrets Manager secret

Maps directly to GetSecretValue API. See https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_GetSecretValue.html

Type: string or null

The unique identifier of the version of the secret to retrieve.

Type: string or null

The staging label of the version of the secret to retrieve.

Type: object

Reference Secret Manager secret

Type: object

Structure to request a GCloud Secret Manager secret

See https://cloud.google.com/secret-manager/docs/reference/rest/v1/projects.secrets/get

Type: string

Name of the secret in the format projects/*\/secrets/*\/versions/* Such as projects/my-org-project/secrets/my-secret/latest Or projects/my-org-project/secrets/my-secret/42 for a specific version

Type: boolean or null

Whether to validate crc32c checksum provided with secret (default: true)

Type: object

All possible inputs resolving to a string value

Type: object

A BitWarden secret reference

Type: object

Reference a Key Value V2 secret

Type: object

Reference a Key Value V2 secret

Type: string or null

KV v2 mount point

default to "secret/"

Type: object

Reference a Key Value V1 secret

Type: object

Reference a Key Value V1 secret

Type: string or null

KV v1 mount point

default to "kv/"

Type: object

Reference an SSM Parameter config or secret

Type: object

Reference an SSM Parameter config or secret

Maps directly to GetParameter API. See https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_GetParameter.html

Type: boolean or null

Return decrypted values for secure string parameters. This flag is ignored for String and StringList parameter types.

Type: object

Reference an AWS Secret Manager secret

Type: object

Structure to request a Secrets Manager secret

Maps directly to GetSecretValue API. See https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_GetSecretValue.html

Type: string or null

The unique identifier of the version of the secret to retrieve.

Type: string or null

The staging label of the version of the secret to retrieve.

Type: object

Reference Secret Manager secret

Type: object

Structure to request a GCloud Secret Manager secret

See https://cloud.google.com/secret-manager/docs/reference/rest/v1/projects.secrets/get

Type: string

Name of the secret in the format projects/*\/secrets/*\/versions/* Such as projects/my-org-project/secrets/my-secret/latest Or projects/my-org-project/secrets/my-secret/42 for a specific version

Type: boolean or null

Whether to validate crc32c checksum provided with secret (default: true)

Type: object

Reference an Azure Keyvault secret

Type: object

Maps directly to Keyvault Get Secret API

See https://learn.microsoft.com/en-us/rest/api/keyvault/secrets/get-secret/get-secret?tabs=HTTP

Type: string or null

Secret's version (default: latest)

Type: string or null

Destination where file will be generated. Default to secure Novops working directory.

Setting this value may prevent file from being auto-deleted as it won't be managed in a safe location and may remain indefinitely.

Type: string or null

File name to use when auto-generating file and variable name. if not set, the YAML key for file will be used

Type: string or null

Environment variable name pointing to generated file.

Example: setting NPM_TOKEN will output an environment variable pointing to file path such as

NPM_TOKEN: /run/user/1000/novops/dev/file_xxx


Reference one or more Hashicorp Vault Secret Engines to generate either files or variables.

Type: object

Type: object

Use Vault AWS Secret Engine to generate temporary AWS credentials.

Type: string or null

Secret Engine mount point. Default to 'aws'.

Type: string

Vault role name

Type: string or null

AWS IAM Role ARN

Type: string or null

Generated token time to live. Example: "3600s"

Type: array or null

Variables resolving to environment variables from provided source

No Additional Items

Each item of this array must be:

Type: object

Type: string

Environment variable name, such as NPM_TOKEN

Type: object

Source of truth for variable

Type: object

A BitWarden secret reference

Type: object

A BitWarden entry

Type: string

Field in entry to use as value.

Type: object

Reference a Key Value V2 secret

Type: object

Reference a Key Value V2 secret

Type: string or null

KV v2 mount point

default to "secret/"

Type: object

Reference a Key Value V1 secret

Type: object

Reference a Key Value V1 secret

Type: string or null

KV v1 mount point

default to "kv/"

Type: object

Reference an SSM Parameter config or secret

Type: object

Reference an SSM Parameter config or secret

Maps directly to GetParameter API. See https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_GetParameter.html

Type: boolean or null

Return decrypted values for secure string parameters. This flag is ignored for String and StringList parameter types.

Type: object

Reference an AWS Secret Manager secret

Type: object

Structure to request a Secrets Manager secret

Maps directly to GetSecretValue API. See https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_GetSecretValue.html

Type: string or null

The unique identifier of the version of the secret to retrieve.

Type: string or null

The staging label of the version of the secret to retrieve.

Type: object

Reference Secret Manager secret

Type: object

Structure to request a GCloud Secret Manager secret

See https://cloud.google.com/secret-manager/docs/reference/rest/v1/projects.secrets/get

Type: string

Name of the secret in the format projects/*\/secrets/*\/versions/* Such as projects/my-org-project/secrets/my-secret/latest Or projects/my-org-project/secrets/my-secret/42 for a specific version

Type: boolean or null

Whether to validate crc32c checksum provided with secret (default: true)

Type: object

Reference an Azure Keyvault secret

Type: object

Maps directly to Keyvault Get Secret API

See https://learn.microsoft.com/en-us/rest/api/keyvault/secrets/get-secret/get-secret?tabs=HTTP

Type: string or null

Secret's version (default: latest)

Type: string or null

Application name. Informational only.

If not specified, use current directory name