Commit Graph

41 Commits

Author SHA1 Message Date
Gilles Peskine
7ccd0255b8 Travis: do both a Cortex-A build and a Cortex-M0+ build
The Cortex-A build is similar to Debian armel. The Cortex-M0+ is a
handy point of comparison for code size. Put that one last so that
it's easy to find in the log.

Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
2020-04-30 23:32:52 +02:00
Gilles Peskine
c15574b8f5 Travis: rebalance the Linux builds
Make the running time more even.

Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
2020-04-30 23:31:03 +02:00
Gilles Peskine
00f2436bf3 Travis: Windows: target Visual Studio 2017
Only the Visual Studio 2017 toolset is currently preinstalled on Travis.
Use this, instead of our solution's default which is VS 2010.

Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
2020-04-27 11:27:39 +02:00
Gilles Peskine
a1cf6d5bda Travis: add a build with Visual Studio on Windows
Travis now offers a Windows environment. Do a build with Visual
Studio. This brings diversity into the Travis CI which otherwise only
uses GCC and Clang.

Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
2020-04-27 11:27:39 +02:00
Gilles Peskine
e4fdfc499c Travis: add a build on macOS
Just do the default build with Clang and run the unit tests. The
objective is to have one build on a Unix-like platform other than
Linux.

Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
2020-04-27 11:27:39 +02:00
Gilles Peskine
59afb731da Travis: add a baremetal build
Add a baremetal build to Travis, to catch inadvertent dependencies on
platform functions.

The exact choice of target platform doesn't matter for this purpose.
Pick one that's present in all.sh, that uses a compiler that's
available in the Travis build environment (Ubuntu 16.04), and that
happens to be close to the Debian "armel" distribution.

Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
2020-04-27 11:27:36 +02:00
Gilles Peskine
04c4a7e3f2 Travis: call all depends_* tests
Call all.sh to run all the available test_depends_* components. This
adds a run of depends-hashes.pl and depends-pkgalgs.pl.

Keep invoking test-ref-configs.pl rather than via all.sh so that it
doesn't run with ASan. This saves some time and ASan there doesn't
turn up much more than in the full config.

Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
2020-04-27 11:25:45 +02:00
Gilles Peskine
2bebfc9476 Travis: install gnutls-bin for all jobs
Some jobs don't actually test against GnuTLS, but all.sh checks its
presence in all test jobs, so it needs to be installed regardless.

Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
2020-04-27 11:25:45 +02:00
Gilles Peskine
12141d0fac Travis: replace "default configuration by "full configuration"
For the one long job with ASan, use the full configuration.

We get more coverage this way, at the cost of a slightly longer
runtime which we can afford since the "enumerated configurations" job
is slower.

