gpt4 book ai didi

flutter - GitLab Flutter CI 失败并显示 "tojunit: command not found"

转载 作者:行者123 更新时间:2023-12-05 02:45:14 25 4
gpt4 key购买 nike

我正在使用以下 .gitlab-ci.yml 文件使用 junit 运行测试并将报告导出为 XML 工件:

image: cirrusci/flutter:stable

before_script:
- flutter pub get
- flutter clean
- flutter --version

stages:
- analyze-and-test

analyze-and-test:
stage: analyze-and-test
script:
- flutter build aot
- flutter analyze
# - flutter test
- flutter test --machine | tojunit -o report.xml
artifacts:
when: always
reports:
junit:
- report.xml
only:
- master
- merge_requests

该应用程序具有以下包依赖项:

dependencies:
flutter:
sdk: flutter
junitreport: ^1.3.1

运行此管道时,出现以下错误:

$ flutter test --machine | tojunit -o report.xml
/usr/bin/bash: line 139: tojunit: command not found
Unhandled exception:
FileSystemException: writeFrom failed, path = '' (OS Error: Broken pipe, errno = 32)

我正在尝试找出失败的原因。由于在调用 analyze-and-test 之前在 before_script 节中检索到包,因此应该可以找到该命令。我错过了什么?

最佳答案

看起来 CI 机器上没有安装 tojunit。根据junitreport installation instruction您应该运行此命令来下载程序并使启动脚本可用:

pub global activate junitreport

所以首先将这条命令添加到before_script阶段:

before_script:
- flutter pub get
- flutter clean
- flutter --version
- flutter pub global activate junitreport

尝试运行它。

接下来,如果 {dart-cache}/bin 目录不在您的路径中,您将收到警告,包括有关如何修复它的提示。在这种情况下,您需要向 before_script 添加更多命令(来自提示)。

关于flutter - GitLab Flutter CI 失败并显示 "tojunit: command not found",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66046443/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com