Where a code freeze sits in a migration schedule
Vendor migration plans show where the freeze goes. In Acquia's migration schedule, the customer puts a code freeze in place and notifies Acquia before the initial migration of code, files and databases. Acquia disregards code changes committed after the initial migration, which is why the freeze must start first.
Adobe lists manual and automated tests, load testing and penetration testing as the checks run against the frozen codebase.
After the final migration, Acquia's customers run 30 to 60 minutes of final testing before switching DNS.
Google's site-move guide advises changing one thing at a time, for example the domain first and the CMS or layout later. For the full project timeline, see how long a website migration takes.
Code freeze vs content, deploy, release and feature freezes
Content freeze. A separate content freeze starts shortly before the final migration, later than the code freeze. Acquia keeps the content freeze through the final migration and final testing until the DNS switch is complete.
Deploy freeze. GitLab lets teams set a deploy freeze period that blocks unintended production releases for a specified time. A maintainer sets the freeze window in the UI or with the Freeze Periods API, using crontab entries for start and end. When a job runs inside a freeze period, GitLab CI/CD sets the variable
$CI_DEPLOY_FREEZE, which pipelines can check to block deploy jobs.Release code freeze. Kubernetes freezes code in its release cycle, not a migration. Every enhancement going into the release must be merge-ready (
approvedandlgtmlabels) by Code Freeze. During Code Freeze, only pull requests for release-blocking issues in the milestone may proceed with changes. Kubernetes ends Code Freeze with Thaw: after it, the master branch develops toward the next minor release and the release branch goes into maintenance mode.Feature freeze. Python and Ubuntu run a feature freeze as a separate stage. In CPython, no new features are accepted after the first beta release; only bug fixes, documentation and test improvements can be committed. During Ubuntu Feature Freeze, developers stop adding new features, packages and API/ABI changes and concentrate on fixing bugs. Updates that only contain bug fixes can still be uploaded.
For a replatforming plan in practice, read migrating from WordPress to a headless CMS.
How Pagepro times the freeze
On a launch driven by an email or campaign, Pagepro freezes production the day before the communication goes out. A launch email or campaign can send traffic to the site at once, and the team should not be mid-deploy when it arrives.
Sources
- Migrating to Adobe Commerce - Code FreezeAdobe Experience League (platform documentation) · experienceleague.adobe.com
- Assisted migration engagementAcquia (platform documentation) · docs.acquia.com
- Releases - Prevent unintentional releases by setting a deploy freezeGitLab (platform documentation) · docs.gitlab.com
- Site Moves and MigrationsGoogle · developers.google.com
- Kubernetes Release Cycle Phases (sig-release)Kubernetes SIG Release · raw.githubusercontent.com
- Development cycle - Python Developer's GuidePython Software Foundation · devguide.python.org
- Freezes - Ubuntu project documentationCanonical (Ubuntu Release Team) · ubuntu.com