This commit is contained in:
liuxueli
2019-12-23 10:55:03 +08:00
parent f9b6bf2c1f
commit fd2dc61f9d

115
.gitlab-ci.yml Normal file
View File

@@ -0,0 +1,115 @@
image: "docker:stable"
services:
- docker:dind
variables:
GIT_STRATEGY: "clone"
IMAGE_TAG: $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG
stages:
- build
- package
- release
.build_before_script:
before_script:
- mkdir -p /tmp/padding_for_CPACK_RPM_BUILD_SOURCE_DIRS_PREFIX/$CI_PROJECT_NAMESPACE/
- ln -s $CI_PROJECT_DIR /tmp/padding_for_CPACK_RPM_BUILD_SOURCE_DIRS_PREFIX/$CI_PROJECT_PATH
- cd /tmp/padding_for_CPACK_RPM_BUILD_SOURCE_DIRS_PREFIX/$CI_PROJECT_PATH
.build_ntc_radius_plug:
extends: .build_before_script
image: git.mesalab.cn:7443/mesa_platform/radius:master
script:
- cp src/radius.h /opt/MESA/include/MESA/
- source /etc/profile.d/MESA.sh
- mkdir -p build
- cd build
- cmake .. -DCMAKE_BUILD_TYPE=$BUILD_TYPE
- make
- make package
- rpm -ivh *.rpm
- cd /home/mesasoft/
- git clone https://$USER_NAME:$CI_TOKEN@git.mesalab.cn/tango/fvt.git
- cd fvt/
- sh +x fvt_verify.sh
.package_ntc_radius_plug:
extends: .build_before_script
image: git.mesalab.cn:7443/mesa_platform/radius:master
script:
- cp src/radius.h /opt/MESA/include/MESA/
- source /etc/profile.d/MESA.sh
- mkdir -p build
- cd build
- cmake .. -DCMAKE_BUILD_TYPE=$BUILD_TYPE
- make package
build:
stage: build
extends: .build_ntc_radius_plug
tags:
- share
variables:
BUILD_TYPE: "Release"
except:
- tags
ntc_radius_plug-release-package:
stage: package
extends: .package_ntc_radius_plug
tags:
- share
variables:
BUILD_TYPE: "Release"
artifacts:
name: "$CI_JOB_NAME-$CI_COMMIT_REF_NAME"
paths:
- ./build/*.rpm
expire_in: "2 years"
only:
- tags
ntc_radius_plug-debug-package:
stage: package
extends: .package_ntc_radius_plug
tags:
- share
variables:
BUILD_TYPE: "Debug"
artifacts:
name: "$CI_JOB_NAME-$CI_COMMIT_REF_NAME"
paths:
- ./build/*.rpm
expire_in: "2 years"
only:
- tags
release-ntc_radius_plug-release:
stage: release
image: git.mesalab.cn:7443/mesa_platform/radius:master
tags:
- share
only:
- tags
variables:
ARTIFACTS_JOB: "ntc_radius_plug-release-package"
PROJECT_NAME: "ntc_radius_plug"
USER_DEFINE: "release"
script:
- /bin/bash -x ./autorelease.sh $CI_API_V4_URL $CI_PROJECT_URL $CI_PROJECT_ID $CI_TOKEN $CI_COMMIT_TAG $ARTIFACTS_JOB $CI_PROJECT_NAME $USER_DEFINE
release-ntc_radius_plug-debug:
stage: release
image: git.mesalab.cn:7443/mesa_platform/radius:master
tags:
- share
only:
- tags
variables:
ARTIFACTS_JOB: "ntc_radius_plug-debug-package"
PROJECT_NAME: "ntc_radius_plug"
USER_DEFINE: "debug"
script:
- /bin/bash -x ./autorelease.sh $CI_API_V4_URL $CI_PROJECT_URL $CI_PROJECT_ID $CI_TOKEN $CI_COMMIT_TAG $ARTIFACTS_JOB $CI_PROJECT_NAME $USER_DEFINE