Use hererocks on Travis.

This commit is contained in:
Alexey Melnichuk 2016-04-07 17:21:29 +03:00
parent a038558b44
commit a0a0cac631
5 changed files with 30 additions and 156 deletions

View File

@ -2,31 +2,45 @@ language: c
sudo: false sudo: false
env: matrix:
global: include:
- LUAROCKS=2.2.2 - compiler: ": Lua51"
matrix: env: LUA="lua 5.1"
- LUA=lua5.1 - compiler: ": Lua52"
- LUA=lua5.2 env: LUA="lua 5.2"
- LUA=lua5.3 - compiler: ": Lua53"
- LUA=luajit env: LUA="lua 5.3"
- compiler: ": LuaJIT20"
env: LUA="luajit 2.0"
- compiler: ": LuaJIT21"
env: LUA="luajit 2.1"
cache:
directories:
- here
- $HOME/.cache/pip
branches: branches:
only: only:
- master - master
before_install: before_install:
- source .travis/setenv_lua.sh - export CC=gcc
- pip install --user cpp-coveralls - pip install --user cpp-coveralls
- luarocks install luafilesystem --from=https://rocks.moonscript.org/dev - pip install --user hererocks
- luarocks install luacov-coveralls - hererocks here -r^ --$LUA
- luarocks install lunitx - export PATH=$PATH:$PWD/here/bin
- luarocks install dkjson --deps-mode=none
install: install:
- luarocks make rockspecs/lua-curl-scm-0.rockspec CFLAGS="-O2 -fPIC -ftest-coverage -fprofile-arcs" LIBFLAG="-shared --coverage" - luarocks make rockspecs/lua-curl-scm-0.rockspec CFLAGS="-O2 -fPIC -ftest-coverage -fprofile-arcs" LIBFLAG="-shared --coverage"
script: before_script:
- luarocks show luacov-coveralls || luarocks install luacov-coveralls
- luarocks show lunitx || luarocks install lunitx
- luarocks show luafilesystem || luarocks install luafilesystem
- luarocks show dkjson || luarocks install dkjson --deps-mode=none
script:
- cd test - cd test
- lua -e "print(require 'cURL.utils'.find_ca_bundle())" - lua -e "print(require 'cURL.utils'.find_ca_bundle())"
- lunit.sh test_easy.lua - lunit.sh test_easy.lua
@ -37,7 +51,7 @@ script:
after_success: after_success:
- coveralls -b .. -r .. --dump c.report.json - coveralls -b .. -r .. --dump c.report.json
- luacov-coveralls -j c.report.json - luacov-coveralls -j c.report.json -v
notifications: notifications:
email: email:

View File

@ -1,15 +0,0 @@
if [ -z "${PLATFORM:-}" ]; then
PLATFORM=$TRAVIS_OS_NAME;
fi
if [ "$PLATFORM" == "osx" ]; then
PLATFORM="macosx";
fi
if [ -z "$PLATFORM" ]; then
if [ "$(uname)" == "Linux" ]; then
PLATFORM="linux";
else
PLATFORM="macosx";
fi;
fi

View File

@ -1,3 +0,0 @@
export PATH=${PATH}:$HOME/.lua:$HOME/.local/bin:${TRAVIS_BUILD_DIR}/install/luarocks/bin
bash .travis/setup_lua.sh
eval `$HOME/.lua/luarocks path`

View File

