# Environment Variable

Specify environment variables (required or optional) used by your script.

bashly.yml
environment_variables:
  - name: config_path
    help: Location of the config file
    default: ~/config.ini
  - name: api_key
    help: Your API key
    required: true
  - name: app_env
    help: Application environment
    allowed: [dev, prod, test]
    default: dev

If an environment variable is defined as required (false by default), the execution of the script will be halted with a friendly error if it is not set.

In addition, you can specify a default value for the environment variable, which will be used in case the user has not defined it in their environment.

Environment Variables Example

# Basic Options

# name

String Required

The name of the variable. Use a lowercase name, it will be automatically capitalized wherever needed.

# help

String

The message to display when using --help. Can have multiple lines.

# Common Options

# default

String

The value to use in case it is not provided by the user. Implies that this environment variable is optional.

# private

Boolean

Setting this to true on any environment variable, will hide it from the help text.

# required

Boolean

Specify if this variable is required.

# Advanced Options

# allowed

Array of Strings

Limit the allowed values to a specified whitelist. Can be used in conjunction with default or required.

# validate

String

Apply a custom validation function.

Custom Validations
../../advanced/validations/