Kouhei Sutou
null+****@clear*****
Mon Apr 9 13:10:49 JST 2018
Kouhei Sutou 2018-04-09 13:10:49 +0900 (Mon, 09 Apr 2018) New Revision: db9513f4ceeb6ac746e1da1f8db59a29039ba39d https://github.com/groonga/groonga/commit/db9513f4ceeb6ac746e1da1f8db59a29039ba39d Message: travis: more tests on Ubuntu 14.04 Modified files: src/httpd/configure test/unit/run-test.sh travis/Dockerfile.ubuntu-14.04 Modified: src/httpd/configure (+16 -4) =================================================================== --- src/httpd/configure 2018-04-09 12:45:22 +0900 (03888e4c3) +++ src/httpd/configure 2018-04-09 13:10:49 +0900 (e0fff0058) @@ -96,17 +96,29 @@ fi cc_opt="${cc_opt} ${CFLAGS-} ${CPPFLAGS-}" ld_opt="${ld_opt} ${LDFLAGS-}" -nginx_mruby_directory="${abs_top_srcdir}/vendor/ngx_mruby-source" +relative_nginx_mruby_directory="vendor/ngx_mruby-source" +nginx_mruby_directory="${abs_top_srcdir}/${relative_nginx_mruby_directory}" +nginx_mruby_directory_in_build_directory="${abs_top_builddir}/${relative_nginx_mruby_directory}" mruby_directory="${abs_top_srcdir}/vendor/mruby-source" libmruby_directory="${abs_top_builddir}/vendor/mruby/.libs" if [ "${GROONGA_HTTPD_WITH_MRUBY}" = "yes" -a \ "${GROONGA_HTTPD_WITH_HTTP_REWRITE}" = "yes" ]; then - cd "${nginx_mruby_directory}" - ./configure --with-ngx-src-root=${nginx_directory} \ + set -x + if [ "${nginx_mruby_directory}" != "${nginx_mruby_directory_in_build_directory}" ]; then + rm -rf "${nginx_mruby_directory_in_build_directory}" + mkdir -p "${nginx_mruby_directory_in_build_directory}/../" + cp -a \ + "${nginx_mruby_directory}" \ + "${nginx_mruby_directory_in_build_directory}/../" + fi + cd "${nginx_mruby_directory_in_build_directory}" + ./configure \ + --with-ngx-src-root=${nginx_directory} \ --with-mruby-incdir="${mruby_directory}/src ${mruby_directory}/include" \ --with-mruby-libdir=${libmruby_directory} make generate_gems_config - configure_args="${configure_args} --add-module=${nginx_mruby_directory}/dependence/ngx_devel_kit --add-module=${nginx_mruby_directory}" + configure_args="${configure_args} --add-module=${nginx_mruby_directory}/dependence/ngx_devel_kit" + configure_args="${configure_args} --add-module=${nginx_mruby_directory_in_build_directory}" fi cd "${nginx_directory_in_build_directory}" Modified: test/unit/run-test.sh (+48 -44) =================================================================== --- test/unit/run-test.sh 2018-04-09 12:45:22 +0900 (867684b77) +++ test/unit/run-test.sh 2018-04-09 13:10:49 +0900 (16b90210e) @@ -1,31 +1,35 @@ #!/bin/sh -export BASE_DIR="`dirname $0`" -if test -z "$BUILD_DIR"; then - BUILD_DIR="$BASE_DIR" -fi -export BUILD_DIR +source_dir=$(cd $(dirname $0) && pwd) +: ${BASE_DIR:=$source_dir} +: ${BUILD_DIR:=$source_dir} +build_dir=$(cd "${BUILD_DIR}" && pwd) + +export BASE_DIR -top_dir="$BUILD_DIR/../.." -top_dir=$(cd -P "$top_dir" 2>/dev/null || cd "$top_dir"; pwd) +source_top_dir="$source_dir/../.." +source_top_dir=$(cd "$source_top_dir" && pwd) + +build_top_dir="$build_dir/../.." +build_top_dir=$(cd "$build_top_dir" && pwd) if test x"$NO_MAKE" != x"yes"; then - MAKE_ARGS= - case `uname` in - Linux) - MAKE_ARGS="-j$(grep '^processor' /proc/cpuinfo | wc -l)" - ;; - Darwin) - MAKE_ARGS="-j$(/usr/sbin/sysctl -n hw.ncpu)" - ;; - *) - : - ;; - esac - make $MAKE_ARGS -C $top_dir > /dev/null || exit 1 + MAKE_ARGS= + case $(uname) in + Linux) + MAKE_ARGS="-j$(nproc)" + ;; + Darwin) + MAKE_ARGS="-j$(/usr/sbin/sysctl -n hw.ncpu)" + ;; + *) + : + ;; + esac + make $MAKE_ARGS -C $build_top_dir > /dev/null || exit 1 fi -. "${top_dir}/config.sh" +. "${build_top_dir}/config.sh" TZ=Asia/Tokyo export TZ @@ -33,44 +37,44 @@ export TZ CUTTER_ARGS= CUTTER_WRAPPER= if test x"$CUTTER_DEBUG" = x"yes"; then - CUTTER_WRAPPER="$top_dir/libtool --mode=execute gdb --args" - CUTTER_ARGS="--keep-opening-modules" + CUTTER_WRAPPER="$build_top_dir/libtool --mode=execute gdb --args" + CUTTER_ARGS="--keep-opening-modules" elif test x"$CUTTER_CHECK_LEAK" = x"yes"; then - CUTTER_WRAPPER="$top_dir/libtool --mode=execute valgrind " - CUTTER_WRAPPER="$CUTTER_WRAPPER --leak-check=full --show-reachable=yes -v" - CUTTER_ARGS="--keep-opening-modules" + CUTTER_WRAPPER="$build_top_dir/libtool --mode=execute valgrind " + CUTTER_WRAPPER="$CUTTER_WRAPPER --leak-check=full --show-reachable=yes -v" + CUTTER_ARGS="--keep-opening-modules" fi -CUTTER_ARGS="$CUTTER_ARGS -s $BASE_DIR" +CUTTER_ARGS="$CUTTER_ARGS -s $build_dir" if test x"$CUTTER_VERBOSE" = x"yes"; then - CUTTER_ARGS="$CUTTER_ARGS -v v" + CUTTER_ARGS="$CUTTER_ARGS -v v" fi CUTTER_ARGS="$CUTTER_ARGS --exclude-directory fixtures" CUTTER_ARGS="$CUTTER_ARGS --exclude-directory lib" -GRN_PLUGINS_DIR="$top_dir/plugins" +GRN_PLUGINS_DIR="$build_top_dir/plugins" export GRN_PLUGINS_DIR -GRN_RUBY_SCRIPTS_DIR="$top_dir/lib/mrb/scripts" +GRN_RUBY_SCRIPTS_DIR="$source_top_dir/lib/mrb/scripts" export GRN_RUBY_SCRIPTS_DIR -case `uname` in - Darwin) - DYLD_LIBRARY_PATH="$top_dir/lib/.libs:$DYLD_LIBRARY_PATH" - DYLD_LIBRARY_PATH="$top_dir/test/unit/lib/.libs:$DYLD_LIBRARY_PATH" - export DYLD_LIBRARY_PATH - ;; - *) - : - ;; +case $(uname) in + Darwin) + DYLD_LIBRARY_PATH="$build_top_dir/lib/.libs:$DYLD_LIBRARY_PATH" + DYLD_LIBRARY_PATH="$build_top_dir/test/unit/lib/.libs:$DYLD_LIBRARY_PATH" + export DYLD_LIBRARY_PATH + ;; + *) + : + ;; esac tmpfs_candidates="/dev/shm /run/shm" for tmpfs in $tmpfs_candidates; do - if test -d $tmpfs -a -w $tmpfs; then - rm -rf "$BASE_DIR/tmp" - ln -s $tmpfs "$BASE_DIR/tmp" - fi + if test -d $tmpfs -a -w $tmpfs; then + rm -rf "$build_dir/tmp" + ln -s $tmpfs "$build_dir/tmp" + fi done -$CUTTER_WRAPPER $CUTTER $CUTTER_ARGS "$@" $BUILD_DIR +$CUTTER_WRAPPER $CUTTER $CUTTER_ARGS "$@" $build_dir Modified: travis/Dockerfile.ubuntu-14.04 (+31 -3) =================================================================== --- travis/Dockerfile.ubuntu-14.04 2018-04-09 12:45:22 +0900 (18fb35842) +++ travis/Dockerfile.ubuntu-14.04 2018-04-09 13:10:49 +0900 (700021364) @@ -1,16 +1,20 @@ FROM ubuntu:14.04 RUN \ - apt update && \ - apt install -y \ + apt update -qq && \ + apt install -qq -y \ bison \ g++ \ gcc \ gdb \ git \ libevent-dev \ + liblz4-dev \ libmecab-dev \ libmsgpack-dev \ + libssl-dev \ + libstemmer-dev \ + libzmq-dev \ make \ mecab-naist-jdic \ pkg-config \ @@ -20,6 +24,13 @@ RUN \ zlib1g-dev RUN \ + apt update -qq && \ + apt install -qq -y software-properties-common && \ + add-apt-repository -y ppa:cutter-testing-framework/ppa && \ + apt update -qq && \ + apt install -qq -y cutter-testing-framework + +RUN \ gem2.0 install bundler RUN \ @@ -38,6 +49,7 @@ RUN mkdir -p build WORKDIR /home/groonga/build RUN ../source/configure \ + --prefix=/tmp/local \ --enable-debug \ --with-ruby=/usr/bin/ruby2.0 \ --enable-mruby @@ -45,12 +57,28 @@ RUN ../source/configure \ RUN make -j$(nproc) > /dev/null RUN \ + mkdir -p /tmp/local/var/log/groonga/httpd/ + +RUN \ mkdir -p test/command && \ cp -a \ ../source/test/command/suite \ test/command/suite CMD \ + BUILD_DIR=test/unit \ + ../source/test/unit/run-test.sh && \ BUILD_DIR=test/command \ ../source/test/command/run-test.sh \ - test/command/suite + test/command/suite \ + --reporter mark && \ + BUILD_DIR=test/command \ + ../source/test/command/run-test.sh \ + test/command/suite \ + --reporter mark \ + --interface http && \ + BUILD_DIR=test/command \ + ../source/test/command/run-test.sh \ + test/command/suite \ + --reporter mark \ + --testee groonga-httpd -------------- next part -------------- HTML����������������������������... URL: https://lists.osdn.me/mailman/archives/groonga-commit/attachments/20180409/52eb0e15/attachment-0001.htm