How we (didn't) migrate a thousand imaginary pages
Last quarter, Brightleaf Co. "migrated" a thousand pages that never existed from a CMS that isn't real to another CMS that also isn't real. Here's what we "learned."
The plan
Every migration starts with a plan. Ours looked something like this:
- Export the old content as static HTML
- Review each page for structure and images
- Import the HTML into the new CMS
- Spot-check the result
A snippet from our export script
Here's a tiny example of the kind of script a real migration might use, included here so this page has a code block to test:
for page in site_pages:
html = render_page(page)
save_to_disk(html, page.slug + ".html")
print("Exported", len(site_pages), "pages")
What actually happened
Since none of this happened, nothing went wrong. But if it had, we imagine the biggest risks would have been:
| Risk | Likelihood | Impact |
|---|---|---|
| Broken internal links | High | Medium |
| Missing images | Medium | High |
| Lost formatting | Medium | Medium |
Takeaways
If you're testing your own CMS's import feature with a site like this one, check that internal links between pages (like the one back to the blog index) still resolve correctly after import.