143 lines
3.2 KiB
YAML
143 lines
3.2 KiB
YAML
image: "docker:stable"
|
|
|
|
services:
|
|
- docker:dind
|
|
|
|
variables:
|
|
GIT_STRATEGY: "clone"
|
|
IMAGE_TAG: $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG
|
|
|
|
|
|
stages:
|
|
- build
|
|
- fvt
|
|
- package
|
|
- release
|
|
- docker
|
|
|
|
.fvt:
|
|
image: git.mesalab.cn:7443/mesa_platform/mesa_protocol:master
|
|
script:
|
|
- rpm -ivh build/*.rpm
|
|
- source /etc/profile.d/MESA.sh
|
|
- cd /home/mesasoft/
|
|
- git clone https://$USER_NAME:$CI_TOKEN@git.mesalab.cn/tango/fvt.git
|
|
- cd fvt/
|
|
- sh +x ./fvt_verify.sh /home/mesasoft/sapp_run/ /home/mesasoft/sapp_run/tsgconf/tsg_maat.json /home/mesasoft/sapp_run/tsglog/tsglog /home/mesasoft/fvt/master
|
|
|
|
|
|
.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_master:
|
|
extends: .build_before_script
|
|
image: git.mesalab.cn:7443/mesa_platform/mesa_protocol:master
|
|
script:
|
|
- source /etc/profile.d/MESA.sh
|
|
- mkdir -p build
|
|
- cd build
|
|
- cmake .. -DCMAKE_BUILD_TYPE=$BUILD_TYPE
|
|
- make
|
|
- make package
|
|
|
|
.package_master:
|
|
extends: .build_before_script
|
|
image: git.mesalab.cn:7443/mesa_platform/mesa_protocol:master
|
|
script:
|
|
- source /etc/profile.d/MESA.sh
|
|
- mkdir -p build
|
|
- cd build
|
|
- cmake .. -DCMAKE_BUILD_TYPE=$BUILD_TYPE
|
|
- make package
|
|
|
|
build:
|
|
stage: build
|
|
extends: .build_master
|
|
tags:
|
|
- share
|
|
variables:
|
|
BUILD_TYPE: "Debug"
|
|
artifacts:
|
|
name: "$CI_JOB_NAME-$CI_COMMIT_REF_NAME"
|
|
paths:
|
|
- ./build/*.rpm
|
|
except:
|
|
- tags
|
|
|
|
fvt:
|
|
stage: fvt
|
|
extends: .fvt
|
|
tags:
|
|
- share
|
|
except:
|
|
- tags
|
|
|
|
tsg-master-release:
|
|
stage: package
|
|
extends: .package_master
|
|
tags:
|
|
- share
|
|
variables:
|
|
BUILD_TYPE: "Release"
|
|
artifacts:
|
|
name: "$CI_JOB_NAME-$CI_COMMIT_REF_NAME"
|
|
paths:
|
|
- ./build/*.rpm
|
|
only:
|
|
- tags
|
|
|
|
tsg-master-debug:
|
|
stage: package
|
|
extends: .package_master
|
|
tags:
|
|
- share
|
|
variables:
|
|
BUILD_TYPE: "Debug"
|
|
artifacts:
|
|
name: "$CI_JOB_NAME-$CI_COMMIT_REF_NAME"
|
|
paths:
|
|
- ./build/*.rpm
|
|
only:
|
|
- tags
|
|
|
|
release-tsg-master-debug:
|
|
stage: release
|
|
image: git.mesalab.cn:7443/mesa_platform/mesa_protocol:master
|
|
tags:
|
|
- share
|
|
variables:
|
|
ARTIFACTS_JOB: "tsg-master-debug"
|
|
PROJECT_NAME: "tsg-master"
|
|
USER_DEFINE: "debug"
|
|
only:
|
|
- tags
|
|
script:
|
|
- /bin/bash -x ./autorelease.sh $CI_API_V4_URL $CI_PROJECT_URL $CI_PROJECT_ID $CI_TOKEN $CI_COMMIT_TAG $ARTIFACTS_JOB $PROJECT_NAME $USER_DEFINE
|
|
|
|
release-tsg-master-release:
|
|
stage: release
|
|
image: git.mesalab.cn:7443/mesa_platform/mesa_protocol:master
|
|
tags:
|
|
- share
|
|
variables:
|
|
ARTIFACTS_JOB: "tsg-master-release"
|
|
PROJECT_NAME: "tsg-master"
|
|
USER_DEFINE: "release"
|
|
only:
|
|
- tags
|
|
script:
|
|
- /bin/bash -x ./autorelease.sh $CI_API_V4_URL $CI_PROJECT_URL $CI_PROJECT_ID $CI_TOKEN $CI_COMMIT_TAG $ARTIFACTS_JOB $PROJECT_NAME $USER_DEFINE
|
|
|
|
build-docker:
|
|
stage: docker
|
|
script:
|
|
- docker login -u gitlab-ci-token -p $CI_JOB_TOKEN $CI_REGISTRY
|
|
- docker build -t $IMAGE_TAG .
|
|
- docker push $IMAGE_TAG
|
|
tags:
|
|
- share
|
|
only:
|
|
- master |