1
0
mirror of https://github.com/gnss-sdr/gnss-sdr synced 2024-07-15 08:04:21 +00:00
gnss-sdr/.gitlab-ci.yml
2018-02-10 01:04:32 +01:00

132 lines
4.8 KiB
YAML

# Is performed before the scripts in the stages step
before_script:
- source /etc/profile
# Defines stages which are to be executed
stages:
- build
- test
# Stage "build"
debian-jessie-build:
image: debian:8.10-slim
stage: build
script:
- apt-get update
- apt-get install -y --no-install-recommends build-essential cmake git libboost-dev libboost-date-time-dev libboost-system-dev libboost-filesystem-dev libboost-thread-dev libboost-chrono-dev libboost-serialization-dev liblog4cpp5-dev gnuradio-dev libblas-dev liblapack-dev libarmadillo-dev libgflags-dev libgoogle-glog-dev libgnutls-openssl-dev python-mako python-six libmatio-dev libgtest-dev
- cd build
- cmake ..
- make -j2
- make install
debian-stretch-amd64-build:
image: debian:9.3-slim
stage: build
script:
- apt-get update
- apt-get install -y --no-install-recommends build-essential cmake git libboost-dev libboost-date-time-dev libboost-system-dev libboost-filesystem-dev libboost-thread-dev libboost-chrono-dev libboost-serialization-dev liblog4cpp5-dev gnuradio-dev libblas-dev liblapack-dev libarmadillo-dev libgflags-dev libgoogle-glog-dev libgnutls-openssl-dev python-mako python-six libmatio-dev googletest
- cd build
- cmake ..
- make -j2
- make install
debian-stretch-i386-build:
image: i386/debian:9.3-slim
stage: build
script:
- apt-get update
- apt-get install -y --no-install-recommends build-essential cmake git libboost-dev libboost-date-time-dev libboost-system-dev libboost-filesystem-dev libboost-thread-dev libboost-chrono-dev libboost-serialization-dev liblog4cpp5-dev gnuradio-dev libblas-dev liblapack-dev libarmadillo-dev libgflags-dev libgoogle-glog-dev libgnutls-openssl-dev python-mako python-six libmatio-dev googletest
- cd build
- cmake ..
- make -j2
- make install
debian-buster-build:
image: debian:buster-slim
stage: build
script:
- apt-get update
- apt-get install -y --no-install-recommends build-essential cmake git libboost-dev libboost-date-time-dev libboost-system-dev libboost-filesystem-dev libboost-thread-dev libboost-chrono-dev libboost-serialization-dev liblog4cpp5-dev gnuradio-dev libblas-dev liblapack-dev libarmadillo-dev libgflags-dev libgoogle-glog-dev libgnutls-openssl-dev python-mako python-six libmatio-dev googletest
- cd build
- cmake ..
- make -j2
- make install
ubuntu-16.04-build:
image: ubuntu:xenial
stage: build
script:
- apt-get update
- apt-get install -y --no-install-recommends build-essential cmake git libboost-dev libboost-date-time-dev libboost-system-dev libboost-filesystem-dev libboost-thread-dev libboost-chrono-dev libboost-serialization-dev liblog4cpp5-dev gnuradio-dev libblas-dev liblapack-dev libarmadillo-dev libgflags-dev libgoogle-glog-dev libgnutls-openssl-dev python-mako python-six libmatio-dev libgtest-dev
- cd build
- cmake ..
- make -j2
- make install
ubuntu-18.04-build:
image: ubuntu:bionic
stage: build
script:
- apt-get update
- apt-get install -y --no-install-recommends build-essential cmake git libboost-dev libboost-date-time-dev libboost-system-dev libboost-filesystem-dev libboost-thread-dev libboost-chrono-dev libboost-serialization-dev liblog4cpp5-dev gnuradio-dev libblas-dev liblapack-dev libarmadillo-dev libgflags-dev libgoogle-glog-dev libgnutls-openssl-dev python-mako python-six libmatio-dev googletest
- cd build
- cmake ..
- make -j2
- make install
get-dockerfile:
image: debian:9.3-slim
stage: build
script:
- apt-get update
- apt-get install -y git ca-certificates
- git clone https://github.com/carlesfernandez/docker-gnsssdr
artifacts:
paths:
- docker-gnsssdr/
docker-gnsssdr:
image: docker:latest
stage: test
services:
- docker:dind
before_script:
- docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" $CI_REGISTRY
script:
- mkdir docker-build
- cd docker-build
- cp ../docker-gnsssdr/Dockerfile .
- docker build -t -pull carlesfernandez/docker-gnsssdr .
- docker push "$CI_REGISTRY_IMAGE"
dependencies:
- get-dockerfile
# Stage "test"
run-test:
image: debian:9.3-slim
stage: test
script:
- apt-get update
- apt-get install -y --no-install-recommends build-essential cmake git libboost-dev libboost-date-time-dev libboost-system-dev libboost-filesystem-dev libboost-thread-dev libboost-chrono-dev libboost-serialization-dev liblog4cpp5-dev gnuradio-dev libblas-dev liblapack-dev libarmadillo-dev libgflags-dev libgoogle-glog-dev libgnutls-openssl-dev python-mako python-six libmatio-dev googletest
- mkdir build-test
- cd build-test
- cmake ..
- make -j2
- make check
- ../install/run_tests --gtest_output=xml
- mv *.xml ../build/
- cd ..
- rm -rf build-test
artifacts:
paths:
- build/*.xml