mirror of
https://git.libssh.org/projects/libssh.git
synced 2026-02-04 12:20:42 +09:00
ci: Avoid repetitive definitions
Signed-off-by: Jakub Jelen <jjelen@redhat.com> Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
This commit is contained in:
132
.gitlab-ci.yml
132
.gitlab-ci.yml
@@ -17,7 +17,7 @@ stages:
|
|||||||
- analysis
|
- analysis
|
||||||
|
|
||||||
# This is some black magic to select between branch pipelines and
|
# This is some black magic to select between branch pipelines and
|
||||||
# merge request pipelines to avoid running same pipelines in twice
|
# merge request pipelines to avoid running same pipelines twice
|
||||||
workflow:
|
workflow:
|
||||||
rules:
|
rules:
|
||||||
- if: '$CI_COMMIT_BRANCH && $CI_OPEN_MERGE_REQUESTS && $CI_PIPELINE_SOURCE == "push"'
|
- if: '$CI_COMMIT_BRANCH && $CI_OPEN_MERGE_REQUESTS && $CI_PIPELINE_SOURCE == "push"'
|
||||||
@@ -84,6 +84,36 @@ workflow:
|
|||||||
extends: .tests
|
extends: .tests
|
||||||
image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$TUMBLEWEED_BUILD
|
image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$TUMBLEWEED_BUILD
|
||||||
|
|
||||||
|
.centos:
|
||||||
|
extends: .tests
|
||||||
|
variables:
|
||||||
|
OPENSSL_ENABLE_SHA1_SIGNATURES: 1
|
||||||
|
|
||||||
|
.centos10:
|
||||||
|
extends: .centos
|
||||||
|
image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$CENTOS10_BUILD
|
||||||
|
|
||||||
|
.centos9:
|
||||||
|
extends: .centos
|
||||||
|
image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$CENTOS9_BUILD
|
||||||
|
|
||||||
|
# Unit testing only, no client and pkd testing, because cwrap is not available
|
||||||
|
# for MinGW
|
||||||
|
.mingw:
|
||||||
|
extends: .tests
|
||||||
|
variables:
|
||||||
|
WINEDEBUG: -all
|
||||||
|
script:
|
||||||
|
- $WINEBIN $CMAKE_DEFAULT_OPTIONS
|
||||||
|
-DWITH_SFTP=ON
|
||||||
|
-DWITH_SERVER=ON
|
||||||
|
-DWITH_ZLIB=ON
|
||||||
|
-DWITH_PCAP=ON
|
||||||
|
-DWITH_FIDO2=ON
|
||||||
|
-DUNIT_TESTING=ON .. &&
|
||||||
|
make -j$(nproc) &&
|
||||||
|
ctest --output-on-failure -E torture_rand
|
||||||
|
|
||||||
.fips:
|
.fips:
|
||||||
extends: .tests
|
extends: .tests
|
||||||
variables:
|
variables:
|
||||||
@@ -126,11 +156,9 @@ review:
|
|||||||
# CentOS builds #
|
# CentOS builds #
|
||||||
###############################################################################
|
###############################################################################
|
||||||
centos10s/openssl_3.5.x/x86_64:
|
centos10s/openssl_3.5.x/x86_64:
|
||||||
image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$CENTOS10_BUILD
|
extends: .centos10
|
||||||
extends: .tests
|
|
||||||
variables:
|
variables:
|
||||||
CMAKE_ADDITIONAL_OPTIONS: -DWITH_PKCS11_URI=ON -DWITH_PKCS11_PROVIDER=ON
|
CMAKE_ADDITIONAL_OPTIONS: -DWITH_PKCS11_URI=ON -DWITH_PKCS11_PROVIDER=ON
|
||||||
OPENSSL_ENABLE_SHA1_SIGNATURES: 1
|
|
||||||
script:
|
script:
|
||||||
- cmake $CMAKE_OPTIONS $CMAKE_ADDITIONAL_OPTIONS .. &&
|
- cmake $CMAKE_OPTIONS $CMAKE_ADDITIONAL_OPTIONS .. &&
|
||||||
make -j$(nproc) &&
|
make -j$(nproc) &&
|
||||||
@@ -148,11 +176,9 @@ centos10s/openssl_3.5.x/x86_64/fips:
|
|||||||
OPENSSL_FORCE_FIPS_MODE=1 ctest --output-on-failure
|
OPENSSL_FORCE_FIPS_MODE=1 ctest --output-on-failure
|
||||||
|
|
||||||
centos9s/openssl_3.5.x/x86_64:
|
centos9s/openssl_3.5.x/x86_64:
|
||||||
image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$CENTOS9_BUILD
|
extends: .centos9
|
||||||
extends: .tests
|
|
||||||
variables:
|
variables:
|
||||||
CMAKE_ADDITIONAL_OPTIONS: -DWITH_PKCS11_URI=ON
|
CMAKE_ADDITIONAL_OPTIONS: -DWITH_PKCS11_URI=ON
|
||||||
OPENSSL_ENABLE_SHA1_SIGNATURES: 1
|
|
||||||
script:
|
script:
|
||||||
- cmake $CMAKE_OPTIONS $CMAKE_ADDITIONAL_OPTIONS .. &&
|
- cmake $CMAKE_OPTIONS $CMAKE_ADDITIONAL_OPTIONS .. &&
|
||||||
make -j$(nproc) &&
|
make -j$(nproc) &&
|
||||||
@@ -335,51 +361,26 @@ fedora/undefined-sanitizer:
|
|||||||
fedora/libgcrypt/x86_64:
|
fedora/libgcrypt/x86_64:
|
||||||
extends: .fedora
|
extends: .fedora
|
||||||
variables:
|
variables:
|
||||||
CMAKE_ADDITIONAL_OPTIONS: "-DWITH_GCRYPT=ON -DWITH_DEBUG_CRYPTO=ON"
|
CMAKE_ADDITIONAL_OPTIONS: "-DWITH_GCRYPT=ON"
|
||||||
|
|
||||||
fedora/mbedtls_2.x/x86_64:
|
fedora/mbedtls_3.x/x86_64:
|
||||||
extends: .fedora
|
extends: .fedora
|
||||||
variables:
|
variables:
|
||||||
CMAKE_ADDITIONAL_OPTIONS: "-DWITH_MBEDTLS=ON -DWITH_DEBUG_CRYPTO=ON "
|
CMAKE_ADDITIONAL_OPTIONS: "-DWITH_MBEDTLS=ON"
|
||||||
|
|
||||||
# Unit testing only, no client and pkd testing, because cwrap is not available
|
|
||||||
# for MinGW
|
|
||||||
fedora/mingw64:
|
fedora/mingw64:
|
||||||
image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$MINGW_BUILD
|
image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$MINGW_BUILD
|
||||||
extends: .tests
|
extends: .mingw
|
||||||
variables:
|
variables:
|
||||||
WINEPATH: /usr/x86_64-w64-mingw32/sys-root/mingw/bin
|
WINEPATH: /usr/x86_64-w64-mingw32/sys-root/mingw/bin
|
||||||
WINEDEBUG: -all
|
WINEBIN: mingw64-cmake
|
||||||
script:
|
|
||||||
- mingw64-cmake $CMAKE_DEFAULT_OPTIONS
|
|
||||||
-DWITH_SFTP=ON
|
|
||||||
-DWITH_SERVER=ON
|
|
||||||
-DWITH_ZLIB=ON
|
|
||||||
-DWITH_PCAP=ON
|
|
||||||
-DWITH_FIDO2=ON
|
|
||||||
-DUNIT_TESTING=ON .. &&
|
|
||||||
make -j$(nproc) &&
|
|
||||||
ctest --output-on-failure -E torture_rand
|
|
||||||
|
|
||||||
# Unit testing only, no client and pkd testing, because cwrap is not available
|
|
||||||
# for MinGW
|
|
||||||
fedora/mingw32:
|
fedora/mingw32:
|
||||||
image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$MINGW_BUILD
|
image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$MINGW_BUILD
|
||||||
extends: .tests
|
extends: .mingw
|
||||||
variables:
|
variables:
|
||||||
WINEPATH: /usr/i686-w64-mingw32/sys-root/mingw/bin
|
WINEPATH: /usr/i686-w64-mingw32/sys-root/mingw/bin
|
||||||
WINEDEBUG: -all
|
WINEBIN: mingw32-cmake
|
||||||
script:
|
|
||||||
- mingw32-cmake $CMAKE_DEFAULT_OPTIONS
|
|
||||||
-DWITH_SFTP=ON
|
|
||||||
-DWITH_SERVER=ON
|
|
||||||
-DWITH_ZLIB=ON
|
|
||||||
-DWITH_PCAP=ON
|
|
||||||
-DWITH_FIDO2=ON
|
|
||||||
-DUNIT_TESTING=ON .. &&
|
|
||||||
make -j$(nproc) &&
|
|
||||||
ctest --output-on-failure -E torture_rand
|
|
||||||
|
|
||||||
|
|
||||||
###############################################################################
|
###############################################################################
|
||||||
# Fedora csbuild #
|
# Fedora csbuild #
|
||||||
@@ -389,6 +390,7 @@ fedora/mingw32:
|
|||||||
variables:
|
variables:
|
||||||
GIT_DEPTH: "100"
|
GIT_DEPTH: "100"
|
||||||
CSCPPC_ADD_OPTS: "--library=./.gitlab-ci/cmocka.cfg"
|
CSCPPC_ADD_OPTS: "--library=./.gitlab-ci/cmocka.cfg"
|
||||||
|
CMAKE_OPTIONS: "-DCMAKE_BUILD_TYPE=Debug -DPICKY_DEVELOPER=ON -DUNIT_TESTING=ON -DCLIENT_TESTING=ON -DSERVER_TESTING=ON -DFUZZ_TESTING=ON"
|
||||||
image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$FEDORA_BUILD
|
image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$FEDORA_BUILD
|
||||||
before_script:
|
before_script:
|
||||||
- |
|
- |
|
||||||
@@ -406,6 +408,14 @@ fedora/mingw32:
|
|||||||
git branch --contains $CI_COMMIT_BEFORE_SHA 2>/dev/null || export CI_COMMIT_BEFORE_SHA=$(git rev-parse "${CI_COMMIT_SHA}~20")
|
git branch --contains $CI_COMMIT_BEFORE_SHA 2>/dev/null || export CI_COMMIT_BEFORE_SHA=$(git rev-parse "${CI_COMMIT_SHA}~20")
|
||||||
|
|
||||||
export CI_COMMIT_RANGE="$CI_COMMIT_BEFORE_SHA..$CI_COMMIT_SHA"
|
export CI_COMMIT_RANGE="$CI_COMMIT_BEFORE_SHA..$CI_COMMIT_SHA"
|
||||||
|
script:
|
||||||
|
- csbuild
|
||||||
|
--build-dir=obj-csbuild
|
||||||
|
--build-cmd "rm -rf CMakeFiles CMakeCache.txt && cmake $CMAKE_OPTIONS $CMAKE_ADDITIONAL_OPTIONS @SRCDIR@ && make clean && make -j$(nproc)"
|
||||||
|
--git-commit-range $CI_COMMIT_RANGE
|
||||||
|
--color
|
||||||
|
--print-current --print-fixed
|
||||||
|
|
||||||
tags:
|
tags:
|
||||||
- saas-linux-small-amd64
|
- saas-linux-small-amd64
|
||||||
except:
|
except:
|
||||||
@@ -420,33 +430,16 @@ fedora/mingw32:
|
|||||||
|
|
||||||
fedora/csbuild/openssl_3.x:
|
fedora/csbuild/openssl_3.x:
|
||||||
extends: .csbuild
|
extends: .csbuild
|
||||||
script:
|
|
||||||
- csbuild
|
|
||||||
--build-dir=obj-csbuild
|
|
||||||
--build-cmd "rm -rf CMakeFiles CMakeCache.txt && cmake -DCMAKE_BUILD_TYPE=Debug -DPICKY_DEVELOPER=ON -DUNIT_TESTING=ON -DCLIENT_TESTING=ON -DSERVER_TESTING=ON -DFUZZ_TESTING=ON @SRCDIR@ && make clean && make -j$(nproc)"
|
|
||||||
--git-commit-range $CI_COMMIT_RANGE
|
|
||||||
--color
|
|
||||||
--print-current --print-fixed
|
|
||||||
|
|
||||||
fedora/csbuild/libgcrypt:
|
fedora/csbuild/libgcrypt:
|
||||||
extends: .csbuild
|
extends: .csbuild
|
||||||
script:
|
variables:
|
||||||
- csbuild
|
CMAKE_ADDITIONAL_OPTIONS: -DWITH_GCRYPT=ON
|
||||||
--build-dir=obj-csbuild
|
|
||||||
--build-cmd "rm -rf CMakeFiles CMakeCache.txt && cmake -DCMAKE_BUILD_TYPE=Debug -DPICKY_DEVELOPER=ON -DUNIT_TESTING=ON -DCLIENT_TESTING=ON -DSERVER_TESTING=ON -DFUZZ_TESTING=ON -DWITH_GCRYPT=ON @SRCDIR@ && make clean && make -j$(nproc)"
|
|
||||||
--git-commit-range $CI_COMMIT_RANGE
|
|
||||||
--color
|
|
||||||
--print-current --print-fixed
|
|
||||||
|
|
||||||
fedora/csbuild/mbedtls:
|
fedora/csbuild/mbedtls:
|
||||||
extends: .csbuild
|
extends: .csbuild
|
||||||
script:
|
variables:
|
||||||
- csbuild
|
CMAKE_ADDITIONAL_OPTIONS: -DWITH_MBEDTLS=ON
|
||||||
--build-dir=obj-csbuild
|
|
||||||
--build-cmd "rm -rf CMakeFiles CMakeCache.txt && cmake -DCMAKE_BUILD_TYPE=Debug -DPICKY_DEVELOPER=ON -DUNIT_TESTING=ON -DCLIENT_TESTING=ON -DSERVER_TESTING=ON -DFUZZ_TESTING=ON -DWITH_MBEDTLS=ON @SRCDIR@ && make clean && make -j$(nproc)"
|
|
||||||
--git-commit-range $CI_COMMIT_RANGE
|
|
||||||
--color
|
|
||||||
--print-current --print-fixed
|
|
||||||
|
|
||||||
###############################################################################
|
###############################################################################
|
||||||
# Fedora abidiff #
|
# Fedora abidiff #
|
||||||
@@ -612,19 +605,12 @@ tumbleweed/static-analysis:
|
|||||||
freebsd/openssl_1.1.1/x86_64:
|
freebsd/openssl_1.1.1/x86_64:
|
||||||
image:
|
image:
|
||||||
extends: .tests
|
extends: .tests
|
||||||
|
variables:
|
||||||
|
CMAKE_OPTIONS: $CMAKE_DEFAULT_OPTIONS -DWITH_SFTP=ON -DWITH_SERVER=ON -DWITH_ZLIB=ON -DWITH_PCAP=ON -DUNIT_TESTING=ON
|
||||||
before_script:
|
before_script:
|
||||||
- mkdir -p obj && cd obj && cmake
|
- mkdir -p obj && cd obj && cmake $CMAKE_OPTIONS ..
|
||||||
-DCMAKE_BUILD_TYPE=RelWithDebInfo
|
|
||||||
-DPICKY_DEVELOPER=ON
|
|
||||||
-DWITH_SFTP=ON -DWITH_SERVER=ON -DWITH_ZLIB=ON -DWITH_PCAP=ON
|
|
||||||
-DUNIT_TESTING=ON ..
|
|
||||||
script:
|
script:
|
||||||
- cmake $CMAKE_DEFAULT_OPTIONS
|
- cmake $CMAKE_OPTIONS .. &&
|
||||||
-DWITH_SFTP=ON
|
|
||||||
-DWITH_SERVER=ON
|
|
||||||
-DWITH_ZLIB=ON
|
|
||||||
-DWITH_PCAP=ON
|
|
||||||
-DUNIT_TESTING=ON .. &&
|
|
||||||
make &&
|
make &&
|
||||||
ctest --output-on-failure
|
ctest --output-on-failure
|
||||||
tags:
|
tags:
|
||||||
@@ -740,6 +726,7 @@ coverity:
|
|||||||
# MacOS #
|
# MacOS #
|
||||||
###############################################################################
|
###############################################################################
|
||||||
.macos:
|
.macos:
|
||||||
|
extends: .build_options
|
||||||
tags:
|
tags:
|
||||||
- saas-macos-medium-m1
|
- saas-macos-medium-m1
|
||||||
image: macos-14-xcode-15
|
image: macos-14-xcode-15
|
||||||
@@ -758,10 +745,7 @@ macos-m1:
|
|||||||
extends: .macos
|
extends: .macos
|
||||||
variables:
|
variables:
|
||||||
HOMEBREW_NO_AUTO_UPDATE: 1
|
HOMEBREW_NO_AUTO_UPDATE: 1
|
||||||
CMAKE_DEFAULT_OPTIONS: "-DCMAKE_BUILD_TYPE=RelWithDebInfo -DPICKY_DEVELOPER=ON"
|
|
||||||
CMAKE_BUILD_OPTIONS: "-DWITH_BLOWFISH_CIPHER=ON -DWITH_SFTP=ON -DWITH_SERVER=ON -DWITH_ZLIB=ON -DWITH_PCAP=ON -DWITH_DEBUG_CRYPTO=ON -DWITH_DEBUG_PACKET=ON -DWITH_DEBUG_CALLTRACE=ON"
|
|
||||||
CMAKE_TEST_OPTIONS: "-DUNIT_TESTING=ON"
|
CMAKE_TEST_OPTIONS: "-DUNIT_TESTING=ON"
|
||||||
CMAKE_OPTIONS: $CMAKE_DEFAULT_OPTIONS $CMAKE_BUILD_OPTIONS $CMAKE_TEST_OPTIONS
|
|
||||||
stage: test
|
stage: test
|
||||||
script:
|
script:
|
||||||
- cmake $CMAKE_OPTIONS .. &&
|
- cmake $CMAKE_OPTIONS .. &&
|
||||||
|
|||||||
Reference in New Issue
Block a user