From: Tom Trahan <t...@shippable.com> --- /** Email created from pull request 231 (ttrahan:master) ** https://github.com/Linaro/odp/pull/231 ** Patch: https://github.com/Linaro/odp/pull/231.patch ** Base sha: ae4f1d82ed704992c1d8284c23795b9e076b33b9 ** Merge commit sha: dfd2ae6b5630b49c12ab2d4579a5e5916777be1f **/ Dockerfile | 23 +++++++++++++++++ shippable.yml | 81 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 104 insertions(+) create mode 100644 Dockerfile create mode 100644 shippable.yml
diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 000000000..0a511b09d --- /dev/null +++ b/Dockerfile @@ -0,0 +1,23 @@ +FROM drydockaarch64/u16:v5.10.1 + +RUN if $(sudo update-alternatives --list gcc); \ + then sudo update-alternatives --remove-all gcc; \ + fi + +RUN sudo apt-get update && sudo apt-get install -yy \ + gcc-4.8 \ + clang-3.8 \ + automake \ + autoconf \ + ccache \ + graphviz \ + kmod \ + libpcap-dev \ + libssl-dev \ + libtool \ + linux-headers-`uname -r` \ + mscgen \ + ruby-dev + +RUN sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 10 +RUN sudo ln -s /usr/bin/clang-3.8 /usr/bin/clang diff --git a/shippable.yml b/shippable.yml new file mode 100644 index 000000000..048803752 --- /dev/null +++ b/shippable.yml @@ -0,0 +1,81 @@ + +language: c + +compiler: + - gcc + - clang + +env: + matrix: + - CONF="" + # - CONF="--disable-abi-compat" + # - CONF="--enable-schedule-sp" + # - CONF="--enable-schedule-iquery" + # - CONF="--enable-dpdk-zero-copy" + - CROSS_ARCH="arm64" + # - CROSS_ARCH="armhf" CFLAGS="-march=armv7-a" + # - CROSS_ARCH="powerpc" + # - CROSS_ARCH="i386" + global: + # COVERITY_SCAN_TOKEN + # ** specific to your project ** + # Note: + # You should have a github account and travis linked travis account. + # The secure key to be filled below is the 685 character long encrypted + # token you can find as follow from your coverity dashboard + # (at https://scan.coverity.com/dashboard): + # Click on the github project (<you>/odp) + # Click on "submit build" + # Click on "Configure Travis CI" + # Look at the COVERITY_SCAN_TOKEN in the env: global: section + # of the configuration example. + # copy the secure:<key> below + # + - secure: "xxxx" + # + # By default Linaro CODECOV_TOKEN token is used. It's ok to use it to see + # for individual commit validation. But you you want to track tests history + # you need generated new one at https://codecov.io specific for your repo. + - CODECOV_TOKEN=8e1c0fd8-62ff-411e-a79f-5839f6662c11 + +build: + pre_ci: + # use Dockerfile to install additional CI dependencies + - docker build -t=odp/dev . + + # use image built in 'pre_ci' for CI job + pre_ci_boot: + image_name: odp/dev + image_tag: latest + pull: false + options: + + ci: + - echo 1000 | sudo tee /proc/sys/vm/nr_hugepages + - sudo mkdir -p /mnt/huge + - sudo mount -t hugetlbfs nodev /mnt/huge + - mkdir -p /dev/shm/odp + - export CUNIT_VERSION=2.1-3 + - | + curl -sSOL https://github.com/Linaro/libcunit/releases/download/${CUNIT_VERSION}/CUnit-${CUNIT_VERSION}.tar.bz2 + tar -jxf *.bz2 + pushd CUnit* + libtoolize --force --copy + aclocal + autoheader + automake --add-missing --include-deps --copy + autoconf + ./configure --prefix=$HOME/cunit-install --enable-debug --enable-automated --enable-basic --enable-console --enable-examples --enable-test || cat config.log + make + sudo make install + popd + - ./bootstrap + - export PKG_CONFIG_PATH="$HOME/cunit-install/lib/pkgconfig:${PKG_CONFIG_PATH}" + - export LD_LIBRARY_PATH="$HOME/cunit-install/lib:$LD_LIBRARY_PATH" + - ./configure --disable-test-perf + - make + - sudo LD_LIBRARY_PATH="$HOME/cunit-install/lib:$LD_LIBRARY_PATH" ODP_SHM_DIR=/dev/shm/odp make check + + post_ci: + - cat config.log + - find . -name 'test-suite.log' -execdir grep -il "FAILED" {} \; -exec echo {} \; -exec cat {} \;