如何在after_script命令中获取Travis-CI build_number

Har*_*til 8 continuous-integration build github travis-ci

如何从Travis-CI中的命令中获取build_number(和其他构建元数据)after_script

已经尝试过的内容:

有关构建配置文档在IRC通知部分中说明了这一点:

您还可以使用模板自定义将发送到频道的消息:

notifications:
  irc:
    channels:
      - "irc.freenode.org#travis"
      - "irc.freenode.org#some-other-channel"
    template:
      - "%{repository} (%{commit}) : %{message} %{foo} "
      - "Build details: %{build_url}"
Run Code Online (Sandbox Code Playgroud)

您可以插入以下变量:

  • repository:您的GitHub repo URL.
  • build_number:内部版本号.
  • branch:分支构建名称.
  • commit:缩短提交SHA
  • 作者:提交作者姓名.
  • 消息:构建的travis消息.
  • compare_url:提交更改视图URL.
  • build_url:构建详细信息的URL.

试图让这个在after_script命令中工作,如下所示,根本不起作用:

language: java
after_script:
  - git commit -a -m "Committed by Travis-CI build number: %{build_number}"
Run Code Online (Sandbox Code Playgroud)

它的表现就好像.travis.yml文件不存在/无效的(尽管它并通过特拉维斯-CI YAML验证这里).

似乎这应该是可行的,但找不到任何这样做的样本.

有人能指出我正确的方向吗?

roi*_*age 9

您可以为IRC输出执行的字符串替换仅在那里工作.它们通常仅用于通知,以自定义输出,但目前仅适用于IRC.

通过访问TRAVIS_JOB_ID环境变量,仍有办法获取当前的内部版本号.如果您将脚本更改为以下行,事情应该按预期工作:

after_success:
  - git commit -a -m "Committed by Travis-CI build number: $TRAVIS_JOB_ID"
Run Code Online (Sandbox Code Playgroud)