轉載于http://blog.c7d8.com/blog/8.html,原文可能有更新,以原文為準
在給測試搭建自動化測試環境工程中需要将測試報告收集起來,以便測試分析,但通過如下配置
stages:
- runTest
- alterdingding
.profile: &profile
variables:
PROFILE: "$CI_COMMIT_REF_NAME"
BRANCH_TAG: "$CI_COMMIT_TAG"
執行run:
stage: runTest
image: nexus.xxx.com:8080/tools/rftest:v0.1
only:
- web
- master
# 排除有tag的情況
except:
- tags
tags:
- docker
before_script:
- 'SHELL_RESULT="YES"'
<<: *profile
script:
- mkdir /ccccccc/robotframework/tests -p
- mkdir $CI_PROJECT_DIR/reports -p
- mv ./* /ccccccc/robotframework/tests
- robot --outputDir $CI_PROJECT_DIR/reports /ccccccc/robotframework/tests 2>/dev/null || SHELL_RESULT="NO"
artifacts:
name: "${CI_JOB_NAME}_${CI_COMMIT_REF_NAME}"
paths:
- reports/*
expire_in: 4 hrs
通知測試dingding:
stage: alterdingding
only:
- web
- master
# 排除有tag的情況
except:
- tags
tags:
- docker
<<: *profile
script:
- sh dingdingAlter.sh $SHELL_RESULT $CI_BUILD_REF
發現配置一直緩存不了,是以也沒法下載下傳收集的日志,而且官方文檔并沒有提及相應的限制
最後發現是很多人給官方提了bug,官方強調必須是編譯目錄路徑系統才會緩存。最後修改成如下這樣
stages:
- runTest
- alterdingding
.profile: &profile
variables:
PROFILE: "$CI_COMMIT_REF_NAME"
BRANCH_TAG: "$CI_COMMIT_TAG"
執行run:
stage: runTest
image: nexus.ccccccc.com:8080/tools/rftest:v0.1
only:
- web
- master
# 排除有tag的情況
except:
- tags
tags:
- docker
before_script:
- 'SHELL_RESULT="YES"'
<<: *profile
script:
- mkdir /ccccccc/robotframework/tests -p
- mkdir $CI_PROJECT_DIR/reports -p
- mv ./* /ccccccc/robotframework/tests
- robot --outputDir $CI_PROJECT_DIR/reports /ccccccc/robotframework/tests 2>/dev/null || SHELL_RESULT="NO"
artifacts:
name: "${CI_JOB_NAME}_${CI_COMMIT_REF_NAME}"
paths:
- reports/*
expire_in: 4 hrs
通知測試dingding:
stage: alterdingding
only:
- web
- master
# 排除有tag的情況
except:
- tags
tags:
- docker
<<: *profile
script:
- echo $SHELL_RESULT $CI_BUILD_REF
- sh dingdingAlter.sh $SHELL_RESULT $CI_BUILD_REF
參考連結
Gitlab CI Artifacts not found - Questions & Answers / GitLab CI - GitLab Forum
https://forum.gitlab.com/t/gitlab-ci-artifacts-not-found/7588
Files exists but can’t be used to build artifacts. (#15530) · Issues · GitLab.org / GitLab Community Edition · GitLab
https://gitlab.com/gitlab-org/gitlab-ce/issues/15530