Last modified: 2014-02-06 14:32:46 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 T46443, the corresponding Phabricator task for complete and up-to-date bug report information.
Bug 44443 - Jenkins: install tox on Precise labs instances
Jenkins: install tox on Precise labs instances
Status: RESOLVED FIXED
Product: Wikimedia
Classification: Unclassified
Continuous integration (Other open bugs)
unspecified
All All
: Normal enhancement (vote)
: ---
Assigned To: Nobody - You can work on this!
:
Depends on:
Blocks: 53353
  Show dependency treegraph
 
Reported: 2013-01-28 22:51 UTC by Antoine "hashar" Musso (WMF)
Modified: 2014-02-06 14:32 UTC (History)
3 users (show)

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


Attachments

Description Antoine "hashar" Musso (WMF) 2013-01-28 22:51:31 UTC
python-tox is only in raring for now, need a backport in Precise.
Comment 1 Antoine "hashar" Musso (WMF) 2013-02-11 15:36:01 UTC
Note, the source package is "tox". Attempting backporting with:

 backportpackage -s raring -d precise -w workdir/ tox

Created a bunch of files:


$ ls -1
tox_1.4.2-2.debian.tar.gz
tox_1.4.2-2.dsc
tox_1.4.2-2~precise1.debian.tar.gz
tox_1.4.2-2~precise1.dsc
tox_1.4.2-2~precise1_source.build
tox_1.4.2-2~precise1_source.changes
tox_1.4.2-2~ubuntu12.04.1.debian.tar.gz
tox_1.4.2-2~ubuntu12.04.1.dsc
tox_1.4.2-2~ubuntu12.04.1_source.build
tox_1.4.2-2~ubuntu12.04.1_source.changes
tox_1.4.2.orig.tar.gz
Comment 2 Antoine "hashar" Musso (WMF) 2013-02-11 15:36:28 UTC
rephrasing to backporting "tox" which is the source package providing "python-tox".
Comment 3 Antoine "hashar" Musso (WMF) 2013-02-11 18:05:20 UTC
So that needs a bunch of other packages that need to be backported :(

The following packages have unmet dependencies:
 pbuilder-satisfydepends-dummy :

Depends: debhelper (>= 8) but it is not going to be installed
Depends: python-all but it is not going to be installed
Depends: python-argparse
Depends: python-doc but it is not going to be installed
Depends: python-pkg-resources but it is not going to be installed
Depends: python-py but it is not installable
Depends: python-pytest but it is not installable
Depends: python-setuptools but it is not going to be installed
Depends: python-sphinx (>= 1.0.7+dfsg) but it is not going to be installed
Depends: python-virtualenv but it is not installable
Comment 4 Antoine "hashar" Musso (WMF) 2013-02-11 18:08:20 UTC
So maybe instead of backporting we could snapshot tox using pip install in a virtual environment.
Comment 5 Antoine "hashar" Musso (WMF) 2013-08-30 08:32:05 UTC
With tox 1.5.0 :


The following packages have unmet dependencies:
 pbuilder-satisfydepends-dummy :
  Depends: python-pytest which is a virtual package.
  Depends: python-setuptools but it is not going to be installed.
  Depends: python-sphinx (>= 1.0.7+dfsg) but it is not going to be installed.
  Depends: python-virtualenv but it is not going to be installed.

Would need to backport python-pytest as well :/
Comment 6 Antoine "hashar" Musso (WMF) 2014-02-05 21:27:03 UTC
Alternatively we could run tox commands on labs. Puppet knows how to fetch from pip and the following would work (tested on integration-pbuilder.pmtpa.wmflabs ):

$ cat pip.pp 
package { 'python-pip':
  ensure => present,
}

package { 'tox':
  ensure   => present,
  provider => 'pip',
  require  => Package['python-pip'],
}
$

# puppet apply pip.pp 
notice: /Stage[main]//Package[python-pip]/ensure: ensure changed 'purged' to 'present'
notice: /Stage[main]//Package[tox]/ensure: created
notice: Finished catalog run in 11.53 seconds
# 

$ which pip && pip --version
/usr/bin/pip
pip 1.0 from /usr/lib/python2.7/dist-packages (python 2.7)

$ which tox && tox --version
/usr/local/bin/tox
1.7.0 imported from /usr/local/lib/python2.7/dist-packages/tox/__init__.pyc
$

$ which virtualenv
/usr/local/bin/virtualenv
$ virtualenv --version
1.11.2
$


\O/
Comment 7 Gerrit Notification Bot 2014-02-05 21:32:14 UTC
Change 111536 had a related patch set uploaded by Hashar:
contint: on slave labs, install tox from pip

https://gerrit.wikimedia.org/r/111536
Comment 8 Gerrit Notification Bot 2014-02-06 10:37:56 UTC
Change 111536 merged by Alexandros Kosiaris:
contint: on slave labs, install tox from pip

https://gerrit.wikimedia.org/r/111536
Comment 9 Antoine "hashar" Musso (WMF) 2014-02-06 14:30:32 UTC
Since backporting was too cumbersome, the pip option turned out to be an acceptable workaround.

pip / tox / virtualenv should now be installed on any instance having role::ci::slave::labs (i.e.: integration-slave01).

Such instances would need to be configured in Jenkins to have the 'hasTox' label for now.

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


Navigation
Links