Travis Build разоблачает API, который используют работники Travis и доски вакансий для создания сценария BASH, который затем копируется в среду выполнения задания и выполняется, с полученным результатом, возвращенным обратно в Трэвис.
Эта база кодекса прошла через несколько итераций разработки и первоначально была извлечена из Legacy Travis Worker, прежде чем принять свою нынешнюю форму.
Бегать
bundle exec rake spec
Вы можете установить Travis-Build в качестве плагина для клиента командной строки:
git clone https://github.com/travis-ci/travis-build
cd travis-build
mkdir -p ~ /.travis
ln -s $PWD ~ /.travis/travis-build
gem install bundler
bundle install --gemfile ~ /.travis/travis-build/Gemfile
bundler binstubs travis
Теперь вы сможете запустить travis compile
, который создает сценарий BASH, который выполняет указанную задачу, за исключением того, что переменные безопасной среды не определены, и что расширение матрицы сборки не рассматривается, например,:
~ /.travis/travis-build/bin/travis compile
Скрипт Bash, сгенерированный командой компиляции, содержит команды, которые вносят изменения в систему, в которой она выполняется (например, редактирование /etc/resolv.conf
, установить программное обеспечение). Некоторые требуют привилегий sudo
, и они нелегко отменить.
Настоятельно рекомендуется запустить это в контейнере или в другой виртуализированной среде.
Команда может быть вызвана 3 способами:
Без аргумента он производит и печатает сценарий из-за действий в локальном .travis.yml
без рассмотрения значений env
и matrix
( travis-build
не может правильно расширить эти ключи).
~ /.travis/travis-build/bin/travis compile
С помощью одного целого числа он производит сценарий для данной сборки (или первой задачи этой матрицы сборки).
~ /.travis/travis-build/bin/travis compile 8
С аргументом формы MN
, он создает сценарий Bash для работы MN
.
~ /.travis/travis-build/bin/travis compile 351.2
Сгенерированный сценарий может использоваться в контейнере или виртуализированной среде, которая тщательно имитирует среду сборки Travis CI, чтобы помочь вам отладки сбоев сборки. Инструкции по запуску такого контейнера доступны в документах Travis CI.
В дополнение к плагину Travis CLI вы также можете запустить автономный сценарий CLI:
bundle exec script/compile < payload.json > build.sh
Если вы хотите запустить Travis-Build локально на своей машине (например, для взаимодействия с работником), вы также можете запустить его в качестве контейнера Docker с докером:
Во -первых, создайте изображение:
docker-compose build web
Во -вторых, запустите изображение:
docker-compose run web
Вы можете запустить с другой настройкой для локальной разработки. Следующее показывает, что в среде travis-build
development
среды, направляя порт 4000 в порту 4000 хоста 4000:
docker-compose run -e RACK_ENV=development -p 4000:4000 web
Чтобы построить и запустить его. Это создаст контейнер с содержанием репозитория travis-build
в каталоге /usr/src/app
и начнет вас в этом каталоге. Оттуда вы можете запустить команды, перечисленные в разделе «Использование как аддон для Travis CLI, чтобы сделать команду компиляции доступной для Travis CLI в контейнере».
См. Файл лицензии.
Copyright (C) 2011-2016 Travis CI Development Team.