170 похожих чатов

Всем привет! Хочу при пуше в репозиторий фронтенда запускать в CI

e2e Cypress тесты. Для этого мне нужно в github actions каким-то образом запускать бекенд и базу + настроить их общение между собой. При этом хотелось бы под каждый тест иметь свежую базу, т.е. нужно еще как-то настроить её дроп (наверное)

Вопрос: может ли кто-то подсказать как мне это сделать? Может какое-то видео с инструкцией, или статья. Или я вообще неправильно понимаю то, как это должно быть.

Для справки, у меня также фронтенд и бекенд билдятся в docker image и пушатся в registry, так что бекенд я могу подтянуть в проект фронтенда через docker, по-идее. Но опять же, не знаю, так ли это вообще делается

10 ответов

31 просмотр

Может хаски? Не прокатит?

https://docs.github.com/en/actions ?

Dmytro-Svyrydenko Автор вопроса
Sergey Vladimirovich
Может хаски? Не прокатит?

По своему опыту я вывел что хаски только всех бесит Я лично привык делать коммиты не 1 на всю фичу, а последовательно. При этом бывает что могу написать кучу кода, а потом уже кучу разбиваю по коммитам. В итоге хаски на каждый коммит будет бесить. Поставить на каждый пуш – все равно будет бесить, как минимум потому что машина будет более загружена. CI в этом плане в сто раз лучше, ибо ты просто запушил и забыл, а если что-то сломается, ты получишь нотификацию

Dmytro-Svyrydenko Автор вопроса
Stanislav
https://docs.github.com/en/actions ?

Серьезно? 🙂 Спасибо, но я видел Вопрос не в «что такое CI и как его написать если репозиторий в GitHub» 🙂

Dmytro-Svyrydenko Автор вопроса
Sergey Vladimirovich
Может хаски? Не прокатит?

Ну и для хаски все равно придется делать +- то же самое, только локально 🙂 Репозитории то разные

Dmytro Svyrydenko
Ну и для хаски все равно придется делать +- то же ...

Ну вариант ведь остается вариантом. Запушил - забыл может быть чем-то хорошим, пока ты не сталкиваешься с базой куда тебе нужно что-то писать. Энивэй можно на тачку постучаться, что-то там запустить, но ты через пайплайн даешь получается рут доступ к серверу, где тебе могут говна на вентилятор накидать неучтивые студентики. И, получается, встаёт выбор - откупиться локальным тестированием и пайплайнами без рута, или же получить упавший контур.

Dmytro-Svyrydenko Автор вопроса
Sergey Vladimirovich
Ну вариант ведь остается вариантом. Запушил - забы...

Почему же, я не даю никакой доступ к серверу В пайплайне фронта я скачиваю код бекенда, устанавливаю зависимости и просто раню бекенд. Там обычный node express crud. envs прокидываю через secrets. База пустая, наполняется фикстурами под каждый тест Я правда пока что не понял как мне при каждом новом тесте опустошать базу, но мб чет и нагуглится

Dmytro-Svyrydenko Автор вопроса
Sergey Vladimirovich
Ну вариант ведь остается вариантом. Запушил - забы...

Просто я так прикинул, локально я буду делать +- тоже самое кроме скачивания бекенда. Т.е. локально все равно придется подымать бек, подымать тестовую базу, наполнять её и тд

Dmytro Svyrydenko
Почему же, я не даю никакой доступ к серверу В пай...

Да опустошение это не самая великая проблема, мягко говоря) Теперь про пайплайн Твой пайплайн коннектится к серверу и к пользователю, который имеет доступ к инфрастуктуре, иначе бы ты не смог наполнить/прочитать/удалить и т.п. из базы. Если это контур чисто для пайплайнов и у него нет доступа к инфраструктуре контуров - это прекрасно. Если нет - беда.

Dmytro Svyrydenko
По своему опыту я вывел что хаски только всех беси...

Имхо тесты в хаски запускать оверкиль, ничего больше линтер с автофиксом туда обычно не залитает

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта