Нам нужен общий сценарий CI для запуска всех тестов CI, поэтому, если есть незначительные изменения или добавляется / удаляется новая проверка, нам не нужно обновлять все репозитории с незначительными изменениями.
Подробнее: https://github.com/openwisp/openwisp-utils/pull/37#issuecomment -461733269
Это все сценарии, которые нужно запускать?
checkcommit
runcheckendline
runcheckmigration
runflake8
runisort
Однако некоторые из этих проверок применимы не ко всем репозиториям, как бы вы это разрешили?
Например, runcheckmigration
самом деле не будет применяться в openwisp-website
, но checkcommit
и runcheckendline
все равно должны выполняться.
@dwang Я думаю о переменной командной строки, по умолчанию все задачи будут выполняться,
Однако, если я хочу избежать runcheckmigration
, я могу просто сделать --no-runcheckmigration
чтобы избежать запуска этого сценария, что вы думаете об этом? :улыбка:
Звучит неплохо!
@ atb00ker, это здорово! ты работаешь над этим?
Нет. В настоящее время я не работаю над этим. :улыбка:
хорошо, я работаю над этим сейчас
@ atb00ker, в каком порядке должны запускаться скрипты?
Я вижу, что checkcommit
и runcheckendline
должны запускаться при каждом репо.
Итак, я возьму максимум 3 аргумента.
Тесты не зависят друг от друга, поэтому порядок не имеет значения.
Вы можете проверить файл .travis.yml
в каждом репозитории, чтобы проверить, какие тесты выполняются в этом конкретном репозитории.
Оформить заказ так же для следующих репозиториев:
- django-ipam
- openwisp-ipam
- django-freeradius
- openwisp-freeradius
- openwisp-users
- openwisp-utils
- openwisp-config
- openwisp-controller
- django-loci
- django-netjsonconfig
- django-x509
@ atb00ker Я вижу, что файл .travis.yml в каждом репозитории разделен на 3 части
./runflake8
, ./runisort
, ./runcheckmigration
т. д.checkcommit
и вызывается специфичный для репозитория тест, т.е. jshint, ./runtest, coverage
т. д.pip install openwisp-utils[qa]>=0.2.1
в openwisp-configpip install https://github.com/openwisp/openwisp-utils/tarball/master
на OpenWISP-сайтеpip install https://github.com/openwisp/openwisp-utils/tarball/master#egg=openwisp_utils --upgrade
в openwisp-userspip install -U https://github.com/openwisp/openwisp-utils/tarball/master
в django-freeradiuspip install --user https://github.com/openwisp/openwisp-utils/tarball/master
в ansible-openwispу некоторых есть строка в requirements-test.txt, а также копия тестовых файлов, присутствующих в репозитории, я думаю включить команду установки для openwisp-utils
несколько проблем:
пожалуйста, дайте мне знать ваше мнение по этому поводу :)
@ ankit-kumar-dwivedi не запускает сценарии "before_install" в разделе "сценарии". Вот я пытаюсь объяснить, почему (исправление приветствуется) -
Выполнение некоторых сценариев до того, как может потребоваться для правильного запуска основных сценариев.
& Если какой-либо сценарий "before_script" или "after_script" не работает, это не влияет на общий "статус" сборки.
«Например, runcheckmigration на самом деле не применима к openwisp-website, но checkcommit и runcheckendline все равно должны выполняться».
Я думаю, нам нужно добавить переменную для исключения репозитория. @ригель
@ ankit-kumar-dwivedi
Закрыл # 45