Add a default-configuration build to the "basic checks" job. This job
is fairly quick (no ASan, no SSL testing).

Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
2020-04-27 11:25:45 +02:00
Gilles Peskine
fb5c8b4e94 Travis: call all.sh for the default-configuration build
This way anything we change in all.sh, such as adding tests for
programs/*/*, will be reflected here.

The build now uses GCC instead of Clang, which doesn't make much
difference in practice. The build now enables ASan and UBSan.

The tests now run compat.sh and ssl-opt.sh fully.

Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
2020-04-27 11:25:45 +02:00
Gilles Peskine
dadd3bd703 Travis: call all.sh for sanity checks
Different releases have different sets of sanity checks. Keep the list
in one place, namely all.sh.

Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
2020-04-27 11:25:45 +02:00
Gilles Peskine
7b5f0d3cfc Travis: run Pylint
Declare an explicit Python version. Pick 3.5 which is the default
version on Ubuntu 16.04. This is necessary on Travis to have a working
pip for Python 3.

Install Pylint 2.4.4. There's nothing special about this version, it's
just the latest version.

Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
2020-04-27 11:25:45 +02:00
Gilles Peskine
a7ef8a1d7f Travis: move doxygen dependencies into the "sanity" job
Only this job uses doxygen and graphviz.

Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
2020-04-27 11:25:45 +02:00
Gilles Peskine
b9d0fd60e4 Travis: split the build into three parallel jobs
Split the build between:
* Basic checks
* A build in the default configuration with extensive tests
* Builds in other configurations with less testing

The intent is to have one shorter job with basic tests, and two longer
jobs that take roughly the same amount of time (split as evenly as
possible while keeping an easy-to-understand separation).

Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
2020-04-27 11:25:44 +02:00
Gilles Peskine
e021233cbc Travis: don't test with both gcc and clang
In practice, we hardly ever get different outcomes, so there is no
gain in running tests with different compilers.

Experimentally, with the builds and tests we currently do and with the
compiler versions on a Travis Ubuntu 16.04, gcc jobs are significantly
faster than clang jobs (13 min vs 24 min). So use gcc.

Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
2020-04-27 11:24:42 +02:00
Vikas Katariya
53a77012e7 Update notification e-mail address
Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
2020-04-27 11:23:05 +02:00
Vikas Katariya
6c371a4067 Update Coverity secure token
Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
2020-04-27 11:22:11 +02:00
Manuel Pégourié-Gonnard
27762f372e Fix the proxy seed in Travis runs
This is what we do in Jenkins, so it only makes sense to do it here as well.
This will avoid random failures for no other reason than the proxy was
dropping all the messages due to an unlucky PRNG seed.

See https://docs.travis-ci.com/user/environment-variables/ for syntax
2019-04-05 15:23:50 +02:00
Darryl Green
36f6fc542c Add check-files.py to travis.yml 2018-06-05 11:57:35 +01:00
Simon Butcher
6eaf3659ea Fixes Travis post-mortem script dump following review
Changes made:
 * Added copyright and project statement
 * Limited size of each file to dump to 1Mbyte
 * Changed name of script
2016-04-10 15:11:27 +01:00
Janos Follath
831a65ffa7 Make Travis more chatty.
Include the logs in the report after failing.
2016-03-21 14:52:25 +00:00
Manuel Pégourié-Gonnard
695e0ba014 Add new doxygen test to travis 2016-01-08 16:49:17 +01:00
Manuel Pégourié-Gonnard
503a5efef1 Add key-exchanges.pl to test list 2015-10-23 09:04:45 +02:00
Manuel Pégourié-Gonnard
2c99800155 Enable ccache on Travis 2015-08-04 18:06:02 +02:00
Manuel Pégourié-Gonnard
e7f635d0f1 Revert "Add valgrind tests on Travis"
This reverts commit bb0102e999.
2015-08-04 18:04:57 +02:00
Manuel Pégourié-Gonnard
bb0102e999 Add valgrind tests on Travis 2015-08-04 17:48:35 +02:00
Manuel Pégourié-Gonnard
b1c1251a41 Add more tests from all.sh to travis 2015-08-04 16:50:22 +02:00
Manuel Pégourié-Gonnard
39e2ca9194 Use OpenSSL in compat.sh on Travis, except DTLS
Less heavy-handed than skipping all OpenSSL interop
2015-08-04 16:43:37 +02:00
Manuel Pégourié-Gonnard
6b09decaae Exclude some openssl test from travis builds 2015-08-04 16:26:13 +02:00
Manuel Pégourié-Gonnard
b04638f5ed Try to debug openssl issues on travis 2015-08-04 16:16:40 +02:00
Manuel Pégourié-Gonnard
55a91918a5 Update travis.yml to make travis-lint happy
http://lint.travis-ci.org/
2015-08-04 16:15:16 +02:00
Manuel Pégourié-Gonnard
c84d7fbfc4 Migrate to Travis' new infrastructure 2015-08-04 15:59:34 +02:00
Manuel Pégourié-Gonnard
517bbd54d5 Avoid using openssl too much on travis for now
Apparently the version of openssl available on travis machines does not
support all the ciphersuites expected by compat.sh. While waiting for this
script to handle various openssl versions better, just disable openssl.
2015-08-04 15:24:26 +02:00
Manuel Pégourié-Gonnard
3d404b4763 Simplify some scripts
ssl-opt.sh and compat.sh can now be run from root too
2015-07-08 21:59:16 +01:00
Paul Bakker
db34e6d9b6 Updated Travis CI config for mbedtls project 2015-04-14 14:59:47 +02:00
Manuel Pégourié-Gonnard
1052022f50 Remove gnutls from the travis build
Causing spurious fails of ssl-opt.sh. Likely a version issue. It would be
better to investigate the exact problem, and maybe adapt ssl-opt.sh to be
check for a minimum version just as compat.sh does, but this is a quick fix.
2015-02-16 15:52:48 +00:00
Manuel Pégourié-Gonnard
b4fe3cb1fa Rename to mbed TLS in the documentation/comments 2015-01-22 16:11:05 +00:00
Manuel Pégourié-Gonnard
72e51ee7be Use arithmetic expansion in scripts, avoid bashisms 2014-08-31 10:22:11 +02:00
Paul Bakker
440aa2d120 Fix to Coverity config in Travis-CI 2014-05-06 10:34:42 +02:00
Paul Bakker
05c3774bd4 Updated Travis-CI config with Coverity addon 2014-05-02 16:19:04 +02:00
Paul Bakker
3ad3aa3bc0 Travis configuration file 2014-04-17 17:24:27 +02:00