@ -1,122 +0,0 @@
#! /bin/bash
# A script for setting up environment for travis-ci testing.
# Sets up Lua and Luarocks.
# LUA must be "lua5.1", "lua5.2" or "luajit".
# luajit2.0 - master v2.0
# luajit2.1 - master v2.1
set -eufo pipefail
LUAJIT_BASE="LuaJIT-2.0.3"
source .travis/platform.sh
LUA_HOME_DIR=$TRAVIS_BUILD_DIR/install/lua
LR_HOME_DIR=$TRAVIS_BUILD_DIR/install/luarocks
mkdir $HOME/.lua
LUAJIT="no"
if [ "$PLATFORM" == "macosx" ]; then
if [ "$LUA" == "luajit" ]; then
LUAJIT="yes";
fi
if [ "$LUA" == "luajit2.0" ]; then
LUAJIT="yes";
fi
if [ "$LUA" == "luajit2.1" ]; then
LUAJIT="yes";
fi;
elif [ "$(expr substr $LUA 1 6)" == "luajit" ]; then
LUAJIT="yes";
fi
mkdir -p "$LUA_HOME_DIR"
if [ "$LUAJIT" == "yes" ]; then
if [ "$LUA" == "luajit" ]; then
curl http://luajit.org/download/$LUAJIT_BASE.tar.gz | tar xz;
else
git clone http://luajit.org/git/luajit-2.0.git $LUAJIT_BASE;
fi
cd $LUAJIT_BASE
if [ "$LUA" == "luajit2.1" ]; then
git checkout v2.1;
fi
make && make install PREFIX="$LUA_HOME_DIR"
if [ "$LUA" == "luajit2.1" ]; then
ln -s $LUA_HOME_DIR/bin/luajit-2.1.0-alpha $HOME/.lua/luajit
ln -s $LUA_HOME_DIR/bin/luajit-2.1.0-alpha $HOME/.lua/lua;
else
ln -s $LUA_HOME_DIR/bin/luajit $HOME/.lua/luajit
ln -s $LUA_HOME_DIR/bin/luajit $HOME/.lua/lua;
fi;
else
if [ "$LUA" == "lua5.1" ]; then
curl http://www.lua.org/ftp/lua-5.1.5.tar.gz | tar xz
cd lua-5.1.5;
elif [ "$LUA" == "lua5.2" ]; then
curl http://www.lua.org/ftp/lua-5.2.4.tar.gz | tar xz
cd lua-5.2.4;
elif [ "$LUA" == "lua5.3" ]; then
curl http://www.lua.org/ftp/lua-5.3.0.tar.gz | tar xz
cd lua-5.3.0;
fi
make $PLATFORM
make INSTALL_TOP="$LUA_HOME_DIR" install;
ln -s $LUA_HOME_DIR/bin/lua $HOME/.lua/lua
ln -s $LUA_HOME_DIR/bin/luac $HOME/.lua/luac;
fi
cd $TRAVIS_BUILD_DIR
lua -v
LUAROCKS_BASE=luarocks-$LUAROCKS
curl --location http://luarocks.org/releases/$LUAROCKS_BASE.tar.gz | tar xz
cd $LUAROCKS_BASE
if [ "$LUA" == "luajit" ]; then
./configure --lua-suffix=jit --with-lua-include="$LUA_HOME_DIR/include/luajit-2.0" --prefix="$LR_HOME_DIR";
elif [ "$LUA" == "luajit2.0" ]; then
./configure --lua-suffix=jit --with-lua-include="$LUA_HOME_DIR/include/luajit-2.0" --prefix="$LR_HOME_DIR";
elif [ "$LUA" == "luajit2.1" ]; then
./configure --lua-suffix=jit --with-lua-include="$LUA_HOME_DIR/include/luajit-2.1" --prefix="$LR_HOME_DIR";
else
./configure --with-lua="$LUA_HOME_DIR" --prefix="$LR_HOME_DIR"
fi
make build && make install
ln -s $LR_HOME_DIR/bin/luarocks $HOME/.lua/luarocks
cd $TRAVIS_BUILD_DIR
luarocks --version
rm -rf $LUAROCKS_BASE
if [ "$LUAJIT" == "yes" ]; then
rm -rf $LUAJIT_BASE;
elif [ "$LUA" == "lua5.1" ]; then
rm -rf lua-5.1.5;
elif [ "$LUA" == "lua5.2" ]; then
rm -rf lua-5.2.4;
elif [ "$LUA" == "lua5.3" ]; then
rm -rf lua-5.3.0;
fi

View File

@ -32,7 +32,7 @@ return {
-- configuration for luacov-coveralls reporter -- configuration for luacov-coveralls reporter
coveralls = { coveralls = {
pathcorrect = { pathcorrect = {
{"/usr/local/share/lua/5.[123]", "src/lua"}; {"^.-[/\\]share[/\\]lua[/\\]5.%d", "src/lua"};
}, },
}, },
} }