diff --git a/.travis.yml b/.travis.yml index e6941620c2c..022ffb3562c 100644 --- a/.travis.yml +++ b/.travis.yml @@ -74,6 +74,13 @@ matrix: - $TRAVIS_BUILD_DIR/ci/travis_before_script_cpp.sh script: - $TRAVIS_BUILD_DIR/ci/travis_script_integration.sh + - language: node_js + os: linux + node_js: node + before_script: + - $TRAVIS_BUILD_DIR/ci/travis_before_script_js.sh + script: + - $TRAVIS_BUILD_DIR/ci/travis_script_js.sh before_install: - ulimit -c unlimited -S diff --git a/ci/travis_before_script_js.sh b/ci/travis_before_script_js.sh new file mode 100755 index 00000000000..304c48137aa --- /dev/null +++ b/ci/travis_before_script_js.sh @@ -0,0 +1,34 @@ +#!/usr/bin/env bash + +# Licensed 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. See accompanying LICENSE file. + + +set -ex + +source $TRAVIS_BUILD_DIR/ci/travis_env_common.sh +source $TRAVIS_BUILD_DIR/ci/travis_install_conda.sh + +# Download flatbuffers +export FLATBUFFERS_HOME=$TRAVIS_BUILD_DIR/flatbuffers +conda create -y -q -p $FLATBUFFERS_HOME python=2.7 flatbuffers +export PATH="$FLATBUFFERS_HOME/bin:$PATH" + +npm install -g typescript +npm install -g webpack + +pushd $ARROW_JS_DIR + +npm install +npm run build + +popd diff --git a/ci/travis_env_common.sh b/ci/travis_env_common.sh index 5593f0079f4..3515314722b 100755 --- a/ci/travis_env_common.sh +++ b/ci/travis_env_common.sh @@ -25,6 +25,7 @@ export ARROW_CPP_DIR=$TRAVIS_BUILD_DIR/cpp export ARROW_PYTHON_DIR=$TRAVIS_BUILD_DIR/python export ARROW_C_GLIB_DIR=$TRAVIS_BUILD_DIR/c_glib export ARROW_JAVA_DIR=${TRAVIS_BUILD_DIR}/java +export ARROW_JS_DIR=${TRAVIS_BUILD_DIR}/js export ARROW_INTEGRATION_DIR=$TRAVIS_BUILD_DIR/integration export ARROW_CPP_INSTALL=$TRAVIS_BUILD_DIR/cpp-install diff --git a/ci/travis_script_js.sh b/ci/travis_script_js.sh new file mode 100755 index 00000000000..52ac3b9bdf8 --- /dev/null +++ b/ci/travis_script_js.sh @@ -0,0 +1,23 @@ +#!/usr/bin/env bash + +# Licensed 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. See accompanying LICENSE file. + +set -e + +JS_DIR=${TRAVIS_BUILD_DIR}/js + +pushd $JS_DIR + +npm test + +popd