Size: a a a

2019 November 29

GG

George Gaál in DevOps
Igor
Ребят, а насколько нормально запускать постгрес в докерфайле для тестов перед сборкой? Я совсем конченый или надежда еще есть?))

RUN apt-get update && apt-get install -y --no-install-recommends postgresql-11
RUN chown -R postgres:postgres /var/lib/postgresql/ && chmod -R u=rwX,go= /var/lib/postgresql
USER postgres
RUN   service postgresql start && \
     service postgresql status && \
     psql -c "ALTER USER postgres PASSWORD 'postgres';" && \
     psql -c "ALTER DATABASE postgres SET TIMEZONE TO 'UTC';" && \
     service postgresql stop
USER root
COPY . .
RUN service postgresql start && GOOS=linux GOARCH=amd64 go test -v ./...
конченый. полностью
источник

GG

George Gaál in DevOps
kSandr
Для проведения тестов , у тебя должен быть написан нормальный пайплайн в gitlab-ci ,jenkins ,любой другой ci системе , а не вот это вот все дрочево
+
источник

C

Combot in DevOps
George Gaál (5.96) увеличил репутацию kSandr (2.05) (+1.05)
источник

I

Igor in DevOps
kSandr
Для проведения тестов , у тебя должен быть написан нормальный пайплайн в gitlab-ci ,jenkins ,любой другой ci системе , а не вот это вот все дрочево
Каких тестов? любых? для локальной разработки мне каждый раз завершения пайплайна ждать?
источник

I

Igor in DevOps
да ну его нахер
источник

k

kSandr in DevOps
И вообще мне всегда казалось, что юнит тесты должны уметь работать без сторонних сервисов, а это уже какое-то интеграционное пошло тестирование
источник

k

kSandr in DevOps
Igor
да ну его нахер
классический разраб ...
источник

I

Igor in DevOps
kSandr
И вообще мне всегда казалось, что юнит тесты должны уметь работать без сторонних сервисов, а это уже какое-то интеграционное пошло тестирование
А если всё, что делает приложение - это запросы к базе? Как тут без нее?
источник

k

kSandr in DevOps
мок мок мок
источник

I

Igor in DevOps
kSandr
мок мок мок
не. это херня - мокать весь функционал
источник

k

kSandr in DevOps
никто тебе не мешает написать обертку в которой будут сперва проходить твои тесты, а потом билдиться уже контенер
источник

k

kSandr in DevOps
если не хочешь ждать завершения пайплайнов
источник

k

kSandr in DevOps
или отдельно скрипт который гоняет тесты, или ты каждый раз когда хочешь протестить, билдишь контейнер ?
источник

I

Igor in DevOps
билжу - это недолго: в докере все слои закэшированы. В том числе с инитом базы
источник
2019 November 30

GG

George Gaál in DevOps
можно сделать баш. В нем инстанцируешь контейнер с постгресом, отдельно - контейнер с тестами
источник

GG

George Gaál in DevOps
все счастливы
источник

k

kSandr in DevOps
George Gaál
можно сделать баш. В нем инстанцируешь контейнер с постгресом, отдельно - контейнер с тестами
+
источник

I

Igor in DevOps
George Gaál
все счастливы
Да я как бы и сейчас не горюю. Просто реально - а какие минусы у такого решения? Только что вы дали обходные решения, но не назвали проблемы моего.
источник

GG

George Gaál in DevOps
ты зачем-то собираешь кривой образ с постгресом, когда можно взять готовый
источник

GG

George Gaál in DevOps
вторая история - докеры это не про МНОГО сервисов в одном контейнере
источник