Update:Remora Deployment: Difference between revisions

no edit summary
m (Reverted edit of Re4O6e, changed back to last version by Morgamic)
No edit summary
Line 1: Line 1:
[[Remora:Update|« Back to Remora]]
[[Remora:Update|« Back to Remora]]


== Databases ==
* Dev TODO (Dec 17 - Dec 21)
=== Run Migration Script ===
** Home
*** <strike>implement conditional login content (tools links)</strike>
*** <strike>rewrite feature queries to pull category data and pull 3 instead of 1 features</strike>
*** <strike>write search and category elements</strike>
*** <strike>write search and category get functions</strike>
*** create cron to update a static field in addons table for # reviews
*** uncomment reviews portion of feature element
*** Finish feature element, render of install element
** Search
*** change search to include file info (see addon model)
*** edit listitem element to include links
*** edit search template to use new containers and markup (ids/classes)
** Category list
*** Re-use listitem elements and get function in addon.php
*** adjust master template to use global styles
** Category landing
*** Re-use feature elements
*** Need to figure out sandbox interaction here
** Other pages
*** Add "content" container div to existing templates that don't have overhauls
*** Reclass round-box to be arbitrarily pretty
*** Check centering and resizing on these pages (once through)
** Remaining bugs on 3.2 TM
** Testing
*** Fix simpletests for views


'''Wil did this on a non-RHEL box'''
* Localization (Dec 26 - Jan 15)
** Update .mo files and notify l10n lists when they are finalized
** Finish all english msgid's that aren't already translated
** Do house cleaning for unused msgid's?  Do we want to do this?
** Add categories to the list of 'to translate' strings -- do they already have localizer access in the control panel?  Can they already edit the category translations there?


'''You need at least python 2.4 to run this''' Run ''python -V'' to check your version.  Lots of additional info and examples for the migration script [[Update:Remora_Database_Migration|is available ]]
* Staging and Beta Test (Jan 1 - Jan 15)
* Go to /services/bin/
** Merge trunk with 3.2 branch
* Create migration.conf and fill in values.  For example, mine looks like:
** Set up public beta test
oldDatabaseName=c_amov2
** Auto-update from the 3.2 branch
oldPassword=********
** Blog post, dev mails, public mails
oldServerName=localhost
*** amo-admins, all@m.c, amo-developers/editors? webdev blog, mozillazine
oldUserName=web
newDatabaseName=c_remora
newPassword=********
newServerName=localhost
newUserName=web
fileCachePath=files


* The fileCachePath is a relative path that will hold a copy of all the versions of all the addons - you'll need to create this directory.  In my example, I created a directory named "files" in /services/bin/.
* Push and Deploy (Jan 22)
*(If you're thinking of moving the migration.py script out of /services/bin, that's fine, but take blank.png with it - they need to be in the same dir when the script runs)
** Final merge with trunk
* Run ''./migration.py -MAv --recalculateHash >> migrate.out 2>&1'' - I'm redirecting the output here because there is a lot and we should look through it for errors.
** Verify tests
* When this is finished, check migrate.out to make sure it finished happily
** Fixes based on feedback
* Move the fileCachePath directory to /site/app/webroot/ '''VERIFY THIS'''
** Final tests of any changed features
 
** Tag revision for deployment
=== Run SQL Patches ===
* Run SQL to modify migrated data for production
 
== Web Server Config ==
 
=== Files ===
 
 
=== Service URLs ===
addons.mozilla.org/update/VersionCheck.php -> services/update.php
pfs.mozilla.org/plugins/PluginFinderService.php -> services/pfs.php
addons.mozilla.org/blocklist
 
Rewrites
 
# Rewrites to be compatible with older versions of addons.
RewriteRule ^update/VersionCheck.php(.*)$ update.php$1
# Rewrite for client blocklist requests.
# Example:
#  /blocklist/1/{ec8030f7-c20a-464f-9b0e-13a3a9e97384}/1.5 -> blocklist.php?reqVersion=1&appGuid={ec8030f7-c20a-464f-9b0e-13a3a9e97384}&appVersion=1.5
RewriteRule ^blocklist/(.+)/(.+)/(.+)[/]{0,1}$ blocklist.php?reqVersion=$1&appGuid=$2&appVersion=$3
# PFS
# ? it is in production, but not known.
 
== Post-deployment Checklist ==
The following should be checked:
* <strike>Memcache server operational w/ stats on serverstatus page</strike>
* <strike>Start page dictionary links (non en-US) work</strike> mm
* Installation
** <strike>Add-on installation works</strike> mm
** <strike>Theme installation works</strike> mm
** <strike>Search-engine installation works</strike> mm
** <strike>Dictionary installation works</strike> mm
** <strike>Add-on installation works w/ EULA</strike> mm
* Services
** <strike>Verify add-on and theme updates</strike> mm
** <strike>Verify blocklist XML output</strike> mm
** <strike>Verify PFS works for popular mime-types</strike> mm
** Verify that download counts are being updated (set up cron job!) (see bug 375283)
** <strike>Verify that the new add-on directory that gets pushed to releases gets scanned for viruses</strike> (justdave did this)
* Client pages
** <strike>Get more add-ons</strike> mm
** <strike>Get more themes</strike> mm
** <strike>Get more search-engines</strike> mm
** <strike>Resulting pages show up in correct locale!</strike> mm
* <strike>Top secret workarounds work!</strike> mm
3,035

edits