Last modified: 2014-09-21 00:36:56 UTC

Wikimedia Bugzilla is closed!

Wikimedia migrated from Bugzilla to Phabricator. Bug reports are handled in Wikimedia Phabricator.
This static website is read-only and for historical purposes. It is not possible to log in and except for displaying bug reports and their history, links might be broken. See T68056, the corresponding Phabricator task for complete and up-to-date bug report information.
Bug 66056 - Jenkins: Upgrade nodejs from 0.8.x to 0.10.x on wmflabs integration slaves
Jenkins: Upgrade nodejs from 0.8.x to 0.10.x on wmflabs integration slaves
Status: RESOLVED FIXED
Product: Wikimedia
Classification: Unclassified
Continuous integration (Other open bugs)
wmf-deployment
All All
: Normal enhancement (vote)
: ---
Assigned To: Antoine "hashar" Musso (WMF)
:
Depends on: 68256
Blocks:
  Show dependency treegraph
 
Reported: 2014-06-02 22:56 UTC by Krinkle
Modified: 2014-09-21 00:36 UTC (History)
6 users (show)

See Also:
Web browser: ---
Mobile Platform: ---
Assignee Huggle Beta Tester: ---


Attachments

Description Krinkle 2014-06-02 22:56:42 UTC
This is overdue.

Various packages used by individual Grunt tasks used by local projects already throw warnings for the engine being unsupported.

These are not the packages for the legacy global tools in package.json in integration/jenkins.git:/tools aka slave-scripts, but the local package.json in projects like oojs, oojs-ui and VisualEditor.

As far as I can see these jobs seem to function fine, but it's really dangerous territory. The packages are explicitly indicated as requiring 0.10.x or higher (it's like executing a PHP application documented as requiring PHP 5.3 under PHP 5.1.x).

Both the upstream developer, their integration tests and the developers in our teams working locally already use Nodejs 0.10.x or higher, so this is waiting for something to fail.
Comment 1 Antoine "hashar" Musso (WMF) 2014-06-02 23:37:58 UTC
On contint slaves we have nodejs 0.8.2 which comes from apt.wikimedia.org.  AFAIK that is the version used on parsoid servers as well.

When I asked npm package to be backported with RT #6519 Faidon the plan is to migrate to Ubuntu Trusty (14.04) which ships 0.10.25.

wmflabs now provides a Trusty virtual image and we run npm jobs there.

So you can:
- build an instance using Trusty image
- attempt to apply the puppet manifest role::ci::slave::labs
- add the slave in Jenkins (we can pair that part)
- apply a label to the slave (ex: UbuntuTrusty) and tie some job to it


A culprit: anything running in production with nodejs 0.8 should probably be kept with nodejs 0.8 (parsoid parser tests come to mind) or we might end up missing incompatibility.  You can sync with Gabriel Wicke for that part.


Overall: yeah lets go!
Comment 2 Antoine "hashar" Musso (WMF) 2014-08-01 09:46:06 UTC
We have a Trusty Jenkins slave in labs: integration-slave1004-trusty.eqiad.wmflabs

It has the label UbuntuTrusty.  The npm based jobs can be made to run on it by changing the node:  definition in Jenkins Job Builder configuration.

The node has:

$ npm --version
1.3.10
$ nodejs --version
v0.10.25
$
Comment 3 Antoine "hashar" Musso (WMF) 2014-08-22 10:26:13 UTC
The Trusty slave is integration-slave1006-trusty.eqiad.wmflabs

The label remain unchanged:  UbuntuTrusty.


Marking this bug as fixed since npm/nodejs are available there. "Just" have to update the label in the job configuration.
Comment 4 Gerrit Notification Bot 2014-09-09 00:31:27 UTC
Change 159224 had a related patch set uploaded by Krinkle:
[WIP] job-templates: Move {name}-npm from Precise to Trusty

https://gerrit.wikimedia.org/r/159224
Comment 5 Gerrit Notification Bot 2014-09-21 00:36:56 UTC
Change 159224 merged by jenkins-bot:
job-templates: Move {name}-npm from Precise to Trusty

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

Note You need to log in before you can comment on or make changes to this bug.


Navigation
Links