Track {T174431} and {T176370} in MediaWiki-Vagrant.
The process should be similar to the Trusty->Jessie migration (T136429). Major changes in this migration include upgrading from Puppet 3.x to 4.x and PHP 5.x to PHP 7.x.
==Major changes==
* Debian Stretch (Debian 9) base image
* Default PHP runtime is Zend PHP 7.0 (HHVM available via role)
* Database is MariaDB 10.1
* Puppet 4
==Testing the Stretch base image and Puppet profiles==
Its recommended to test with a fresh MediaWiki-Vagrant checkout so if things go badly you can easily switch back to your original install and keep working.
```
$ git clone --recursive https://gerrit.wikimedia.org/r/mediawiki/vagrant mwv-stretch
$ cd mwv-stretch
$ git checkout stretch-migration
$ ./setup.sh
$ vagrant up
```
You can run `vagrant roles list -e -1` to get a nice list of the roles you have enabled on your normal Trusty VM install to copy over to your Stretch testing VM. This one-liner liner might even do it for you:
```
$ cd mwv-stretch
$ vagrant roles enable $(cd ../vagrant; vagrant roles list -e -1)
$ vagrant provision
```
== Role testing ==
Pure PHP roles (most extensions) should be fine, but it doesn't hurt to test them. The main things which need testing are roles which install additional system packages (e.g. elasticsearch), configure system packages (e.g. https), or install custom services (e.g. parsoid, restbase).
โ
provisioning OK
โ ๏ธ provisioning warnings
๐ฃ provisioning errors
[] abusefilter โ
[] accountinfo โ
[] advancedsearch โ
[] analytics ๐ฃ
[] antispam โ
[] antispoof โ
[] apex โ
[] apparmor ๐ฃ
[] articlecreationworkflow โ
[] articleplaceholder ๐ฃ
[] babel โ
[] betafeatures โ
[] bouncehandler โ
[] buggy โ
[] campaigns โ
[] cassandra ๐ฃ
[] categorytree โ
[] centralauth ๐ฃ
[] centralnotice โ
[] checkuser โ
[] cirrussearch ๐ฃ T183306
[] cite โ
[] citoid ๐ฃ
[] cldr โ
[] codeeditor โ
[] codemirror ๐ฃ
[] cologneblue โ
[] commons ๐ฃ
[] commons_datasets ๐ฃ
[] commonsmetadata โ
[] confirmedit โ
[] contactpage โ
[] contenttranslation ๐ฃ
[] disableaccount โ
[] disambiguator โ
[] doublewiki โ
[] easytimeline โ
[] echo ๐ฃ
[] education ๐ฃ
[] elk ๐ฃ T183071
[] emailauth โ
[] embedvideo โ
[] eventbus ๐ฃ
[x] eventlogging โ
T183380
[] externalstore โ
[] featuredfeeds โ
[] fileannotations โ
[] fileimporter โ
[] flaggedrevs โ
[] flow ๐ฃ
[] fss ๐ฃ
[] fundraising ๐ฃ
[] gadgets โ
[] gadgets2 โ
[] geodata โ
[] geodata_elastic ๐ฃ
[] geshi โ
[] gettingstarted ๐ฃ
[] globalblocking ๐ฃ
[] globalcssjs ๐ฃ
[] globalpreferences ๐ฃ
[] globalusage โ
[] globaluserpage โ
[] gpgmail โ
[] graph โ
[] graphoid โ ๏ธ
[] greystuff โ
[] guidedtour โ
[] gwtoolset ๐ฃ
[] hadoop ๐ฃ
[] headertabs โ
[x] hhvm โ
[] hive ๐ฃ
[] horizon ๐ฃ
[] https โ ๏ธ T183304, T183302
[] hue ๐ฃ
[] iabot โ
[] iegreview ๐ฃ
[] imagemetrics โ
[] inputbox โ
[] interwiki โ
[] invitesignup โ
[] jsduck โ
[] jsonconfig โ
[] kafka ๐ฃ
[] kartographer โ
[] kartographerwv โ
[] keystone ๐ฃ
[] l10nupdate โ
[] labeledsectiontransclusion โ
[] langwikis โ
[] ldapauth โ
[] liquidthreads ๐ฃ
[] lockdown โ
[] loginnotify ๐ฃ
[] maps โ
[] massaction โ
[] massmessage ๐ฃ
[] math ๐ฃ
[] mathoid โ ๏ธ
[] mathsearch ๐ฃ
[x] mediawiki (default) โ
[] memcached โ
[] minerva โ
[] mleb โ
[] mobileapp โ
[] mobilecontentservice ๐ฃ
[x] mobilefrontend โ
[] modern โ
[] molhandler โ
[] monobook โ
[x] multimedia โ
[x] multimediaviewer โ
[] mysql_strict โ
[x] navigationtiming โ
[] newsletter โ
[] newusermessage โ
[] notebook โ
[] nuke โ
[] oathauth โ
[] oauth โ
[] oauthauthentication โ
[] offline ๐ฃ
[] oozie ๐ฃ
[] openbadges โ
[] ores โ
[] ores_service โ
[] pageassessments โ
[] pagedtiffhandler โ
[] pageimages โ
[] pagetriage โ
[] pageviewinfo โ
[] parserfunctions โ
[] parsoid โ ๏ธ
[] payments ๐ฃ
[x] pdfhandler โ
[x] performanceinspector โ
[] phabricator ๐ฃ
[] phptags โ
[] phragile ๐ฃ
[] pipeescape โ
[] poem โ
[] poolcounter ๐ฃ T183384
[x] popups โ
[] private โ
[] proofreadpage โ
[] psr3 โ
[] questycaptcha ๐ฃ
[] quicksurveys โ
[] quips ๐ฃ
[] quiz โ
[] raita ๐ฃ
[] readinglists โ
[x] relatedarticles โ
[] renameuser โ
[] restbase
[] revisionslider
[] sal
[] sandboxlink
[] scholarships
[] score
[] scribunto
[] securepoll
[] semanticextraspecialproperties
[] semanticmediawiki
[] semanticresultformats
[] semantictitle
[] sentry
[] shorturl
[] simple_miser
[] simple_performant
[] sitematrix
[] spark
[x] statsd T183374
[] striker
[x] svg
[x] swift T183354
[] syntaxhighlight
[] templatedata
[] templatesandbox
[] templatestyles
[] testwiki
[] textextracts
[x] three_d T183446
[] throttleoverride
[x] thumb_on_404
[] thumbor T183462
[] tidy
[x] timedmediahandler
[] timeless
[] titleblacklist
[] torblock
[] translate
[] uls
[] uploadslink
[x] uploadwizard
[] urlgetparameters
[] urlshortener
[] usermerge
[] variables
[x] varnish
[x] vipsscaler
[] visualeditor
[] warnings_as_errors
[] whoops
[] widgets
[] wikibase_repo
[] wikidata T183307
[] wikidatapagebanner
[] wikidiff2
[] wikieditor
[] wikihiero
[] wikilabels
[] `wikilove`
[] wikimediaevents
[] wikimediaflow
[] wikimediaincubator
[] wikimediamaintenance
[] wikimediamessages
[] wikimediaproduction
[] wikimetrics
[] wikipediaextracts
[] wikispeech
[] wikitech
[] xanalytics
[] xhprofgui
[] youtube
[] zero
==Reporting issues==
Please create a subtask of this tracking task. It will be difficult to keep track of bugs reported as individual comments here.