Page MenuHomePhabricator

"Latest" hhvm package has lower version number and breaks mw-vagrant puppet
Closed, ResolvedPublic

Description

We use ensure => latest for the HHVM packages in MediaWiki-Vagrant. As a part of a careful production upgrade process (T86096), the most recent HHVM package in the Wikimedia apt repo has a lower version number that the prior build. This is causing Puppet to fail:

1==> default: Error: Could not update: Execution of '/usr/bin/apt-get -q -y -o DPkg::Options::=--force-confold install hhvm' returned 100: Reading package lists...
2==> default: Building dependency tree...
3==> default: Reading state information...
4==> default: The following package was automatically installed and is no longer required:
5==> default: libicu48
6==> default: Use 'apt-get autoremove' to remove it.
7==> default: The following packages will be DOWNGRADED:
8==> default: hhvm
9==> default: 0 upgraded, 0 newly installed, 1 downgraded, 0 to remove and 20 not upgraded.
10==> default: Need to get 10.3 MB of archives.
11==> default: After this operation, 4096 B of additional disk space will be used.
12==> default: E: There are problems and -y was used without --force-yes
13==> default:
14==> default: Error: /Stage[main]/Hhvm/Package[hhvm]/ensure: change from 3.12.1+dfsg-1 to 3.12.1+dfsg-1~wmf1+trusty0 failed: Could not update: Execution of '/usr/bin/apt-get -q -y -o DPkg::Options::=--force-confold install hhvm' returned 100: Reading package lists...
15==> default: Building dependency tree...
16==> default: Reading state information...
17==> default: The following package was automatically installed and is no longer required:
18==> default: libicu48
19==> default: Use 'apt-get autoremove' to remove it.
20==> default: The following packages will be DOWNGRADED:
21==> default: hhvm
22==> default: 0 upgraded, 0 newly installed, 1 downgraded, 0 to remove and 20 not upgraded.
23==> default: Need to get 10.3 MB of archives.
24==> default: After this operation, 4096 B of additional disk space will be used.
25==> default: E: There are problems and -y was used without --force-yes
26==> default:
27==> default: Notice: /Stage[main]/Hhvm/Service[hhvm]: Dependency Package[hhvm] has failures: true
28==> default: Notice: /Stage[main]/Hhvm/Service[hhvm]: Dependency Package[hhvm-dev] has failures: true
29==> default: Warning: /Stage[main]/Hhvm/Service[hhvm]: Skipping because of failed dependencies

Event Timeline

Restricted Application added subscribers: Zppix, Aklapper. · View Herald Transcript

@ori suggested using install_options => ['--force-yes'] to work around this. Unfortunately Puppet didn't add install_options support to the apt provider until 3.6.0 and we only have 3.4.3 in the Trusty VMs.

Change 290610 had a related patch set uploaded (by BryanDavis):
hhvm: Temporarily change to ensure => present

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

Change 290610 merged by jenkins-bot:
hhvm: Temporarily change to ensure => present

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

I am sorry for this breakage, but the lower version number was done on purpose in order not to have people inadvertently upgrade while the transition is not done.

bd808 changed the task status from Open to Stalled.Jun 7 2016, 12:56 AM
bd808 triaged this task as Low priority.
bd808 removed a project: Patch-For-Review.

Parking this with a stalled status and low priority until the next WMF release of HHVM with a version number > 3.12.1+dfsg-1 is available at https://apt.wikimedia.org/wikimedia/pool/main/h/hhvm/. When that release exists we can revert the temporary change made in https://gerrit.wikimedia.org/r/290610.

Mentioned in SAL [2016-06-09T15:28:52Z] <bd808> Fixed broken iso image builder by manually running apt for T136146

Just as a FYI, we're going to release a new hhvm package version that will be *higher* than the preceding one pretty soon.