Acquia
Acquia is a cloud hosting platform specifically designed for Drupal applications, offering managed infrastructure, developer tools, and enterprise-grade security.
For general Acquia documentation, refer to the Acquia Documentation.
Integration
Vortex provides the following integration with Acquia:
Tasks
With Vortex, you can:
- Fetch a database from an Acquia environment for local development or CI
- Copy the database between Acquia environments (e.g., refresh staging from production)
- Copy files between environments to synchronize uploaded content
- Purge the Varnish cache to ensure visitors see fresh content
When running these tasks, your .env and .env.local files are used as the
source for the application name and API credentials.
Deployment automation
When code is deployed, Vortex automatically:
- Provisions the site - Runs database updates, imports configuration, clears caches
- Purges edge cache - Clears the Varnish cache to serve fresh content
- Sends notifications - Notifies configured channels about the deployment
This is implemented using Acquia Cloud Hooks -
pre-configured scripts in the hooks/
directory that trigger on code deployments, code updates, and database copy
operations.
Environment detection
Vortex automatically detects when running on Acquia and applies the
Acquia-specific Drupal settings through the
drevops/environment-detector
package. This includes Acquia-specific configurations for caching, file paths,
and environment variables.
Acquia settings file
By default, Vortex includes the Acquia-provided settings file from
/var/www/site-php/{group}/{group}-settings.inc. You can override this path
by setting the DRUPAL_ACQUIA_SETTINGS_FILE environment variable.
Temporary file path
Vortex configures the temporary file path (file_temp_path) with a three-tier
priority:
- Default:
/tmp - Shared GFS mount: If
DRUPAL_TMP_PATH_IS_SHAREDis set, uses/mnt/gfs/{group}.{env}/tmp— a per-head mounted directory on Acquia's shared filesystem. This is useful for operations like bulk uploads that require a shared temporary directory across web heads. See Acquia temporary files documentation for details. - Explicit override: If
DRUPAL_TMP_PATHis set, its value is used regardless of other settings.
Onboarding
Acquia onboarding is part of the project setup flow. See Set up integrations in the Installation guide and select Acquia.
Routine Operations
Fetch database
Fetch a database backup from your Acquia environment for local development or CI builds:
ahoy fetch-db
This wraps the provider-native Acquia CLI. If an
acli binary is already on your PATH, Vortex uses it as-is. Otherwise it
downloads a pinned release into a cache directory (.artifacts/tmp by default,
overridable with VORTEX_ACLI_PATH) and reuses that copy on later runs, so
nothing needs to be pre-installed.
Authentication uses your Acquia Cloud API key and secret from .env and
.env.local. They are passed to the CLI for a single run against an isolated
home directory rather than your global ~/.acquia configuration, so any Acquia
credentials you already have locally are left untouched.
The source application is auto-discovered from those credentials. When they
expose more than one application, set VORTEX_FETCH_DB_ACQUIA_APP_NAME to pick
one - it matches an application by its name, hosting id (for example
prod:<name>), machine name or uuid.
By default the latest existing backup is downloaded. Force a new backup and wait for it to complete with:
ahoy fetch-db --fresh
Run a hosting task
Copying databases or files between environments and purging the edge cache run through a single, platform-agnostic task runner that dispatches each operation to the implementation for the configured hosting platform:
./vendor/bin/vortex-task <operation>
| Operation | Description |
|---|---|
copy-db | Copy the database between environments |
copy-files | Copy files between environments |
purge-cache | Purge the edge (Varnish) cache |
The platform is read from VORTEX_PLATFORM, or from VORTEX_TASK_PLATFORM to
override a single task. The Acquia deployment hooks export VORTEX_PLATFORM
themselves; set it yourself when running an operation manually - for example,
from your local machine:
VORTEX_PLATFORM=acquia ./vendor/bin/vortex-task copy-db
Each operation reads its configuration - application name, API credentials, and
source and destination environments - from your .env and .env.local files.