@pro_ansible

Страница 130 из 625
Oleg
23.12.2016
06:52:03
shell - проверка доступных апдейтов | grep нужный пакет

дальше проверить вхождение в подстроку - если есть, то писать сообщение

Yuri
23.12.2016
06:58:38
Так в документации официальной же есть...

- shell: echo "motd contains the word hi" when: motd_contents.stdout.find('hi') != -1

Google
Oleg
23.12.2016
06:59:38
О! Точно! Сенкс

Несколько условия when как правильно запи сать?

when: - first - second

?

Павел
23.12.2016
07:03:01
when: first is defined and second is undefined

Скобки по вкусу

Никита
23.12.2016
07:06:14
Всем привет, кто-то тестил модуль ios_config на cisco?

Oleg
23.12.2016
07:06:52
- shell: echo "motd contains the word hi" when: motd_contents.stdout.find('hi') != -1
Есть линк на это? не найду что-то

Yuri
23.12.2016
07:07:37
Или or и and

Алексей
23.12.2016
07:08:33
есть какая то специальная причина почему нельзя эти вопросы задавть в гугл ?

верхние две ссылки гугла про ансибл почти всегда содердат праивльный ответ

Google
Алексей
23.12.2016
07:10:55
@cadmi а ты уже запилил rude_ansible ?

Dmitry
23.12.2016
07:11:24
@cadmi а ты уже запилил rude_ansible ?
нет, тут же нормальные админы, не такие истерички, как в питоне :)

Yuri
23.12.2016
07:13:31
Есть линк на это? не найду что-то
http://docs.ansible.com/ansible/playbooks_conditionals.html

