我的任务是研究持续集成,我正在研究的一件事是 Gitlab CI。
我已经设置了 Gitlab、Gitlab CI 和两个跑步者,但我完全不知道如何真正使用它。我怎么能做一些事情,比如创建一个单元测试,把它推送到 repo,然后让其中一个跑步者测试它?
还是我完全错过了这里的重点?我是这个 CI 的新手(例如,我昨天被要求这样做,这是我第一次接触 CI)所以如果我错过了这一点,请让我知道并指出我一些资源。
非常感谢。
我的任务是研究持续集成,我正在研究的一件事是 Gitlab CI。
我已经设置了 Gitlab、Gitlab CI 和两个跑步者,但我完全不知道如何真正使用它。我怎么能做一些事情,比如创建一个单元测试,把它推送到 repo,然后让其中一个跑步者测试它?
还是我完全错过了这里的重点?我是这个 CI 的新手(例如,我昨天被要求这样做,这是我第一次接触 CI)所以如果我错过了这一点,请让我知道并指出我一些资源。
非常感谢。
事实证明,在 CI 面板中的跑步者或 repo 的设置中,有一个脚本窗口。这可用于直接执行 shell 命令,例如phpunit -c /path/to/tests
, 并将计算测试是否失败或通过。
我认为这可能是由于 PHPUnit 输出 tostderr
而不是stdout
,但我真的不知道 - 不是范围的一部分,所以我还没有研究它。
你在这里问了一个相当广泛的问题。您的任务是了解 CI。你有 GitLab CI,但你不知道如何使用它。我将首先回答您是否了解构建和脚本执行之间的区别?PHP 在发送 HTTP 内容之前作为 Web 服务器中的预处理程序执行。这不是一个构建。将编译和构建 Java 或 C++。我将建议您查看开源 SCons,但后来意识到它是用于编译构建的。
我的第二个问题是您是否使用源代码控制存储库?如果有,是哪一个?对于 PHP,我可能会使用 Ruby 并编写自己的持续集成工具。我不太确定。回答我的问题。我想继续这个讨论,并帮助您出色地解决这个问题。