Page MenuHomePhabricator

Cannot run supported MW release branches on MediaWiki-Vagrant
Closed, DeclinedPublic

Description

As noted at T268273#6635580 due to PHP version requirements you can't run MW 1.35 on MediaWiki-Vagrant

Therefore blocked on T256822

Event Timeline

We can just install the Stretch backport from https://packages.sury.org/php/

We can just install the Stretch backport from https://packages.sury.org/php/

I imagine we'd have ended up doing that if the 7.3 bump had happened in master already. Could be worth doing though as a shorter term mitigation for T256822 too

Change 642641 had a related patch set uploaded (by Gergő Tisza; owner: Gergő Tisza):
[mediawiki/vagrant@master] [WIP] Make PHP version configurable

https://gerrit.wikimedia.org/r/642641

I can't seem to get the version pinning right.

vagrant@test:~$ cat /etc/apt/preferences.d/sury-override.pref 
Package: libpcre2-* php-apcu php-igbinary php-redis php-tideways php-xdebug
Pin: release o=deb.sury.org
Pin-Priority: 1010

vagrant@test:~$ apt policy
...
Pinned packages:
     php-xdebug -> 2.9.8+2.8.1+2.5.5+3.0.0~beta1-2+0~20201021.25+debian9~1.gbp75a631 with priority 1010
     php-igbinary -> 3.1.5+2.0.8-1+0~20200917.17+debian9~1.gbp75a732 with priority 1010
     libpcre2-8-0-dbgsym -> 10.34-7+0~20191219.5+debian9~1.gbp555bb9 with priority 1010
     libpcre2-32-0 -> 10.34-7+0~20191219.5+debian9~1.gbp555bb9 with priority 1010
     libpcre2-32-0-dbgsym -> 10.34-7+0~20191219.5+debian9~1.gbp555bb9 with priority 1010
     nodejs -> 6.17.1-1nodesource1 with priority 1010
     libpcre2-posix2-dbgsym -> 10.34-7+0~20191219.5+debian9~1.gbp555bb9 with priority 1010
     libpcre2-dbg -> 10.33-1+0~20190710.4+debian9~1.gbpa344f0 with priority 1010
     libpcre2-dev -> 10.34-7+0~20191219.5+debian9~1.gbp555bb9 with priority 1010
     libpcre2-8-0 -> 10.34-7+0~20191219.5+debian9~1.gbp555bb9 with priority 1010
     libpcre2-16-0-dbgsym -> 10.34-7+0~20191219.5+debian9~1.gbp555bb9 with priority 1010
     php-redis -> 5.3.1+4.3.0-1+0~20200708.25+debian9~1.gbp800f71 with priority 1010
     libpcre2-posix0 -> 10.33-1+0~20190710.4+debian9~1.gbpa344f0 with priority 1010
     libpcre2-posix2 -> 10.34-7+0~20191219.5+debian9~1.gbp555bb9 with priority 1010
     php-tideways -> 5.0.2-1+0~20191219.8+debian9~1.gbpc60446 with priority 1010
     libpcre2-16-0 -> 10.34-7+0~20191219.5+debian9~1.gbp555bb9 with priority 1010
     php-apcu -> 5.1.18+4.0.11-1+0~20200518.14+debian9~1.gbpa99079 with priority 1010

vagrant@test:~$ apt policy php-redis
php-redis:
  Installed: 4.2.0-1+0~20190222131115.11+stretch~1.gbpf8a642+wmf1
  Candidate: 5.3.1+4.3.0-1+0~20200708.25+debian9~1.gbp800f71
  Version table:
     5.3.1+4.3.0-1+0~20200708.25+debian9~1.gbp800f71 1010
        500 https://packages.sury.org/php stretch/main amd64 Packages
 *** 4.2.0-1+0~20190222131115.11+stretch~1.gbpf8a642+wmf1 1001
       1001 https://apt.wikimedia.org/wikimedia stretch-wikimedia/component/php72 amd64 Packages
        100 /var/lib/dpkg/status
     3.1.1-1 500
        500 http://deb.debian.org/debian stretch/main amd64 Packages

vagrant@test:~$ dpkg -L php-redis
/.
/etc
/etc/php
/etc/php/7.2
/etc/php/7.2/mods-available
/etc/php/7.2/mods-available/redis.ini
/usr
/usr/lib
/usr/lib/php
/usr/lib/php/20170718
/usr/lib/php/20170718/redis.so
/usr/share
/usr/share/doc
/usr/share/doc/php-redis
/usr/share/doc/php-redis/changelog.Debian.gz
/usr/share/doc/php-redis/copyright

but that's not the right package, which would give

