Commit Graph

57 Commits

Author SHA1 Message Date
Chad Whitacre
076c73d22f Turn on py36 at Travis
Drops the old py35 job, per @exarkun:

https://github.com/tahoe-lafs/tahoe-lafs/pull/732#discussion_r449615599

Also bumps Ubuntu at Travis so we can get 3.8 eventually. I first went
to 3.8 before dropping back to 3.6 as our initial target. Trusty on
Travis does include 3.6, but since we want 3.8 "pretty soon," and the OS
bump ended up being tricky (see below), let's go ahead and keep the OS
bump. Xenial (16.04) is the current default at Travis, and it does have
3.8 available:

https://docs.travis-ci.com/user/languages/python/#python-versions

The tricky bug is that different versions of virtualenv have different
seeding algorithms: https://discuss.python.org/t/-/4146). CI puts us
several layers deep in virtualenv-ception and I didn't fully unravel the
whole thing, but starting with a modern virtualenv seems to work around
the issue.
2020-07-13 22:27:59 -04:00
Chris Wood
105ddc005e Add comment re. testing PyInstaller executables 2019-10-07 11:31:29 -04:00
Chris Wood
7f17a92719 Try testing PyInstaller builds on Travis-CI 2019-10-04 11:14:40 -04:00
Jean-Paul Calderone
1738b9fdf6 try skipping tahoe-depgraph.py
This will go away when the Python 3 port is done.  It doesn't have to be ported.
2019-09-17 10:55:58 -04:00
heartsucker
bade09cf14
enforce python3 syntax 2019-05-03 18:12:57 +02:00
heartsucker
138669c726
python3 syntax checker ratchet job 2019-03-28 12:32:13 +01:00
Jean-Paul Calderone
3c5cb8d3cf deconfigure travisci for integration testing 2019-01-24 09:03:06 -05:00
Jean-Paul Calderone
dc4d30f7c2 Switch to TAHOE_LAFS prefix 2018-04-03 14:07:12 -04:00
Jean-Paul Calderone
a218b68d98 Configure CI to use the Hypothesis CI profile 2018-04-03 13:16:53 -04:00
Brian Warner
91f639f0d2 travis: add pyinstaller job
We aren't yet using these artifacts (we plan to build the production ones on
our buildbot machines), but this will make sure we don't break the process.
2018-03-29 12:12:20 -07:00
Brian Warner
f1a853e115 travis: simplify commands
We do everything with tox, so the MODE environment variable is really just a
tox environment identifier
2018-03-29 12:11:35 -07:00
Brian Warner
d395a11208 travis: clean up the config file, use "language: python" on linux
The OS-X builders don't offer a python environment, so we have to build
things ourselves (installing tox/etc with --user, instead of into the
virtualenv that "language: python" gives us).
2018-03-28 19:26:26 -07:00
Brian Warner
8ae1b52070 travis: explicitly set LANG on all builds (to C or en_US.UTF-8) 2018-03-28 17:09:51 -07:00
Brian Warner
4cd8c699e2 travis: use LANG=C instead of unsetting it entirely
Thanks to exarkun for the suggestion. The failing buildbots have LANG unset,
but I'm pretty sure that defaults to LANG=C, and LANG=C triggers the failures
just as well as LANG= did.
2018-03-28 16:16:52 -07:00
Brian Warner
3bc099108a travis: add a LANG= linux build
to catch things like ticket:2912
(https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2912)

Also clean up other "list"-ish keys to avoid causing too many builds:

* "os": move this into "matrix"
* "python": 2.7 is the default, and we weren't running the pypy build
  anyways (not sure why, something else in this config must have disabled it,
  maybe when we moved away from language: python)
* "allow_failures" was causing a pypy build to happen even without listing it
  in "python"

We now have exactly three builds:

