【问题标题】:Gitlab CI: running the same set of tests on several machinesGitlab CI:在多台机器上运行相同的测试集
【发布时间】:2016-03-07 06:42:33
【问题描述】:

在高性能计算中,针对许多不同的架构/编译器测试代码至关重要:从笔记本电脑到超级计算机。

假设我们有

  • N 测试机器/工人(每台运行gitlab-ci-runner);
  • M 测试,

.gitlab-ci.yml 的正确布局应该是什么,以确保 N 机器中的 each 运行所有测试?

在我看来,添加更多的工人最终会导致类似round-robin 的工作分配。

感谢您的帮助。

【问题讨论】:

    标签: gitlab gitlab-ci gitlab-ci-runner


    【解决方案1】:

    你可以在你的 .gitlab-ci.yml 和运行器上使用标签来将你的测试分发到你想要的所有 mashine。 Gitlab CI 对这些用例非常开放。我假设您不使用 docker 进行测试。

    要实现您的目标,请执行以下步骤:

    1. 在您的N mashines 上安装您的 gitlab-ci-multi-runners 但是如果跑步者要求您提供标签,请使用特定名称标记 mashine,例如“MashineWithManyCPUsWhatever”。请使用gitlab-ci-multi-runner register 命令执行此操作。您也可以在注册后在管理视图中更改 Gitlab 中的标签。 跑步者的类型应该是“共享的”而不是“特定的”。

    1. 当您安装并标记您的机器上的每个跑步者时,请标记您的工作。 示例:

    现在每个作业都将在具有特定标签的特定机器上执行。 欲了解更多信息,请参阅Gitlab CI Documentation

    【讨论】:

    • 嗨,我最终也是这样做的。
    猜你喜欢
    • 2014-07-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-09-28
    • 2015-10-24
    • 1970-01-01
    • 1970-01-01
    • 2019-05-14
    相关资源
    最近更新 更多