This document contains information about creating custom environment variables in the Cloud Platform user interface.
In addition to the environment variables provided by Cloud Platform, you can also create custom environment variables for your application using the Cloud Platform user interface or using the Cloud Platform API. These custom environment variables are set globally (on a per-application basis) and can be used to define anything your application may need to work with, including Drupal APIs and environments.
The Cloud Platform user interface enables you to add, edit, and delete custom environment variables quickly and easily. Since working with custom variables is restricted by permissions, the Cloud Platform interface contains the appropriate items for working with variables only if you have adequate permissions.
By default, the value of the custom variable is hidden for security. Click Show to display the value, or Hide to hide it from view again.
While creating custom variables in Cloud Platform, ensure that you:
- Limit each variable value to a maximum of 5000 bytes.
- Limit each variable name to a maximum of 255 bytes.
- Limit the total size at 100 kilobytes, including all variables with their names and values.
- Do not include tabs, spaces, or quotation marks in variable names and values.
- Do not start variable names with "AH" or "ACQUIA".
Security considerations for custom variables
Custom environment variables aren’t encrypted, and aren’t a substitute for secure credentials. Custom environment variables can be exposed in your application’s Drupal watchdog logs. Acquia recommends you do not include sensitive items, like the following examples, in a custom variable:
- SSL certificates
- SSH keys
- Login credentials
- API credentials
Adding a custom variable
To add a custom environment variable:
- Sign in to the Cloud Platform user interface, and select your application.
- Select the environment to which you want to add a variable.
In the left menu, select Variables > Add Environment Variable.
- Add the information for your variable:
- Name - Example:
Drupal_API_URL
- Value - Example:
http://mydrupalsite.com/api
- Name - Example:
- Click Add to add the variable, or click Cancel to discard your changes.
After your environment restarts, an item appears in the task log and the new variable is included in the Environment Variables list.
Editing a custom variable
To update an existing custom variable:
- Sign in to the Cloud Platform user interface, and select your application.
- In the left menu, click Variables.
- Find the variable that you want to change, and click Edit.
- Replace the information in the Value text box with your updated data.
- Click Update.
After your environment restarts, an item appears in the task log and the variable’s new value is displayed in the Environment Variables list.
Calling a custom variable
Custom environment variables are available in both the $_ENV
and $_SERVER
superglobals. To call a custom variable, add the following code to your settings.php
file, modifying variable_name
to meet your application’s needs:
$myVariable = $_ENV['variable_name'] ?? getenv('variable_name');
Removing a custom variable
To remove a custom environment variable from use:
- Sign in to the Cloud Platform user interface, and select your application.
- In the left menu, click Variables.
- Find the variable that you want to delete, and click Remove.
- Click Update.
After your environment restarts, an item appears in the task log and Cloud Platform removes the variable from the Environment Variables list.
Filtering for specific variables
To locate a specific custom environment variable, use the Filter Variables field in the upper-right corner of the webpage to filter your displayed variables based on your entered text.
Custom variables in the Cloud Platform API
The Cloud Platform API provides the following endpoints for working with custom environment variables:
Function | Endpoint |
---|---|
Return a list of environment variables | GET /environments/{environmentId}/variables |
Add a new environment variable | POST /environments/{environmentId}/variables |
Retrieve an environment variable | GET /environments/{environmentId}/variables/{environmentVariableName} |
Delete an environment variable | DELETE /environments/{environmentId}/variables/{environmentVariableName} |
Update an existing environment variable | PUT /environments/{environmentId}/variables/{environmentVariableName} |