Как мне создать 2 задания, которые будут работать на разных платформах?

Я использую Gitlab-ci-multi-runner, используя машину OSX (оболочка bash) и машину Windows 7 (пакетные команды). Каждый раз, когда я нажимаю, я хочу, чтобы он строился и тестировался на обоих бегунах. Но очевидно, что команды должны немного отличаться для каждой платформы. Я не хочу использовать докер.

Я смотрел http://doc.gitlab.com/ci/yaml/README.html, но, похоже, ничего не говорится о конкретном соединении бегунов для сцены.


person Robin Degen    schedule 05.09.2015    source источник


Ответы (1)


Вы можете использовать систему тегов для бегуна.

Предполагаю, что у вас два бегуна. Один Windows с тегом windows и OS X с тегом osx.

Итак, теперь вы можете выбрать бегуна по тегу reclaim перед запуском.

Используемый .gitlab-ci.yml должен быть таким:

MyWindowsJob:
    tags:
        - windows
    script:
        - echo Say hello from windows

MyOSXJob:
    tags:
        - osx
    script:
        - uname -a
        - echo Say hello from osx

Если вы собираетесь использовать более одной версии ОС, вам лучше добавить номер версии в тег. Например:

  1. OS X v10.9 Mavericks: osx и osx_v10.9
  2. OS X v10.10 Yosemite: osx и osx_v10.10
  3. OS X v10.11 El Capitan: osx и osx_v10.11
person lvjp    schedule 22.09.2015