mirror of
https://github.com/gnss-sdr/gnss-sdr
synced 2024-10-27 13:16:24 +00:00
157 lines
5.6 KiB
YAML
157 lines
5.6 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
|
|
- deploy
|
|
|
|
# Stage "build"
|
|
debian8.10:
|
|
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
|
|
|
|
|
|
debian9.3-amd64:
|
|
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
|
|
|
|
|
|
debian9.3_i386:
|
|
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:
|
|
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/
|
|
|
|
|
|
# Stage "test"
|
|
run-test-amd64:
|
|
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
|
|
- mkdir build64
|
|
- cd build-test
|
|
- cmake ..
|
|
- make -j2
|
|
- make check
|
|
- ../install/run_tests --gtest_output=xml
|
|
- mv *.xml ../build64/
|
|
- cd ..
|
|
- rm -rf build-test
|
|
|
|
artifacts:
|
|
paths:
|
|
- build64/*.xml
|
|
|
|
|
|
run-test-i386:
|
|
image: i386/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
|
|
- mkdir build32
|
|
- cd build-test
|
|
- cmake -DENABLE_PACKAGING=ON ..
|
|
- make -j2
|
|
- make check
|
|
- ../install/run_tests --gtest_output=xml
|
|
- mv *.xml ../build32/
|
|
- cd ..
|
|
- rm -rf build-test
|
|
|
|
artifacts:
|
|
paths:
|
|
- build32/*.xml
|
|
|
|
|
|
# Stage "deploy"
|
|
docker-gnsssdr:
|
|
image: docker:latest
|
|
stage: deploy
|
|
services:
|
|
- docker:dind
|
|
before_script:
|
|
- docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD"
|
|
script:
|
|
- mkdir docker-build
|
|
- cd docker-build
|
|
- cp ../docker-gnsssdr/Dockerfile .
|
|
- docker build -t carlesfernandez/docker-gnsssdr .
|
|
- docker push carlesfernandez/docker-gnsssdr
|
|
dependencies:
|
|
- get-dockerfile
|