Gunnery
where is them keeps it?
Timur
Gunnery
это фантазия от безидейности
Timur
Чего вы хотите добиться этой конструкцией?
Gunnery
очистить кеш и инфу от прежних плеев
Jungo
скажите пож-та
failed: [backup-collector] (item={'value': {'path': '/var/lib/sql'}, 'key': 'mysql'}) => changed=false
ansible_loop_var: item
item:
key: mysql
value:
path: /var/lib/sql
msg: 'ValueError: too many values to unpack (expected 2)'
я правильно понимаю что template плагину нужен список - а в моему случае он получил словарь?
Timur
Gunnery
да если бы я сам понимал что произошло и что происходит
Timur
Gunnery
роль пытается выполнить один из тасков на ансибл-контроллере, при том, что delegate_to группа, в которую контроллер не входит
я связываю это с тем, что выполнил ad-hoc команду, но не с этой ролью, а со скриптом, и не к контроллеру
Gunnery
один из первых тасков в плейбуке к контроллеру, но еще до обеда у меня не было нынешней проблемы
Grek 🇺🇦
Jungo
вроде как он ожидает
key: mysql
value: /var/lib/sql
?
- name: set burp client custom configuration
template:
src: burp.conf.j2
dest: "{{ burp_client_dir }}/{{ ansible_nodename }}-{{ item.key }}.conf"
loop: "{{ lookup('dict', burp_client_custom_plan, wantlist=True) }}"
таска такая
я думаю ему нужен список
Jungo
Jungo
вроде как он ожидает
key: mysql
value: /var/lib/sql
?
failed: [backup-collector] (item={'key': 'psql', 'value': '/var/lib/psql'}) => changed=false
ansible_loop_var: item
item:
key: psql
value: /var/lib/psql
msg: 'ValueError: too many values to unpack (expected 2)'
Jungo
неа не так
Timur
Gunnery
Ivan
привет!
А все же видели, что в 2.7 apt/pip/etc with_items -> loop, а в 2.11 станет просто все пакеты в одном name: ['pip', 'setuptools', 'pbr'] .
Как жить-то теперь? У меня есть допустим переменная, в которой это всё в построчном списке, что посоветуете?
Ivan
делать ей split?
Ivan
делать в виде
name:
- pip
- setuptools
- etc..
не вариант, они приходят снаружи, например из файла или stdin
Jungo
ребята всем спасибо! поборол основной функционал роли с генерацией конфигов бэкапа
если бы не ваши отказы в помощи за деньги и ссылки на документацию я бы не справился)
Sergei
Не понимаю как гуглить и где искать информацию...
Задача: одна машина со внешним IP и несколько других с локальным IP, к которым можно подключиться через основную машину.
Как запускать/настроить inventory, чтобы можно было все это запустить с локального компа?
Или можно только если загрузить таски на ту основную машину и на нём все запустить?
Tadeusz
бастион? ssh args
Gleb
George
Sergei
Супер! Спасибо всем большое, буду пробовать!
Sergei
Благодаря вам нашел рекомендацию
https://docs.ansible.com/ansible/latest/reference_appendices/faq.html#how-do-i-configure-a-jump-host-to-access-servers-that-i-have-no-direct-access-to
То же самое, но чуть по другому.
Гайрат
Ivan
Приходят из файла это как?
requirements.txt например, но его нет, то есть я не могу написать
requirements: "file.txt"
потому что список пакетов для установки я получаю на выходе скрипта
Ivan
вопрос был скорее в духе, как теперь жить, если список пакетов динамичный или из переменной
Ivan
выбрал первый и третий, спасибо
Ivan
буду держать в курсе
Jungo
а идемпотентый рандом бывает?
Jungo
так сказать девственный рандом) поначалу рандом а после первого раза уже нерандом)
Gleb
ты хочешь хэш?
Gleb
https://docs.ansible.com/ansible/latest/user_guide/playbooks_filters.html#hashing-filters
Jungo
minute: "{{ 60 | random }}" хочу чтобы фиксировался при последующих запусках плейбука
Sebor▂▅▇█▓▒░
Sebor▂▅▇█▓▒░
Если хост не меняется, то и значение не поменяется
Yury
Jungo
Ага и как результаты выборов
Anton
Господа, как соорудить подобную конструкцию не подскажете? Данная не работает
---
- hosts: swarm_manager
become: true
tasks:
- name: Install requirements packages
dnf:
name:
- python3-docker
state: present
- name: Init a new swarm with default parameters
docker_swarm:
state: present
register: result
- name: Return worker token
debug:
var: result.swarm_facts.JoinTokens.Worker
- hosts: swarm_worker
become: true
tasks:
- name: Return worker token
debug:
msg: result.swarm_facts.JoinTokens.Worker
Alex
а что именно не работает?
Alex
или это такая загадка и мы должны угадать
Anton
ну я думал по такому короткому плейбуку будет понятно. нужно токен передать между плейбуками
Anton
изначально писал под инициализацию сворма и присоединения воркеров, только понятия не имею как это описать. если запихать в инвентори все в один [swarm], то везде инициализируется кластер, если разделить, то вот как передавать токены
Отделение Bereke Bank
Grek 🇺🇦
между плейбуками или плеями?
какая ошибка?
я думал что в таком простом плейбуке вы и сами поймете в чем дело.... нет тут нет телепатов
Anton
Anton
Отделение Bereke Bank
Anton
Grek 🇺🇦
https://stackoverflow.com/questions/33896847/how-do-i-set-register-a-variable-to-persist-between-plays-in-ansible
Anton
благодарю
Vitalii
Всем привет, я использую микс со статик и динамик инвентори.
Если использовать только статик, то ansible_group_priority работает и я могу указать приоритет группы,
Если брать использовать одновременно статик и динамик и дефайнить переменые групп, которые приходит с динамик в статик инвентори, то ansible_group_priority не работает никак, выигрывает переменная с группы, что была задефайнена последней.
Подскажите как победить это?
Timur
Timur
Игры с ansible_group_priority - это стрельба себе в ноги, ИМХО
Timur
Тем более с динамическим инвентарем
Vitalii
Just avoid handling it that way
У меня приходят несколько групп с динамик инвентори и нужно указать приоритет переменных для этих групп... Есть какие-то идеи?
Timur
Timur
Я бы лучше переписал схему так, чтобы переменные групп не пересекались
Timur
Vitalii
Timur
Приоритет динамических групп должен приходить вместе с ними
Timur
Vitalii
И?
пересекаться будет в любом случае
Vitalii
Timur
Timur
Чего вы добиться хотите?
Vitalii
Зачем?
Такая политика заказчика....
Timur
Зачем вам одна и та же переменная в разных группах?