Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Enable Cirrus CI #564

Merged
merged 8 commits into from Sep 3, 2019
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
10 changes: 10 additions & 0 deletions .ci/debian/Dockerfile
@@ -0,0 +1,10 @@
FROM debian:buster-slim
LABEL maintainer="tobias.mayer@tenzir.com"

ENV CC gcc-8
ENV CXX g++-8

# Compiler and dependency setup
RUN apt-get -qq update && apt-get -qqy install \
gcc-8 g++-8 cmake git-core ninja-build clang-format-7 \
python3 python3-venv libpcap-dev libssl-dev libatomic1
79 changes: 79 additions & 0 deletions .cirrus.yml
@@ -0,0 +1,79 @@
style_task:
name: Style (clang-format)
container:
dockerfile: .ci/debian/Dockerfile
cpu: 1
memory: 1G
clang-format_script:
- git fetch origin master
- git diff -U0 --no-color $(git merge-base origin/master HEAD) | scripts/clang-format-diff.py -p1


.build_template: &build_definition
depends_on:
- style
env:
PREFIX: /opt/tenzir
fingerprint_script:
- cmake --version
- ${CXX} --version
- python --version
submodule_script:
- git submodule update --init aux/caf
- git submodule update --init aux/broker/broker
- git -C aux/broker/broker submodule update --init 3rdparty
build_script:
- ./configure --prefix=$PREFIX --build-type=$BUILD_TYPE $CONFIGURE_FLAGS --generator=Ninja
- cmake --build build --target all
unit_test_script:
- cmake --build build --target test
integration_test_script:
- cmake --build build --target integration
install_script:
- cmake --build build --target install

debian_task:
name: Debian
container:
dockerfile: .ci/debian/Dockerfile
cpu: 8
memory: 24G
env:
CC: gcc-8
CXX: g++-8
matrix:
- BUILD_TYPE: Release
- BUILD_TYPE: Debug
CONFIGURE_FLAGS: --enable-asan
<<: *build_definition

freebsd_task:
name: FreeBSD
freebsd_instance:
image: freebsd-12-0-release-amd64
cpu: 8
memory: 24G
env:
CC: cc
CXX: c++
matrix:
- BUILD_TYPE: Release
- BUILD_TYPE: Debug
CONFIGURE_FLAGS: --enable-asan
setup_script:
- env ASSUME_ALWAYS_YES=YES pkg install git cmake ninja lang/python3 lang/python py36-pip
<<: *build_definition

macos_task:
name: macOS - Release
osx_instance:
image: mojave-xcode-10.2
env:
CC: cc
CXX: c++
BUILD_TYPE: Release
PATH: /usr/local/opt/python/libexec/bin:$PATH
DESTDIR: $PWD
setup_script:
- HOMEBREW_NO_AUTO_UPDATE=1 brew install openssl cmake git ninja python libpcap
<<: *build_definition
2 changes: 1 addition & 1 deletion CMakeLists.txt
Expand Up @@ -581,7 +581,7 @@ file(
if [ ! -d \"$env_dir\" ]; then
python3 -m venv \"$env_dir\"
fi
source \"$env_dir/bin/activate\"
. \"$env_dir/bin/activate\"
pip install -r \"$base_dir/requirements.txt\"
python \"$base_dir/integration.py\" --app \"$app\" -d vast-integration-test"
)
Expand Down