[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] [PATCH v3] travis: add initial Travis CI script to do builds



This is just suppose to do a simple compile test on Travis CI. Currently
due to linux86 (bcc/bin86/dev86) not being whitelisted the tools cannot
be built.

Signed-off-by: Doug Goldstein <cardoe@xxxxxxxxxx>
---
change since v3:
- add debug builds
change since v2:
- drop IRC notification

So this will work great if we get a regular cronjob or a post-receive hook
to push to GitHub (https://github.com/xen-project/xen) since Travis CI provides
free integration with public repositories. So an example run of this is
available at https://travis-ci.org/cardoe/xen/builds/107246160 if this gets
merged I will setup a xen-project space under Travis for us. Currently its
under my namespace because this file only exists in my branches.

The goal here is not to replace osstest by any means but to augment it by
providing some easy to do build tests on every revision and reporting back. It
should be possible in the future to potentially tie this into osstest to
allow this to build and if the tree for some reason failed to build not kick
off a test flight on osstest. Just some thoughts, I know I'm getting a bit
ahead of myself.

Other future tweaks I've got are some simple dom0 boot tests using qemu to
boot Xen and then boot a kernel and see that it came up. I've also got some
scripts to check the code base for code style consistency using clang-format.
---
 .travis.yml | 73 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 73 insertions(+)
 create mode 100644 .travis.yml

diff --git a/.travis.yml b/.travis.yml
new file mode 100644
index 0000000..c7227ba
--- /dev/null
+++ b/.travis.yml
@@ -0,0 +1,73 @@
+language: c
+dist: trusty
+sudo: required
+matrix:
+    allow_failures:
+        - compiler: clang
+    include:
+        - compiler: gcc
+          env: XEN_TARGET_ARCH=x86_64
+        - compiler: gcc
+          env: XEN_TARGET_ARCH=x86_64 COMPILER=gcc-5
+        - compiler: gcc
+          env: XEN_TARGET_ARCH=x86_64 debug=y
+        - compiler: gcc
+          env: XEN_TARGET_ARCH=x86_64 COMPILER=gcc-5 debug=y
+        - compiler: clang
+          env: XEN_TARGET_ARCH=x86_64 clang=y
+        - compiler: clang
+          env: XEN_TARGET_ARCH=x86_64 COMPILER=clang-3.8 clang=y
+        - compiler: clang
+          env: XEN_TARGET_ARCH=x86_64 clang=y debug=y
+        - compiler: clang
+          env: XEN_TARGET_ARCH=x86_64 COMPILER=clang-3.8 clang=y debug=y
+        - compiler: gcc
+          env: XEN_TARGET_ARCH=arm32 CROSS_COMPILE=arm-linux-gnueabihf-
+        - compiler: gcc
+          env: XEN_TARGET_ARCH=arm32 CROSS_COMPILE=arm-linux-gnueabihf- debug=y
+        - compiler: gcc
+          env: XEN_TARGET_ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu-
+        - compiler: gcc
+          env: XEN_TARGET_ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- debug=y
+addons:
+    apt:
+        sources:
+            - ubuntu-toolchain-r-test
+            - llvm-toolchain-precise
+        packages:
+            - zlib1g-dev
+            - libncurses5-dev
+            - libssl-dev
+            - python2.7-dev
+            - xorg-dev
+            - uuid-dev
+            - libyajl-dev
+            - libaio-dev
+            - libglib2.0-dev
+            - libpixman-1-dev
+            - pkg-config
+            - bridge-utils
+            - iproute2
+            - flex
+            - bison
+            - gettext
+            - acpica-tools
+            - bin86
+            - bcc
+            - libc6-dev-i386
+            - libnl-3-dev
+            - ocaml-nox
+            - libfindlib-ocaml-dev
+            - markdown
+            - transfig
+            - pandoc
+            - gcc-arm-linux-gnueabihf
+            - gcc-aarch64-linux-gnu
+            - gcc-5
+            - clang-3.8
+before_script:
+    - export CC=${COMPILER:-${CC}}
+    - ${CC} --version
+script:
+    - ( ./configure --disable-tools --disable-stubdom --enable-docs &&
+      make CC="${CROSS_COMPILE}${CC}" HOSTCC="${CC}" dist )
-- 
2.4.10


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.