
Lev
07.04.2018
07:42:26
Если добавить темтирование этих виртуалок через testkitchen/molecula/testinfra/inspec то можно будет спать спокойней

Alexey
07.04.2018
07:44:37

Lev
07.04.2018
07:44:55
Тип того

Google

Lev
07.04.2018
07:47:57
Под капотом все банально
1 пакер стартует хттп сервер
2 стартует виртуалку
3 виртуалку бутит, что бы стянула кикстарт файл
4 отрабатывает кикстарт, подымает сеть, делает что надо
5 вм в ребуте, пришла сеть - допровижинивает как надо
6 экспортим и пакуем виртуалку
Вариантов настроек километр. Это порождает опасность ошибиться. Настойчиво рекомендую задуматься о тестирование для этого счастья

Alexey
07.04.2018
07:53:22
Понял. Спасибо всем за дискуссию! ^^
Пошёл думать, как привести всё это в тот вид, в котором оно и должно быть =)

Lev
07.04.2018
07:58:21
1 ci - jenkins/gitlab/teamcity
2 vm builds - packer ( можно nested virtualization) под каждую платформу
3 артифакторий - nexus/artifactory/s3
4 vm tests - testkitchen / molecula / testinfra
5 infrastructure provision - terraform/ nomad/ cloudfront
Ну и на каждом уровне никто не отменял своих костылей и велосипедов

Nklya
07.04.2018
07:59:49
Артифакторий))

Lev
07.04.2018
08:00:14
Чем слово не угодило Оо

Nklya
07.04.2018
08:01:15
Я люблю собирать нелепые переводы англоязычных терминов

Lev
07.04.2018
08:03:16
А как правильно перевести? Хранилище артефактов?

Nklya
07.04.2018
08:04:15
Например

Artem
07.04.2018
08:05:14
профилакторий
архивариус)

Lev
07.04.2018
08:06:14
Спишем жаргонизм и опечатки на печатание с телефона

Google

Nklya
07.04.2018
08:06:31
Это как продуктив

Lev
07.04.2018
08:08:00
Кмк катить на продуктив звучит лучше, чем катить на бой

Nklya
07.04.2018
08:20:03
продакшн

Ivan
07.04.2018
10:50:10

Nklya
07.04.2018
10:55:06
репозитарий

Roman
07.04.2018
11:02:40
Доброго дня, коллегии! Поделитесь, пожалуйста: кто как храни роли? Каждую в отдельной git-репе, а после, в проект субмодулями подключаете?

Vadim
07.04.2018
11:06:20
зачем сабмодулем, ansible-galaxy

Алексей
07.04.2018
11:06:43
нет плюсов у галакси

Vadim
07.04.2018
11:07:00
на прошлом проекте - в разных репах, на этом - всё в одном. Зависит от того, планируется ли этими ролями делиться с другими

Алексей
07.04.2018
11:07:03
имхо проект галакси не взлетел.

Vadim
07.04.2018
11:07:12

Алексей
07.04.2018
11:07:14
но вадиму как сотруднику надо продолжать пиарить

Nklya
07.04.2018
11:07:38

Vadim
07.04.2018
11:07:40

Алексей
07.04.2018
11:07:50

Vadim
07.04.2018
11:08:09
ну да, .. but $20 is $20

Алексей
07.04.2018
11:11:13
ой а где записаться в программу ? я тоже буду галакси хвалить за $20

Vladimir
07.04.2018
11:11:17

Алексей
07.04.2018
11:11:29
даже демпингану за $19.95

Stepan T.
07.04.2018
11:12:45
Пользоваться ansible-galaxy это плохо?

Google

Vadim
07.04.2018
11:13:07
"доктор сказал в морг, значит в морг"

Roman
07.04.2018
11:14:49

Nklya
07.04.2018
11:16:29
галакси в том контексте был сказан не про выкладывание в общий доступ
А про скачивание ролей из гит репозиториев с помощью ansible-galaxy
Использовать сабмодули в гите на любителя

Алексей
07.04.2018
11:19:51
команда для скачивания ролей из реп более чем норм
есть важный момент
-f

Vadim
07.04.2018
11:20:00

Алексей
07.04.2018
11:20:03
он обязателен
иначе полная херня

Vadim
07.04.2018
11:20:48
ну эт зависит от того как запускаете. Мы вообще всё ложили в отдельный контейнер, проверяли на dev instance и давали его опсам
если сработало у нас и не сработало у них - кривой контейнер. Через ~ месяц все работало как часы

Stepan T.
07.04.2018
11:34:59

Vadim
07.04.2018
11:37:15
>вы говорите про докер-контейнер?
да

Stepan T.
07.04.2018
11:39:02

