Date Published: February 6, 2025
Lesson 4: Post Code Deploy - Deploying a Drupal 9 Application
This is Lesson 4 of Tutorial: Deploying an Application in Drupal 9.
In this lesson we will:
- Update production database to reflect code changes
Lesson Goal
Perform application updates after new code has been deployed.
In order to complete this lesson you will need:
- Command line access to an Acquia Cloud Platform subscription
- Drupal application that is deployed to Acquia Cloud Platform
Lesson
Configuration and database updates¶
At this point, the code for your new release is on your production server(s). However, your database has not been updated in any way.
Database updates¶
A typical code release will require the following database-related actions to be performed:
- Update hooks provided by contributed modules should be executed. This is easily accomplished with:
- Changes to exported configuration files should be imported. Depending on your configuration management strategy, this may require:
or
drush features-revert-all
- Your caches should be rebuilt. This will allow changes to Twig templates, CSS, JavaScript, and various other cached data to be registered. This can be accomplished with:
Depending on the changes that your release contains, these commands may need to be run in a specific order or even multiple times. The consequences of running these commands incorrectly can be subtle and complex.
Acquia Cloud Hooks¶
Important
When creating a new Acquia Cloud CD environment, the post-code-deploy hook is not run, and this hook must be run twice for its changes to take effect. For more information, see this known issue.
Acquia Cloud Hooks provide a mechanism for executing a script when a particular action is performed. For releases, the post-code-update and post-code-deploy cloud hooks are relevant. These will allow a custom script to be executed each time that a new tag is deployed to your production environment.
To implement a cloud hook, you must create an executable bash script and place it in a specific location in your codebase.
Congratulations, you've successfully deployed a Drupal application to a production environment following Drupal best practices!
Did not find what you were looking for?
If this content did not answer your questions, try searching or contacting our support team for further assistance.