作者:手机用户2502895231 | 来源:互联网 | 2022-12-05 14:08
我的目标是展示徽章(例如: )基于管道结果。
我有一个带有以下.gitlab-ci.yml的私有gitlab ce omnibus实例:
image: python:3.6
stages:
- lint
- test
before_script:
- python -V
- pip install pipenv
- pipenv install --dev
lint:
stage: lint
script:
- pipenv run pylint --output-format=text --load-plugins pylint_django project/ | tee pylint.txt
- score=$(sed -n 's/^Your code has been rated at \([-0-9.]*\)\/.*/\1/p' pylint.txt)
- echo "Pylint score was $score"
- ls
- pwd
- pipenv run anybadge --value=$score --file=pylint.svg pylint
artifacts:
paths:
- pylint.svg
test:
stage: test
script:
- pipenv run python manage.py test
因此,我认为我会将图像存储在皮棉作业的工件中,并通过徽章功能进行显示。
但是我遇到以下问题:浏览https://example.com/[group]/[project]/-//jobs/[ID]/artifacts/file/pylint.svg时,没有看到徽章,以下消息:
The image could not be displayed because it is stored as a job artifact. You can download it instead.
而且无论如何,我觉得这是错误的方法,因为即使我可以获取图像,但似乎也没有办法从上一份工作中获取图像,因为徽章图像的gitlab URL仅支持 %{project_path}, %{project_id}, %{default_branch}, %{commit_sha}
那么,如何根据gitlab管道中的结果生成的svg将徽章添加到gitlab项目中?
我的猜测是我可以推送到.badge文件夹,但这听起来并不干净。