diff options
Diffstat (limited to '.gitlab-ci.yml')
| -rw-r--r-- | .gitlab-ci.yml | 218 |
1 files changed, 193 insertions, 25 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index eede6ca..1e5f40f 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,6 +1,7 @@ -image: "git.mesalab.cn:7443/mesa_platform/build-env:master" variables: GIT_STRATEGY: "clone" + BUILD_IMAGE_CENTOS7: "git.mesalab.cn:7443/mesa_platform/build-env:master" + BUILD_IMAGE_CENTOS8: "git.mesalab.cn:7443/mesa_platform/build-env:rockylinux" BUILD_PADDING_PREFIX: /tmp/padding_for_CPACK_RPM_BUILD_SOURCE_DIRS_PREFIX_PREFIX_PREFIX_PREFIX_PREFIX_PREFIX/ INSTALL_PREFIX: "/home/mesasoft/sapp_run/" INSTALL_DEPENDENCY_LIBRARY: libMESA_handle_logger-devel framework_env @@ -10,21 +11,37 @@ stages: - test - build -.build_by_travis: +.build_before_script: 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 - script: - yum makecache - ./ci/travis.sh - - cd build + +.build_by_travis_for_centos7: + stage: build + image: $BUILD_IMAGE_CENTOS7 + extends: .build_before_script + script: + - ./ci/travis.sh + - cd build tags: - - share + - share + +.build_by_travis_for_centos8: + stage: build + image: $BUILD_IMAGE_CENTOS8 + extends: .build_before_script + script: + - ./ci/travis.sh + tags: + - share -run_cppcheck: +run_cppcheck_for_centos7: stage: analysis + image: $BUILD_IMAGE_CENTOS7 script: - mkdir build || true - cd build @@ -33,18 +50,41 @@ run_cppcheck: tags: - share -run_test: +run_cppcheck_for_centos8: + stage: analysis + image: $BUILD_IMAGE_CENTOS8 + script: + - mkdir build || true + - cd build + - cmake3 -DCMAKE_EXPORT_COMPILE_COMMANDS=ON .. + - cppcheck --project=compile_commands.json --enable=all --error-exitcode=1 --suppress=unusedFunction --suppress=missingInclude --suppress=uselessAssignmentPtrArg --suppress=unmatchedSuppression + tags: + - share + +run_test_for_centos7: + stage: test + image: $BUILD_IMAGE_CENTOS7 + extends: .build_by_travis_for_centos7 + script: + - yum makecache + - ./ci/travis.sh + - cd build + - ctest --verbose + +run_test_for_centos8: stage: test - extends: .build_by_travis + image: $BUILD_IMAGE_CENTOS8 + extends: .build_by_travis_for_centos8 script: - yum makecache + - yum install -y libnsl - ./ci/travis.sh - cd build - - ctest --verbose + - ctest3 --verbose -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: @@ -52,54 +92,163 @@ branch_build_debug: - /^master.*$/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 - /^master.*$/i - tags -develop_build_debug: +develop_build_debug_for_centos7: stage: build - extends: .build_by_travis + extends: .build_by_travis_for_centos7 variables: BUILD_TYPE: Debug PACKAGE: 1 + UPLOAD_RPM: 1 + ASAN_OPTION: ADDRESS + TESTING_VERSION_BUILF: 1 + PULP3_REPO_NAME: framework-testing-x86_64.el7 + PILP3_DIST_NAME: framework-testing-x86_64.el7 artifacts: name: "tsg_lua_module-$CI_COMMIT_REF_NAME-debug" + paths: + - build/*.rpm + only: + - /^dev*.*$/i + - /^rel*.*$/i + - /^master.$/i + +develop_build_release_for_centos7: + stage: build + extends: .build_by_travis_for_centos7 + variables: + BUILD_TYPE: RelWithDebInfo + PACKAGE: 1 + UPLOAD_RPM: 1 + TESTING_VERSION_BUILF: 1 + PULP3_REPO_NAME: framework-testing-x86_64.el7 + PILP3_DIST_NAME: framework-testing-x86_64.el7 + artifacts: + name: "tsg_lua_module-$CI_COMMIT_REF_NAME-debug" + paths: + - build/*.rpm + only: + - /^dev*.*$/i + - /^rel*.*$/i + - /^master.$/i + +release_build_debug_for_centos7: + stage: build + variables: + BUILD_TYPE: Debug + PACKAGE: 1 + UPLOAD_RPM: 1 + UPLOAD_SYMBOL_FILES: 1 + SYMBOL_TARGET: libtsglua + PULP3_REPO_NAME: framework-stable-x86_64.el7 + PULP3_DIST_NAME: framework-stable-x86_64.el7 + extends: .build_by_travis_for_centos7 + artifacts: + name: "tsg_lua_module-$CI_COMMIT_REF_NAME-release" paths: - build/*.rpm only: - - /^develop.*$/i - - /^master.*$/i + - tags -develop_build_release: +release_build_release_for_centos7: stage: build - extends: .build_by_travis variables: BUILD_TYPE: RelWithDebInfo PACKAGE: 1 + UPLOAD_RPM: 1 + UPLOAD_SYMBOL_FILES: 1 + SYMBOL_TARGET: libtsglua + PULP3_REPO_NAME: framework-stable-x86_64.el7 + PULP3_DIST_NAME: framework-stable-x86_64.el7 + extends: .build_by_travis_for_centos7 artifacts: name: "tsg_lua_module-$CI_COMMIT_REF_NAME-release" paths: - build/*.rpm only: - - /^develop.*$/i + - tags + +branch_build_debug_for_centos8: + stage: build + extends: .build_by_travis_for_centos8 + variables: + BUILD_TYPE: Debug + except: + - /^dev*.*$/i + - /^rel*.*$/i - /^master.*$/i + - tags +branch_build_release_for_centos8: + stage: build + variables: + BUILD_TYPE: RelWithDebInfo + extends: .build_by_travis_for_centos8 + except: + - /^dev*.*$/i + - /^rel*.*$/i + - /^master.*$/i + - tags -release_build_release: +develop_build_debug_for_centos8: stage: build + extends: .build_by_travis_for_centos8 + variables: + BUILD_TYPE: Debug + PACKAGE: 1 + UPLOAD_RPM: 1 + ASAN_OPTION: ADDRESS + TESTING_VERSION_BUILF: 1 + PULP3_REPO_NAME: framework-testing-x86_64.el8 + PILP3_DIST_NAME: framework-testing-x86_64.el8 + artifacts: + name: "tsg_lua_module-$CI_COMMIT_REF_NAME-debug" + paths: + - build/*.rpm + only: + - /^dev*.*$/i + - /^rel*.*$/i + - /^master*.*$/i + +develop_build_release_for_centos8: + stage: build + extends: .build_by_travis_for_centos8 variables: BUILD_TYPE: RelWithDebInfo PACKAGE: 1 - UPLOAD: 1 - PULP3_REPO_NAME: framework-stable-x86_64.el7 - PULP3_DIST_NAME: framework-stable-x86_64.el7 - extends: .build_by_travis + UPLOAD_RPM: 1 + TESTING_VERSION_BUILF: 1 + PULP3_REPO_NAME: framework-testing-x86_64.el8 + PILP3_DIST_NAME: framework-testing-x86_64.el8 + artifacts: + name: "tsg_lua_module-$CI_COMMIT_REF_NAME-release" + paths: + - build/*.rpm + only: + - /^dev*.*$/i + - /^rel*.*$/i + - /^master*.*$/i + +release_build_debug_for_centos8: + stage: build + variables: + BUILD_TYPE: Debug + PACKAGE: 1 + UPLOAD_RPM: 1 + UPLOAD_SYMBOL_FILES: 1 + SYMBOL_TARGET: libtsglua + PULP3_REPO_NAME: framework-stable-x86_64.el8 + PULP3_DIST_NAME: framework-stable-x86_64.el8 + extends: .build_by_travis_for_centos8 artifacts: name: "tsg_lua_module-$CI_COMMIT_REF_NAME-release" paths: @@ -107,3 +256,22 @@ release_build_release: only: - tags +release_build_release_for_centos8: + stage: build + variables: + BUILD_TYPE: RelWithDebInfo + PACKAGE: 1 + UPLOAD_RPM: 1 + UPLOAD_SYMBOL_FILES: 1 + SYMBOL_TARGET: libtsglua + PULP3_REPO_NAME: framework-stable-x86_64.el8 + PULP3_DIST_NAME: framework-stable-x86_64.el8 + extends: .build_by_travis_for_centos8 + artifacts: + name: "tsg_lua_module-$CI_COMMIT_REF_NAME-release" + paths: + - build/*.rpm + only: + - tags + + |
