TSG-9682 PacketAdapter运行CI时同时构建CentOS7/CentOS8运行环境的安装包

This commit is contained in:
luwenpeng
2022-02-21 16:50:38 +08:00
parent 5f93470647
commit 1063574ca0
3 changed files with 136 additions and 19 deletions

View File

@@ -1,28 +1,36 @@
image: "git.mesalab.cn:7443/mesa_platform/build-env:master"
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/packetadapter"
TESTING_VERSION_BUILD: 0
BUILD_IMAGE_CENTOS7: "git.mesalab.cn:7443/mesa_platform/build-env:master"
BUILD_IMAGE_CENTOS8: "git.mesalab.cn:7443/mesa_platform/build-env:rockylinux"
stages:
- build
.build_by_travis:
###############################################################################
# compile use image: build-env:master
###############################################################################
.build_by_travis_for_centos7:
image: $BUILD_IMAGE_CENTOS7
before_script:
- mkdir -p $BUILD_PADDING_PREFIX/$CI_PROJECT_NAMESPACE/
- ln -s $CI_PROJECT_DIR $BUILD_PADDING_PREFIX/$CI_PROJECT_PATH
- cd $BUILD_PADDING_PREFIX/$CI_PROJECT_PATH
- chmod +x ./ci/travis.sh
- yum install -y libnetfilter_queue-devel
- yum install -y elfutils-libelf-devel
script:
- yum makecache
- ./ci/travis.sh
tags:
- share
branch_build_debug:
branch_build_debug_for_centos7:
stage: build
extends: .build_by_travis
extends: .build_by_travis_for_centos7
variables:
BUILD_TYPE: Debug
except:
@@ -30,24 +38,24 @@ branch_build_debug:
- /^release-.*$/i
- tags
branch_build_release:
branch_build_release_for_centos7:
stage: build
variables:
BUILD_TYPE: RelWithDebInfo
extends: .build_by_travis
extends: .build_by_travis_for_centos7
except:
- /^develop-.*$/i
- /^release-.*$/i
- tags
develop_build_debug:
develop_build_debug_for_centos7:
stage: build
extends: .build_by_travis
extends: .build_by_travis_for_centos7
variables:
TESTING_VERSION_BUILD: 1
UPLOAD_SYMBOL_FILES: 1
BUILD_TYPE: Debug
ASAN_OPTION: ADDRESS
# ASAN_OPTION: ADDRESS
PACKAGE: 1
PULP3_REPO_NAME: tsg-testing-x86_64.el7
PULP3_DIST_NAME: tsg-testing-x86_64.el7
@@ -59,9 +67,9 @@ develop_build_debug:
- /^develop-.*$/i
- /^release-.*$/i
develop_build_release:
develop_build_release_for_centos7:
stage: build
extends: .build_by_travis
extends: .build_by_travis_for_centos7
variables:
TESTING_VERSION_BUILD: 1
UPLOAD_SYMBOL_FILES: 1
@@ -78,7 +86,7 @@ develop_build_release:
- /^develop-.*$/i
- /^release-.*$/i
release_build_debug:
release_build_debug_for_centos7:
stage: build
variables:
UPLOAD_SYMBOL_FILES: 1
@@ -86,7 +94,7 @@ release_build_debug:
PACKAGE: 1
PULP3_REPO_NAME: tsg-stable-x86_64.el7
PULP3_DIST_NAME: tsg-stable-x86_64.el7
extends: .build_by_travis
extends: .build_by_travis_for_centos7
artifacts:
name: "packetadapter-install-$CI_COMMIT_REF_NAME-debug"
paths:
@@ -94,7 +102,7 @@ release_build_debug:
only:
- tags
release_build_release:
release_build_release_for_centos7:
stage: build
variables:
BUILD_TYPE: RelWithDebInfo
@@ -102,7 +110,116 @@ release_build_release:
PACKAGE: 1
PULP3_REPO_NAME: tsg-stable-x86_64.el7
PULP3_DIST_NAME: tsg-stable-x86_64.el7
extends: .build_by_travis
extends: .build_by_travis_for_centos7
artifacts:
name: "packetadapter-install-$CI_COMMIT_REF_NAME-release"
paths:
- build/*.rpm
only:
- tags
###############################################################################
# compile use image: build-env:rockylinux
###############################################################################
.build_by_travis_for_centos8:
image: $BUILD_IMAGE_CENTOS8
before_script:
- mkdir -p $BUILD_PADDING_PREFIX/$CI_PROJECT_NAMESPACE/
- ln -s $CI_PROJECT_DIR $BUILD_PADDING_PREFIX/$CI_PROJECT_PATH
- cd $BUILD_PADDING_PREFIX/$CI_PROJECT_PATH
- chmod +x ./ci/travis.sh
- yum install -y elfutils-libelf-devel
- dnf --enablerepo=powertools install -y libnetfilter_queue-devel
script:
- yum makecache
- ./ci/travis.sh
tags:
- share
branch_build_debug_for_centos8:
stage: build
extends: .build_by_travis_for_centos8
variables:
BUILD_TYPE: Debug
except:
- /^develop-.*$/i
- /^release-.*$/i
- tags
branch_build_release_for_centos8:
stage: build
variables:
BUILD_TYPE: RelWithDebInfo
extends: .build_by_travis_for_centos8
except:
- /^develop-.*$/i
- /^release-.*$/i
- tags
develop_build_debug_for_centos8:
stage: build
extends: .build_by_travis_for_centos8
variables:
TESTING_VERSION_BUILD: 1
UPLOAD_SYMBOL_FILES: 1
BUILD_TYPE: Debug
# ASAN_OPTION: ADDRESS
PACKAGE: 1
PULP3_REPO_NAME: tsg-testing-x86_64.el8
PULP3_DIST_NAME: tsg-testing-x86_64.el8
artifacts:
name: "packetadapter-develop-$CI_COMMIT_REF_NAME-debug"
paths:
- build/*.rpm
only:
- /^develop-.*$/i
- /^release-.*$/i
develop_build_release_for_centos8:
stage: build
extends: .build_by_travis_for_centos8
variables:
TESTING_VERSION_BUILD: 1
UPLOAD_SYMBOL_FILES: 1
# ASAN_OPTION: ADDRESS
BUILD_TYPE: RelWithDebInfo
PACKAGE: 1
PULP3_REPO_NAME: tsg-testing-x86_64.el8
PULP3_DIST_NAME: tsg-testing-x86_64.el8
artifacts:
name: "packetadapter-develop-$CI_COMMIT_REF_NAME-release"
paths:
- build/*.rpm
only:
- /^develop-.*$/i
- /^release-.*$/i
release_build_debug_for_centos8:
stage: build
variables:
UPLOAD_SYMBOL_FILES: 1
BUILD_TYPE: Debug
PACKAGE: 1
PULP3_REPO_NAME: tsg-stable-x86_64.el8
PULP3_DIST_NAME: tsg-stable-x86_64.el8
extends: .build_by_travis_for_centos8
artifacts:
name: "packetadapter-install-$CI_COMMIT_REF_NAME-debug"
paths:
- build/*.rpm
only:
- tags
release_build_release_for_centos8:
stage: build
variables:
BUILD_TYPE: RelWithDebInfo
UPLOAD_SYMBOL_FILES: 1
PACKAGE: 1
PULP3_REPO_NAME: tsg-stable-x86_64.el8
PULP3_DIST_NAME: tsg-stable-x86_64.el8
extends: .build_by_travis_for_centos8
artifacts:
name: "packetadapter-install-$CI_COMMIT_REF_NAME-release"
paths:

View File

@@ -48,6 +48,8 @@ elseif(ENABLE_SANITIZE_THREAD)
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -lasan")
endif()
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -lelf")
if(ENABLE_SANITIZE_ADDRESS AND ENABLE_SANITIZE_THREAD)
message(WARNING "Both ENABLE_SANITIZE_ADDRESS and ENABLE_SANITIZE_THREAD set, only ENABLE_SANITIZE_ADDRESS effected.")
endif()

View File

@@ -33,9 +33,7 @@ env | sort
: "${COMPILER_IS_GNUCXX:=OFF}"
# Install dependency from YUM
yum install -y libasan
#yum install -y libmnl-devel libnfnetlink-devel
yum install -y libnetfilter_queue-devel
if [ $ASAN_OPTION ];then
source /opt/rh/devtoolset-7/enable
@@ -60,6 +58,6 @@ fi
if [ -n "${UPLOAD_SYMBOL_FILES}" ]; then
rpm -i packetadapter*debuginfo*.rpm
cp /usr/lib/debug/opt/tsg/packetadapter/bin/packetadapter.debug /tmp/packetadapter.debuginfo.${CI_COMMIT_SHORT_SHA}
cp /usr/lib/debug/opt/tsg/packetadapter/bin/packetadapter*debug /tmp/packetadapter.debuginfo.${CI_COMMIT_SHORT_SHA}
sentry-cli upload-dif -t elf /tmp/packetadapter.debuginfo.${CI_COMMIT_SHORT_SHA}
fi