A deployment is the process of updating all websites in a Acquia Cloud Site Factory subscription with updates to its code or configuration. A deployment can contain customer-initiated codebase updates, updates to the Acquia Cloud Site Factory platform that are created by Acquia's engineering team, or both.
After you determine what your deployment will contain, you can perform the deployment.
If, during an ongoing deployment process, you determine that the deployment contains one or more errors, Acquia Cloud Site Factory also supports the ability to implement a hotfix for the deployment.
Acquia platform updates
Although you are responsible for the feature branches and code updates that you send to your websites to add features and resolve issues, Acquia will maintain the Acquia Cloud Site Factory platform and the Acquia Cloud Site Factory Connector module that websites use to connect to Acquia Cloud Site Factory. Acquia will notify Acquia Cloud Site Factory subscribers regarding upcoming platform updates, and details about these updates are available in the release notes for Acquia Cloud Site Factory.
Even though platform fixes should not directly affect your code's feature branches, you will periodically have to integrate some Acquia-developed changes into your feature branches or website code.
To ensure that websites can connect to Acquia Cloud Site Factory and the Acquia hosting platform, Acquia requires that websites have the Acquia Cloud Site Factory Connector module installed and enabled. Certain platform changes to Acquia Cloud Site Factory can require changes to the Acquia Cloud Site Factory Connector module to ensure that it continues to allow access or to make new or improved features available. If a new version of the module is released, the release notes page for Acquia Cloud Site Factory will note that you should obtain and install an updated version of this module.
Updating your feature branches
After Acquia releases changes, if you have existing feature branches, be sure to incorporate any Acquia-created updates into your branches using your preferred Git workflow method (either by merging or rebasing).
We encourage you to update your branches as soon as possible after we make a release to ensure that you have access to any new features and security fixes contained in each update.
Performing a deployment
Before performing a deployment, you should familiarize yourself with an overview of the Acquia Cloud Site Factory deployment process to understand how it updates your hosted websites. For the specific actions you need to take to take when deploying, see the following pages:
- Updating your codebase with the
acsf-initcommand to prepare your codebase for use on Acquia Cloud Site Factory
- Scrubbing sensitive data from staged sites
- Steps in performing a production deployment for the commands needed to perform a manual deployment
- Strategies for resolving codebase update errors
If you identify problems during the deployment process, you can hotfix a deployment in progress.
Hotfixing a deployment
The Acquia Cloud Site Factory continuous integration workflow is based on the concept of failing forward. If an error in code deployed to your production environment causes one or more site update failures, you will need to modify the code to resolve the error, and then redeploy that code to all of your websites to get them up and running again.
Because of this, the best practice is to test your codebase changes across a representative set of websites in your staging environment before deploying those changes to your production environment. If there are code issues with a deployment directly to your production environment, your websites can become unavailable to your website visitors for an extended period of time.
For information about pausing a deployment to apply a hotfix, see Hotfixing an Acquia Cloud Site Factory deployment.