* linux
* linux with LANG=
* OS-X
2018-03-28 14:32:46 -07:00
Brian Warner
40d8ad68c1 travis: add --upgrade, so we actually get a newer setuptools 2018-03-20 17:50:26 -07:00
Brian Warner
6f20dbc9a3 travis: install latest setuptools before running tox
The Travis OS-X worker has a very old setuptools-18.5 in /System. This is too
old to understand several important setup.py keys like `python_requires`, and
crashes when tryung to run the first invocation of tox (`tox -e codechecks`).
I think tox is using the system python (with which `tox` was invoked) to run
`setup.py egg_info` (to learn the dependencies), which gets the old
system-installed setuptools. Ideally it'd use the python from the
newly-created virtualenv, which would use whatever version of setuptools was
bundled with the `virtualenv` package (probably newer, given that
`virtualenv` itself should have been installed a moment earlier as a
dependency of `tox`.

I consider this a bug in Tox (https://github.com/tox-dev/tox/issues/507), but
the workaround is to configure Travis to install the most recent `setuptools`
along with `tox`.

refs tahoe-lafs/tahoe-lafs#470
2018-03-20 17:31:21 -07:00
Brian Warner
6be3f0594a travis: only run integration test if the tor install succeeded
travis apparently behaves like buildbot's ERROR_UPON_ERROR, rather that
HALT_UPON_ERROR, and if the tor install fails, then the integration test's
last step is certain to fail.
2017-08-10 10:00:14 -07:00
Brian Warner
14c03793b5 travis: switch from EOLed 'precise' to 'trusty'
closes ticket:2888
2017-07-12 09:10:10 -07:00
Brian Warner
a4ab78e12b travis: use default (newer) MacOS release 2016-12-14 13:58:35 -08:00
meejah
b96122a8ff Adding to the py.test integration tests, this:
- (on travis) installs Tor
 - installs Chutney
 - uses it to build a local Tor test-network
 - set up an introducer on this test-network
 - sets up two storage servers on this test-network
 - proves that one can add a file, and the other can download it

I also mark the two tests that occasionally fail as
expected failures for now
2016-10-18 18:06:41 -07:00
Brian Warner
8a9326f5e9 travis: switch to codecov 2016-10-08 18:53:44 -04:00
meejah
37062d1307 tell travis to run integration (but only on linux) 2016-09-26 13:33:45 -07:00
Brian Warner
85cf1d65be travis: add codechecks, run before main tests 2016-08-19 17:42:05 -07:00
Brian Warner
c15d706faf travis: Disable coverage on OS-X build, times out
refs ticket:2800
2016-07-21 15:07:46 -07:00
Brian Warner
5bf7fab99d travis: big cleanup, make it work on OS-X
Travis defaults to giving us an OS-X 10.9 box, which has an OpenSSL that
is too old for the current cryptography-1.4 (note that a previous
version of this branch worked, but only because the previous
cryptography-1.3.x didn't enforce the OpenSSL version).

On OS-X, this new .travis.yml does the following:

* set "osx_image: xcode7" to get us 10.10, with newer OpenSSL
* uses system python, not homebrew
* installs pip with get-pip.py, since system python doesn't have it
* adds the --user directory to $PATH, since OS-X python doesn't have it
  by default

On both linux and OS-X, this:

* installs tox and coveralls with --user, not to the system
* doesn't use sudo to run tox
* prints some extra debug info in case it's useful later

Closes #285
2016-07-06 02:05:43 -07:00
David Stainton
7e10b5d0e5 Corrections to .travis.yml from Brian's review 2016-07-06 02:00:41 -07:00
David Stainton
73c4aa727f wtf sudo tox for linux 2016-07-06 02:00:41 -07:00
David Stainton
8a374df8b1 Make travis test on osx and linux both 2016-07-06 02:00:41 -07:00
Brian Warner
e3aef2b966 travis.yml: use tox, with 'coverage' environment 2016-05-09 14:40:48 -07:00
Brian Warner
23f871a409 add [test] "extra" to install testing-only dependencies
closes ticket:2776
2016-04-12 12:32:46 -07:00
Brian Warner
c8edddb31b travis: enable cache, should speed up builds a lot
This will allow travis builders to cache generated wheels between
builds, so all the dependencies don't have to get re-built every time.
2016-03-15 18:41:59 -07:00
Daira Hopwood
23025ddc51 Travis build fixes.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2016-03-15 17:31:32 +00:00
Leif Ryge
000c148ad8 drop Python 2.6 (.travis.yml, doc, setup.py)
Twisted 15 dropped support for it, which causes Travis CI tests to fail on 2.6.
We still theoretically support older versions of Twisted, so perhaps we should
configure Travis to test with those? I think we should drop Python 2.6 in any
case since distros are all on 2.7 now.

I'm leaving Travis running (and ignoring) the failing PyPy tests because I
don't know why that is there.
2015-12-02 20:18:33 +00:00
Brian Warner
98732cd12c .travis.yml: unpin coverage, current one ought to work
refs ticket:2511
2015-10-16 21:52:39 -07:00
Daira Hopwood
4c55e68ff8 .travis.yml: pin coverage version to 3.7.1. fixes ticket:2511
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2015-10-01 01:11:14 +01:00
Brian Warner
759e87b24b travis: use 'git fetch' to deepen, not 'git pull'
Travis builds of branches (i.e. pull-requests) were testing the wrong
thing, because the 'git pull' was causing current trunk to be
auto-merged. At least that's what seemed to break
https://travis-ci.org/tahoe-lafs/tahoe-lafs/jobs/81517826 : it hung
forever waiting for a commit message to be entered.

Also add "sudo: false" to use travis containers (faster) instead of new
VMs. We only use pip to install dependencies, not apt, so we don't need
root.
2015-09-22 12:10:15 -07:00
HawkOwl
8fc59499af add a pypy that is allowed to fail 2015-07-29 12:21:31 +10:00
Daira Hopwood
53fc7da2ab .travis.yml: emove 'sudo: false' as requested by https://github.com/travis-ci/travis-ci/issues/2389#issuecomment-76202191
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2015-02-27 23:59:18 +00:00
Daira Hopwood
ce7a867b22 .travis.yml: add "sudo: false" option, to attempt to resolve "Connection reset by peer" problems during build.
See https://github.com/travis-ci/travis-ci/issues/2389 .

Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2015-02-07 02:45:10 +00:00
Brian Warner
118d78a67d Revert "Enable DeprecationWarnings for Travis-CI even on Python 2.7. refs #2366"
This reverts commit cec7727bf9.

It caused travis (for py2.7) to fail on these tests:

* allmydata.test.test_runner.BinTahoe.test_version_no_noise
* allmydata.test.test_runner.RunNode.test_client_no_noise
* allmydata.test.test_system.SystemTest.test_filesystem_with_cli_in_subprocess
2015-01-26 22:12:00 -08:00
Daira Hopwood
cec7727bf9 Enable DeprecationWarnings for Travis-CI even on Python 2.7. refs #2366
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2015-01-22 02:49:16 +00:00
Daira Hopwood
4457b97471 Work around a Travis-CI configuration change.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2014-11-27 16:37:25 +00:00
Daira Hopwood
dff955a46a .travis.yml: remove workaround to install Twisted 13.0 which should no longer be needed.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2014-10-07 19:11:23 +01:00
Brian Warner
e80f075347 travis: remove the os.statvfs debug command
According to https://github.com/travis-ci/travis-ci/issues/2788 (which
was WONTFIXED), roughly half the travis-ci buildserver fleet runs off
tmpfs volumes, which have different notions of space-free and space-used
than real filesystems. We've adapted our tests to avoid relying upon
space-used>0, and no longer need this call to investigate the problem.

refs ticket:2290
2014-09-29 08:43:20 -07:00
Brian Warner
3a75a75f95 travis: show os.statvfs before build, to investigate #2290 2014-09-12 12:14:29 -07:00
Daira Hopwood
d95b370e81 .travis.yml: okay, fetching just tags apparently isn't sufficient (and this use of 'git pull' won't actually pull any new commits, because we'll be on a detached head).
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2014-09-02 15:08:58 +01:00
Daira Hopwood
735ec0c2ee .travis.yml: make sure that we only fetch tags and don't change the requested commit. 2014-09-02 14:51:01 +01:00
Daira Hopwood
b7e960a490 .travis.yml: really fix command used for testing.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2014-09-02 14:51:01 +01:00
Daira Hopwood
37d348ab21 .travis.yml: fix command used for testing.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2014-09-01 20:57:22 +01:00