Testing/Travis: Difference between revisions

From QEMU
(Update the details)
(Add a little howto)
Line 1: Line 1:
Travis is a open source continuous integration service which works together with GitHub. When the GitHub mirror is updated (or a pull request generated) Travis will kick of a build across a matrix of configurations. It will also run "make check" on the final build to run our set of unit tests.
Travis is a open source continuous integration service which works together with GitHub. When the GitHub mirror is updated (or a pull request generated) Travis will kick of a build across a matrix of configurations. It will also run "make check" on the final build to run our set of unit tests.


You can see the current status of the qemu build at:
Travis is one the many CI build services we use, the current status is bellow:


https://travis-ci.org/qemu/qemu
== Current Status ==
 
{{CIStatus}}


== Limitations ==
== Limitations ==
Line 19: Line 21:


See the {{src|path=.travis.yml|description=Travis config file}}
See the {{src|path=.travis.yml|description=Travis config file}}
== Testing Changes to Travis ==
* Sign into Travis with your github a/c
* Go to https://travis-ci.org/account/repositories
* You may need to click "Sync Account" to get the list updated
* Flip the switch for your copy of the QEMU repo
* Any new pushes to your repo should kick up the results
* Goto https://travis-ci.org/dashboard to see your builds

Revision as of 17:36, 14 February 2019

Travis is a open source continuous integration service which works together with GitHub. When the GitHub mirror is updated (or a pull request generated) Travis will kick of a build across a matrix of configurations. It will also run "make check" on the final build to run our set of unit tests.

Travis is one the many CI build services we use, the current status is bellow:

Current Status

System Focus Status
GitLab CI Majority of CI testing (builds x86 & cross), various check targets https://gitlab.com/qemu-project/qemu/badges/master/pipeline.svg [1]
Cirrus CI FreeBSD, MacOS and Windows MSYS2 compile and test https://api.cirrus-ci.com/github/qemu/qemu.svg [2]
Travis non-x86 hosts, mostly deprecated qemu.png?branch=master&file=qemu.png [3]
Coverity Static analysis https://scan.coverity.com/projects/378/badge.svg?flat=1&foo=qemu.svg [4]
Patchew Apply and test patches as they are sent on the mailing list. https://patchew.org/QEMU/badge.svg [5]
Documentation Build the RST portions of the doc/ subtree https://readthedocs.org/projects/qemu/badge/?version=latest&foo=qemu.svg [6]

Limitations

The Travis build environment is limited to a few configurations:

  • Ubuntu 14.04 Default Trusty Container Image (most builds)
  • Ubuntu 14.04 Default Trusty Container Image using Clang (clang-5.0)
  • Ubuntu 14.04 Default Trusty Container + ubuntu-toolchain-r-test (gcc 7)
  • MacOSX (with brew installed support libs)

As a result it doesn't fully exercise the build system in the way our Buildbot used do. Fortunately patchew fills in the gaps.

Configuration

See the Travis config file

Testing Changes to Travis