gpt4 book ai didi

github - 为每个 Travis 拉取请求构建运行 Coverity 扫描

转载 作者:行者123 更新时间:2023-12-03 17:48:41 27 4
gpt4 key购买 nike

我想尽可能自动化学生作业评分系统。理想情况下,提交作业时将采取这些步骤。

  • 学生叉我的 Github 存储库和修改文件
  • 学生将本地代码推送到他的存储库并创建拉取请求
  • 特拉维斯 CI 检测拉取请求并运行拉取请求构建
  • 如果代码构建成功,覆盖为拉取请求运行静态代码分析
  • 学生从 获取构建状态Github 拉取请求页面

  • 我已经成功地为我的 repo 中的每个拉取请求设置了 Travis 构建。我已经成功地通过 Travis 为我的 repo 上的每个提交运行了 Coverity 扫描。但是我无法为拉取请求触发 Coverity 扫描,只能运行 Travis 构建。我可以解决这个问题并为每个拉取请求维护 Coverity 扫描报告吗?

    这是我的 .travis.yml
    language: c
    compiler: gcc

    env:
    global:
    # The next declaration is the encrypted COVERITY_SCAN_TOKEN, created
    # via the "travis encrypt" command using the project repo's public key
    - secure: "WHkT1bLbpz8VA8tl+qyZvWHLg7YvnMPhCNXCEAQQaklcDq8HQ7glIrrs35VnTDfs09tVgkPbgsAfwBuwxqkmmxWaquW0AHdb6cefNpQVj2ovUriQVNBFmjfte9Bbq0NWKoLp+4IY/3IDfLoUOekOIDXuQtkJhNvX1zkkt21lSeo="

    addons:
    coverity_scan:
    project:
    name: "Freeuni-CN101-2014/midterm"
    description: "Build submitted via Travis CI"
    notification_email: example@mail.com
    build_command_prepend: ""
    build_command: "make"
    branch_pattern: "*"

    script: make

    拉取请求的 Travis 输出 here

    将拉取请求与主分支合并后的 Travis 输出 here

    最佳答案

    我问 Coverity 支持,他们回答

    The trigger for Coverity Scan happens for the specific branch and not for the pull request, and specially the branch that is mentioned in .travis.yml



    更新

    在用户@Admaster 的帮助下,我开始使用 Jenkins 和 cppcheck插入。 Jenkins 正在成功扫描拉取请求,而无需将构建状态设置为 Github 提交(Travis 确实设置了)。

    例子
    enter image description here

    所以我继续尝试 Travis 并过来了 this repo 。我换了 .travis.yml看起来像这样的文件
    language: c
    compiler: gcc

    before_install:
    - sudo apt-get install -qq cppcheck

    script:
    - cppcheck --error-exitcode=1 --quiet .
    - make

    cppcheck 可能不如 Coverity 有效,但对于学生的作业来说已经足够了。

    关于github - 为每个 Travis 拉取请求构建运行 Coverity 扫描,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26759088/

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