tgr@tgr-ThinkPad:~$ dpkg -c Downloads/php-redis_5.3.1+4.3.0-1+0_20200708.25+debian9_1.gbp800f71_i386.deb 
drwxr-xr-x root/root         0 2020-07-08 00:53 ./
drwxr-xr-x root/root         0 2020-07-08 00:53 ./etc/
drwxr-xr-x root/root         0 2020-07-08 00:53 ./etc/php/
drwxr-xr-x root/root         0 2020-07-08 00:53 ./etc/php/5.6/
drwxr-xr-x root/root         0 2020-07-08 00:53 ./etc/php/5.6/mods-available/
-rw-r--r-- root/root        19 2020-07-08 00:53 ./etc/php/5.6/mods-available/redis.ini
drwxr-xr-x root/root         0 2020-07-08 00:53 ./etc/php/7.0/
drwxr-xr-x root/root         0 2020-07-08 00:53 ./etc/php/7.0/mods-available/
-rw-r--r-- root/root        19 2020-07-08 00:53 ./etc/php/7.0/mods-available/redis.ini
drwxr-xr-x root/root         0 2020-07-08 00:53 ./etc/php/7.1/
drwxr-xr-x root/root         0 2020-07-08 00:53 ./etc/php/7.1/mods-available/
-rw-r--r-- root/root        19 2020-07-08 00:53 ./etc/php/7.1/mods-available/redis.ini
drwxr-xr-x root/root         0 2020-07-08 00:53 ./etc/php/7.2/
drwxr-xr-x root/root         0 2020-07-08 00:53 ./etc/php/7.2/mods-available/
-rw-r--r-- root/root        19 2020-07-08 00:53 ./etc/php/7.2/mods-available/redis.ini
drwxr-xr-x root/root         0 2020-07-08 00:53 ./etc/php/7.3/
drwxr-xr-x root/root         0 2020-07-08 00:53 ./etc/php/7.3/mods-available/
-rw-r--r-- root/root        19 2020-07-08 00:53 ./etc/php/7.3/mods-available/redis.ini
drwxr-xr-x root/root         0 2020-07-08 00:53 ./etc/php/7.4/
drwxr-xr-x root/root         0 2020-07-08 00:53 ./etc/php/7.4/mods-available/
-rw-r--r-- root/root        19 2020-07-08 00:53 ./etc/php/7.4/mods-available/redis.ini
drwxr-xr-x root/root         0 2020-07-08 00:53 ./usr/
drwxr-xr-x root/root         0 2020-07-08 00:53 ./usr/lib/
drwxr-xr-x root/root         0 2020-07-08 00:53 ./usr/lib/php/
drwxr-xr-x root/root         0 2020-07-08 00:53 ./usr/lib/php/20131226/
-rw-r--r-- root/root    665976 2020-07-08 00:53 ./usr/lib/php/20131226/redis.so
drwxr-xr-x root/root         0 2020-07-08 00:53 ./usr/lib/php/20151012/
-rw-r--r-- root/root    629408 2020-07-08 00:53 ./usr/lib/php/20151012/redis.so
drwxr-xr-x root/root         0 2020-07-08 00:53 ./usr/lib/php/20160303/
-rw-r--r-- root/root    613024 2020-07-08 00:53 ./usr/lib/php/20160303/redis.so
drwxr-xr-x root/root         0 2020-07-08 00:53 ./usr/lib/php/20170718/
-rw-r--r-- root/root    613024 2020-07-08 00:53 ./usr/lib/php/20170718/redis.so
drwxr-xr-x root/root         0 2020-07-08 00:53 ./usr/lib/php/20180731/
-rw-r--r-- root/root    608928 2020-07-08 00:53 ./usr/lib/php/20180731/redis.so
drwxr-xr-x root/root         0 2020-07-08 00:53 ./usr/lib/php/20190902/
-rw-r--r-- root/root    608928 2020-07-08 00:53 ./usr/lib/php/20190902/redis.so
drwxr-xr-x root/root         0 2020-07-08 00:53 ./usr/share/
drwxr-xr-x root/root         0 2020-07-08 00:53 ./usr/share/doc/
drwxr-xr-x root/root         0 2020-07-08 00:53 ./usr/share/doc/php-redis/
-rw-r--r-- root/root      2234 2020-07-08 00:53 ./usr/share/doc/php-redis/changelog.Debian.gz
-rw-r--r-- root/root      4707 2019-06-06 01:03 ./usr/share/doc/php-redis/copyright

I suppose I would not some kind of epxlicit upgrade command to switch?

We can just install the Stretch backport from https://packages.sury.org/php/

I imagine we'd have ended up doing that if the 7.3 bump had happened in master already. Could be worth doing though as a shorter term mitigation for T256822 too

If we follow production (which I think we should), T256822: [EPIC] Upgrade MediaWiki-Vagrant to Debian Buster won't get us PHP 7.3 yet either. Per T245757: Upgrade MediaWiki clusters to Debian Buster (debian 10) things are not moving to php 7.3 in WMF prod at the same time as the distro upgrade.

Reedy renamed this task from Cannot run MW 1.35 on MediaWiki-Vagrant to Cannot run MW 1.35 or 1.36 on MediaWiki-Vagrant.Apr 9 2021, 2:28 AM
Reedy renamed this task from Cannot run MW 1.35 or 1.36 on MediaWiki-Vagrant to Cannot run supported MW release branches on MediaWiki-Vagrant.Mar 9 2022, 11:17 PM

I tried to check out 1.35 on a Vagrant box and it broke hard; too much configuration drift. I think this is just not feasible, other than checking out an appropriately old version of Vagrant.

This task was originally about not being able to check out even a current release branch because of PHP version differences (as Wikimedia production was on an older version than what was allowed by the current release); that's not an issue right now (1.39 requirees PHP 7.4+ and Wikimedia production uses 7.4) so let's decline this.

Change 642641 abandoned by Gergő Tisza:

[mediawiki/vagrant@master] [WIP] Make PHP version configurable

Reason:

per task, not needed right now

https://gerrit.wikimedia.org/r/642641