在给测试搭建自动化测试环境工程中需要将测试报告收集起来,以便测试分析,但通过如下配置
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