# NS3 CI script for ubuntu # Any scheduled pipeline for Ubuntu should define a variable, named # "RELEASE", that has a value "weekly". Also, the variale "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-get --quiet update --yes - apt-get --quiet upgrade --yes - DEBIAN_FRONTEND=noninteractive apt-get install -y tzdata - apt-get --quiet install gcc g++ cmake ninja-build python3 python3-dev qtbase5-dev qtchooser qt5-qmake qtbase5-dev-tools openmpi-bin openmpi-common openmpi-doc libopenmpi-dev gsl-bin libgsl-dev ccache flex bison libfl-dev sqlite3 libsqlite3-dev libxml2 libxml2-dev libgtk-3-dev libboost-all-dev $LIBGSL ssh --yes 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-get --quiet update --yes - apt-get --quiet upgrade --yes - apt-get --quiet install software-properties-common --yes - add-apt-repository ppa:ubuntu-toolchain-r/test --yes - apt-get --quiet update --yes - DEBIAN_FRONTEND=noninteractive apt-get install -y tzdata - apt-get --quiet install gcc-9 g++-9 cmake ninja-build python3 python3-dev qtbase5-dev qtchooser qt5-qmake qtbase5-dev-tools openmpi-bin openmpi-common openmpi-doc libopenmpi-dev gsl-bin libgsl-dev ccache flex bison libfl-dev sqlite3 libsqlite3-dev libxml2 libxml2-dev libgtk-3-dev libboost-all-dev $LIBGSL ssh --yes - 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-get --quiet update --yes - apt-get --quiet install software-properties-common --yes - add-apt-repository ppa:ubuntu-toolchain-r/test --yes - apt-get --quiet update --yes - DEBIAN_FRONTEND=noninteractive apt-get install -y tzdata - apt-get --quiet install gcc-9 g++-9 cmake ninja-build python3 python3-dev qtbase5-dev qtchooser qt5-qmake qtbase5-dev-tools openmpi-bin openmpi-common openmpi-doc libopenmpi-dev gsl-bin libgsl-dev ccache flex bison libfl-dev sqlite3 libsqlite3-dev libxml2 libxml2-dev libgtk-3-dev libboost-all-dev $LIBGSL ssh --yes - 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-get --quiet update --yes - apt-get --quiet install software-properties-common --yes - add-apt-repository ppa:ubuntu-toolchain-r/test --yes - apt-get --quiet update --yes - DEBIAN_FRONTEND=noninteractive apt-get install -y tzdata - apt-get --quiet install gcc-9 g++-9 cmake ninja-build python3 python3-dev qtbase5-dev qtchooser qt5-qmake qtbase5-dev-tools openmpi-bin openmpi-common openmpi-doc libopenmpi-dev gsl-bin libgsl-dev ccache flex bison libfl-dev sqlite3 libsqlite3-dev libxml2 libxml2-dev libgtk-3-dev libboost-all-dev $LIBGSL ssh --yes - 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 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