【问题标题】:Coverity Scan for projects outside GitHubCoverity 扫描 GitHub 以外的项目
【发布时间】:2016-08-16 07:40:32
【问题描述】:

我一直在阅读,但还没有找到答案。

我对使用 Coverity 扫描非常感兴趣,但我没有使用 Github(也不想使用 travis-CI,因为我有自己的 CI 解决方案)

是否可以在这些工具之外使用 Coverity 扫描?比如cli工具?

看来你必须有一个github URL才能注册一个项目

目前我主要在做 PHP、JavaScript、node.js;但很快也会添加objective-c

【问题讨论】:

  • 似乎有可能并且不需要 git URL。项目注册后,即可下载工具

标签: coverity


【解决方案1】:

您不需要使用 GitHub 和 Travis CI。您可以仅使用电子邮件地址和密码注册 Coverity 帐户,而不是使用 GitHub 帐户,并且您可以通过填写详细信息表单来添加项目,而不是导入 GitHub 项目。同样,您可以手动或从 CI(而不是 Travis)将构建上传到 Coverity Scan。

您必须先在https://scan.coverity.com/users/sign_up 注册/登录,然后您可以打开https://scan.coverity.com/download?tab=java(例如Java)并获取进行构建的软件和说明。

如果您想使用自己的 CI,在 https://scan.coverity.com/projects/name-of-your-project/builds/new 添加项目后,您将获得手动和自动构建的信息。

本质上,您可以在登录后从网站获取构建工具工具,也可以通过

wget https://scan.coverity.com/download/linux64 --post-data "token=<secret-token>&project=name-of-your-project" -O coverity_tool.tgz

(将 linux64 替换为您的平台)

然后你解压它并运行检测的构建

../cov-analysis-linux64-8.7.0/bin/cov-build --dir ../cov-int mvn -DskipTests=true package

最后使用 HTTP POST 请求将 cov-int 目录 tar 上传

curl --form token=<secret-token> \
  --form email=<your-email> \
  --form file=@tarball/file/location \
  --form version="Version" \
  --form description="Description" \
  https://scan.coverity.com/builds?project=<name-of-your-project>

【讨论】:

  • 感谢您的详细解答!我怀疑这是可能的。
  • 我还想澄清一下,在某些开源许可下,您不必向整个公众发布源代码。例如,如果您有私人客户,您可以只向他们发布源代码。在这种情况下,私有 repo 仍然是开源的,因此应该在 Coverity 规则下被允许! (为了它的价值,我很乐意支付保险费。但它贵得离谱!)
  • 现在有不错的选择。对于 C/C++,在 Clion 和 Visual Studio 中有一些花哨的分析。 Clang 和 GCC 有花哨的警告(GCC 中的 -fanalyzer,一些迂腐的警告,Clang 中的 clang-analyzer,在 macOS XCode 中很好地集成以浏览报告),还有消毒剂,现在也在 Visual Studio 中。
猜你喜欢
  • 1970-01-01
  • 2017-02-16
  • 1970-01-01
  • 2020-11-26
  • 2016-03-28
  • 2017-02-07
  • 2019-08-12
  • 2013-08-07
  • 1970-01-01
相关资源
最近更新 更多