Page MenuHomePhabricator

[keyresult] Migrate php (Zend and HHVM) CI jobs to Nodepool
Closed, ResolvedPublic

Related Objects

StatusSubtypeAssignedTask
Resolvedhashar
Resolvedhashar
ResolvedJoe
ResolvedJoe
ResolvedJoe
ResolvedJoe
Resolvedtstarling
ResolvedJoe
Resolvedkaldari
Resolvedjcrespo
ResolvedVolans
ResolvedPRODUCTION ERRORaaron
InvalidNone
DeclinedNone
ResolvedLegoktm
Resolvedhashar
Resolvedhashar
Resolvedhashar
Resolvedori
Resolvedhashar
Resolvedhashar
Resolvedhashar
Resolvedhashar
InvalidNone
DeclinedNone
Resolvedhashar
Resolvedhashar

Event Timeline

greg raised the priority of this task from to Medium.
greg updated the task description. (Show Details)
greg added subscribers: hashar, Aklapper, greg.
greg renamed this task from Migrate php composer (Zend and HHVM) CI jobs to Nodepool to [keyresult] Migrate php composer (Zend and HHVM) CI jobs to Nodepool.Jan 20 2016, 12:14 AM

We first need bits to be able to select which flavor of PHP (Zend 5.3, Zend 5.5 or HHVM). We are not there yet. Some attempt has been made to switch to Zend 5.5 (but still on Trusty permanent slave). That is a work in progress.

Then we can generalize to use HHVM. We will then need a package on Jessie (low prio blocker is T125821) before being able to migrate to Nodepool instances.

hashar added a subscriber: Legoktm.

We first need bits to be able to select which flavor of PHP (Zend 5.3, Zend 5.5 or HHVM). We are not there yet. Some attempt has been made to switch to Zend 5.5 (but still on Trusty permanent slave). That is a work in progress.

Aced by @Legoktm with T126211: Make /usr/bin/php a wrapper that picks the right PHP version on CI slaves

Status update

Prerequisite tasks have been accomplished such as introducing the PHP_BIN based wrapper and migrating repositories to use composer as an entry point.

Jessie provides Zend 5.6. For MediaWiki we will need Zend 5.5 and HHVM both having tasks and being blocker of this.

Maybe we can update php using the nodepool image and also install composer with it too.

@Joe provided HHVM on Jessie (T125821) and on that task @akosiaris pointed out that libicu would be different on Jessie. He suggest to instead use Trusty which would be closer to what we run in production.

I did not really want to maintain two distributions but eventually providing a Trusty image was "just" a one day sprint T133203.

I will start crafting a few experimental jobs and refine as needed. We should then be able to migrate both HHVM and Zend 5.5 jobs to Nodepool instances.

Change 285236 had a related patch set uploaded (by Hashar):
dib: composer and Zend PHP for mw on Trusty

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

Change 285236 merged by jenkins-bot:
dib: composer and Zend PHP for mw on Trusty

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

Status update

The Trusty image is provided as of T133203

I have added Zend php5 and composer but listed actions on T128092#2240335 (and below). Seems composer works fine there.

We need our PHP_BIN wrapper script to be merged so it can be included on Nodepool image. That is T126211 which is just pending merge of a puppet patch.

Change 285642 had a related patch set uploaded (by Hashar):
Composer jobs on Nodepool instances

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

Change 285642 merged by jenkins-bot:
Composer jobs on Nodepool instances

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

Did progress on provisioning PHP:

DistroZendHHVM
TrustyYesYes
JessieNOYes
hashar renamed this task from [keyresult] Migrate php composer (Zend and HHVM) CI jobs to Nodepool to [keyresult] Migrate php (Zend and HHVM) CI jobs to Nodepool.Apr 29 2016, 10:10 AM

Change 286433 had a related patch set uploaded (by Hashar):
Switches composer packages to Nodepool

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

Change 286433 merged by jenkins-bot:
Switch composer packages to Nodepool

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

Change 286452 had a related patch set uploaded (by Hashar):
Pass composer-test55 jobs to Nodepool instances

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

Change 286452 merged by jenkins-bot:
Pass composer-test55 jobs to Nodepool instances

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

Change 286460 had a related patch set uploaded (by Hashar):
Switch experimental composer jobs to Nodepool

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

Change 286462 had a related patch set uploaded (by Hashar):
Migrate remaining composer jobs to Nodepool

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

Change 286460 merged by jenkins-bot:
Switch experimental composer jobs to Nodepool

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

Change 286497 had a related patch set uploaded (by Hashar):
(WIP) Mediawiki PHPUnit to Nodepool (WIP)

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

Change 286462 merged by jenkins-bot:
Migrate remaining composer jobs to Nodepool

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

Change 286602 had a related patch set uploaded (by Hashar):
Drop composer jobs from permanent slaves

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

Change 286602 merged by jenkins-bot:
Drop composer jobs from permanent slaves

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

Change 288187 had a related patch set uploaded (by Hashar):
dib: add contint::packages::php

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

Change 288187 merged by jenkins-bot:
dib: add contint::packages::php

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

Mentioned in SAL [2016-05-11T13:33:52Z] <hashar> Added contint::packages::php to Nodepool images T119139

Change 288203 had a related patch set uploaded (by Hashar):
dib: misc packages for MediaWiki testing

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

Change 288203 merged by jenkins-bot:
dib: misc packages for MediaWiki testing

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

Change 286497 merged by jenkins-bot:
Mediawiki core/vendor PHPUnit jobs to Nodepool

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

In the interest of cleaning up the augeas stables our project is I am closing this task. Most everything has been migrated now and the last remaining bits are PHP extensions compilation which is tracked by T134381