one_eight_seven 6 16 сентября, 2021 Опубликовано 16 сентября, 2021 · Жалоба 1 hour ago, syoma said: Действительно для CI, тогда наверное такое не подходит, но по идее если сборка занимает больше заданного времени - ее надо тупо обрывать и говорить, что это фейл. Для ci комфортно - чтобы тесты проходили минут за 10 (не вся регрессия, разумеется). Иначе, стоит попробовать другие подходы. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
dxp 65 17 сентября, 2021 Опубликовано 17 сентября, 2021 · Жалоба У нас сборки в CI (дженкинс) используются в основном для того, чтобы убедиться, что в реп лёг правильный целостный проект, что он собирается с нуля, там всего хватает. Потому как собираемость на локальной рабочей станции разработчика не означает, что в репозиторий попадает всё, что нужно - каких-нибудь библиотек может не хватает или настроек, которые есть в локальном контексте, но не попадают в реп проекта. И если в CI собрался без ошибок, то всё гуд. Но все вопросы с функциональной целостностью, таймингами и прочим - это всё добивается самим разработчиком в своём локальном окружении. Включая и тестирование в симуляторе и железе. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
OparinVD 0 10 декабря, 2021 Опубликовано 10 декабря, 2021 · Жалоба Мы планируем на gitlab разворачиваться, но суть в другом... Предполагается концепция, что каждая сборка должна разворачиваться с чистого листа, на чистой виртуалке. Сразу возник вопрос, можно ли из 100 ГГб Витиса/Вивады вытащить нечто маленькое, что занимается непосредственно сборкой/синтезом/имплементацией. К примеру положить ./vivado и ./xsim в пакет .deb и ими прожевать весь проект. В общем отсечь всё, что нужно для gui и оставить только то, что надо для batch-mode. Это вообще возможно? Или всё делается по-другому? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
one_eight_seven 6 10 декабря, 2021 Опубликовано 10 декабря, 2021 (изменено) · Жалоба Смотря что у вас за продукт. Разворачивание с нуля делается, чтобы избежать неявных зависимостей от библиотек, переменных среды и т.п. Например, ваш продукт - это какой-нибудь сайт интернет-магазина, и совсем не нужно, чтобы система оплаты отвалилась, потому что у условного Сидорыча, который проверку делает, запускается "волшебный" скриптик, который заставляет программу работать, и этого волшебного скриптика ни у кого больше нет. Или того хуже, - каждый раз происходит головная боль с тем, чтобы настроить рабочие сервера. Если же у вас продукт другого типа, то не ясно, зачем делать это каждый раз. Более того, большие RTL проекты даже не компилируются лишний раз без нужды, и все запуски тестов делаются на одном и том же snapshot'е. Периодически, при выпуске релиза, можно, конечно, весь маршрут развернуть с нуля, но в этом случае нет нужды экономить десяток минут на развёртывание с GUI/без GUI, даже если такая возможность имеется. Изменено 10 декабря, 2021 пользователем one_eight_seven Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться