gpt4 book ai didi

travis-ci - 在 travis-ci 中的阶段之间传递信息

转载 作者:行者123 更新时间:2023-12-03 19:31:31 25 4
gpt4 key购买 nike

我想使用免费在线服务transfer.sh用于在 travis ci 的阶段之间共享构建工件。虽然上传/下载很容易,但问题是生成的 URL 包含不可预测的部分,因此整个 URL 变得不可预测。

在早期阶段上传工件时,我需要将生成的 URL 传递到后期阶段。 AFAIK,多阶段构建中的作业彼此严格隔离。

  • 因此,我正在寻找如何在阶段之间传递 URL 的想法。
  • 也欢迎使用(注册)免费服务传递工件的想法。
  • 最佳答案

    我找到了一个在 Travis-CI 上的构建阶段之间传递工件的解决方案:滥用 github 版本。

  • 在 github 存储库中创建一个标签,例如"travis-ci"
  • 在 .travis.yml 中,设置 TRAVIS_TAG=travis-ci。
  • 向需要存储工件的阶段添加部署(部署到 github)步骤。创建并使用加密的 github token 进行身份验证。这甚至适用于禁用了 secret 环境变量的 Windows 主机。这一步需要 TRAVIS_TAG 否则它会创建一个我们不想要的新标签。
  • 在每个文件名中包含当前的 TRAVIS_BUILD_NUMBER
  • 在稍后阶段,使用 curl 下载工件,因为 URL 现在是可预测的。

  • 在构建标签时,可以省略覆盖 TRAVIS_TAG 并使用该特定标签来存储中间工件。然后可以稍后手动删除它们。

    [编辑] 我刚刚注意到 Travis 引入了一个名为 workspaces 的功能这正是我想要的。不需要上述解决方法。

    关于travis-ci - 在 travis-ci 中的阶段之间传递信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53931069/

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