Dr. L.S.Dee
Пошем можно, скорее всего. Но а) это оффтопик (хотя PoSh-скрипт можно дернуть сабжем за WinRM); б) на семерке проверить я уже не могу, кончились у меня семерки.
Max
Max
Timur
Не нужно ни Linux, ни WSL для этого
Anton
А как было бы иначе?
Вот тут пришлось погуглить. Не знаю, я думал есть невиндовый модуль для решений такой простой задачки, а похоже что нету такого.
Timur
Я пока не понимаю, в чем отличие от той же задачи на Линукс
Anton
Timur
Если речь о выкачивании чем-то вроде wget, то это с одинаковым успехом можно сделать как ни Linux, так и на Windows
Max
Max
Anton
Понял, башсибла не избежать.
Max
на семерке?
Anton
Угу. Ансибл вполне себе её поддерживает.
Max
why?!?!
Anton
Ну, требования) Прежде чем взять в руки ансибл я проверил, что он поддерживает семёрку.
Max
если у вас в организации есть линукс машины, не понимаю требования.
Max
ладно бы был чистый виншоп
Anton
Господи, две целевые платформы у нас, Windows 7 и кое-какой специфичный линупс, это действительно важно?)
Max
слегка. совместимость со старыми системами всегда хромает.
Max
такой инструмент получается не стабильный. винда 7 с января уже eol.
Anton
XP старая, 7 актуальна ещё. Пока не встречал проблем именно с 7, обычно всё упирается в то, что это винда. И вот когда для решения таких простых задачек не находится модуля, задумываешься, всё ли правильно ты делаешь.
Anton
Max
С января 2020)
это через 7 месяцев. ты уже к тому времени уволишься?
Max
шайтан :)
Anton
Нет, переход на win10 идёт. Но это совсем другая история.
Почему людей так беспокоят оффтоп вопросы?)
Anton
Ну и раз уж wsl предложен в качестве решения, то каким образом он поможет решить задачу?
Timur
Timur
Anonymous
Привествую коллеги, подскажите как красиво реализовать следующую задачу. Хочу получать fqdn имя сервера из ДНС используя условно dig -x {{ ansible_default_ipv4.address }} +short и его присваивать как hostname серверу. В обратной зоне условный 1.2.3.4 резолвиться корреткно в условный server.example.com но вот присвоить не могу
Timur
Anonymous
судя по всему я не совсем понимаю логику register
Anonymous
register: foo_result
Anonymous
"stderr": "Invalid number of arguments.", "stderr_lines": ["Invalid number of arguments."], "stdout": "", "stdout_lines": []}
Anonymous
регистрирую условно так command: hostnamectl set-hostname {{ foo_result }}
Timur
Timur
Anonymous
да я знаю про
Anonymous
- name: set-hostname
hostname:
name: "{{ remote_host }}"
Anonymous
это просто для отладки через шел
Timur
Я так и не понял - в чем конкретно проблема?
Timur
Какой код не работает?
Anonymous
- name: Set DNS variable {{ ansible_default_ipv4.address }}
shell: dig -x {{ ansible_default_ipv4.address }} +short
register: foo_result
- name: Verify DNS {{ foo_result }}
command: hostnamectl set-hostname {{ foo_result }}
notify: restart network
Timur
foo_result - это не строка, а словарь
Timur
Нельзя такую переменную в командную строку вставлять напрямую
Timur
И непонятно зачем dig нужен
Timur
Обычно все нужные данные из DNS в фактах ансибла есть уже
Anonymous
ансибл в фактах проверяет разве в какой адрес резолвиться ip ?
Anonymous
тут по крайне мере нет информации что он резолвит и такого факта не нашел https://docs.ansible.com/ansible/latest/user_guide/playbooks_variables.html#variables-discovered-from-systems-facts
Anonymous
в обшем навели на мысль. Достаточно было использовать stdout command: hostnamectl set-hostname {{ foo_result.stdout }}
George
George
Выше обсуждали за ansible_default_ipv4
George
George
Только нюанс - а если там егор будет в аутпуте команды ? Имхо, хорошая идея - проверить, что вернулся хостнейм, а не, например, "dig not found"
Anonymous
впринципе согласен, что проверять результат нужно, на счет дига - что не установлен, он в зависимостях роли. Но спасибо за совет
George
Anonymous
я понял, команда не выполнится и оно упадет
George
Anonymous
проверил, падает с ошибкой Invalid number of arguments
Anonymous
если дига не будет он упадет соотвественно на шаге dig -x
Sergei
как часто тут проскакивает "ты хочешь странного" ? :D
Daniel
всем привет! давно не юзал ансибл и что-то растерялся. нужно одной командой (не плейбуком) получить ansible_facts['ansible_lsb']['description'] . пробую - ругается
Daniel
ansible all -a "echo {{ ansible_local['ansible_facts']['ansible_lsb'] }} "
Timur
Daniel
путь взят из модуля -m setup . в плейбуках там нужно gather включать. а как с командой - хз
Daniel
цель - получить название ОС с версией для хостов в инвентори
Sergey
Степан
Степан
Степан
Вопрос
Марат
Степан
Подскажите пожалуйста. Как импортировать dashboard из файла. Здесь указано с сайта.
Мне просто подменить url и api на path? и использовать точно такой же state: present?
Или этот
grafana_dashboard только для работы с сайтом по api?
Степан
Дока, прям скудная
https://docs.ansible.com/ansible/latest/modules/grafana_dashboard_module.html
Влад 🇺🇦
Всем привет, есть ansible role, в роли есть таски которые include Другие таски, но при вызове этой роли с тагами получаю
TASK [nginx : include_tasks] ************************************************************************
included: /roles/nginx/tasks/copy_cert.yml
таск не отрабатывает, как я его могу отдебажить? ведь вывод запуска роли ничего не показывает
Andrey
Denis 災 nobody
Влад 🇺🇦
-vvv что показывает?
Не могу щас посмотреть, но проблему уже решил, я тупанул когда вызывал таску по тегу, он как бы вызвал include , а внутри такси которую он вызвал я не проставил теги, по этому ничего на выходе и не получал
Timur