如何在本地运行 travis-ci

2023-12-14

我宁愿不必推动每一个微小的改变.travis.yml以及我为了运行构建而对源代码所做的每一个小更改。使用jenkins,您可以下载jenkins并在本地运行。特拉维斯提供这样的东西吗?

注意:我看过 travis-ci cli 并下载了它,但看起来一切都一样 要做的就是调用他们的 API,然后连接到我的 GitHub 存储库,所以如果 我不推动,重新启动上次构建也没关系。


此过程允许您在计算机上完全重现任何 Travis 构建作业。此外,您可以随时中断该过程并进行调试。下面是一个例子,我完美地重现了结果php-school/cli-menu 上的作业 #191.1.

先决条件

  • 您在 GitHub 上有公共存储库
  • 您在 Travis 上运行了至少一个版本
  • 你有 Docker在您的计算机上设置

设置构建环境

参考:https://docs.travis-ci.com/user/common-build-problems/

  1. 编写您自己的临时构建 ID

    BUILDID="build-$RANDOM"
    
  2. View 构建日志,打开 WORKER INFORMATION 的显示更多按钮并找到 INSTANCE 行,将其粘贴到此处并运行(替换冒号后面的标签与最新的可用):

    INSTANCE="travisci/ci-garnet:packer-1512502276-986baf0"
    
  3. 运行无头服务器

    docker run --name $BUILDID -dit $INSTANCE /sbin/init
    
  4. 运行附加的客户端

    docker exec -it $BUILDID bash -l
    

运行作业

现在您已进入 Travis 环境。跑步su - travis开始。

This step is well defined but it is more tedious and manual. You will find every command that Travis runs in the environment. To do this, look for for everything in the right column which has a tag like 0.03s.

在左侧您将看到实际的命令。按顺序运行这些命令。

Result

现在是运行的好时机history命令。您可以重新启动该进程并重播这些命令,以针对更新的代码库运行相同的测试。

  • 如果您的存储库是私有的:ssh-keygen -t rsa -b 4096 -C "YOUR EMAIL REGISTERED IN GITHUB" then cat ~/.ssh/id_rsa.pub and 点击这里添加一个键
  • 仅供参考:你可以git pull在将提交推送到 GitHub 之前,从 docker 内部加载来自开发盒的提交
  • 如果您想更改 Travis 运行的命令,那么您有责任弄清楚如何将其转换回工作状态.travis.yml.
  • 我不知道如何清理Docker环境,看起来很复杂,也许这会泄漏内存
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在本地运行 travis-ci 的相关文章

随机推荐