Comments 9
Спасибо за отзыв.
Небольшой комментарий, почему для своей задачи я выбрал не одну большую конфигурацию, а несколько более мелких: для виртуальных машин и для selenoid. Есть две проблемы:
1) При пересоздании виртуальной машины в vSphere требуется время, чтобы новый ip попал в DNS.
Допустим, я хочу обновить докер на виртуальной машине. Подготовил новый шаблон. При пересоздании виртуальной машины с сохранением hostname в vSphere требуется время, чтобы новый ip попал в DNS. Пока этого не произойдет, terraform не может пойти в docker на машине по hostname и создать selenoid-инфраструктуру. Скорее всего, эту проблему можно решить, но с приложением усилий специалистов по нашим сетям.
2) Не хочется выполнять апгрейд кластера с даунтаймом. Вроде «сегодня с 2 до 3 ночи браузеры для тестов будут недоступны».
Поэтому я убираю нагрузку с половины selenoid, обновляю их, возвращаю в кластер, выводя вторую половину. После чего завершаю обновление и получаю полностью обновленный кластер. Ни один идущий тест при этом не пострадает. Если допустить даунтайм, то ничего не мешает поместить все selenoid в одну terraform-конфигурацию и один раз сделать
В итоге, если решить проблему с DNS и допустить даунтайм, то получится одна terraform-конфигурация, и обновление инфраструктуры будет выполняться одним
Небольшой комментарий, почему для своей задачи я выбрал не одну большую конфигурацию, а несколько более мелких: для виртуальных машин и для selenoid. Есть две проблемы:
1) При пересоздании виртуальной машины в vSphere требуется время, чтобы новый ip попал в DNS.
Допустим, я хочу обновить докер на виртуальной машине. Подготовил новый шаблон. При пересоздании виртуальной машины с сохранением hostname в vSphere требуется время, чтобы новый ip попал в DNS. Пока этого не произойдет, terraform не может пойти в docker на машине по hostname и создать selenoid-инфраструктуру. Скорее всего, эту проблему можно решить, но с приложением усилий специалистов по нашим сетям.
2) Не хочется выполнять апгрейд кластера с даунтаймом. Вроде «сегодня с 2 до 3 ночи браузеры для тестов будут недоступны».
Поэтому я убираю нагрузку с половины selenoid, обновляю их, возвращаю в кластер, выводя вторую половину. После чего завершаю обновление и получаю полностью обновленный кластер. Ни один идущий тест при этом не пострадает. Если допустить даунтайм, то ничего не мешает поместить все selenoid в одну terraform-конфигурацию и один раз сделать
terraform apply
, обновляя весь кластер разом.В итоге, если решить проблему с DNS и допустить даунтайм, то получится одна terraform-конфигурация, и обновление инфраструктуры будет выполняться одним
terraform apply
. Но даунтайм иметь не хочется. +1
Понятно! Каждый случай диктует свои ограничения. Просто, раз уж там всё в докерах, я бы, например, попытался Terraform-ом поднимать машину, ставя на неё докер и присоединяя к Swarm, а потом использовать Swarm rolling update. Впрочем, советы давать как сделать лучше — это не мешки ворочать))
Спасибо большое за доклад, имхо больше народу должны знать про Terraform и использовать его в повседневной работе!
Спасибо большое за доклад, имхо больше народу должны знать про Terraform и использовать его в повседневной работе!
0
Спасибо за обзор!
Маленькая поправка: Mountebank написан на NodeJS, а не на Python'e. На python'e наш автотестовый фреймворк, поэтому и примеры были на нём.
Маленькая поправка: Mountebank написан на NodeJS, а не на Python'e. На python'e наш автотестовый фреймворк, поэтому и примеры были на нём.
0
А вроде в Идейке и так есть миграция с JUnit4 на JUnit5. Смотрите прошлогодний блогпост, например: https://blog.jetbrains.com/idea/2017/11/intellij-idea-2017-3-junit-support/
Интересно, зачем потребовалось для этого свой плагин писать.
0
Интересно, как ею воспользоваться? 2018.2 Ultimate. Взял проект с Junit4. Не показывает квикфикс над тестовым классом. ОК, затянул в Мавен всю историю с JUnit5. Не показывает квикфикс )))
0
Он вроде выключен по дефолту. Попробуй включить:
+2
Тагир, да! оно работает!!!
Вопрос к Артёму, переход JUnit4->JUnit5 был заявлен как один из вариантов использования даже в описании доклада. Наверное, Артёму всё же по ходу нужно было конвертировать хитрые аннотации Allure. А может быть, он (как и я) не знал о том, что такая инспекция вообще есть и её можно включить )))
Вопрос к Артёму, переход JUnit4->JUnit5 был заявлен как один из вариантов использования даже в описании доклада. Наверное, Артёму всё же по ходу нужно было конвертировать хитрые аннотации Allure. А может быть, он (как и я) не знал о том, что такая инспекция вообще есть и её можно включить )))
+1
Sign up to leave a comment.
Devops, JUnit5 и тестирование микросервисов: субъективный взгляд на московский “Гейзенбаг”