Dmitry
вот да
Dmitry
я к этому уже склонялся.
Dmitry
Но вопрос возник, как сделать CI чтобы оно там тестировалось по PR?
Dmitry
при текущем раскладе это просто env/test
Dmitry
и вручную я могу запустить, подразумевая что я тестирую плейбуки и роли
Dmitry
но выходит что параметры этих сред нереально протестировать
Dmitry
а с бранчингом, в теории, можно, потому что они одни
Nklya
ну ты можешь сделать что-то типа стейджинга в другой учетке амазона, под него папочку с энвайроментом и гонять туда изменения в CI
Dmitry
но бранчинг пока все равно не работает из-за описанных нами проблем...
Dmitry
имеется в виду из одного "master" бранча, да?
Dmitry
я бы хотел чтобы один пилил фичу abc, другой фичу xyz, и для каждого свой тест шел
Dmitry
хм... ну по идее можно конечно создавать бранч на фичу, в котором и будет создаваться тестовый инвентарь
Dmitry
типа бранч change-vpc-network и оно создает свой vpc в тестовом акке
Nklya
а насколько фичи пересекаются?
Nklya
если сильно, то получается нужно 5 тестовых учеток
Dmitry
а насколько фичи пересекаются?
часто пересекаются, типа меняются роли которые деплоят шаблоны конфигов для 50 микросервисов.
Dmitry
пересечения по низкоуровневым - минимальные. vpc сеть это вообще адовая фича
Dmitry
в основном шаблон конфига приложений Elastic Beanstalk
Dmitry
Так и делают
то есть все среды из мастера + тестовая?
Tadeusz
Не, фича = бранч
Dmitry
было: env/dev/ec2.py env/prod/ec2.py стало env/dev/ec2.py env/prod/ec2.py env/change-vpc-network/ec2.py так?
Dmitry
Не, фича = бранч
да. но вопрос как инвентарь переезжает в этом случае
Dmitry
либо вообще оно автоматом должно создавать временный инвентарь с имемем бранча на каждый бранч который не dev,prod,etc...
Dmitry
типа prod-change-vpc-network будет фигачить все с ветки прод + патч в sandbox акке
Dmitry
во
Dmitry
но тогда как фича в плейбуке переплывает из dev в prod... видимо через PR из фича бранча который тестился в sandbox
Dmitry
а инвентари вообще для всех сред лежат сразу
Dmitry
и по идее, когда мы пилим новый сервис, prod инвентарь уже должен лежать в ветке dev
Dmitry
и все изменения в prod инвентаре должны тестироваться в sandbox (пока не смержены еще в prod)
Dmitry
как такой расклад?
Dmitry
😄
Tadeusz
Замудренно)
Dmitry
В понедельник нарисую схему. Спасибо 🙏🏻
Alexander
было: env/dev/ec2.py env/prod/ec2.py стало env/dev/ec2.py env/prod/ec2.py env/change-vpc-network/ec2.py так?
А почему не использовать 1 скрипт для всего? В упор не понимаю. Си меняет тэг для поиска и все - если у вас все энвы в одном аккаунте. А на крайняк напишите свой динамик инв.
Dmitry
А почему не использовать 1 скрипт для всего? В упор не понимаю. Си меняет тэг для поиска и все - если у вас все энвы в одном аккаунте. А на крайняк напишите свой динамик инв.
Ну это пример, например для параметров профиля подключения. Да и там же полно других файлов типа group_vars, с точно таким же вопросом
Dmitry
Аккаунты разные, да
Pavel
Всем привет. Подскажите, пожалуйста, можно ли только с помощью Ansible решить следующую задачу. Старт контейнера с nginx, проброс внутрь него www-папки с машины-хоста, проброс внутрь него конфига виртуальных хостов?
simplemice.eth
и на гитхабе готовые роли
Pavel
да, я ориентируюсь именно на этот модуль, но не получается. с ролями пока, к сожалению еще не разбирался, пробую натсроить плейбуки на более примитивном уровне
simplemice.eth
документации вполне хватает для освоения
simplemice.eth
Тогда придётся учить тебя пользоваться комьюнити. 1) Формулируешь задачу. 2) Спрашиваешь гугл. 3) Знакомишься со стандартными решениями. 4) Применяешь стандартное решение. 5) Наслаждаешься результатом. Если наслаждаться не получается, переходишь к следующему пункту. 6) Гуглишь выхлоп в логи о полученном результате и всё исправляешь. Если не получается - переходишь к следующему пункту. 7) Пишешь в комьюнити. "Доброе утро, для решения поставленной задачи я применил типовое решение (ссылка), но в результате получил (ссылка на пэйстбин). Нагуглив этот выхлоп я обнаружил, что данную проблему до меня решали вот таким способом (ссылка на решение), однако в моём случае это не помогло. Прошу поделиться опытом в решении этой проблемы или помочь найти способ, как можно решить мою задачу."
simplemice.eth
я принес
Pavel
Вчера вам точно эти же советы и ссылки дали
вчера меня задавили интеллектом ;)
simplemice.eth
можем повторить (ц)
Pavel
я был бы очень признателен, если бы кто-то мог попунктно мне помочь получить ответы на вопросы. в сообщество я обратился уже от безысходности =)
simplemice.eth
воспользуйтесь ей
ℭ𝔞𝔯𝔯𝔬𝔩
https://docs.ansible.com/ansible/2.5/modules/docker_container_module.html
@lautsevich, в документации есть всё необходимое для запуска контейнера и проброса папки и конфиг
Pavel
до выполнения инструкции мне бы понять, в том ли направлении я двигаюсь в принципе, т.к. мне не хватает теоретической базы в понимании Linux, Docker
simplemice.eth
в том направлении, и документация есть и инструкция... в путь
Pavel
воодушевляет
ℭ𝔞𝔯𝔯𝔬𝔩
похоже на то, только воот не получается
В ансибле: таск доставки папки, таск доставки конфига nginx
ℭ𝔞𝔯𝔯𝔬𝔩
Затем таск с запуском контейнера
Driver
воодушевляет
если просто дать тебе солюшн, ты же снова придешь с подобным вопросом
Pavel
я потому и прошу помочь в разъяснении базовых вопросов прежде, чем пытаться решить саму задачу
Pavel
но меня ведь отправляют сразу решать задачу =)
simplemice.eth
так быстрее научишься )
Pavel
ну я достаточно далеко уже продвинулся без сторонней помощи
Driver
значит ты некорректно ставишь вопрос. а базис по докеру, линуксу должен быть.
simplemice.eth
есть книги по дукеру
Driver
или идти и читать доки по одному и по второму, по фундаменту
Pavel
мы же в ИТ, да? тут самолеты строят, когда они уже в полете =)
Driver
доков на офсайте хватит с головой, чтобы контейнер запустить
simplemice.eth
это у вас
Pavel
это у вас
ну да, конечно ;)
Driver
мы же в ИТ, да? тут самолеты строят, когда они уже в полете =)
нет, давай не будем вкатываться в айти с таким подходом
Stefan
ну ты даешь, я думал ты вчера всё понял))
Sergey
этот чувак уже второй день свою "проблему" разжевывает и хочет комплексное решение не обладая кометенцией ни в одном какой ансибл с докером если он по отдельности то не может
Pavel
ребята, меньше снобизма. будьте дружелюбнее
Driver
не в снобизме дело, а в том что ты пытаешься построить комплексное решение на ничем. водить за ручку и разжевывать ни у кого нет желания
Pavel
да нет проблем
Pavel
просто мнение со стороны