Page MenuHomePhabricator

[OPS] Jenkins: Upgrade jsduck from v4.x to v5.x
Closed, ResolvedPublic

Description

We're currently on v4.10.4 (bug 53731).

v5.x brings various enhancements and bug fixes, among it a new event system. However since this is a major upgrade, don't poke ops yet because we got some stuff to figure out first.

This is a reminder to do this things (see also blocking bugs).


Version: wmf-deployment
Severity: enhancement

Details

Reference
bz55753

Event Timeline

bzimport raised the priority of this task from to Medium.Nov 22 2014, 2:37 AM
bzimport set Reference to bz55753.
bzimport added a subscriber: Unknown Object (MLST).

From an IRC discussion with James on IRC:

You need a RT ticket to get the new version packaged. The debian files are in operations/debs/ruby-jsduck.git

Then ping ops till someone is assigned and able to update the package and upload it on apt.wikimedia.org

Then one (ops / me) can manually upgrade the package on the Jenkins CI slaves ( gallium.wikimedia.org / lanthanum.eqiad.wmnet )

RT ticket is assigned to Matanya; marking as such here too.

Dependencies have been resolved. Projects using jsduck have been migrated to be compatible with JSDuck 5 where needed.

We're now in fact have projects blocked on this upgrade as they are not only compatible with jsduck 5, but incompatible with the (now, quite outdated) jsduck v4.

Please commence upgrade ASAP :)

The blocker on the ops side is ubuntu trusty image for labs. Ryan lane is working on it, and it should be resolved shortly, i hope. Once one can use trusty images in labs it will be quite easy to solve this. Maybe Faidon will want to do this with precise, but i suggest not. Ryan might know the exact status on this matter.

Timo, we can probably skip the Debian package entirely and use gem instead of Debian package.

matanya, what is preventing ops from backporting JSDuck to Ubuntu Precise? I am not going to use Ubuntu Trusty for CI anytime soon.

The jsduck folks changed there internal engine and have new dependencies which aren't met in precise. It is probably doable, but hard.

RT #6344 has been closed by Alexandros:

JSDuck 5.3.4 ended up having as a dependency rkelly-remix (a fork of rkelly
by the dev(s) of JSDuck).
This has also been packaged.
Both packages have been tested by Timo and afterwards confirmation I have
uploaded them both on apt.wikimedia.org

$ apt-cache policy ruby-jsduck
ruby-jsduck:

Installed: 4.10.4-1~wmf1
Candidate: 5.3.4-1wmf1
Version table:
   5.3.4-1wmf1 0
     1001 http://apt.wikimedia.org/wikimedia/ precise-wikimedia/main amd64 Packages
  • 4.10.4-1~wmf1 0 100 /var/lib/dpkg/status

$ apt-cache policy ruby-rkelly-remix
ruby-rkelly-remix:

Installed: (none)
Candidate: 0.0.6-1
Version table:
   0.0.6-1 0
     1001 http://apt.wikimedia.org/wikimedia/ precise-wikimedia/main amd64 Packages

Timo, whenever you are ready to switch to jsduck we can apt-get upgrade gallium to install the new package :)