You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@geode.apache.org by ab...@apache.org on 2017/02/09 18:09:41 UTC
[44/50] [abbrv] geode-native git commit: GEODE-2437 Add travis-ci file
GEODE-2437 Add travis-ci file
Configure travis-ci to build cppcache on linux and run unit
tests. Use the docker service to ensure that toolchain
requirements are met. The docker container can be built with
`docker build -t apachegeode/geode-native-build:1.0 \
--build-arg GEODE_VERSION=1.0.0-incubating docker/`
where GEODE_VERSION is a released version of Apache Geode.
Project: http://git-wip-us.apache.org/repos/asf/geode-native/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode-native/commit/0912d53f
Tree: http://git-wip-us.apache.org/repos/asf/geode-native/tree/0912d53f
Diff: http://git-wip-us.apache.org/repos/asf/geode-native/diff/0912d53f
Branch: refs/heads/master
Commit: 0912d53f200e4ae5668416436c8f7d1412c068bd
Parents: 8b53f0a
Author: Anthony Baker <ab...@apache.org>
Authored: Tue Feb 7 07:25:04 2017 -0800
Committer: Anthony Baker <ab...@apache.org>
Committed: Tue Feb 7 21:14:57 2017 -0800
----------------------------------------------------------------------
.travis.yml | 43 +++++++++++++++++++++++++++++++++++++++++++
docker/Dockerfile | 34 ++++++++++++++++++++++++++++++++++
2 files changed, 77 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/geode-native/blob/0912d53f/.travis.yml
----------------------------------------------------------------------
diff --git a/.travis.yml b/.travis.yml
new file mode 100644
index 0000000..a9619e6
--- /dev/null
+++ b/.travis.yml
@@ -0,0 +1,43 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+# cpp tools are outdated, so use docker
+language: generic
+
+# required for docker
+sudo: required
+
+services:
+ - docker
+
+install:
+ - docker build -t apachegeode/geode-native-build:1.0 --build-arg GEODE_VERSION=1.0.0-incubating docker/
+
+script:
+ - DOCKER_ARGS="--volume=${TRAVIS_BUILD_DIR}:/geode-native --workdir=/geode-native"
+ - docker run ${DOCKER_ARGS} apachegeode/geode-native-build:1.0 bash -lc "mkdir build && cd build && cmake ../src && cmake --build . -- -j 8 && ./cppcache/test/apache-geode_unittests"
+ - docker stop $(docker ps -l -q)
+
+notifications:
+ email:
+ recipients:
+ - dev@geode.apache.org
+ on_success: change
+ on_failure: change
+
+branches:
+ except:
+ - /^feature.*$/
+ - asf-site
http://git-wip-us.apache.org/repos/asf/geode-native/blob/0912d53f/docker/Dockerfile
----------------------------------------------------------------------
diff --git a/docker/Dockerfile b/docker/Dockerfile
new file mode 100644
index 0000000..ca9b00d
--- /dev/null
+++ b/docker/Dockerfile
@@ -0,0 +1,34 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+FROM ubuntu
+LABEL maintainer Apache Geode <de...@geode.apache.org>
+
+ARG GEODE_VERSION
+
+RUN apt-get update
+RUN apt-get install -y build-essential cmake doxygen git openjdk-8-jdk \
+ wget zlib1g-dev
+
+RUN \
+ wget "https://www.apache.org/dyn/closer.cgi?action=download&filename=geode/1.0.0-incubating/apache-geode-${GEODE_VERSION}.tar.gz" && \
+ tar xzf "closer.cgi?action=download&filename=geode%2F1.0.0-incubating%2Fapache-geode-${GEODE_VERSION}.tar.gz" && \
+ rm "closer.cgi?action=download&filename=geode%2F1.0.0-incubating%2Fapache-geode-${GEODE_VERSION}.tar.gz"
+
+ENV GEODE /apache-geode-${GEODE_VERSION}
+ENV JAVA_HOME /usr/lib/jvm/java-8-openjdk-amd64
+
+CMD ["bash"]