Release branch: Difference between revisions
Richardcurry (talk | contribs) |
Richardcurry (talk | contribs) m (Changed protection level for "Release branch": Developer page ([edit=sysop] (indefinite) [move=sysop] (indefinite))) |
||
(10 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
=== | == Beta testing first! == | ||
Update the version number in overrides/version.php | Update the version number in overrides/version.php | ||
Line 11: | Line 9: | ||
Make sure your tree is up to date: | Make sure your tree is up to date: | ||
svn switch https://secure. | svn switch https://secure.gavintech.com/svn/rds/trunk/rds | ||
svn update | svn update | ||
svn commit | svn commit | ||
Line 17: | Line 15: | ||
Create a new release branch: | Create a new release branch: | ||
svn cp https://secure. | svn cp https://secure.gavintech.com/svn/rds/trunk/rds https://secure.gavintech.com/svn/rds/branches/release/X_series/rds-X_Y_Z | ||
(replace X, Y, Z with version number) | (replace X, Y, Z with version number) | ||
Switch over Beta on | Switch over Beta on web1.gavintech.com: | ||
cd ../ | ssh richardcurry@web1.gavintech.com | ||
svn switch https://secure. | cd /var/www/sites/secure.regattadata.com/pages/rds_beta | ||
svn switch https://secure.gavintech.com/svn/branches/rds/release/X_series/rds-X_Y_Z | |||
Copy over the production database to the beta database | Copy over the production database to the beta database: | ||
../../sync_beta | ../../sync_beta.sh | ||
Run the migration script on | Run the migration script on web1.gavintech.com: | ||
./run_migrations.php (this updates the Beta database with any migrations necessary) | ./run_migrations.php (this updates the Beta database with any migrations necessary) | ||
Line 36: | Line 35: | ||
Email everyone who might care about the new release, and ask them to test the new version | Email everyone who might care about the new release, and ask them to test the new version | ||
Make fixes directly to the release branch. We'll merge bugfixes back into the trunk when the new version goes live on production. Note any fixes in the [[ | Make fixes directly to the release branch. We'll merge bugfixes back into the trunk when the new version goes live on production. Note any fixes in the [[Changelog]] for that version, and also in the overrides/front_page_news.php file. | ||
==New production release == | ==New production release== | ||
After confirming that the new release works (give it about a week), go live with production: | After confirming that the new release works (give it about a week), go live with production: | ||
On web1.gavintech.com (or web2.gavintech.com): | On web1.gavintech.com (or web2.gavintech.com): | ||
ssh richardcurry@web1.gavintech.com | |||
cd /var/www/sites/secure.regattadata.com/pages/rds | |||
Copy the data to Beta for safety... | |||
../../sync_beta.sh | ../../sync_beta.sh | ||
Update the PHP scripts to the new version: | |||
svn switch https://secure.gavintech.com/svn/branches | |||
./run_migrations.php | svn switch https://secure.gavintech.com/svn/rds/branches/release/X_series/rds-X_Y_Z | ||
Update the Production database with the changes | |||
./run_migrations.php | |||
After you've run the migrations, go to the auditing portal page (Admin->Security->Auditing Portal) and click the "Mark all scripts as tested" button so that the production RDS has up to date hashes. That way, we can tell what files have changed when we start preparing the next release. | After you've run the migrations, go to the auditing portal page (Admin->Security->Auditing Portal) and click the "Mark all scripts as tested" button so that the production RDS has up to date hashes. That way, we can tell what files have changed when we start preparing the next release. | ||
Line 54: | Line 62: | ||
Then, merge the fixes back into the trunk (on your own checkout, not the production one!): | Then, merge the fixes back into the trunk (on your own checkout, not the production one!): | ||
svn switch https://secure.gavintech.com/svn/trunk/rds | svn switch https://secure.gavintech.com/svn/rds/trunk/rds | ||
svn log https://secure.gavintech.com/svn/branches | svn log https://secure.gavintech.com/svn/rds/branches/release/X_series/rds-X_Y_Z | ||
Look for the latest entry (which becomes end-rev) and the entry that mentions creating the release branch (start-rev). | Look for the latest entry (which becomes end-rev) and the entry that mentions creating the release branch (start-rev). | ||
svn merge -r start-rev:end-rev https://secure.gavintech.com/svn/branches | svn merge -r start-rev:end-rev https://secure.gavintech.com/svn/rds/branches/release/X_series/rds-X_Y_Z | ||
(fix any conflicts) | (fix any conflicts) | ||
svn commit -m 'merge in bugfixes from the release branch | svn commit -m 'merge in bugfixes from the release branch rds-X_Y_Z (revisions start-rev to end-rev)' |
Latest revision as of 05:04, 24 September 2012
Beta testing first!
Update the version number in overrides/version.php
Update the changelog in overrides/front_page_news.php
Send out last call to the RDS developers a few hours before making the branch
Make sure your tree is up to date:
svn switch https://secure.gavintech.com/svn/rds/trunk/rds svn update svn commit
Create a new release branch:
svn cp https://secure.gavintech.com/svn/rds/trunk/rds https://secure.gavintech.com/svn/rds/branches/release/X_series/rds-X_Y_Z
(replace X, Y, Z with version number)
Switch over Beta on web1.gavintech.com:
ssh richardcurry@web1.gavintech.com cd /var/www/sites/secure.regattadata.com/pages/rds_beta svn switch https://secure.gavintech.com/svn/branches/rds/release/X_series/rds-X_Y_Z
Copy over the production database to the beta database:
../../sync_beta.sh
Run the migration script on web1.gavintech.com:
./run_migrations.php (this updates the Beta database with any migrations necessary)
Email everyone who might care about the new release, and ask them to test the new version
Make fixes directly to the release branch. We'll merge bugfixes back into the trunk when the new version goes live on production. Note any fixes in the Changelog for that version, and also in the overrides/front_page_news.php file.
New production release
After confirming that the new release works (give it about a week), go live with production:
On web1.gavintech.com (or web2.gavintech.com):
ssh richardcurry@web1.gavintech.com cd /var/www/sites/secure.regattadata.com/pages/rds
Copy the data to Beta for safety...
../../sync_beta.sh
Update the PHP scripts to the new version:
svn switch https://secure.gavintech.com/svn/rds/branches/release/X_series/rds-X_Y_Z
Update the Production database with the changes
./run_migrations.php
After you've run the migrations, go to the auditing portal page (Admin->Security->Auditing Portal) and click the "Mark all scripts as tested" button so that the production RDS has up to date hashes. That way, we can tell what files have changed when we start preparing the next release.
Then, merge the fixes back into the trunk (on your own checkout, not the production one!):
svn switch https://secure.gavintech.com/svn/rds/trunk/rds svn log https://secure.gavintech.com/svn/rds/branches/release/X_series/rds-X_Y_Z
Look for the latest entry (which becomes end-rev) and the entry that mentions creating the release branch (start-rev).
svn merge -r start-rev:end-rev https://secure.gavintech.com/svn/rds/branches/release/X_series/rds-X_Y_Z
(fix any conflicts)
svn commit -m 'merge in bugfixes from the release branch rds-X_Y_Z (revisions start-rev to end-rev)'