Legacy migration plan - RopeWiki/app GitHub Wiki
Since initial site creation in 2014, RopeWiki has been running on two VMs with systems configured ad-hoc. This repository uses Docker to define a site that is easily reproducible/deployable with a minimum of manual configuration so that changes can be tracked in version control and mirror/development deployments can be easily deployed. This document describes the steps we plan to take to transition the legacy site infrastructure to the new site infrastructure.
Preparation
- Create
prod.json
in thesite_configs
folder in the repository as will be used on monolith - Verify that backups can be successfully obtained from the dev site following #5 and merge #5 to master
- Choose a 3-hour time window to execute the Transition, Test, and Finalize phases when Dav, Michelle, and Ben will all be available
- Add an announcement to current RopeWiki site indicating that the site will be down during that window, and also a post in the Facebook group
Transition
- Stop the current site's webserver with
service nginx stop
- Manually trigger creation of database backup for the day with
~/backup_mysql.sh
- Dav to update the DNS to point all core ropewiki.com domain names to monolith
- Follow full deployment instructions on monolith starting at "Transfer site data" using SITE_NAME=prod
- At this point, public access will be restored
- Update URL of Luca's server to https://ropewiki.com/luca here
- Dav to change off-site backups to target new site architecture (ports 22001 + 22002 with different folder structures)
Test
- Visit home page, a few canyon pages, etc to sanity-check that the site is working
- Michelle to check some of the newer features to make sure they still work
Finalize
- Post in Facebook group telling people about the transition and to watch for and report any bugs they find