2016-09-27 2 views
0

Использование Travis, я автоматизирую сборку Docker на каждом нажатии до abc123.Travis условное sudo по отраслям

Чтобы Docker бежать туда, Трэвис нужно sudo: required для virtualization setup

Он работает для каждой отрасли, но с использованием сборки на основе контейнера имеет еще преимущество (например, скорость, к примеру), и я хотел бы запустите сборку с sudo: false на каждой ветке, которая не abc123.

Возможно ли иметь конфигурацию sudo для конкретной ветки в Тревисе?

+0

Для этого вы можете использовать [сборку матрицы] (https://docs.travis-ci.com/user/customizing-the-build#Build-Matrix). Вероятно. –

ответ

0

Вы можете использовать переменную окружения TRAVIS_SUDO, чтобы различать две версии.

Текущая версия их Документах это включало:

TRAVIS_SUDO: true или false в зависимости от того включен sudo.

Источник: https://docs.travis-ci.com/user/environment-variables/#Default-Environment-Variables


Другим решением было бы иметь в различных отраслях различный .travis.yml, но слияние назад и вперед может сделать это трудно поддерживать.

+0

TRAVIS_SUDO envvar - это противоположность тому, что они хотят. Он сообщает вам, что такое статус sudo _is_, но он не позволяет вам устанавливать его на основе ветки. – hraban

+0

правильный. В зависимости от этого envvar мой скрипт будет работать по-разному. – kronn

+0

запись sudo в файлах travis.yml не может быть динамически установлена ​​на основе этого envvar, к сожалению. В этом и заключался этот вопрос. – hraban

Смежные вопросы