summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoryangwei <[email protected]>2024-11-27 19:50:50 +0800
committeryangwei <[email protected]>2024-11-27 19:50:50 +0800
commit405a62826e02a41af3350d976d4852377e03434c (patch)
treeb4616ba580c4d48c34c8101c8a3de4478e5cad65
parent3202b9ae3107564824b87e89f43d56e525c39a57 (diff)
🐎 ci(add aarch64 el9 jobs): remove ./ci scripts
-rw-r--r--.gitlab-ci.yml226
-rw-r--r--CMakeLists.txt4
-rw-r--r--ci/get-nprocessors.sh48
-rw-r--r--ci/perpare_pulp3_netrc.sh3
-rw-r--r--ci/travis.sh45
5 files changed, 174 insertions, 152 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 6cf2ad0..e44570c 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -2,9 +2,13 @@ variables:
GIT_STRATEGY: "clone"
BUILD_PADDING_PREFIX: /tmp/padding_for_CPACK_RPM_BUILD_SOURCE_DIRS_PREFIX_PREFIX_PREFIX_PREFIX_PREFIX_PREFIX/
INSTALL_PREFIX: "/opt/tsg/stellar"
- INSTALL_DEPENDENCY_LIBRARY: mrzcpd-corei7 framework_env libfieldstat4-devel
+ INSTALL_DEPENDENCY_LIBRARY: framework_env libfieldstat4-devel
+ MRZCPD: mrzcpd-corei7
TESTING_VERSION_BUILD: 0
- BUILD_IMAGE_ROCKYLINUX: "git.mesalab.cn:7443/mesa_platform/build-env:rocky8-for-stellar"
+ BUILD_IMAGE_X86_64_ROCKY8: "git.mesalab.cn:7443/mesa_platform/build-env:rocky8-for-stellar"
+ BUILD_IMAGE_AARCH64_ROCKY9: "git.mesalab.cn:7443/mesa_platform/build-env:rocky9-aarch64"
+
+
stages:
- cppcheck
@@ -17,10 +21,9 @@ stages:
- ln -s $CI_PROJECT_DIR $BUILD_PADDING_PREFIX/$CI_PROJECT_PATH
- cd $BUILD_PADDING_PREFIX/$CI_PROJECT_PATH
- yum makecache --disablerepo="*" --enablerepo="framework,platform"
- - yum install -y $INSTALL_DEPENDENCY_LIBRARY
+ - yum install -y $INSTALL_DEPENDENCY_LIBRARY $MRZCPD
- source /etc/profile.d/mrzcpd.sh
- source /etc/profile.d/framework.sh
- - chmod +x ./ci/travis.sh
###############################################################################
# cppcheck
@@ -52,31 +55,48 @@ stages:
--suppress=unreachableCode
--suppress=internalAstError
--suppress=integerOverflow
+ --suppress=*:${CI_PROJECT_DIR}/deps/*
--suppress=*:${CI_PROJECT_DIR}/infra/monitor/stellar-dump/*
- --suppress=*:${CI_PROJECT_DIR}/deps/yyjson/*
- --suppress=*:${CI_PROJECT_DIR}/deps/mpack/*
+ --suppress=*:${CI_PROJECT_DIR}/decoders/lpi_plus/libprotoident/*
+
+
+run_cppcheck_for_x86_64_rocky8:
+ extends: .cppcheck_script
+ image: $BUILD_IMAGE_X86_64_ROCKY8
tags:
- - share
+ - tsg-os-builder-el8
-run_cppcheck_for_rockylinux:
+run_cppcheck_for_aarch64_rocky9:
extends: .cppcheck_script
- image: $BUILD_IMAGE_ROCKYLINUX
-
+ image: $BUILD_IMAGE_AARCH64_ROCKY9
+ tags:
+ - tsg-os-builder-aarch64
###############################################################################
# build
###############################################################################
-.build_by_travis_for_rockylinux:
- image: $BUILD_IMAGE_ROCKYLINUX
+.build_before_script:
+ stage: build
before_script: *everything_before_script
script:
- - ./ci/travis.sh
+ - mkdir build || true
+ - cd build
+ - >
+ cmake3 -DCMAKE_CXX_FLAGS=$CXX_FLAGS
+ -DCMAKE_BUILD_TYPE=$BUILD_TYPE
+ -DASAN_OPTION=$ASAN_OPTION
+ -DCMAKE_INSTALL_PREFIX=$INSTALL_PREFIX
+ -DVERSION_DAILY_BUILD=$TESTING_VERSION_BUILD ..
+ - make -j4 VERBOSE=1
+
+.build_for_x86_64_rocky8:
+ image: $BUILD_IMAGE_X86_64_ROCKY8
+ extends: .build_before_script
tags:
- - share
+ - tsg-os-builder-el8
-branch_build_debug_for_rockylinux:
- stage: build
- extends: .build_by_travis_for_rockylinux
+branch_build_debug_for_x86_64_rocky8:
+ extends: .build_for_x86_64_rocky8
variables:
BUILD_TYPE: Debug
except:
@@ -84,19 +104,21 @@ branch_build_debug_for_rockylinux:
- /^release-.*$/i
- tags
-branch_build_release_for_rockylinux:
- stage: build
+branch_build_release_for_x86_64_rocky8:
+ extends: .build_for_x86_64_rocky8
variables:
BUILD_TYPE: RelWithDebInfo
- extends: .build_by_travis_for_rockylinux
+ artifacts:
+ name: "stellar-branch_build-$CI_COMMIT_REF_NAME-release"
+ paths:
+ - build/*
except:
- /^develop-.*$/i
- /^release-.*$/i
- tags
-develop_build_debug_for_rockylinux:
- stage: build
- extends: .build_by_travis_for_rockylinux
+develop_build_debug_for_x86_64_rocky8:
+ extends: .build_for_x86_64_rocky8
variables:
TESTING_VERSION_BUILD: 1
BUILD_TYPE: Debug
@@ -105,78 +127,172 @@ develop_build_debug_for_rockylinux:
- /^develop-.*$/i
- /^release-.*$/i
-develop_build_release_for_rockylinux:
- stage: build
- extends: .build_by_travis_for_rockylinux
+develop_build_release_for_x86_64_rocky8:
+ extends: .build_for_x86_64_rocky8
variables:
TESTING_VERSION_BUILD: 1
BUILD_TYPE: RelWithDebInfo
#ASAN_OPTION: ADDRESS
+ artifacts:
+ name: "stellar-develop_build-$CI_COMMIT_REF_NAME-release"
+ paths:
+ - build/*
only:
- /^develop-.*$/i
- /^release-.*$/i
-release_build_debug_for_rockylinux:
- stage: build
+release_build_debug_for_x86_64_rocky8:
+ extends: .build_for_x86_64_rocky8
variables:
BUILD_TYPE: Debug
- extends: .build_by_travis_for_rockylinux
only:
- tags
-release_build_release_for_rockylinux:
- stage: build
+release_build_release_for_x86_64_rocky8:
+ extends: .build_for_x86_64_rocky8
variables:
BUILD_TYPE: RelWithDebInfo
- extends: .build_by_travis_for_rockylinux
artifacts:
- name: "stellar-install-$CI_COMMIT_REF_NAME-release"
+ name: "stellar-release_build-$CI_COMMIT_REF_NAME-release"
paths:
- - build/infra/*.rpm
+ - build/*
+ only:
+ - tags
+
+.build_for_aarch64_rocky9:
+ image: $BUILD_IMAGE_AARCH64_ROCKY9
+ extends: .build_before_script
+ variables:
+ MRZCPD: mrzcpd
+ tags:
+ - tsg-os-builder-aarch64
+
+branch_build_debug_for_aarch64_rocky9:
+ extends: .build_for_aarch64_rocky9
+ variables:
+ BUILD_TYPE: Debug
+ except:
+ - /^develop-.*$/i
+ - /^release-.*$/i
+ - tags
+
+branch_build_release_for_aarch64_rocky9:
+ extends: .build_for_aarch64_rocky9
+ variables:
+ BUILD_TYPE: RelWithDebInfo
+ artifacts:
+ name: "stellar-branch_build-$CI_COMMIT_REF_NAME-release"
+ paths:
+ - build/*
+ except:
+ - /^develop-.*$/i
+ - /^release-.*$/i
+ - tags
+
+develop_build_debug_for_aarch64_rocky9:
+ extends: .build_for_aarch64_rocky9
+ variables:
+ TESTING_VERSION_BUILD: 1
+ BUILD_TYPE: Debug
+ #ASAN_OPTION: ADDRESS
+ only:
+ - /^develop-.*$/i
+ - /^release-.*$/i
+
+develop_build_release_for_aarch64_rocky9:
+ extends: .build_for_aarch64_rocky9
+ variables:
+ TESTING_VERSION_BUILD: 1
+ BUILD_TYPE: RelWithDebInfo
+ #ASAN_OPTION: ADDRESS
+ artifacts:
+ name: "stellar-develop_build-$CI_COMMIT_REF_NAME-release"
+ paths:
+ - build/*
+ only:
+ - /^develop-.*$/i
+ - /^release-.*$/i
+
+release_build_debug_for_aarch64_rocky9:
+ extends: .build_for_aarch64_rocky9
+ variables:
+ BUILD_TYPE: Debug
+ only:
+ - tags
+
+release_build_release_for_aarch64_rocky9:
+ extends: .build_for_aarch64_rocky9
+ variables:
+ BUILD_TYPE: RelWithDebInfo
+ artifacts:
+ name: "stellar-release_build-$CI_COMMIT_REF_NAME-release"
+ paths:
+ - build/*
only:
- tags
###############################################################################
# test
###############################################################################
-test_in_rockylinux:
+.setup_test_env:
stage: test
- image: $BUILD_IMAGE_ROCKYLINUX
- extends: .build_by_travis_for_rockylinux
- variables:
- BUILD_TYPE: Debug
- ASAN_OPTION: ADDRESS
allow_failure: false
+ before_script:
+ - *everything_before_script
script:
- - ./ci/travis.sh
- cd build; ctest -V
+
+test_for_x86_64_rocky8:
+ extends: .setup_test_env
+ image: $BUILD_IMAGE_X86_64_ROCKY8
+ dependencies:
+ - branch_build_release_for_x86_64_rocky8
+ - develop_build_release_for_x86_64_rocky8
+ - release_build_release_for_x86_64_rocky8
+ tags:
+ - tsg-os-builder-el8
+
+test_for_aarch64_rocky9:
+ extends: .setup_test_env
+ image: $BUILD_IMAGE_AARCH64_ROCKY9
dependencies:
- - branch_build_release_for_rockylinux
- - develop_build_release_for_rockylinux
- - release_build_release_for_rockylinux
+ - branch_build_release_for_aarch64_rocky9
+ - develop_build_release_for_aarch64_rocky9
+ - release_build_release_for_aarch64_rocky9
tags:
- - share
+ - tsg-os-builder-aarch64
###############################################################################
# upload
###############################################################################
-.define_before_upload_rockylinux:
+.define_before_upload:
stage: upload
- image: $BUILD_IMAGE_ROCKYLINUX
before_script:
- pwd; ls -l ; cd build ; ls -l
- cp /root/rpm_upload_tools.py ./
+ script:
+ - python3 rpm_upload_tools.py $PULP3_REPO_NAME $PULP3_DIST_NAME *.rpm
+ only:
+ - tags
+
+rpm_upload_for_x86_64_rocky8:
+ extends: .define_before_upload
+ image: $BUILD_IMAGE_X86_64_ROCKY8
variables:
PULP3_REPO_NAME: stellar-stable-x86_64.el8
PULP3_DIST_NAME: stellar-stable-x86_64.el8
- only:
- - tags
+ dependencies:
+ - release_build_release_for_x86_64_rocky8
tags:
- - share
+ - tsg-os-builder-el8
-rpm_upload_for_rockylinux:
- extends: .define_before_upload_rockylinux
+rpm_upload_for_aarch64_rocky9:
+ extends: .define_before_upload
+ image: $BUILD_IMAGE_AARCH64_ROCKY9
+ variables:
+ PULP3_REPO_NAME: stellar-stable-aarch64.el9
+ PULP3_DIST_NAME: stellar-stable-aarch64.el9
dependencies:
- - release_build_release_for_rockylinux
- script:
- - python3 rpm_upload_tools.py $PULP3_REPO_NAME $PULP3_DIST_NAME *.rpm \ No newline at end of file
+ - release_build_release_for_aarch64_rocky9
+ tags:
+ - tsg-os-builder-aarch64 \ No newline at end of file
diff --git a/CMakeLists.txt b/CMakeLists.txt
index b399cc5..a6902cf 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -47,8 +47,10 @@ if (CMAKE_CXX_CPPCHECK)
"--suppress=unreachableCode"
"--suppress=internalAstError"
"--suppress=integerOverflow"
- "--suppress=*:${CMAKE_SOURCE_DIR}/infra/monitor/stellar-dump/*"
"--suppress=redundantInitialization"
+ "--suppress=*:${CMAKE_SOURCE_DIR}/infra/monitor/stellar-dump/*"
+ "--suppress=*:${CMAKE_SOURCE_DIR}/decoders/lpi_plus/libprotoident/*"
+ "--suppress=*:${CMAKE_SOURCE_DIR}/deps/*"
)
set(CMAKE_C_CPPCHECK ${CMAKE_CXX_CPPCHECK})
else()
diff --git a/ci/get-nprocessors.sh b/ci/get-nprocessors.sh
deleted file mode 100644
index 8a754cf..0000000
--- a/ci/get-nprocessors.sh
+++ /dev/null
@@ -1,48 +0,0 @@
-#!/usr/bin/env bash
-# Copyright 2017 Google Inc.
-# All Rights Reserved.
-#
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# * Redistributions in binary form must reproduce the above
-# copyright notice, this list of conditions and the following disclaimer
-# in the documentation and/or other materials provided with the
-# distribution.
-# * Neither the name of Google Inc. nor the names of its
-# contributors may be used to endorse or promote products derived from
-# this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-# This file is typically sourced by another script.
-# if possible, ask for the precise number of processors,
-# otherwise take 2 processors as reasonable default; see
-# https://docs.travis-ci.com/user/speeding-up-the-build/#Makefile-optimization
-if [ -x /usr/bin/getconf ]; then
- NPROCESSORS=$(/usr/bin/getconf _NPROCESSORS_ONLN)
-else
- NPROCESSORS=2
-fi
-
-# as of 2017-09-04 Travis CI reports 32 processors, but GCC build
-# crashes if parallelized too much (maybe memory consumption problem),
-# so limit to 4 processors for the time being.
-if [ $NPROCESSORS -gt 4 ]; then
- echo "$0:Note: Limiting processors to use by make from $NPROCESSORS to 4."
- NPROCESSORS=4
-fi
diff --git a/ci/perpare_pulp3_netrc.sh b/ci/perpare_pulp3_netrc.sh
deleted file mode 100644
index 0aca8ec..0000000
--- a/ci/perpare_pulp3_netrc.sh
+++ /dev/null
@@ -1,3 +0,0 @@
-#!/usr/bin/env sh
-set -evx
-echo "machine ${PULP3_SERVER_URL}\nlogin ${PULP3_SERVER_LOGIN}\npassword ${PULP3_SERVER_PASSWORD}\n" >~/.netrc
diff --git a/ci/travis.sh b/ci/travis.sh
deleted file mode 100644
index c701143..0000000
--- a/ci/travis.sh
+++ /dev/null
@@ -1,45 +0,0 @@
-#!/usr/bin/env sh
-set -evx
-
-chmod +x ci/get-nprocessors.sh
-. ci/get-nprocessors.sh
-
-# If possible, ask for the precise number of processors,
-# otherwise take 2 processors as reasonable default; see
-# https://docs.travis-ci.com/user/speeding-up-the-build/#Makefile-optimization
-if [ -x /usr/bin/getconf ]; then
- NPROCESSORS=$(/usr/bin/getconf _NPROCESSORS_ONLN)
-else
- NPROCESSORS=2
-fi
-
-# As of 2017-09-04 Travis CI reports 32 processors, but GCC build
-# crashes if parallelized too much (maybe memory consumption problem),
-# so limit to 4 processors for the time being.
-if [ $NPROCESSORS -gt 4 ]; then
- echo "$0:Note: Limiting processors to use by make from $NPROCESSORS to 4."
- NPROCESSORS=4
-fi
-
-# Tell make to use the processors. No preceding '-' required.
-MAKEFLAGS="j${NPROCESSORS}"
-export MAKEFLAGS
-
-env | sort
-
-# Set default values to OFF for these variables if not specified.
-: "${NO_EXCEPTION:=OFF}"
-: "${NO_RTTI:=OFF}"
-: "${COMPILER_IS_GNUCXX:=OFF}"
-
-mkdir build || true
-cd build
-
-cmake3 -DCMAKE_CXX_FLAGS=$CXX_FLAGS \
- -DCMAKE_BUILD_TYPE=$BUILD_TYPE \
- -DASAN_OPTION=$ASAN_OPTION \
- -DCMAKE_INSTALL_PREFIX=$INSTALL_PREFIX \
- -DVERSION_DAILY_BUILD=$TESTING_VERSION_BUILD \
- ..
-
-make -j $NPROCESSORS