Files
unison/utils/tests/gitlab-ci-ubuntu.yml
2023-02-08 14:25:30 +00:00

225 lines
6.0 KiB
YAML

# NS3 CI script for ubuntu
# Any scheduled pipeline for Ubuntu should define a variable, named
# "RELEASE", that has a value "weekly". Also, the variable "UBUNTU" should be
# set to True.
# Please take a look at .gitlab-ci.yml to check the dependencies of Ubuntu jobs.
# Ubuntu base
.weekly-build-ubuntu:
extends: .base-build
only:
variables:
- $RELEASE == "weekly"
- $UBUNTU == "True"
before_script:
- apt update
- apt upgrade -y
- DEBIAN_FRONTEND=noninteractive apt install -y
g++ cmake ninja-build ccache
python3 python3-dev
gsl-bin libgsl-dev $LIBGSL
libboost-all-dev
libgtk-3-dev
libfl-dev
libxml2 libxml2-dev
libopenmpi-dev openmpi-bin openmpi-common openmpi-doc
libsqlite3-dev sqlite3
libeigen3-dev
qtbase5-dev qtchooser qt5-qmake qtbase5-dev-tools
bison flex ssh
variables:
COMPILER: g++
# Ubuntu 18.04 (Until April 2023)
weekly-build-ubuntu-18.04-debug:
extends: .weekly-build-ubuntu
image: ubuntu:18.04
before_script:
- apt update
- apt upgrade -y
- apt install -y software-properties-common
- add-apt-repository ppa:ubuntu-toolchain-r/test -y
- apt update
- DEBIAN_FRONTEND=noninteractive apt install -y
g++-9 cmake ninja-build ccache
python3 python3-dev
gsl-bin libgsl-dev $LIBGSL
libboost-all-dev
libgtk-3-dev
libfl-dev
libxml2 libxml2-dev
libopenmpi-dev openmpi-bin openmpi-common openmpi-doc
libsqlite3-dev sqlite3
qtbase5-dev qtchooser qt5-qmake qtbase5-dev-tools
bison flex ssh
- update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 700 --slave /usr/bin/g++ g++ /usr/bin/g++-7
- update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 800 --slave /usr/bin/g++ g++ /usr/bin/g++-9
variables:
MODE: debug
LIBGSL: libgsl23
weekly-build-ubuntu-18.04-default:
extends: .weekly-build-ubuntu
image: ubuntu:18.04
before_script:
- apt update
- apt install -y software-properties-common
- add-apt-repository ppa:ubuntu-toolchain-r/test -y
- apt update
- DEBIAN_FRONTEND=noninteractive apt install -y
g++-9 cmake ninja-build ccache
python3 python3-dev
gsl-bin libgsl-dev $LIBGSL
libboost-all-dev
libgtk-3-dev
libfl-dev
libxml2 libxml2-dev
libopenmpi-dev openmpi-bin openmpi-common openmpi-doc
libsqlite3-dev sqlite3
qtbase5-dev qtchooser qt5-qmake qtbase5-dev-tools
bison flex ssh
- update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 700 --slave /usr/bin/g++ g++ /usr/bin/g++-7
- update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 800 --slave /usr/bin/g++ g++ /usr/bin/g++-9
variables:
MODE: default
LIBGSL: libgsl23
weekly-build-ubuntu-18.04-optimized:
extends: .weekly-build-ubuntu
image: ubuntu:18.04
before_script:
- apt update
- apt install -y software-properties-common
- add-apt-repository ppa:ubuntu-toolchain-r/test -y
- apt update
- DEBIAN_FRONTEND=noninteractive apt install -y
g++-9 cmake ninja-build ccache
python3 python3-dev
gsl-bin libgsl-dev $LIBGSL
libboost-all-dev
libgtk-3-dev
libfl-dev
libxml2 libxml2-dev
libopenmpi-dev openmpi-bin openmpi-common openmpi-doc
libsqlite3-dev sqlite3
qtbase5-dev qtchooser qt5-qmake qtbase5-dev-tools
bison flex ssh
- update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 700 --slave /usr/bin/g++ g++ /usr/bin/g++-7
- update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 800 --slave /usr/bin/g++ g++ /usr/bin/g++-9
variables:
MODE: optimized
LIBGSL: libgsl23
# # Ubuntu 20.04 (Until April 2025)
# weekly-build-ubuntu-20.04-debug:
# extends: .weekly-build-ubuntu
# image: ubuntu:20.04
# variables:
# MODE: debug
# LIBGSL: libgsl23
# weekly-build-ubuntu-20.04-default:
# extends: .weekly-build-ubuntu
# image: ubuntu:20.04
# variables:
# MODE: default
# LIBGSL: libgsl23
# weekly-build-ubuntu-20.04-optimized:
# extends: .weekly-build-ubuntu
# image: ubuntu:20.04
# variables:
# MODE: optimized
# LIBGSL: libgsl23
# # Ubuntu 21.04 (Until January 2022)
# weekly-build-ubuntu-21.04-debug:
# extends: .weekly-build-ubuntu
# image: ubuntu:21.04
# variables:
# MODE: debug
# LIBGSL: libgsl25
# weekly-build-ubuntu-21.04-default:
# extends: .weekly-build-ubuntu
# image: ubuntu:21.04
# variables:
# MODE: default
# LIBGSL: libgsl25
# weekly-build-ubuntu-21.04-optimized:
# extends: .weekly-build-ubuntu
# image: ubuntu:21.04
# variables:
# MODE: optimized
# LIBGSL: libgsl25
# Ubuntu 22.04 (Until January 2032)
weekly-build-ubuntu-22.04-debug:
extends: .weekly-build-ubuntu
image: ubuntu:22.04
variables:
MODE: debug
LIBGSL: libgsl27
weekly-build-ubuntu-22.04-default:
extends: .weekly-build-ubuntu
image: ubuntu:22.04
variables:
MODE: default
LIBGSL: libgsl27
weekly-build-ubuntu-22.04-optimized:
extends: .weekly-build-ubuntu
image: ubuntu:22.04
variables:
MODE: optimized
LIBGSL: libgsl27
# Ubuntu Latest
weekly-build-ubuntu-latest-debug:
extends: .weekly-build-ubuntu
image: ubuntu:latest
variables:
MODE: debug
LIBGSL: libgsl27
weekly-build-ubuntu-latest-default:
extends: .weekly-build-ubuntu
image: ubuntu:latest
variables:
MODE: default
LIBGSL: libgsl27
weekly-build-ubuntu-latest-optimized:
extends: .weekly-build-ubuntu
image: ubuntu:latest
variables:
MODE: optimized
LIBGSL: libgsl27
# Ubuntu Rolling
# weekly-build-ubuntu-rolling-debug:
# extends: .weekly-build-ubuntu
# image: ubuntu:rolling
# variables:
# MODE: debug
# LIBGSL: libgsl27
# weekly-build-ubuntu-rolling-default:
# extends: .weekly-build-ubuntu
# image: ubuntu:rolling
# variables:
# MODE: default
# LIBGSL: libgsl27
# weekly-build-ubuntu-rolling-optimized:
# extends: .weekly-build-ubuntu
# image: ubuntu:rolling
# variables:
# MODE: optimized
# LIBGSL: libgsl27