acquia / drupal-cms-project
Drupal with a bunch of useful stuff and a scaffold tailored to Acquia hosting.
Installs: 269
Dependents: 0
Suggesters: 0
Security: 0
Stars: 1
Watchers: 6
Forks: 3
Open Issues: 1
Language:CSS
Type:project
pkg:composer/acquia/drupal-cms-project
Requires
- acquia/drupal-environment-detector: ^1
- acquia/drupal-recommended-settings: ^1
- composer/composer: ^2.8
- composer/installers: ^2.3
- cweagans/composer-patches: ^2.0
- drupal/byte: ^1
- drupal/config_sync_without_site_uuid: ^1.0@beta
- drupal/core-composer-scaffold: ^11.3
- drupal/core-recommended: ^11.3
- drupal/core-vendor-hardening: ^11.3
- drupal/drupal_cms_accessibility_tools: ^2
- drupal/drupal_cms_ai: ^2
- drupal/drupal_cms_forms: ^2
- drupal/drupal_cms_google_analytics: ^2
- drupal/drupal_cms_seo_tools: ^2
- drupal/drupal_cms_starter: ^2
- drupal/recipe_installer_kit: ^1.0.4
- drupal/webform: @beta
Requires (Dev)
- drupal/core-dev: ^11
- drush/drush: ^13
Conflicts
README
Project template for building Drupal CMS tailored for Acquia hosting. This project follows the official Drupal CMS releases and includes Acquia-specific additions and integrations.
Example workflow using Acquia CLI
-
Create project
composer create-project acquia/drupal-cms-project -
Initialize repo and commit
cd drupal-cms-project && git init && git add -A && git commit -m "initial build" -
Build artifact and push to cloud
/usr/local/bin/acli push:artifact --destination-git-urls=<YOUR_ACQUIA_GIT_REPO_URL> --destination-git-branch=dist --quiet -
Checkout the new branch on cloud
/usr/local/bin/acli app:task-wait "$(/usr/local/bin/acli api:environments:code-switch <YOUR_AH_SITEGROUP>.dev dist)" -
Drop database on cloud if you have previously installed a site and want to see the Drupal CMS installer
/usr/local/bin/acli remote:drush @<YOUR_AH_SITEGROUP>.dev sql:drop -
Visit your site!
Branches
This repo ships with two branches: main and dist.
main
The main branch is used for development. When you're ready to deploy a feature or update, you will build an artifact from the main branch using ACLI.
Develop and deploy a feature
- Create a feature branch from
main$ git checkout -b <FEATURE_BRANCH_NAME> main - Do your work on the feature branch. Once it's reviewed and ready, merge it back into main.
- Create a deployment artifact from
main.$ acli push:artifact --destination-git-urls="<YOUR_ACQUIA_GIT_URL>" --destination-git-branch=<DEPLOYMENT_ARTIFACT_BRANCH_NAME>
dist
The dist branch is a prebuilt deployment artifact. You can use it to get an application up and running quickly without building an artifact. You must generate a unique salt hash in the dist branch before using it. You can use the Drupal Recommended Settings provided Drush command to do this: drush drupal:hash-salt:init. This artifact uses the latest PHP version available on Acquia, currently 8.5. The prebuilt dist branch is generally NOT recommended for normal workflows.
Example dist branch workflow
- Clone the repo.
$ git clone git@github.com:acquia/drupal-cms-project.git - Check out the
distbranch.$ git checkout dist - Remove the GitHub remote.
$ git remote remove origin - Generate a unique hash salt and add it to Git.
$ vendor/bin/drush drupal:hash-salt:init $ git add -A $ git commit -m "Unique hash salt" - Add your Acquia Git URL as a remote and push the
distbranch to it.$ git remote add acquia <YOUR_ACQUIA_GIT_REPO_URL> $ git push acquia dist - Checkout the dist branch on cloud.
$ acli app:task-wait "$(/usr/local/bin/acli api:environments:code-switch <YOUR_ACQUIA_HOSTING_SITE_GROUP>.<HOSTING_ENVIRONMENT> dist)" - Install from the prebuilt artifact's configuration on cloud.
$ acli remote:drush @<YOUR_ACQUIA_HOSTING_SITE_GROUP>.<HOSTING_ENVIRONMENT> -- site:install --existing-config --yes - Import the default content provided by Drupal CMS starter.
$ acli remote:drush @<YOUR_ACQUIA_HOSTING_SITE_GROUP>.<HOSTING_ENVIRONMENT> -- content:import ../recipes/drupal_cms_starter/content --yes
License
Copyright (C) 2026 Acquia, Inc.
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License version 2 as published by the Free Software Foundation.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.