拥有执行 2 个步骤的 Bitbucket 管道:
如果每个测试都正常,SonarQube 任务将运行并上传所有内容。如果任何测试失败,“SonarQube Scan”步骤将不会按预期运行。
是否可以在不考虑前一个(测试)失败的情况下运行“SonarQube Scan”步骤?当测试失败时,管道的总执行应被视为失败(红色)。
我通过使用
after-script
部分解决了这个问题。
我的 bitbucket-pipelines.yml
看起来像:
image: python:3.8
pipelines:
default:
- step:
name: Execute Tests & Upload to Sonar
script:
- pip install poetry
- poetry config virtualenvs.create false
- poetry install
- poetry run pytest
artifacts:
- test_report.xml
- coverage.xml
after-script:
- pipe: sonarsource/sonarqube-scan:1.0.0
variables:
SONAR_HOST_URL: ${SONAR_HOST_URL}
SONAR_TOKEN: ${SONAR_TOKEN}