-
Notifications
You must be signed in to change notification settings - Fork 36
Creating Releases
Michael Sherron edited this page Jan 13, 2021
·
9 revisions
There are three repositories at present for Acquia CMS.
- acquia/acquia_cms - this repository, from which development happens and all releases are started.
-
acquia/acquia-cms-project - the public facing repository (eventually), from which customers will run
composer create-project
and our UIs will pull deploy artifacts. - acquia/sf-acms - a Site Factory specific repository that builds and stores its' own version of ACMS releases, customized to run inside ACSF.
There are two integration applications for ACMS in Acquia Cloud, each with their own environments:
- One for ACE ** Dev ** Test ** Prod
- One for ACSF ** Dev ** Test ** Prod
- Developers checkout a feature branch in a CloudIDE or their development machines, make code commits.
- Developers push their feature branch and open a PR against the 'develop' branch.
- Travis automated tests will run, and if they pass and all peer-review feedback has been implemented, a technical lead will merge the PR.
- This will deploy the merged commits to our ACE integration environment.
- Overnight builds on acquia/sf-acms to deploy the commits to our ACSF development environment.
- A release engineer (RE) will create a tag on the final commit in the develop branch for the current release.
- Optionally, they may open a release branch, and cherry pick commits into that branch if it's necessary to omit commits for work that is still in progress. They would then apply the release tag to HEAD of the release branch.
- The RE will then deploy the new tag to the Stage environment in our ACE integration environments, where UAT will take start.
- The RE should then create the release tag on the ACSF integration environment and deploy it to ACSF. UAT will complete there.
- Once UAT is completed, a PR will be issued to merge the release commits (and its' tag) into the 'main' branch. HEAD on 'main' should always represent the most recent
known deployable
state at any given point in time. - The RE will then deploy the tagged release to Production in both our ACE and ACSF integration environments and confirm our testing sites continue to run as expected.
- The RE will create Github releases on the main repo and ACSF repo.
- Product and the technical lead will work together to create release communications to be distributed within Acquia (process TBD).
-
acquia/acquia-cms-project
is the repository customers should use for their applications. The composer.json for that project will pull in any tagged releases with a simplecomposer update
. Similarly, the composer.json for SF-ACMS will pull in releases from ACMS.
- Acquia CMS follows Drupal community release naming conventions.