Repository: geode
Updated Branches:
  refs/heads/next-gen-native-client-software-grant 8b53f0a16 -> d7a2a9dd1


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/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/0912d53f
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/0912d53f
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/0912d53f

Branch: refs/heads/next-gen-native-client-software-grant
Commit: 0912d53f200e4ae5668416436c8f7d1412c068bd
Parents: 8b53f0a
Author: Anthony Baker <[email protected]>
Authored: Tue Feb 7 07:25:04 2017 -0800
Committer: Anthony Baker <[email protected]>
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/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:
+      - [email protected]
+    on_success: change
+    on_failure: change
+
+branches:
+  except:
+    - /^feature.*$/
+    - asf-site

http://git-wip-us.apache.org/repos/asf/geode/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 <[email protected]>
+
+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"]

Reply via email to