bebebe
Только каждую софтину раскидывай на отдельную роль. И выложи на github. Может и кому-то еще понадобится. Советую заранее задуматься над именованием переменных, чтобы у того, у кого их 100500 не пересекались переменные
bebebe
или все роли в один репозиторий запихнем? o_O
cent
а как жи dotfiles? тут предлагали чуть не ни на каждую тулзу отдельный репозиторий
Я думал, что ему десктоп нужно постоянно разворачивать. Но я для себя не пилил ансибл роль, а просто симлинки на файлики из репы ставлю. Но при наличии времени, может быть и ansible роли наклепал бы. Ключевое слово "БЫ" )))
bebebe
ну и зачем вопросы ко мне ?
советуюсь, коммунити жи
Aleksey
чот выроде нормально же общались.
Aleksey
а тут какое то трололо началось
bebebe
значит картина выходит такая, будет один репозиторий с ролью в ней будут в files/templates лежать dotfiles которые будут темплейтится копироваться на удаленную машину находу проверяя есть ли там пейтон и доставляя необходимые пакеты
Aleksey
ага. базовый план такой.
Vadim
он из вагранта разворачивает же, думаю есть какой-то способ узнать есть ли там питон сразу
bebebe
надо будет только аккуратно пакеты ставить, надо определить есть ли там интернет, и если нет, до запихивать deb/rpm/pkg и инсталировать из файлов надо только с зависимостями не промахнуться и скачивать сразу все
Aleksey
всё так.
Aleksey
интернет или прокся
bebebe
он из вагранта разворачивает же, думаю есть какой-то способ узнать есть ли там питон сразу
Вадим, вы пропустили часть беседы, CI это только часть машин, другая - это абстрактная машина в вакууме, возможно даже solaris, на которой отсутствует интернеты, но роль их окучивать тоже должна (повзможности)
Aleksey
или остутствие того и другого
bebebe
интернет или прокся
проксю через ssh forward будете делать? или поддерживать inventory в котором описывать окружение для машин?
Vadim
проксю через ssh forward будете делать? или поддерживать inventory в котором описывать окружение для машин?
Лёша так часто меняет показания, что прощеуже вести его в желаемом русле
Aleksey
и если оно не пустое будет задействовано
cent
Я только тоже не догнал. Как может быть что-то там в CI и без интернета?
Aleksey
я ничего не меняю.
Aleksey
мой вопрос ка кбыл так и остаётся простым. я хочу бутстрапить домик. как можно в большем колве вариантов удаленных машин
bebebe
Алексей при всем моем уважении, бутстрапить домик и ставить пакеты - это несколько разные вещи
bebebe
если конечно вы не используете nixos
bebebe
Например?
вам название контор? AT&T например
Vadim
осталось выяснить чем бустрап домика отличается от копирования файлов - и так мы доберемся до возможности юзать ансибл для этого
cent
вам название контор? AT&T например
Нет. Пример того, что там можно собирать и почему туда нельзя пробросить инет?
Aleksey
из вариантов которые приходится поддерживать ubuntu/debian/rhel/centos/oel/freebsd в орукжениях ci/удаленная машина с (разовым| переодическим) доступом/инфраструктнурный сервер при наличии/отсутствии/прокси инета
Aleksey
где то при этом есть локальные репы и они прописаны и доступны. гдето нет.
bebebe
Нет. Пример того, что там можно собирать и почему туда нельзя пробросить инет?
пробросить инет - по шиткурити полисям есть специальная CI джоба, которая через всеми одобренню проксию качает пакеты и доставляет их в локальные репозитории (синк с апстримом происходит после 6 подписей усатых дядь) сам же CI собирает/билдит только из локальных репозиториев (artifactory и прочие aptly)
Aleksey
я понял что трачу на всё это дело какое то время. 3-4 минуты на всё про всё. решил автоматизировать чо
Aleksey
а получил типичное объяснение почему я не прав.
Aleksey
да. сейчас это делается через ssh-copy-id, scp ~/.zshrc но это слегка надоело и домик получается хуже чем локальный
bebebe
делайте же cat tar | ssh host tar xvf -C -
bebebe
вы потратите в разы меньше времени чем этот роль на ансбиле на ансбиле эта задача решается. да, но не ясно зачем
Aleksey
оно избавит от 2 команд из 9-10
Aleksey
ибо на том хосте надо поставить zsh. сделать его моим шелом
cent
оно избавит от 2 команд из 9-10
А остальные что делают?
Aleksey
еще поставить tmux и такое
bebebe
видимо ставят git и tmux
Vadim
roles/software1_internet, roles/software_no_interwebz_so_use_synchronize?
bebebe
откройте для себя tmuxinator - он будет каждый новый pane/window открывать на удаленной машине
Vadim
или проще даже через variable
Aleksey
ssh-copy-id при этом косячит. и копирует все ключи из агента. их приходится удалять.
Aleksey
roles/software1_internet, roles/software_no_interwebz_so_use_synchronize?
да не. нет инета забить болт.
bebebe
А чем отличается от обычного tmux?
всем, tmuxinator это оркестратор для tmux'a
cent
всем, tmuxinator это оркестратор для tmux'a
А какие основные киллер фичи?
bebebe
А какие основные киллер фичи?
вместо тысячи слов https://asciinema.org/a/W6uz52dy1nT1gy1w1ObE7BDSR
Aleksey
короче какая кастомная канитель под кастомный воркфлоу
Aleksey
спасибо что поделились
bebebe
а вас не проведешь 😉
cent
вместо тысячи слов https://asciinema.org/a/W6uz52dy1nT1gy1w1ObE7BDSR
Я чет все равно дупля не могу дать, в чем профит?
Aleksey
Я чет все равно дупля не могу дать, в чем профит?
делаем так что бы попадали кажкдый раз в нужное кастмное окружение.
Aleksey
собираем оный из ансибла
Aleksey
может быть полезно при некотором умении в тмукс и переодичности выполняемой таски
bebebe
bebebe
может быть полезно при некотором умении в тмукс и переодичности выполняемой таски
я вам ваше писал, что на каждый упавший билд, создается tmux сессия для дебага этого билда, в которую можно зайти через web браузер, очень удобно, особенно при комплексных системах (типа почему упал контролер в HA)
cent
профит в менеджменте tmux сессий
Можно конкретный пример?
Aleksey
удивительно но с мой точки зрения он выглядит как набор малосвязанных штук. наверное потому что я не нахожусь в контексте выполяемых вами задач и связанных ограничений и возможностей
Aleksey
так же как и мой кейс для вас.
bebebe
Можно конкретный пример?
в конкретном примере, при апгрейде openstack с одной версии на другую частенько падал rabbitmq в HA режиме и разъезжался ceph дебажить это было утомительно, начиная от tcpdump'ов на нужных интерфейсах (которые нужно определить), заканчивая открытию логов на трех серверах (разных) в tmuxinator'е задавался шаблон, для каждого окружения которое фейлилось в CI/CD открывалась сессия для дебага, где уже window/pane на нужные хосты были открыты и в них отображалась нужная информация
bebebe
в каждом прогоне апгрейда опенстека, ойпи адреса, название интерфейсов и прочая атрибутика были разные, и вычислять их в ручную стало утомительно примерно на второй раз
bebebe
но мы как-то далеко отошли коллеги от темы
bebebe
ну в репе на гитхабе просто примеры, это мой домашний k8s кластер, Proof of Concept так сказать
cent
ну в репе на гитхабе просто примеры, это мой домашний k8s кластер, Proof of Concept так сказать
Ну, ок. Это все понятно. А для чего сам tmuxinator ? Можно же просто дернуть tmux с атрибутами, чтобы он это все открыл
Vadim
Тогда уже shameless plug по теме чата - https://github.com/vrutkovs/ansimux
Vadim
Если не нужны все фичи тмуксинатора, например
bebebe
Ну, ок. Это все понятно. А для чего сам tmuxinator ? Можно же просто дернуть tmux с атрибутами, чтобы он это все открыл
это именно то что делает tmuxinator, из yaml описания он генерирует tmux команды когда-то я сам генерировал tmux команды, но это быстро надоедает
Aleksey
https://github.com/swfz/dotfiles