CI(27) of Orbit of shortest vectors #2
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: CI(27) of Orbit of shortest vectors | |
# on: release | |
on: | |
# One time per month | |
schedule: | |
- cron: "0 0 27 * *" | |
# Manually triggered | |
workflow_dispatch: | |
# Disabled right now, when a push is made on master. | |
jobs: | |
build-linux: | |
runs-on: ubuntu-latest | |
env: | |
GMP_INCDIR: /usr/include | |
GMP_CXX_LINK: "-lm -lgmp -lgmpxx" | |
BOOST_INCDIR: "/usr/include" | |
BOOST_LINK: "/usr/lib/x86_64-linux-gnu/libboost_serialization.a" | |
EIGEN_PATH: /home/runner/work/opt/eigen | |
TBB_INCDIR: /usr/include | |
TBB_LINK: "-ltbb" | |
GLPK_INCLUDE: "-I/usr/include" | |
GLPK_LINK: "-L/usr/lib -lglpk -Wl,-rpath,/usr/lib" | |
FLINT_INCDIR: "/include" | |
FLINT_LINK: "-lflint" | |
CDDLIB_PATH: "/home/runner/work/opt/cddlib" | |
CDDLIB_INCLUDE: "-I/home/runner/work/opt/cddlib/include/cddlib" | |
CDDLIB_DOUBLE_LINK: "-L/home/runner/work/opt/cddlib/lib -lcdd -Wl,-rpath,/home/runner/work/opt/cddlib/lib" | |
CDDLIB_GMP_LINK: "-L/home/runner/work/opt/cddlib/lib -lcddgmp -Wl,-rpath,/home/runner/work/opt/cddlib/lib" | |
NAUTY_PATH: /home/runner/work/opt/nauty | |
NAUTY_INCLUDE: "-I/home/runner/work/opt/nauty/include" | |
NAUTY_LINK: "/home/runner/work/opt/nauty/lib/libnauty_static.a" | |
LIBBLISS_PATH: /home/runner/opt/libbliss | |
LIBBLISS_INCDIR: /home/runner/opt/libbliss/include | |
LIBBLISS_LINK: "-L/home/runner/opt/libbliss/lib -lbliss -Wl,-rpath,/home/runner/opt/libbliss/lib" | |
MPI_INCLUDE_CPP: "-I/usr/lib/x86_64-linux-gnu/openmpi/include" | |
MPI_LINK_CPP: "-lboost_mpi -lboost_serialization -lmpi -lmpi_cxx" | |
MPFR_INCDIR: /usr/include | |
MPFR_LINK: "-lmpfr" | |
steps: | |
- uses: actions/checkout@v2 | |
with: | |
submodules: recursive | |
- uses: actions-rs/toolchain@v1 | |
with: | |
toolchain: stable | |
override: true | |
- name: Install Dependencies | |
run: | | |
sudo apt-get update | |
sudo apt-get install -y libgdbm-dev libsnappy-dev make pkg-config rlwrap software-properties-common zlib1g-dev | |
sudo apt-get install -y wget | |
sudo apt-get install -y g++ gcc gfortran | |
sudo apt-get install -y cmake | |
sudo apt-get install -y libgmp-dev | |
sudo apt-get install -y libboost-dev libboost-mpi-dev libboost-serialization-dev | |
sudo apt-get install -y libtbb-dev libgsl-dev libglpk-dev libflint-dev | |
sudo apt-get install -y autoconf autotools-dev libtool | |
sudo apt-get install -y texlive-latex-base # needed for the CDD manual to be compiled | |
sudo apt-get install -y libntl-dev libmpfr-dev | |
sudo apt-get install -y openmpi-bin libopenmpi-dev | |
sudo apt-get install -y autoconf autotools-dev libtool | |
- name: Build test code | |
run: | | |
ls | |
echo "After ls" | |
pwd | |
echo "After pwd" | |
ls basic_common_cpp | |
echo "After ls basic_common_cpp" | |
mkdir basic_common_cpp/ExternalLib/nauty/build | |
cd basic_common_cpp/ExternalLib/nauty/build && cmake -DCMAKE_INSTALL_PREFIX:PATH=$NAUTY_PATH .. && make all install && cd ../../../.. | |
pwd | |
echo "After nauty compilation" | |
mkdir basic_common_cpp/ExternalLib/bliss/build | |
cd basic_common_cpp/ExternalLib/bliss/build && cmake -DCMAKE_INSTALL_PREFIX:PATH=$LIBBLISS_PATH .. && make all install && cd ../../../.. | |
pwd | |
echo "After bliss compilation" | |
git clone https://github.com/cddlib/cddlib | |
cd cddlib && ./bootstrap && ./configure --prefix=$CDDLIB_PATH && make && make install && cd .. | |
pwd | |
echo "After cddlib compilation" | |
# We need specific version 3.3.9 because of a bug in 3.4.0 for algebraic data types. | |
wget -q https://gitlab.com/libeigen/eigen/-/archive/3.3.9/eigen-3.3.9.tar.gz | |
tar -xzf eigen-3.3.9.tar.gz | |
mv eigen-3.3.9 /home/runner/work/opt/eigen | |
pwd | |
echo "After eigen-3.3.9 set up" | |
# Downloading and compiling gap | |
wget -q https://github.com/gap-system/gap/releases/download/v4.11.1/gap-4.11.1.tar.gz | |
tar -xzf gap-4.11.1.tar.gz | |
cd gap-4.11.1 && ./configure && make && cd .. | |
pwd | |
ln -s gap-4.11.1/bin/gap.sh . | |
- name: Test enumeration of orbits of shortest vectors | |
run: | | |
cd src_latt && make -f Makefile_orbit_shortest && cd .. | |
pwd | |
echo "After compilation of enumeration of orbits of shortest vectors" | |
cd CI_tests/OrbitShortestVector && ../../gap.sh < TestOrbitVector.g && cd ../.. | |
echo "After test of the shortest basis enumeration code" |