Release:Process


 * Review changes
 * Update Release notes/tests?
 * Identify Conductor
 * Synchronize schema LM_staging with LM_lovemachine ReleaseTask:PreDBMigration
 * Test Candidate on Staging (Automate?)
 * Dry Run Migration process (get reports, don't do anything) to catch surprises
 * PreDeploy code updates

Migrate DB Manual process
mkdir dbmigrate cd dbmigrate
 * 1) Create new sandbox in a secure filesystem

export DBCONNECT=" -h  -u  -p " export DBCONFIG="  " export DBTABLE="  " echo "show databases like 'LM_%'" |mysql --skip-column-names ${DBCONFIG} > dbnames
 * 1) get a list of active database, change all below

for DB in $(cat dbnames); do mysqldump -h mysql.dev.sendlove.us -d ${DB}  > ${DB}.schema; done
 * 1) Grab a copy of the schema for each active database, we can do them all at once.

for dbname in $(cat dbnames); do diff -I "Dump complete" -I LM_lovemachine.schema ${dbname}.schema  >  ${dbname}.out; done
 * 1) Compare all the schemas against LM_lovemachine. Note any differences Dump complete contains a timestamp to just avoid saving it here. AUTO_INCREMENT will likewise rarely match

3c3 < -- Host: DBHOST.sendlove.us   Database: LM_lovemachine --- > -- Host: DBHOST.sendlove.us   Database: LM_dday 3c3 < -- Host: DBHOST.sendlove.us   Database: LM_lovemachine --- > -- Host: DBHOST.sendlove.us   Database: LM_staging 432c432 < /*!50013 DEFINER=`***LMLOVEMACHINEUSER***`@`***LMHOST***` SQL SECURITY DEFINER */ --- > /*!50013 DEFINER=`***LMSTAGINGUSER***`@***LMHOST***` SQL SECURITY DEFINER */
 * 1) Results like shown below reveal no differences in LM_dday and only an expected difference: "redeem view is created by the current instance owner so will vary'. Don't skip this manual process, it's purpose is to identify bad things that try to hide as


 * 1) If there were changes above that needed to be deployed, consider ReleaseTask:DBClusterChange