Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
G
gargantext-ihaskell
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
gargantext
gargantext-ihaskell
Commits
d5c62723
Commit
d5c62723
authored
Oct 22, 2017
by
Vaibhav Sagar
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
.travis.yml: build with Nix
parent
bb1f1290
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
203 additions
and
100 deletions
+203
-100
.travis.yml
.travis.yml
+203
-100
No files found.
.travis.yml
View file @
d5c62723
# Test against different stack LTS versions.
matrix
:
env
:
allow_failures
:
-
DISPLAY=true USE_STACK_YAML="stack.yaml"
# GHC 8.0.2
-
language
:
nix
-
DISPLAY=true USE_STACK_YAML="stack-8.2.yaml"
# GHC 8.2.1
fast_finish
:
true
include
:
# Choose a lightweight base image; we provide our own build tools.
-
env
:
DISPLAY=true USE_STACK_YAML="stack.yaml"
# GHC 8.0.2
language
:
python
language
:
python
python
:
# Test against different stack LTS versions.
-
"
3.6"
# Choose a lightweight base image; we provide our own build tools.
# Enable caching.
python
:
"
3.6"
sudo
:
false
# Enable caching.
# Caching so the next build will be fast too.
sudo
:
false
# These caches are the same between resolvers, but this is fine,
# as Stack differentiates between its resolvers.
# Caching so the next build will be fast too.
cache
:
# These caches are the same between resolvers, but this is fine,
directories
:
# as Stack differentiates between its resolvers.
-
$HOME/.ghc
cache
:
-
$HOME/.cabal
directories
:
-
$HOME/.stack
-
$HOME/.ghc
-
$HOME/zeromq
-
$HOME/.cabal
-
$HOME/.stack
# Enable packages we need.
-
$HOME/zeromq
# Not all packages are available – see before_install for from-source builds.
addons
:
# Enable packages we need.
apt
:
# Not all packages are available – see before_install for from-source builds.
packages
:
addons
:
-
libmagic-dev
# magic
apt
:
-
libgmp-dev
# ghc
packages
:
-
libblas-dev
# hmatrix
-
libmagic-dev
# magic
-
liblapack-dev
# hmatrix
-
libgmp-dev
# ghc
-
libcairo2-dev
# cairo
-
libblas-dev
# hmatrix
-
libpango1.0-dev
# pango
-
liblapack-dev
# hmatrix
-
libcairo2-dev
# cairo
before_install
:
-
libpango1.0-dev
# pango
# Download and unpack the stack executable
-
export PATH=$HOME/.local/bin:$PATH
before_install
:
-
mkdir -p ~/.local/bin
# Download and unpack the stack executable
-
curl -L https://www.stackage.org/stack/linux-x86_64 | tar xz --wildcards --strip-components=1 -C ~/.local/bin '*/stack'
-
export PATH=$HOME/.local/bin:$PATH
-
mkdir -p ~/.local/bin
# Install zeromq3 -- the package is not supported yet on Travis whitelist... (06/06/2016)
-
curl -L https://www.stackage.org/stack/linux-x86_64 | tar xz --wildcards --strip-components=1 -C ~/.local/bin '*/stack'
-
|
if [ ! -d "$HOME/zeromq/lib" ]; then
# Install zeromq3 -- the package is not supported yet on Travis whitelist... (06/06/2016)
export OLDPWD=$(pwd)
-
|
travis_retry git clone http://www.github.com/zeromq/zeromq4-x.git libzmq
if [ ! -d "$HOME/zeromq/lib" ]; then
mkdir $HOME/zeromq
export OLDPWD=$(pwd)
cd libzmq
travis_retry git clone http://www.github.com/zeromq/zeromq4-x.git libzmq
travis_retry ./autogen.sh
mkdir $HOME/zeromq
travis_retry ./configure --prefix=$HOME/zeromq
cd libzmq
make
travis_retry ./autogen.sh
travis_retry make install
travis_retry ./configure --prefix=$HOME/zeromq
cd $OLDPWD
make
fi
travis_retry make install
cd $OLDPWD
# Upgrades to avoid later build problems
fi
-
pip install -U pip
-
pip install -U setuptools
# Upgrades to avoid later build problems
-
pip install -U pip
# Install nbconvert for testing the notebook
-
pip install -U setuptools
-
pip install jupyter notebook nbconvert
# Install nbconvert for testing the notebook
# This step takes the longest, and is what generates the Stack cache.
-
pip install jupyter notebook nbconvert
install
:
# Set path for pkg-config to find zeromq, otherwise install of zeromq4-haskell fails.
# This step takes the longest, and is what generates the Stack cache.
-
export PKG_CONFIG_PATH=$HOME/zeromq/lib/pkgconfig/
install
:
-
|
# Set path for pkg-config to find zeromq, otherwise install of zeromq4-haskell fails.
# Used to avoid 'source and destination file are the same' error
-
export PKG_CONFIG_PATH=$HOME/zeromq/lib/pkgconfig/
mv $USE_STACK_YAML intermediate-stack.yaml
-
|
mv intermediate-stack.yaml stack.yaml
# Used to avoid 'source and destination file are the same' error
mv $USE_STACK_YAML intermediate-stack.yaml
echo "apply-ghc-options: everything" >> stack.yaml
mv intermediate-stack.yaml stack.yaml
-
stack setup
echo "apply-ghc-options: everything" >> stack.yaml
-
stack install gtk2hs-buildtools --fast
-
stack build hmatrix --fast
-
stack setup
-
stack build --dependencies-only --fast
-
stack install gtk2hs-buildtools --fast
-
stack build hmatrix --fast
script
:
-
stack build --dependencies-only --fast
-
export LD_LIBRARY_PATH=$HOME/zeromq/lib
-
stack test --no-terminal --fast
script
:
-
|
-
export LD_LIBRARY_PATH=$HOME/zeromq/lib
set -e
-
stack test --no-terminal --fast
if $DISPLAY; then
-
|
TOP=$(pwd)
set -e
stack build --no-terminal --fast
if $DISPLAY; then
TOP=$(pwd)
# Ensure that ipython-kernel examples build successfully.
stack build --no-terminal --fast
stack build ipython-kernel --flag ipython-kernel:examples --fast
# Ensure that ipython-kernel examples build successfully.
# Ensure that IHaskell notebook remains unchanged.
stack build ipython-kernel --flag ipython-kernel:examples --fast
# Run the notebook to regenerate the outputs, then compare the new notebook to the old one.
stack install --fast
# Ensure that IHaskell notebook remains unchanged.
stack exec -- ihaskell install --stack
# Run the notebook to regenerate the outputs, then compare the new notebook to the old one.
stack exec -- jupyter nbconvert --to=notebook --execute --stdout notebooks/IHaskell.ipynb > ~/ihaskell-out.ipynb
stack install --fast
stack exec -- ihaskell install --stack
# Images are rendered differently on different systems, so filter them out in the comparison
stack exec -- jupyter nbconvert --to=notebook --execute --stdout notebooks/IHaskell.ipynb > ~/ihaskell-out.ipynb
diff <(grep -v image/png ~/ihaskell-out.ipynb) <(grep -v image/png notebooks/IHaskell.ipynb)
fi
# Images are rendered differently on different systems, so filter them out in the comparison
diff <(grep -v image/png ~/ihaskell-out.ipynb) <(grep -v image/png notebooks/IHaskell.ipynb)
fi
-
env
:
DISPLAY=true USE_STACK_YAML="stack-8.2.yaml"
# GHC 8.2.1
language
:
python
# Test against different stack LTS versions.
# Choose a lightweight base image; we provide our own build tools.
python
:
"
3.6"
# Enable caching.
sudo
:
false
# Caching so the next build will be fast too.
# These caches are the same between resolvers, but this is fine,
# as Stack differentiates between its resolvers.
cache
:
directories
:
-
$HOME/.ghc
-
$HOME/.cabal
-
$HOME/.stack
-
$HOME/zeromq
# Enable packages we need.
# Not all packages are available – see before_install for from-source builds.
addons
:
apt
:
packages
:
-
libmagic-dev
# magic
-
libgmp-dev
# ghc
-
libblas-dev
# hmatrix
-
liblapack-dev
# hmatrix
-
libcairo2-dev
# cairo
-
libpango1.0-dev
# pango
before_install
:
# Download and unpack the stack executable
-
export PATH=$HOME/.local/bin:$PATH
-
mkdir -p ~/.local/bin
-
curl -L https://www.stackage.org/stack/linux-x86_64 | tar xz --wildcards --strip-components=1 -C ~/.local/bin '*/stack'
# Install zeromq3 -- the package is not supported yet on Travis whitelist... (06/06/2016)
-
|
if [ ! -d "$HOME/zeromq/lib" ]; then
export OLDPWD=$(pwd)
travis_retry git clone http://www.github.com/zeromq/zeromq4-x.git libzmq
mkdir $HOME/zeromq
cd libzmq
travis_retry ./autogen.sh
travis_retry ./configure --prefix=$HOME/zeromq
make
travis_retry make install
cd $OLDPWD
fi
# Upgrades to avoid later build problems
-
pip install -U pip
-
pip install -U setuptools
# Install nbconvert for testing the notebook
-
pip install jupyter notebook nbconvert
# This step takes the longest, and is what generates the Stack cache.
install
:
# Set path for pkg-config to find zeromq, otherwise install of zeromq4-haskell fails.
-
export PKG_CONFIG_PATH=$HOME/zeromq/lib/pkgconfig/
-
|
# Used to avoid 'source and destination file are the same' error
mv $USE_STACK_YAML intermediate-stack.yaml
mv intermediate-stack.yaml stack.yaml
echo "apply-ghc-options: everything" >> stack.yaml
-
stack setup
-
stack install gtk2hs-buildtools --fast
-
stack build hmatrix --fast
-
stack build --dependencies-only --fast
script
:
-
export LD_LIBRARY_PATH=$HOME/zeromq/lib
-
stack test --no-terminal --fast
-
|
set -e
if $DISPLAY; then
TOP=$(pwd)
stack build --no-terminal --fast
# Ensure that ipython-kernel examples build successfully.
stack build ipython-kernel --flag ipython-kernel:examples --fast
# Ensure that IHaskell notebook remains unchanged.
# Run the notebook to regenerate the outputs, then compare the new notebook to the old one.
stack install --fast
stack exec -- ihaskell install --stack
stack exec -- jupyter nbconvert --to=notebook --execute --stdout notebooks/IHaskell.ipynb > ~/ihaskell-out.ipynb
# Images are rendered differently on different systems, so filter them out in the comparison
diff <(grep -v image/png ~/ihaskell-out.ipynb) <(grep -v image/png notebooks/IHaskell.ipynb)
fi
-
language
:
nix
env
:
RELEASE_NIX="release.nix"
script
:
nix-build -I nixpkgs=https://github.com/NixOS/nixpkgs-channels/archive/c99239bca08d12bf98000961912b4c0ad52a8a7e.tar.gz $RELEASE_NIX
-
language
:
nix
env
:
RELEASE_NIX="release-8.2.nix"
script
:
nix-build -I nixpkgs=https://github.com/NixOS/nixpkgs-channels/archive/c99239bca08d12bf98000961912b4c0ad52a8a7e.tar.gz $RELEASE_NIX
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment