【问题标题】:Running Danger on Jenkins is skipped with the error: Not a Jenkins Pull RequestRunning Danger on Jenkins 跳过错误:Not a Jenkins Pull Request
【发布时间】:2021-02-06 10:04:36
【问题描述】:

我想在 Jenkins 上运行的 CI 上运行 Danger 测试。我正在使用脚本化的管道。 我已将 GitHub 分支源插件安装到 Jenkins 中。我还为 builds_user 帐户(Jenkins 用于 GitHub 交互)创建了一个个人访问令牌,并将其存储在 Jenkins 凭证存储中,具有唯一 ID builds_user_repos_acces

这就是我冒险的方式:

withCredentials([usernamePassword(credentialsId: 'builds_user_repos_access', passwordVariable: 'DANGER_GITHUB_API_TOKEN', usernameVariable: '')]) {
   def dangerEnv = [
      "DANGER_GITHUB_API_TOKEN=${env.DANGER_GITHUB_API_TOKEN}"
   ]
   stage('danger') {
      withEnv(buildEnv + dangerEnv) {
         sh 'bundle exec danger'
      }
   }
}

buildEnv 是运行 ruby​​ gem 所需的环境变量列表。当我运行其他 gem 和运行 bundle install 时,一切正常。

我得到的是一个警告:

  • 捆绑执行危险

不是 Jenkins 拉取请求 - 跳过“危险”运行。

我也试过了:

      stage('danger') {
         withEnv(buildEnv) {
            withCredentials([usernamePassword(credentialsId: 'skbuilds_repos_access', passwordVariable: 'DANGER_GITHUB_API_TOKEN', usernameVariable: '')]) {
               sh 'env'
               sh "bundle exec danger"
            }
         }
      }

我可以看到 DANGER_GITHUB_API_TOKEN 在那里(被屏蔽)。

你看出哪里不对了吗?有没有办法获取更多信息?

【问题讨论】:

    标签: jenkins github danger


    【解决方案1】:

    Danger 仅适用于拉取请求,因此您必须在 jenkins 中进行多分支或 github 组织作业并连接 jenkinsFile。

    【讨论】:

    • 我添加 Danger 的 Jenkins 脚本在 PR 上运行
    猜你喜欢
    • 1970-01-01
    • 2021-06-02
    • 1970-01-01
    • 2018-08-13
    • 1970-01-01
    • 2016-06-21
    • 1970-01-01
    • 2017-04-08
    • 1970-01-01
    相关资源
    最近更新 更多