Ruby on rails 覆盖率扫描错误';项目无效';
我在rails应用程序中使用coverity,但无法上载任何构建 我试过用Coverity扫描自建。它运行时没有任何问题,但当我上载我的Ruby on rails 覆盖率扫描错误';项目无效';,ruby-on-rails,ruby,travis-ci,coverity,Ruby On Rails,Ruby,Travis Ci,Coverity,我在rails应用程序中使用coverity,但无法上载任何构建 我试过用Coverity扫描自建。它运行时没有任何问题,但当我上载我的.tgz文件时,它失败,并显示以下消息: Coverity Scan analysis selected for branch coverity_scan. Coverity Scan analysis authorized per quota. $ curl -s https://scan.coverity.com/scripts/travisci_build
.tgz
文件时,它失败,并显示以下消息:
Coverity Scan analysis selected for branch coverity_scan.
Coverity Scan analysis authorized per quota.
$ curl -s https://scan.coverity.com/scripts/travisci_build_coverity_scan.sh | COVERITY_SCAN_PROJECT_NAME="$PROJECT_NAME" COVERITY_SCAN_NOTIFICATION_EMAIL="${COVERITY_SCAN_NOTIFICATION_EMAIL:-<MY_EMAIL>}" COVERITY_SCAN_BUILD_COMMAND="${COVERITY_SCAN_BUILD_COMMAND:---no-command --fs-capture-search ./}" COVERITY_SCAN_BUILD_COMMAND_PREPEND="${COVERITY_SCAN_BUILD_COMMAND_PREPEND:-}" COVERITY_SCAN_BRANCH_PATTERN=${COVERITY_SCAN_BRANCH_PATTERN:-coverity_scan} bash
Note: COVERITY_SCAN_PROJECT_NAME and COVERITY_SCAN_TOKEN are available on Project Settings page on scan.coverity.com
Coverity Scan configured to run on branch coverity_scan
Coverity Scan analysis authorized per quota.
Downloading Coverity Scan Analysis Tool...
2016-09-29 20:36:31 URL:https://scan.coverity.com/download/Linux [449455458/449455458] -> "/tmp/cov-analysis-Linux.tgz" [1]
Extracting Coverity Scan Analysis Tool...
/tmp/coverity-scan-analysis ~/build/<PROJECT_NAME>
~/build/<PROJECT_NAME>
Running Coverity Scan Analysis Tool...
Coverity Build Capture (64-bit) version 8.5.0.3 on Linux 3.13.0-92-generic x86_64
Internal version numbers: db70178643 p-kent-push-26368.949
[STATUS] Running filesystem capture search...
[WARNING] Path '/home/travis/build/<PROJECT_NAME>/cov-int' looks like an idir. Skipping filesystem capture on it.
[STATUS] Emitting 238 source files from filesystem capture
|0----------25-----------50----------75---------100|
|******/*****/*****/******/*****/*****/*****/******/****/*****
Emitted 2 JavaScript compilation units (100%) successfully
Emitted 233 Ruby compilation units (100%) successfully
2 JavaScript compilation units (100%) are ready for analysis
233 Ruby compilation units (100%) are ready for analysis
The cov-build utility completed successfully.
Extracting SCM data for 235 files...
|0----------25-----------50----------75---------100|
*******/************************************|*********
Please see the log file '/home/travis/build/<PROJECT_NAME>/cov-int/scm_log.txt' for warnings and SCM command issues.
[WARNING] SCM data appears to be mismatched.
File: '/home/travis/build/<PROJECT_NAME>/config/initializers/cookies_serializer.rb'
Please check the correctness of the SCM data with cov-manage-emit.
Successfully added SCM data for 235 files
Tarring Coverity Scan Analysis results...
Uploading Coverity Scan Analysis results...
Coverity Scan upload failed: ERROR: Project is invalid.
请修复下面的错误
- 项目无效
$ ~/Downloads/cov-analysis-linux64-8.5.0.3/bin/cov-build --dir cov-int --no-command --fs-capture-search ./
Coverity Build Capture (64-bit) version 8.5.0.3 on Linux 4.7.4-1-ARCH x86_64
Internal version numbers: db70178643 p-kent-push-26368.949
[STATUS] Running filesystem capture search...
[WARNING] Path '/<PATH_TO_MY_APP>/cov-int' looks like an idir. Skipping filesystem capture on it.
[STATUS] Emitting 239 source files from filesystem capture
|0----------25-----------50----------75---------100|
****************************************************
Emitted 3 JavaScript compilation units (100%) successfully
Emitted 233 Ruby compilation units (100%) successfully
3 JavaScript compilation units (100%) are ready for analysis
233 Ruby compilation units (100%) are ready for analysis
The cov-build utility completed successfully.
$ tar czvf myproject.tgz cov-int
cov-int/
cov-int/build-id.txt
cov-int/emit/
cov-int/emit/<HOST>/
cov-int/emit/<HOST>/emit-db.lock
cov-int/emit/<HOST>/emit-db
cov-int/emit/<HOST>/config/
cov-int/emit/<HOST>/config/80d7f82624e3b17456da362d1e5400da/
cov-int/emit/<HOST>/config/80d7f82624e3b17456da362d1e5400da/coverity_config_created
cov-int/emit/<HOST>/config/80d7f82624e3b17456da362d1e5400da/coverity_config.xml
cov-int/emit/<HOST>/config/80d7f82624e3b17456da362d1e5400da/ruby-config-0/
cov-int/emit/<HOST>/config/80d7f82624e3b17456da362d1e5400da/ruby-config-0/coverity_config.xml
cov-int/emit/<HOST>/emit-db.write-lock
cov-int/emit/version
cov-int/tmp/
cov-int/build-log.txt
cov-int/BUILD.metrics.xml
cov-int/build-cwd.txt
cov-int/build-timings.txt
$
它还说这个项目是无效的。由于构建是由travis完成的,所以我无法查看日志
引用文件config/initializers/cookies\u serializer.rb
如下所示:
# Be sure to restart your server when you modify this file.
Rails.application.config.action_dispatch.cookies_serializer = :json
第三种可能是命令行上传。以下是日志:
$ curl --form token=<TOKEN> \
--form email=<MY_EMAIL> \
--form file=@/<PATH_TO_MY_APP>/myproject.zip \
--form version="1.0" \
--form description="Initial" \
https://scan.coverity.com/builds?project=<MY_USERNAME>%2F<MY_PROJECT_NAME>
ERROR: Project is invalid
$
我还使用build命令选项--fs capture search./app/
尝试了这一点,因此只扫描所有应用程序文件
有人知道为什么会发生这种错误吗
提前谢谢
编辑:添加了命令行示例我相信这里的错误消息是,您试图在扫描中提交结果的项目配置不正确。从您的另一个问题来看,您的
travis.yml
中有这个问题。您是否将此更新为指向正确的项目
#插件
插件:
覆盖率扫描:
项目:
姓名:“
描述:“通过Travis CI提交的构建”
这是一个完全相同的项目。我还试图手动上传.tgz
文件,但失败了,并显示了相同的错误消息。所以它不会是由.travis.yml
文件引起的。它们是复制/粘贴的食谱。在过去,扫描服务提交有问题,但现在不是这样了(谢谢ML)。我提交的最后一个问题是由于curl
命令(Coverity提供的说明不起作用)。使用Crypto++提供的cURL命令。我试图通过命令行上载tgz文件,但同样的消息项目无效,也失败了。。。
# environment settings
env:
global:
- secure: "<SECURE>"
matrix:
- DB=sqlite
- DB=mysql
- DB=postgresql
# commands to run before the install
before_install:
# download certificate
- echo -n | openssl s_client -connect scan.coverity.com:443 | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' | sudo tee -a /etc/ssl/certs/ca-
# addons
addons:
coverity_scan:
project:
name: "<PROJECT_NAME>"
description: "Build submitted via Travis CI"
notification_email: <MY_EMAIL>
build_command_prepend: ""
build_command: "--no-command --fs-capture-search ./"
branch_pattern: coverity_scan