Yuriy
23.12.2016
14:05:22
Привет. А кто-нибудь можно подсказать, вот есть у меня два списка: один [{'path':'/tmp/'}, {'path:'/tmp1/'}, {'path':'/tmp3/'}], второй ['item10', 'item20', 'item30']. Нужно создать диры виды '/tmp/item10', '/tmp1/item20', '/tmp3/item30'. Вот как с помощью цикла это задать? Как луп в таком случае задавать?

То есть как бы первый элемент каждого списка с первым конкатенировать, второй со вторым и т.д.

Anatoly
23.12.2016
14:07:30
У тебя первое список дикшинари. Выглядит так

В каждом дикшинари один и тот же ключ

Почему не иметь один ключ со списком значений?

Yuriy
23.12.2016
14:11:34
потому что модуль find возвращает в таком виде: [{'path': '/var/tmp/test1', 'mode': '0644', '...': '...', 'checksum': '16fac7be61a6e4591a33ef4b729c5c3302307523'},

то есть мне нужно с помощью find найти все диры. И в каждой дире создать по одной дире из другого списка.

Можно как-нибудь так придумать?

Anatoly
23.12.2016
14:31:30
Можно. Проходишь по массиву для каждого дикта берешь вэлью по ключу добавляешь айтем из второго массива и пишешь во второй дикт. Но если я не ошибаюсь то в ансибл дикты все еще не ордеред.

Так что получится может черте что

Yuriy
23.12.2016
14:33:04
а проще никак не сделать?

A
23.12.2016
14:34:40
извините за оффтоп, но дайте ссылку на тот проект который чистяков начал пилить?

Yuriy
23.12.2016
14:36:06
with_magic: - dict1 - dict2
походу у меня версия ansible старая. Нет такого лупа. Но спасибо!

Google
A
23.12.2016
14:36:32
там пусто...
а, ну тогда норм. я просто хотел посмотреть, может хоть код появился.

Алексей
23.12.2016
14:36:54
походу у меня версия ansible старая. Нет такого лупа. Но спасибо!
тогда в начеле плейбука надо добавить future_features: now

Yuriy
23.12.2016
14:47:52
Алексей
23.12.2016
14:48:02
велкам.

Yuriy
23.12.2016
14:52:31
Max
23.12.2016
14:52:37
Нет)

mitya
24.12.2016
21:20:54
крч у меня кент в цирке работал, жонглировал там, так вот он там научился жонглировать костылями один костыль однажды упал ему на голову, его настигло откровение свыше, открылся новый дар в общем из цирка он уволился, щас на конфигах прогает

Danila
24.12.2016
21:21:14
Костылями?

mitya
24.12.2016
21:22:02
Костылями?
ну да, они шарами, булавами жонглируют

а он костыли юзал, потому-что ими сложнее

James
25.12.2016
10:29:18
всем привет

James
25.12.2016
10:29:24
подскажите по ансиблу

ansible-playbook web.yml -u username -K -i production when ansible tried to create a user in postgres it fails FAILED! => { "changed": false, "failed": true, "invocation": { "module_name": "postgresql_user" }, "module_stderr": "su: must be run from a terminal\n", "module_stdout": "", "msg": "MODULE FAILURE" }

че ему надо?

Albert
25.12.2016
10:32:18
Версия?

James
25.12.2016
10:36:16
2 0 0

Alex
25.12.2016
10:43:57
Погляди, Шелл у юзверя есть?

James
25.12.2016
10:44:15
jr

ok

Google
Никита
25.12.2016
13:14:37
Коллеги, тоже вопрос на 2.3.0 (и на 2.2.0) тоже при попытке юзать ios_config или ios_command зачем-то хочет открыть sftp сессию (если юзать paramiko) или scp (если openssh) - не сталкивались с таким? зачем это и как решить?

Если делать paramiko - failed to open a SFTP connection (SSH session not active), если open-ssh failed to transfer file to \"` echo ~/.ansible/tmp/ansible-tmp-1482670498.86-149040577256692 `\" ) && sleep 0'\"/ios_command.py:\n\nlost connection\n

Magistr
25.12.2016
13:37:16
а как ты хочешь чтобы ансибл законектился туда ?

Никита
25.12.2016
13:38:06
Ssh

Зачем ему еще что-то?

Ну и вообще странно, что paramiko в сетевом модуле для cisco пытается открыть sftp, при том что он заведомо в ios не поддерживается

Никита
25.12.2016
13:53:45
Это есть, и когда openssh юзается - он реально пытается по scp зайти

Admin
ERROR: S client not available

Никита
25.12.2016
13:54:25
С таким результатом: R2# *Dec 25 13:54:11.315: SCP: [22 -> 10.255.1.1:55718] send <OK> *Dec 25 13:54:11.316: SCP: [22 <- 10.255.1.1:55718] recv C0600 94210 tmpivudqE *Dec 25 13:54:11.316: SCP: [22 -> 10.255.1.1:55718] send <OK> *Dec 25 13:54:11.317: SCP: [22 -> 10.255.1.1:55718] send Not able to open file *Dec 25 13:54:11.317: SCP: [22 -> 10.255.1.1:55718] send Write failed

и складывается ощущение, что он пытается линуксовую команду в cisco плюнуть, а она ее, естественно, не понимает

Вот поэтому: debug1: Sending command: scp -v -t '\"` echo ~/.ansible/tmp/ansible-tmp-1482663078.93-159510420409123 `\" ) && sleep 0'\"'\"'\"/ios_config.py'

Anatoly
25.12.2016
14:00:12
https://duckduckgo.com/?q=cisco%20ios%20scp

Настрой свою циску правильно

Как еще ансибл свое авно передавать то будет иначе то никак

Нужен ссх и сцп бай дефолт

Никита
25.12.2016
14:01:44
! AAA authentication and authorization must be configured properly in order for SCP to work. aaa new-model aaa authentication login default local aaa authorization exec default local username user1 privilege 15 password 0 lab ! SSH must be configured and functioning properly. ip scp server enable Это есть

без aaa аналогично

Sergey
25.12.2016
16:19:57
Привет всем! А можете подсказать, connection: local за что отвечает?

Тима
25.12.2016
17:00:13
Привет всем! А можете подсказать, connection: local за что отвечает?
Тут не никого) ушли провожать старый год?

Google
Тима
25.12.2016
17:03:28
Sergey
25.12.2016
17:04:33
спасибо) Уже нашел описание, просто все время смущает, что при конфигурировании сетевых всяких устройств всегда его ставят. Правильно ли я понимаю, что если его не ставить, то плейбук улетает на конечную станцию и там локально его питон выполняет? А если ставить connection:local, то он выполнится уже на самой инициирующей машине?

типа как -m raw

Тима
25.12.2016
17:06:00
Не смущайся, пробуй)

И все получится!

Sergey
25.12.2016
17:06:18
да вот как раз разбираемся тут, и у нас и так и так не пашет) пытаюемся понять суть)

Никита
25.12.2016
17:07:12
2 примерно)

Тима
25.12.2016
17:07:27
Боярышником запаслись?)

Sergey
25.12.2016
17:08:20
скоро надо будет))

Roman
25.12.2016
17:17:40
у вас проблема может быть в том, что в ваших плейбуках не определен транспорт. попробуйте с самым простым вариантом cli vars: cli: host: "{{ inventory_hostname }}" username: cisco password: cisco transport: cli - name: configure top level configuration ios_config: lines: hostname {{ inventory_hostname }} provider: "{{ cli }}"

Sergey
25.12.2016
17:20:14
пробовали

пробуем уже к тому же ios_command

банально fatal: [br-ekb2]: FAILED! => {"changed": false, "failed": true, "msg": "failed to connect to br-ekb2:22"}

хотя пароль стопроцентно верный

Roman
25.12.2016
17:21:50
так а на ансибл хосте данное имя br-ekb2 должно же быть разрезолвлено

с ансибл хоста работает ping br-ekb2?

Никита
25.12.2016
17:23:20
круто, походу помогло)

спасибо тебе большое :)

Roman
25.12.2016
17:24:13
не за что

Страница 130 из 625