Size: a a a

ansible — русскоговорящее сообщество

2020 January 10

GF

Gordon Freeman in ansible — русскоговорящее сообщество
Max Gerbershagen
В ансибле не эксперт, но из вывода видно, что питон ищет исполняемый файл ансибла в /usr/lib/python3, а при попытке использовать ansible из терминала баш ищет исполняемый файл в /usr/bin. Не может ли это быть потому что Вы установили ансибл через pip, а не через условно говоря "системный пакетный менеджер" (apt, yum, pacman). В любом случае, стоит использовать либо одно, либо другое, т.к использование разных пакетников вместе приводит к сложностям
прбовал по разному, но результат пока что неизменный, ос - дебиан
источник

GF

Gordon Freeman in ansible — русскоговорящее сообщество
Python 3.7.5 (default, Oct 27 2019, 15:43:29) 
[GCC 9.2.1 20191022] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
>>> sys.patch
Traceback (most recent call last):
 File "<stdin>", line 1, in <module>
AttributeError: module 'sys' has no attribute 'patch'
>>> sys.path
['', '/usr/lib/python37.zip', '/usr/lib/python3.7', '/usr/lib/python3.7/lib-dynload', '/usr/local/lib/python3.7/dist-packages', '/usr/lib/python3/dist-packages', '/usr/lib/python3.7/dist-packages']
источник

КС

Константин Сергеевич in ansible — русскоговорящее сообщество
Gordon Freeman
Python 3.7.5 (default, Oct 27 2019, 15:43:29) 
[GCC 9.2.1 20191022] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
>>> sys.patch
Traceback (most recent call last):
 File "<stdin>", line 1, in <module>
AttributeError: module 'sys' has no attribute 'patch'
>>> sys.path
['', '/usr/lib/python37.zip', '/usr/lib/python3.7', '/usr/lib/python3.7/lib-dynload', '/usr/local/lib/python3.7/dist-packages', '/usr/lib/python3/dist-packages', '/usr/lib/python3.7/dist-packages']
Если мне память не изменяет, Ансибл ишет по пути /тук/тук/тук/python при использовании 3 питона он его там не находит...
возможно это поможет выбрать правильное направление поиска.
https://docs.ansible.com/ansible/latest/reference_appendices/python_3_support.html
источник

GF

Gordon Freeman in ansible — русскоговорящее сообщество
Константин Сергеевич
Если мне память не изменяет, Ансибл ишет по пути /тук/тук/тук/python при использовании 3 питона он его там не находит...
возможно это поможет выбрать правильное направление поиска.
https://docs.ansible.com/ansible/latest/reference_appendices/python_3_support.html
Спсибо, сейчас попробовал из исходников установить, через баш скрипт, работает, но не знаю ещё насколько это был верный способ
источник

КС

Константин Сергеевич in ansible — русскоговорящее сообщество
По моему вопросу. Проблемма в том что в loop'e выполнялись мгновено, и соседний сервер не успевал спросить условие , и оно было верным, но дальше пока доходил до оператора оно уже менялось =)))
Решил вставивь такой костылик перед  shell вызовом. sleep $(shuf -i 2-5 -n 1)
источник

КС

Константин Сергеевич in ansible — русскоговорящее сообщество
Gordon Freeman
Спсибо, сейчас попробовал из исходников установить, через баш скрипт, работает, но не знаю ещё насколько это был верный способ
учти, то такой глюк только на дебиан и дебин подобных системах (убунту и прочие) В РХЛ по умолчанию линк python ссылается на корректный python... По этому если на обработке солянка из ОСей, нужно обрабатывать вызов python по разному.
источник

GF

Gordon Freeman in ansible — русскоговорящее сообщество
Константин Сергеевич
учти, то такой глюк только на дебиан и дебин подобных системах (убунту и прочие) В РХЛ по умолчанию линк python ссылается на корректный python... По этому если на обработке солянка из ОСей, нужно обрабатывать вызов python по разному.
спасибо, постараюсь учесть, пока искал натыкался на множество похожих issue с питоном
источник
2020 January 14

p

prazdnichkov kirill in ansible — русскоговорящее сообщество
.
источник
2020 January 15

Г

Григорий in ansible — русскоговорящее сообщество
Привет
подскажите, пожалуйста
у меня есть вот такие данные
vars:
 test:
  - test1:
      test_data: data1
  - test2:
      test_data: data2
я могу как-то пройти циклом по ним, не выкидывая test1 и test2?
источник

Г

Григорий in ansible — русскоговорящее сообщество
Те в цикле подменить test1 и test2 на item
источник

BS

Boris 🦍 Shestov in ansible — русскоговорящее сообщество
Григорий
Привет
подскажите, пожалуйста
у меня есть вот такие данные
vars:
 test:
  - test1:
      test_data: data1
  - test2:
      test_data: data2
я могу как-то пройти циклом по ним, не выкидывая test1 и test2?
 your_action: "{{ item }}"
with_items: {{ test }}

не ?
источник

Г

Григорий in ansible — русскоговорящее сообщество
В айтеме будет
test1:
 test_data
А не просто test_data
источник

Г

Григорий in ansible — русскоговорящее сообщество
нашел решение
vars:
 test:
   test1:
      test_data: data1
   test2:
      test_data: data2

tasks:
 - name: iterate over dict
   action: "{{item.value}}"
   with_items: {{test | dict2items}}
источник

КС

Константин Сергеевич in ansible — русскоговорящее сообщество
Григорий
нашел решение
vars:
 test:
   test1:
      test_data: data1
   test2:
      test_data: data2

tasks:
 - name: iterate over dict
   action: "{{item.value}}"
   with_items: {{test | dict2items}}
value - зарезервированное имя которое принимает любые значения?
источник

Г

Григорий in ansible — русскоговорящее сообщество
я не знаю точно, как это выглядит, но примерно так:
dict: {test:{test1:{test_data:data1}, test2:{test_data:data2}}}
dict2items: [({key:test1}, {value:{test_data:data1}),({key:test2}, {value:{test_data:data2})] и луп идет по этому массиву
источник

O

O in ansible — русскоговорящее сообщество
не подскажете как исключить .ssh и .ansible из find?
источник

O

O in ansible — русскоговорящее сообщество
это не работает
find:
   paths: "/home/{{ current.user }}"
   patterns: '^((?!ansible|ssh).)*$'
   excludes:
     - '*ssh*'
     - '*ansible*'
   recurse: True
   use_regex: True
 register: files_to_cleanup
источник

O

O in ansible — русскоговорящее сообщество
это тоже
find:
   paths: "/home/{{ current.user }}"
   patterns: '.*'
   excludes:
     - '.*ssh.*'
     - '.*ansible.*'
   recurse: True
   use_regex: True
 register: files_to_cleanup
источник

O

O in ansible — русскоговорящее сообщество
хочу удалить ВСЕ кроме директорией .ssh и .ansible
источник

O

O in ansible — русскоговорящее сообщество
Григорий
Привет
подскажите, пожалуйста
у меня есть вот такие данные
vars:
 test:
  - test1:
      test_data: data1
  - test2:
      test_data: data2
я могу как-то пройти циклом по ним, не выкидывая test1 и test2?
можно через select
источник