MediaWiki 1.18/Deployment checklist

From mediawiki.org

See http://etherpad.wikimedia.org/p/118deployment for what should be in here


Project phases: Preparation Scheduling Testing Deployment Post mortem



Reviewing / Preparation

Bugs blocking a milestone: 1.19 wmf deployment : https://bugzilla.wikimedia.org/buglist.cgi?query_format=advanced&list_id=81812&resolution=---&target_milestone=1.19wmf%20deployment&known_name=1.19%20deploy%20blockers&query_based_on=1.19%20deploy%20blockers 1.19.0 release https://bugzilla.wikimedia.org/buglist.cgi?list_id=80664&query_format=advanced&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&product=MediaWiki&target_milestone=1.19.0%20release Release not that much needed for deployment though.

MediaWiki 1.19 pre WMF deployment actions (tracking) https://bugzilla.wikimedia.org/show_bug.cgi?id=33994

MediaWiki 1.19 post WMF deployment actions (tracking) https://bugzilla.wikimedia.org/show_bug.cgi?id=33996


Revision report : https://www.mediawiki.org/wiki/MediaWiki_roadmap/1.19/Revision_report

Finish up Filerepo

Assigns FIXME

Find out: possible scaptrap http://www.mediawiki.org/wiki/Special:Code/MediaWiki/tag/scaptrap config changes schema changes maintenance script to be run ( sha1, ...? )

Commit /revert live hacks : make sure tree is kept clean.

List 1.18wmf1 hacks that need to be applied to 1.19wmf1


Communication

https://www.mediawiki.org/wiki/MediaWiki_1.19/Roadmap#Communications <To be done with Guillaume>


Scheduling

Ops resources? Part time staff availability


Staging

  • [DONE] Assemble list of db schema changes (core and wmf-used extensions)
  • Perform schema updates
  • Identify new config changes that might be needed
  • Update make-wmf-branch
  • Branch REL1_19
  • Cut 119wmf1 branch
  • Check out 119wmf1 branch into the /home/wikipedia/common/php-1.19 directory on fenari
  • Scap

Deployment phases

See http://www.mediawiki.org/wiki/MediaWiki_1.19/Roadmap

Week 1 : Test: WMFLabs instance, <DATE TBD>

Week 2 : Preproduction: Copy on live cluster test2 <DATE TBD>

Week 3 : Pilots (<DATE TBD>): Verify hetdeploy script Check Apache servers disk space Scap to prepopulate apaches.

https://simple.wikipedia.org/ (simplewiki) https://simple.wiktionary.org/ (simplewiktionary) https://strategy.wikimedia.org/ (strategywiki)  ?? https://www.mediawiki.org/ (mediawiki) https://he.wikisource.org/ (hewikisource) Make sure Amir is awake!

Week 4 : Generalization test (<DATE TBD>): Small projects Most Wikipedia

Week 5 : Commons English Wikipedia dewiki frwiki jawiki ruwiki


Schema Changes

Core

  • array( 'addTable', 'config', 'patch-config.sql' ),
    • Not needed by WMF, probably should be backed out of 1.19
  • array( 'addIndex', 'logging', 'type_action', 'patch-logging-type-action-index.sql'),
  • array( 'doMigrateUserOptions' ),
    • Already done by Roan for Usability
  • array( 'dropField', 'user', 'user_options', 'patch-drop-user_options.sql' ),
    • Would need to be done post deployment (or some changes merged out of 1.19 into 1.18wmf1 to save errors where it is sparsely used
    • Should be postponed to 1.20 deployment
  • array( 'addField', 'revision', 'rev_sha1', 'patch-rev_sha1.sql' ),
  • array( 'addField', 'archive', 'ar_sha1', 'patch-ar_sha1.sql' ),
  • array( 'addIndex', 'page', 'page_redirect_namespace_len', 'patch-page_redirect_namespace_len.sql' ),
  • array( 'modifyField', 'user', 'ug_group', 'patch-ug_group-length-increase.sql' ),
    • Done
  • array( 'addField', 'uploadstash', 'us_chunk_inx', 'patch-uploadstash_chunk.sql' ),
    • Done
  • array( 'addfield', 'job', 'job_timestamp', 'patch-jobs-add-timestamp.sql' ),
    • Done
  • array( 'modifyField', 'user_former_groups', 'ufg_group', 'patch-ufg_group-length-increase.sql' ),
    • Done

Extensions with Schema Updates CentralAuth - AntiSpoof table is already created - Run batchCAAntiSpoof.php to pre-populate AntiSpoof tables CodeReview (only mw.org) CREATE INDEX /*i*/repo_path ON /*_*/code_paths (cp_repo_id, cp_path);

    • done 2/3 -asher

- Can be added any time ArticleFeedback ALTER TABLE article_feedback

   ADD INDEX aa_page_user_token (aa_page_id, aa_user_text, aa_user_anon_token, aa_revision),
   DROP INDEX aa_user_page_revision;



Extension Branching

Deploy from Trunk (default - mark "(confirmed)" if you know for sure that should be the case AbuseFilter ActiveAbstract AntiBot AntiSpoof ApiSandbox ArticleFeedback (confirmed -Roan) AssertEdit Babel CategoryTree CentralAuth CentralNotice CharInsert CheckUser Cite cldr ClickTracking ClientSide CodeReview Collection CommunityApplications CommunityHiring CommunityVoice ConditionalShowSection ConfirmEdit CongressLookup ContactPage ContactPageFundraiser Contest (confirmed) ContributionReporting ContributionTracking CustomUserSignup DisableAccount DismissableSiteNotice DonationInterface DoubleWiki DumpHTML EditPageTracking EmailCapture ExpandTemplates ExtensionDistributor FeaturedFeeds (confirmed - Max) FlaggedRevs FormPreloadPostCache Gadgets GlobalBlocking GlobalUsage GoogleNewsSitemap ImageMap InputBox intersection LabeledSectionTransclusion LandingCheck LiquidThreads (confirmed, I think –Andrew) LocalisationUpdate MWSearch MarkAsHelpful Math MobileFrontend MoodBar Narayam NewUserMessage normal Nuke OAI OggHandler OpenSearchXml Oversight PagedTiffHandler ParserFunctions PdfHandler Poem PoolCounter PrefStats PrefSwitch ProofreadPage Quiz ReaderFeedback Renameuser RSS ScanSet SecurePoll ShortUrl SimpleAntiSpam SimpleSurvey SiteMatrix SkinPerPage skins SpamBlacklist StrategyWiki StringFunctionsEscaped SubPageList3 SwiftCloudFiles SyntaxHighlight_GeSHi timeline TitleBlacklist TitleKey TorBlock Translate (confirmed) TrustedXFF UnicodeConverter UploadBlacklist UploadWizard UserDailyContribs UserThrottle Vector VipsScaler WebFonts wikidiff2 wikihiero (confirmed - Max) WikiEditor WikiLove WikimediaIncubator WikimediaMaintenance WikimediaMessages ZeroRatedMobileAccess

Deploy from 1.18wmf1 ArticleFeedbackv5 (confirmed -Roan)


Next deployment checklist item: check http://svn.wikimedia.org/viewvc/mediawiki/trunk/tools/make-wmf-branch/default.conf?view=markup against fenari:/home/w/common/wmf-config/extension-list