drone.io 0.5 松弛不再起作用



我们在 0.4 中运行了松弛通知 drone.io 很好,但由于我们更新到 0.5,尽管尝试了文档,但我无法让它工作。

以前是这样的

build:
  build and deploy stuff...
notify:
  slack:
    webhook_url: $$SLACK_WEBHOOK_URL
    channel: continuous_integratio
    username: drone

你可以在这里看到我用$$来引用旧的特殊的无人机配置文件。

现在我的最新尝试看起来像这样

pipeline:
  build and deploy stuff...
  slack:
    image: plugins/slack
    webhook: https://hooks.slack.com/services/...
    channel: continuous_integratio
    username: drone

根据文档,松弛现在在管道(以前构建(级别内缩进。

我尝试像以前一样将slack换成notify,仅通过无人机 cli 以及我尝试的其他事情使用SLACK_WEBHOOK秘密。

有谁知道我可能做错了什么?

这是我在启用松弛通知的情况下使用的(几乎完全一样(yaml,除了我已经屏蔽了凭据

pipeline:
  build:
    image: golang
    commands:
      - go build
      - go test
  slack:
    image: plugins/slack
    webhook: https://hooks.slack.com/services/XXXXXXXXX/YYYYYYYYY/ZZZZZZZZZZZZZZZZZZZZZZZZ
    when:
      status: [ success, failure ]
不幸的是,您的

示例中没有任何内容跳出来,也许除了频道名称有拼写错误(尽管我不确定这是否代表您的真实 yaml 配置(

如果您尝试使用机密(通过 cli(,则需要确保对 yaml 文件进行签名并将签名文件提交到存储库。然后,您可以在 yaml 中引用您的密钥,类似于 0.4,但语法略有不同:

pipeline:
  build:
    image: golang
    commands:
      - go build
      - go test
  slack:
    image: plugins/slack
    webhook: ${SLACK_WEBHOOK}
    when:
      status: [ success, failure ]

您可以在 http://readme.drone.io/usage/secret-guide/阅读有关机密的更多信息

您还可以直接从命令行调用插件,以帮助测试不同的输入值。这有助于调试。见 https://github.com/drone-plugins/drone-slack#usage

问题是在 0.4 中,通知插件位于管道范围之外(然后构建(,现在从 0.5 开始它位于管道内部。再加上当管道失败时,它会立即退出范围,这意味着slack(然后是notify(步骤永远不会再到达。

对此的解决方案是仅显式告诉它使用 when 命令在失败时执行步骤:

when:
  status: [ success, failure ]

不过,这实际上在入门指南中提到过,但我直到最后都没有完成,因为我的目标是快速启动并运行它,并且不担心我认为是边缘情况。

相关内容

  • 没有找到相关文章

最新更新