Roman
07.04.2018
11:41:12
Сейчас структура проекта выглядит так
├── ansible.cfg
├── group_vars
│ ├── group1
│ └── group2
├── hosts
├── hosts_dev
├── playbooks
│ ├── group1.yaml
│ └── group2.yaml
└── roles
├── role1
├── role2
└── role3
Впринципе, удобно, что без проблем скармливается AWX
опять же, иногда бывает проблема, что при подключении git-submodule привязка идёт к опрелеленному коммиту.
т.е. периодически приходится делать обновление реп ролей

Google

Vadim
07.04.2018
11:42:49
в общем у нас был такой монструозный скрипт - https://gist.github.com/vrutkovs/0120ed4f8400d31ae695dc303699df22 - который мы, вместе с зависимостями, ложили в контейнер
оно само всё пыталось собрать, установить и прогнать тесты

Алексей
07.04.2018
12:35:52
господа а можно как то проверить что заданный порт (не?) доступен с инета ?
поясню что хочу. хочу http get c параметром port который в обратку попробует connect на адресс с которого пришел запрос и порт указанный в get и в ответ мне скажет connected/not connected

Ivan
07.04.2018
13:22:05
Чего то типа https://networkappers.com/tools/open-port-checker такого?

Alex
07.04.2018
13:22:43
или такого ?
https://help.shodan.io/the-basics/on-demand-scanning

Алексей
07.04.2018
13:28:22

Alex
07.04.2018
13:29:32
тогда самому сервис поднимать
там делов-то всего ничего

Ivan
07.04.2018
13:30:24
У меня был похожий кейс, но я с подконтрольной машины решал.

Mike
07.04.2018
16:39:15
привет всем, может кто подскажет как правильно разобрать стрингу из переменной и поменять нужные символы, пробовал через sed но там много кавычек и еще надо передать как-то "{{item}}" на что ансибл сказал юзать lineinfile, но lineinfile не может поменять просто стринг, только в файле насколько я знаю

Алексей
07.04.2018
16:39:58
combine

Mike
07.04.2018
16:40:01
а точнее кейс просто такой, что от API получают путь к файлам но он виндовый и надо просто sed "s%\\\%/%g". ему сделать

Алексей
07.04.2018
16:42:04
может просто {{ blabla| replace("a","b") }}
желание постебатся сильнее желания помочь ? ну ну

Mike
07.04.2018
16:46:22
Aleksey, спасибо, попробую через replace

Stepan T.
07.04.2018
16:46:23
Никакого стёба.

Алексей
07.04.2018
16:47:03
но это должно быть привычно парням имющим дело в windows

Google

Mike
07.04.2018
16:48:03
ага, я почему то наивно думал что вставлю просто шелл команду с sed и забуду)

Алексей
07.04.2018
16:49:38
https://stackoverflow.com/questions/33162552/how-to-extend-windows-path-variable-using-ansible
может так ?

Mike
07.04.2018
16:51:29
Stepan, наверное я неккоретно вначале написал, все-таки мне не разобрать стринг, а просто сделать replace

Stepan T.
07.04.2018
16:55:55

Mike
07.04.2018
17:00:35
похоже на то, чекну, спасибо

Stannis
08.04.2018
06:25:04
Поцоны, это кошерный путь запускать так для другой роли?
- name: update haproxy frontend
delegate_to: "{{ item }}"
delegate_facts: no
vars:
hosts_content: "{{ lookup('template', 'templates/mysql_front.j2') }}"
lvs_bind_ip: "{{hostvars[item]['ansible_default_ipv4']['address']}}"
blockinfile:
path: /etc/haproxy/haproxy.cfg
insertafter: "# Frontend section ---------------------------------------------------"
marker: "# {mark} mysql frontend for {{ group_names[0] }}"
content: "{{hosts_content}}"
state: present
run_once: true
with_items:
- "{{ groups.lvs}}"


Danila
08.04.2018
08:12:51
посоны, я на измену тут подсел с этим ансиблом
разворачиваю стенд плейбуком с ролью, короче, всё ок, но в конце приходит нотификация, в которой название стенда обьявлено в дефолтах. и, короче, там не оно, а вообще название стенда, который делал я неделю назад. перерыл всю папку роли и весь плейбук, такого слова нет нигде вообще, и стенд назвался так же, как и в нотификации. собсно, вопрос, к какому врачу идти, к офтальмологу или к психиатру?

?simplemice
08.04.2018
08:16:40
думаю что сначала к глазнику, может быть гдето переменную незаметил

Danila
08.04.2018
08:19:03
блять, он этим словом везде обьявил, теперь надо пофиксить пару конфиговвпридачу

?simplemice
08.04.2018
08:20:19
о_О

Vladimir
08.04.2018
08:20:21
set_fact... ?!

Danila
08.04.2018
08:21:05
це ж не факт
просто в дефолтах есть
app: demo
например