From 50fe52d74db738b9db5eb8460fec11dc5e0848a4 Mon Sep 17 00:00:00 2001 From: Gabriel Ferreira Date: Tue, 2 Sep 2025 10:27:52 +0000 Subject: [PATCH] ci: Add MacOS jobs for GitLab CI --- utils/tests/gitlab-ci-macos.yml | 86 +++++++++++++++++++++++++++++++++ utils/tests/gitlab-ci.yml | 1 + 2 files changed, 87 insertions(+) create mode 100644 utils/tests/gitlab-ci-macos.yml diff --git a/utils/tests/gitlab-ci-macos.yml b/utils/tests/gitlab-ci-macos.yml new file mode 100644 index 000000000..f68357fbb --- /dev/null +++ b/utils/tests/gitlab-ci-macos.yml @@ -0,0 +1,86 @@ +# Copyright (c) 2025 Centre Tecnologic de Telecomunicacions de Catalunya (CTTC) +# +# SPDX-License-Identifier: GPL-2.0-only +# NS3 CI script for MacOS +# Check if everything builds fine under debug, default, and optimized, on MacOS. + +.build-macos-base: + extends: .base-build + tags: + - saas-macos-medium-m1 + # - saas-macos-large-m2pro + image: macos-14-xcode-15 + #tags: + # - macos + # - nsnam + before_script: + - brew update + - brew upgrade + - brew install ninja cmake ccache libxml2 eigen git + rules: + - if: $RELEASE == "weekly" + - if: $RELEASE == "daily" + - if: $CI_PIPELINE_SOURCE == 'merge_request_event' + allow_failure: true + variables: + EXTRA_OPTIONS: --disable-mpi + COMPILER: clang++ + +daily-macos: + rules: + - if: $RELEASE == "weekly" + - if: $RELEASE == "daily" + - if: $CI_PIPELINE_SOURCE == 'merge_request_event' + when: manual + allow_failure: true + stage: pre-build + script: + - echo "Starting MacOS jobs" + +daily-build-macos-debug: + extends: .build-macos-base + needs: [ "daily-macos" ] + stage: build + variables: + MODE: debug + +daily-build-macos-default: + extends: .build-macos-base + needs: [ "daily-macos" ] + stage: build + variables: + MODE: default + +daily-build-macos-optimized: + extends: .build-macos-base + needs: [ "daily-macos" ] + stage: build + variables: + MODE: optimized + +daily-test-macos-debug: + extends: .build-macos-base + stage: test + needs: ["daily-build-macos-debug"] + dependencies: + - daily-build-macos-debug + variables: + MODE: debug + +daily-test-macos-default: + extends: .build-macos-base + stage: test + needs: [ "daily-build-macos-default" ] + dependencies: + - daily-build-macos-default + variables: + MODE: default + +daily-test-macos-optimized: + extends: .build-macos-base + stage: test + needs: [ "daily-build-macos-optimized" ] + dependencies: + - daily-build-macos-optimized + variables: + MODE: optimized diff --git a/utils/tests/gitlab-ci.yml b/utils/tests/gitlab-ci.yml index 83890b2da..2a7b34ef7 100644 --- a/utils/tests/gitlab-ci.yml +++ b/utils/tests/gitlab-ci.yml @@ -121,3 +121,4 @@ include: - "utils/tests/gitlab-ci-cppyy.yml" - "utils/tests/gitlab-ci-release.yml" - "utils/tests/gitlab-ci-build.yml" + - "utils/tests/gitlab-ci-macos.yml"