184 lines
4.1 KiB
YAML
184 lines
4.1 KiB
YAML
# NS3 CI script for fedora
|
|
|
|
# Any scheduled pipeline for Fedora should define a variable, named
|
|
# "RELEASE", that has a value "weekly". Also, a variable "FEDORA" should be set
|
|
# to True.
|
|
|
|
# Please take a look at .gitlab-ci.yml to check the dependencies of Fedora jobs.
|
|
|
|
# Weekly jobs: Fedora
|
|
.weekly-build-fedora:
|
|
extends: .base-build
|
|
rules:
|
|
- if: $RELEASE == "weekly"
|
|
- if: $CI_PIPELINE_SOURCE == 'merge_request_event'
|
|
allow_failure: true
|
|
before_script:
|
|
- dnf update --assumeyes
|
|
- dnf install --assumeyes
|
|
gcc-c++ cmake ccache ninja-build
|
|
boost-devel
|
|
eigen3-devel
|
|
gtk3 gtk3-devel
|
|
gsl gsl-devel
|
|
sqlite sqlite-devel
|
|
libxml2 libxml2-devel
|
|
openmpi openmpi-devel
|
|
goocanvas2-devel
|
|
python python-devel
|
|
pygobject3-devel python3-gobject gobject-introspection-devel
|
|
graphviz-devel graphviz ipython
|
|
git
|
|
- source /etc/profile.d/modules.sh
|
|
- module load mpi/openmpi-x86_64
|
|
variables:
|
|
COMPILER: g++
|
|
|
|
weekly-fedora:
|
|
rules:
|
|
- if: $RELEASE == "weekly"
|
|
- if: $CI_PIPELINE_SOURCE == 'merge_request_event'
|
|
when: manual
|
|
allow_failure: true
|
|
stage: pre-build
|
|
script:
|
|
- echo "Starting Fedora jobs"
|
|
|
|
# Fedora 36
|
|
# weekly-build-fedora-36-debug:
|
|
# extends: .weekly-build-fedora
|
|
# needs: ["weekly-fedora"]
|
|
# image: fedora:36
|
|
# stage: build
|
|
# variables:
|
|
# MODE: debug
|
|
|
|
# weekly-build-fedora-36-default:
|
|
# extends: .weekly-build-fedora
|
|
# needs: ["weekly-fedora"]
|
|
# image: fedora:36
|
|
# stage: build
|
|
# variables:
|
|
# MODE: default
|
|
|
|
# weekly-build-fedora-36-optimized:
|
|
# extends: .weekly-build-fedora
|
|
# needs: ["weekly-fedora"]
|
|
# image: fedora:36
|
|
# stage: build
|
|
# variables:
|
|
# MODE: optimized
|
|
|
|
# Fedora 36 test
|
|
# weekly-test-fedora-36-default:
|
|
# extends: .weekly-build-fedora
|
|
# image: fedora:36
|
|
# stage: test
|
|
# needs: ["weekly-build-fedora-36-default"]
|
|
# dependencies:
|
|
# - weekly-build-fedora-36-default
|
|
# variables:
|
|
# MODE: default
|
|
|
|
# weekly-test-fedora-36-optimized:
|
|
# extends: .weekly-build-fedora
|
|
# image: fedora:36
|
|
# stage: test
|
|
# needs: ["weekly-build-fedora-36-optimized"]
|
|
# dependencies:
|
|
# - weekly-build-fedora-36-optimized
|
|
# variables:
|
|
# MODE: optimized
|
|
|
|
# Fedora 37
|
|
weekly-build-fedora-37-debug:
|
|
extends: .weekly-build-fedora
|
|
needs: ["weekly-fedora"]
|
|
image: fedora:37
|
|
stage: build
|
|
variables:
|
|
MODE: debug
|
|
|
|
weekly-build-fedora-37-default:
|
|
extends: .weekly-build-fedora
|
|
needs: ["weekly-fedora"]
|
|
image: fedora:37
|
|
stage: build
|
|
variables:
|
|
MODE: default
|
|
|
|
weekly-build-fedora-37-optimized:
|
|
extends: .weekly-build-fedora
|
|
needs: ["weekly-fedora"]
|
|
image: fedora:37
|
|
stage: build
|
|
variables:
|
|
MODE: optimized
|
|
|
|
# Fedora 37 test
|
|
weekly-test-fedora-37-default:
|
|
extends: .weekly-build-fedora
|
|
image: fedora:37
|
|
stage: test
|
|
needs: ["weekly-build-fedora-37-default"]
|
|
dependencies:
|
|
- weekly-build-fedora-37-default
|
|
variables:
|
|
MODE: default
|
|
|
|
weekly-test-fedora-37-optimized:
|
|
extends: .weekly-build-fedora
|
|
image: fedora:37
|
|
stage: test
|
|
needs: ["weekly-build-fedora-37-optimized"]
|
|
dependencies:
|
|
- weekly-build-fedora-37-optimized
|
|
variables:
|
|
MODE: optimized
|
|
|
|
# Fedora 38
|
|
weekly-build-fedora-38-debug:
|
|
extends: .weekly-build-fedora
|
|
needs: ["weekly-fedora"]
|
|
image: fedora:38
|
|
stage: build
|
|
variables:
|
|
MODE: debug
|
|
|
|
weekly-build-fedora-38-default:
|
|
extends: .weekly-build-fedora
|
|
needs: ["weekly-fedora"]
|
|
image: fedora:38
|
|
stage: build
|
|
variables:
|
|
MODE: default
|
|
|
|
weekly-build-fedora-38-optimized:
|
|
extends: .weekly-build-fedora
|
|
needs: ["weekly-fedora"]
|
|
image: fedora:38
|
|
stage: build
|
|
variables:
|
|
MODE: optimized
|
|
|
|
# Fedora 38 test
|
|
weekly-test-fedora-38-default:
|
|
extends: .weekly-build-fedora
|
|
image: fedora:38
|
|
stage: test
|
|
needs: ["weekly-build-fedora-38-default"]
|
|
dependencies:
|
|
- weekly-build-fedora-38-default
|
|
variables:
|
|
MODE: default
|
|
|
|
weekly-test-fedora-38-optimized:
|
|
extends: .weekly-build-fedora
|
|
image: fedora:38
|
|
stage: test
|
|
needs: ["weekly-build-fedora-38-optimized"]
|
|
dependencies:
|
|
- weekly-build-fedora-38-optimized
|
|
variables:
|
|
MODE: optimized
|