Craft Pre-Launch Deployment Process

Craft Environment for Testing

  • We are re-purposing the Demo Environment to be sales-demo focused only, necessitating the need for another environment to allow for Craft testing that does not

    • Put the current production features at risk

    • Put the Craft work at risk due to lack of production-like environment for adequate testing and regression prior to launch

  • @Christian Roberts is working with ECM to create a Craft-specific deployment environment that will function as a “QA” environment prior to launch

    • This will be a stripped-down version of current FE deployed across “supernurse” infrastructure

      • No K8s will be used at all for this infrastucture

      • To be called “Craft Internal”

    • This environment will includes Craft VMs, load balancer, service account, and Google Storage Bucket

    • There will be no BE infrastructure at all

  • Currently we plan to use this for Craft Blog and Website Redesign testing/regression until launch planned for Q4 2023.

    • After this point we can discuss if it’s necessary to continue this environment or retire it

Deployment Process

  • The Craft CMS team is working off of craft-integration, a branch off of staging

    • When work is merged into craft-integration, this will trigger an automatic deployment to the Craft Internal environment for Sprint testing

    • The team will pull staging into craft-integraiton regularly to keep it up-to-date with the latest from the supernurse teams

  • The Craft CMS team will plan to release weekly

    • Will follow same cadence the Super Nurse teams do for bi-weekly releases

    • On off weeks, they will do a separate, independent release

    • It will be important that craft-integration remains up-to-date with staging and deploys their code back down to integration after each production release

    • Fix Versions:

      • On weeks where Craft code will be released along with the rest of the supernurse teams, please use the same Fix Version the other team are using

      • On off weeks, please use a Fix Version in the following format

        • [mm.dd.yyyy] Craft CMS Nurse Release

    • See here for shared release template and here for independent Craft CMS release template

  • This process requires the ability to be able to pull content from production environment

    • @Jose Garcia to write a sync script that runs on a chron job

    • This job will copy over what content exists on the Craft Internal environment, destroying everything that’s there, and create a new admin user