22variables :
33 BUILD_IMAGES_PROJECT : libssh/build-images
44 CENTOS7_BUILD : buildenv-centos7
5+ CENTOS8_BUILD : buildenv-c8s
56 CENTOS9_BUILD : buildenv-c9s
6- COVERITY_BUILD : buildenv-coverity
77 FEDORA_BUILD : buildenv-fedora
88 MINGW_BUILD : buildenv-mingw
99 TUMBLEWEED_BUILD : buildenv-tumbleweed
1010 UBUNTU_BUILD : buildenv-ubuntu
1111 ALPINE_BUILD : buildenv-alpine
1212
1313stages :
14+ - review
1415 - build
1516 - test
1617 - analysis
@@ -66,6 +67,23 @@ stages:
6667 extends : .tests
6768 image : $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$TUMBLEWEED_BUILD
6869
70+ .fips :
71+ extends : .tests
72+ variables :
73+ # DSA is turned off in fips mode
74+ CMAKE_ADDITIONAL_OPTIONS : -DWITH_PKCS11_URI=ON -DWITH_DSA=OFF
75+ before_script :
76+ - *build
77+ - echo "# userspace fips" > /etc/system-fips
78+ # We do not need the kernel part, but in case we ever do:
79+ # mkdir -p /var/tmp/userspace-fips
80+ # echo 1 > /var/tmp/userspace-fips/fips_enabled
81+ # mount --bind /var/tmp/userspace-fips/fips_enabled \
82+ # /proc/sys/crypto/fips_enabled
83+ - update-crypto-policies --show
84+ - update-crypto-policies --set FIPS
85+ - update-crypto-policies --show
86+
6987
7088# ##############################################################################
7189# CentOS builds #
@@ -82,12 +100,40 @@ centos7/openssl_1.0.x/x86_64:
82100centos9s/openssl_3.0.x/x86_64 :
83101 image : $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$CENTOS9_BUILD
84102 extends : .tests
103+ variables :
104+ CMAKE_ADDITIONAL_OPTIONS : -DWITH_PKCS11_URI=ON
85105 script :
86106 - export OPENSSL_ENABLE_SHA1_SIGNATURES=1
87- - cmake3 $CMAKE_OPTIONS .. &&
107+ - cmake $CMAKE_OPTIONS $CMAKE_ADDITIONAL_OPTIONS .. &&
88108 make -j$(nproc) &&
89109 ctest --output-on-failure
90110
111+ centos9s/openssl_3.0.x/x86_64/fips :
112+ extends : .fips
113+ image : $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$CENTOS9_BUILD
114+ script :
115+ - export OPENSSL_ENABLE_SHA1_SIGNATURES=1
116+ - cmake $CMAKE_OPTIONS $CMAKE_ADDITIONAL_OPTIONS .. &&
117+ make -j$(nproc) &&
118+ OPENSSL_FORCE_FIPS_MODE=1 ctest --output-on-failure
119+
120+ centos8s/openssl_1.1.1/x86_64 :
121+ image : $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$CENTOS8_BUILD
122+ extends : .tests
123+ variables :
124+ CMAKE_ADDITIONAL_OPTIONS : -DWITH_PKCS11_URI=ON
125+ script :
126+ - cmake $CMAKE_OPTIONS $CMAKE_ADDITIONAL_OPTIONS .. &&
127+ make -j$(nproc) &&
128+ ctest --output-on-failure
129+
130+ centos8s/openssl_1.1.1/x86_64/fips :
131+ extends : .fips
132+ image : $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$CENTOS8_BUILD
133+ script :
134+ - cmake $CMAKE_OPTIONS $CMAKE_ADDITIONAL_OPTIONS .. &&
135+ make -j$(nproc) &&
136+ OPENSSL_FORCE_FIPS_MODE=1 ctest --output-on-failure
91137
92138# ##############################################################################
93139# Fedora builds #
@@ -111,31 +157,6 @@ fedora/ninja:
111157fedora/openssl_3.0.x/x86_64 :
112158 extends : .fedora
113159
114- fedora/openssl_3.0.x/x86_64/fips :
115- extends : .fedora
116- before_script :
117- - echo "# userspace fips" > /etc/system-fips
118- # We do not need the kernel part, but in case we ever do:
119- # mkdir -p /var/tmp/userspace-fips
120- # echo 1 > /var/tmp/userspace-fips/fips_enabled
121- # mount --bind /var/tmp/userspace-fips/fips_enabled \
122- # /proc/sys/crypto/fips_enabled
123- - update-crypto-policies --show
124- - update-crypto-policies --set FIPS
125- - update-crypto-policies --show
126- - mkdir -p obj && cd obj && cmake
127- -DCMAKE_BUILD_TYPE=RelWithDebInfo
128- -DPICKY_DEVELOPER=ON
129- -DWITH_BLOWFISH_CIPHER=ON
130- -DWITH_SFTP=ON -DWITH_SERVER=ON -DWITH_ZLIB=ON -DWITH_PCAP=ON
131- -DWITH_DEBUG_CRYPTO=ON -DWITH_DEBUG_PACKET=ON -DWITH_DEBUG_CALLTRACE=ON
132- -DWITH_DSA=ON
133- -DUNIT_TESTING=ON -DCLIENT_TESTING=ON -DSERVER_TESTING=ON ..
134- script :
135- - cmake $CMAKE_OPTIONS .. &&
136- make -j$(nproc) &&
137- OPENSSL_FORCE_FIPS_MODE=1 ctest --output-on-failure
138-
139160fedora/openssl_3.0.x/x86_64/minimal :
140161 extends : .fedora
141162 variables :
@@ -309,15 +330,15 @@ fedora/csbuild/mbedtls:
309330# ##############################################################################
310331# Ubuntu builds #
311332# ##############################################################################
312- ubuntu/openssl_1.1 .x/x86_64 :
333+ ubuntu/openssl_3.0 .x/x86_64 :
313334 image : $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$UBUNTU_BUILD
314335 extends : .tests
315336
316337
317338# ##############################################################################
318339# Alpine builds #
319340# ##############################################################################
320- alpine/musl :
341+ alpine/openssl_3.0.x/ musl :
321342 image : $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$ALPINE_BUILD
322343 extends : .tests
323344 script :
@@ -334,12 +355,12 @@ alpine/musl:
334355# ##############################################################################
335356# Tumbleweed builds #
336357# ##############################################################################
337- tumbleweed/openssl_1.1 .x/x86_64/gcc :
358+ tumbleweed/openssl_3.0 .x/x86_64/gcc :
338359 extends : .tumbleweed
339360 variables :
340361 CMAKE_ADDITIONAL_OPTIONS : " -DKRB5_CONFIG=/usr/lib/mit/bin/krb5-config"
341362
342- tumbleweed/openssl_1.1 .x/x86/gcc :
363+ tumbleweed/openssl_3.0 .x/x86/gcc :
343364 extends : .tumbleweed
344365 script :
345366 - cmake
@@ -350,14 +371,15 @@ tumbleweed/openssl_1.1.x/x86/gcc:
350371 -DWITH_ZLIB=ON
351372 -DWITH_PCAP=ON
352373 -DWITH_DSA=ON
353- -DUNIT_TESTING=ON ..
374+ -DUNIT_TESTING=ON .. &&
375+ make -j$(nproc)
354376
355- tumbleweed/openssl_1.1 .x/x86_64/gcc7 :
377+ tumbleweed/openssl_3.0 .x/x86_64/gcc7 :
356378 extends : .tumbleweed
357379 variables :
358380 CMAKE_ADDITIONAL_OPTIONS : " -DCMAKE_C_COMPILER=gcc-7 -DCMAKE_CXX_COMPILER=g++-7 -DKRB5_CONFIG=/usr/lib/mit/bin/krb5-config"
359381
360- tumbleweed/openssl_1.1 .x/x86/gcc7 :
382+ tumbleweed/openssl_3.0 .x/x86/gcc7 :
361383 extends : .tumbleweed
362384 script :
363385 - cmake
@@ -370,7 +392,7 @@ tumbleweed/openssl_1.1.x/x86/gcc7:
370392 make -j$(nproc) &&
371393 ctest --output-on-failure
372394
373- tumbleweed/openssl_1.1 .x/x86_64/clang :
395+ tumbleweed/openssl_3.0 .x/x86_64/clang :
374396 extends : .tumbleweed
375397 variables :
376398 CMAKE_ADDITIONAL_OPTIONS : " -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ -DKRB5_CONFIG=/usr/lib/mit/bin/krb5-config"
@@ -402,7 +424,7 @@ tumbleweed/static-analysis:
402424# ##############################################################################
403425# That is a specific runner that we cannot enable universally.
404426# We restrict it to builds under the $BUILD_IMAGES_PROJECT project.
405- freebsd/x86_64 :
427+ freebsd/openssl_1.1.1/ x86_64 :
406428 image :
407429 extends : .tests
408430 before_script :
@@ -455,8 +477,6 @@ freebsd/x86_64:
455477 paths :
456478 - obj/
457479 before_script :
458- - choco install --no-progress -y cmake
459- - $env:Path += ';C:\Program Files\CMake\bin'
460480 - If (!(test-path .vcpkg\archives)) { mkdir -p .vcpkg\archives }
461481 - $env:VCPKG_DEFAULT_BINARY_CACHE="$PWD\.vcpkg\archives"
462482 - echo $env:VCPKG_DEFAULT_BINARY_CACHE
@@ -496,7 +516,7 @@ visualstudio/x86:
496516
497517coverity :
498518 stage : analysis
499- image : $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$COVERITY_BUILD
519+ image : $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$CENTOS9_BUILD
500520 script :
501521 - mkdir obj && cd obj
502522 - wget https://scan.coverity.com/download/linux64 --post-data "token=$COVERITY_SCAN_TOKEN&project=$COVERITY_SCAN_PROJECT_NAME" -O /tmp/coverity_tool.tgz
@@ -526,3 +546,14 @@ coverity:
526546 when : on_failure
527547 paths :
528548 - obj/cov-int/*.txt
549+
550+ # ##############################################################################
551+ # Codespell #
552+ # ##############################################################################
553+ codespell :
554+ stage : review
555+ image : $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$FEDORA_BUILD
556+ script :
557+ - codespell --ignore-words-list=keypair,sorce,ned,nd,ue
558+ tags :
559+ - shared
0 commit comments