Несовместимые результаты с Travis CI и токсином
Я настроил непрерывную интеграцию для моего проекта с открытым исходным кодом в Travis. В tox, похоже, возникли некоторые проблемы с кавычками в командах, поэтому я настроил временную ветвь для отладки проблемы. В этот момент я сталкиваюсь с очень странной проблемой.
Последние 3 коммита и их статус сборки на Трэвисе:
- Бла - сборка 32 пройдена
- eklzjfljkze - сборка 32 не удалась
- Вернуть "eklzjfljkze" - сборка 34 не удалась
Поскольку последний коммит восстанавливает тот, который вызвал сбой, я не вижу причин, почему build 34 не должен проходить. Возможно, Трэвис кеширует что-то, но Настройки Трэвиса-> Кэширование говорят: "Кэши еще не созданы". Поскольку я использую бесплатный план для проектов с открытым исходным кодом, я не думаю, что смогу даже включить кэширование.
Из предыдущих попыток я заметил, что если я откатил ветку до проходного коммита ('Bla'), используя git push --force
Построение пройдет снова.
Все эти коммиты прекрасно работают локально, используя одинаковые версии Python и Tox.
В чем дело?
РЕДАКТИРОВАТЬ Теперь это терпит неудачу в симуляции. Сравните сборки 36 и 37. Коммит в сборке 37 только вносит изменения в README, поэтому он никак не влияет на сборку. Должен быть какой-то конфликт с Тревисом и Токсом.
1 ответ
Трэвис делает неглубокого клона, ограничивая его последними 50 коммитами. В моем setup.py
сценарий, я звоню git describe
что не получается, если в клоне нет тегов. Следовательно, проблема возникает, когда мелкий клон не содержит тегов...