Sergey
Если тебе нужен пустой каталог - убей его и создай по новой.
Sergey
Вот же дока - "...If absent, directories will be recursively deleted, and files or symlinks will be unlinked...."
Pit
Если тебе нужен пустой каталог - убей его и создай по новой.
А каталог с определенными правами, создавался не мной, а иным сервисом. Или это mountpoint. И есть вполне реальный шанс что с апдейтом сервиса права на него изменятся. А я не хочу за этим следить, хочу просто рекурсивную очистку. На выходе имеем тот же костыль, но иного порядка
Dennis
а с 503 как справиться подскажите?
Pit
а с 503 как справиться подскажите?
ты таску то покажи на которую ругается
Dennis
- name: "Yum :: install zabbix 3.4 repository for EL7" yum: name=http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpm state=present when: ansible_os_family == "RedHat" and ansible_distribution_major_version|int == 7 register: zabbix_repoinstall - name: "Yum :: clean yum cache to refresh zabbix package location" command: yum clean all when: zabbix_repoinstall|changed - name: "Zabbix-server :: Install Zabbix packages" yum: name={{ item }} state=latest with_items: - zabbix-server-pgsql - zabbix-web-pgsql when: zabbix_repoinstall|changed 303 yum used in place of yum module /builds/system-management/ansible-roles/zabbix-server/tasks/01-tasks.yml:12 Task/Handler: Yum :: clean yum cache to refresh zabbix package location 503 Tasks that run when changed should likely be handlers /builds/system-management/ansible-roles/zabbix-server/tasks/01-tasks.yml:12 Task/Handler: Yum :: clean yum cache to refresh zabbix package location 403 Package installs should not use latest /builds/system-management/ansible-roles/zabbix-server/tasks/01-tasks.yml:16 Task/Handler: Zabbix-server :: Install Zabbix packages 503 Tasks that run when changed should likely be handlers /builds/system-management/ansible-roles/zabbix-server/tasks/01-tasks.yml:16 Task/Handler: Zabbix-server :: Install Zabbix packages
Pit
хотя вангую там какой-то systemctl restart zabbix
Отделение Bereke Bank
там клинить не обязательно. просто воткни update_cache: yes в таске инстала и удали это извращение
Sergey
Через = писать было не алё уже в 1.9 -> 2.0
Dennis
что из этого 12 строка?
- name: "Yum :: clean yum cache to refresh zabbix package location"
Dennis
там клинить не обязательно. просто воткни update_cache: yes в таске инстала и удали это извращение
- name: "Yum :: install zabbix 3.4 repository for EL7" yum: name=http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpm state=present when: ansible_os_family == "RedHat" and ansible_distribution_major_version|int == 7 update_cache: yes register: zabbix_repoinstall ?
Pit
- name: "Yum :: install zabbix 3.4 repository for EL7" yum: name=http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpm state=present when: ansible_os_family == "RedHat" and ansible_distribution_major_version|int == 7 register: zabbix_repoinstall - name: "Yum :: clean yum cache to refresh zabbix package location" command: yum clean all when: zabbix_repoinstall|changed - name: "Zabbix-server :: Install Zabbix packages" yum: name={{ item }} state=latest with_items: - zabbix-server-pgsql - zabbix-web-pgsql when: zabbix_repoinstall|changed 303 yum used in place of yum module /builds/system-management/ansible-roles/zabbix-server/tasks/01-tasks.yml:12 Task/Handler: Yum :: clean yum cache to refresh zabbix package location 503 Tasks that run when changed should likely be handlers /builds/system-management/ansible-roles/zabbix-server/tasks/01-tasks.yml:12 Task/Handler: Yum :: clean yum cache to refresh zabbix package location 403 Package installs should not use latest /builds/system-management/ansible-roles/zabbix-server/tasks/01-tasks.yml:16 Task/Handler: Zabbix-server :: Install Zabbix packages 503 Tasks that run when changed should likely be handlers /builds/system-management/ansible-roles/zabbix-server/tasks/01-tasks.yml:16 Task/Handler: Zabbix-server :: Install Zabbix packages
ты осознаешь что если у тебя не изменится пакет в первой таске - остальные пакеты не будут установлены? То есть все три джобы скорее всего отработают только один единственный раз - при первом запуске
Pit
там клинить не обязательно. просто воткни update_cache: yes в таске инстала и удали это извращение
вот тут верно подсказывают. и лучше зафиксируй версии пакетов, пригодится в будущем
Dennis
вот тут верно подсказывают. и лучше зафиксируй версии пакетов, пригодится в будущем
- name: "Yum :: install zabbix 3.4 repository for EL7" yum: name: http://repo.zabbix.com/zabbix/{{ zabbix_server_version }}/rhel/7/x86_64/zabbix-release-{{ zabbix_server_version }}-2.el7.noarch.rpm state: present when: ansible_os_family == "RedHat" and ansible_distribution_major_version|int == 7 update_cache: yes register: zabbix_repoinstall
Dennis
вкрячил тогда получается если есть секция update_cache: yes то всю таску - name: "Yum :: clean yum cache to refresh zabbix package location" command: yum clean all when: zabbix_repoinstall|changed можно убрать?
Dennis
Шаблоны.
не понял тебя
Fire
не понял тебя
Для конфигурации софта следует использовать шаблоны.
Dennis
Чет теперь совсем все плохо ERROR! 'update_cache' is not a valid attribute for a Task The error appears to have been in '/builds/system-management/ansible-roles/zabbix-server/tasks/01-tasks.yml': line 7, column 3, but may
Pit
по аналогии со state: present сделай
Dennis
Да спасибо сделал все норм кроме 503 Tasks that run when changed should likely be handlers /builds/system-management/ansible-roles/zabbix-server/tasks/01-tasks.yml:16 Task/Handler: Zabbix-server :: Install Zabbix packages
Dennis
Вот так?
Dennis
- name: "Zabbix-server :: Install Zabbix packages" yum: name: - zabbix-server-pgsql - zabbix-web-pgsql state: present when: zabbix_repoinstall|changed notify: - Restart zabbix server
Vladislav
Всем привет, решаю задачу по формированию файла hosts. Возникает ошибка "AnsibleUndefinedVariable: 'ansible.vars.hostvars.HostVarsVars object' has no attribute 'ansible_default_ipv4' [test] test.gh.ru [test2] test.gh.ru test3.gh.ru мой template {% for host in groups['test2'] %} {{ hostvars[host].ansible_default_ipv4.address }} {{ hostvars[host].inventory_hostname }} {% endfor %} Когда в плейбуке указываю host:test. Получаю ошибку которая выше. Если укажу hosts:test2, то все ок
Vladislav
хосты одни и те же
Vladislav
переменная ansible_default_ipv4.address доступна
Vladislav
в таске сбор фактов включен gather_facts: yes
Vladislav
Ну ты сам подумай немножко, ну тут не ребус ведь.
предполагаю потому что он факты собрал с группы которая в цикле
Sergey
Ты запускаешь плей на сбор фактов только с одного хоста, а хочешь вставить в шаблон адрес другого, про который факты не собирал.
Vladislav
логично ж
Sergey
🤦🏻
Vladislav
тупанул) только щас дошло.
Sergey
предполагаю потому что он факты собрал с группы которая в цикле
Нет, не надо предполагать. Факты собираются с того, что указано в hosts - это в доке есть.
Dennis
всем спасибо все починил
es]x
- name: add afinity rules vmware_vm_vm_drs_rule: hostname: "{{ vcenter_hostname }}" username: "{{ vcenter_username }}" password: "{{ vcenter_password }}" validate_certs: no cluster_name: '{{ cluster_name }}' vms: - "{{ item }}" drs_rule_name: "{{affinity_rule_name}}" enabled: True mandatory: False affinity_rule: False loop: "{{ vm_attr.vm_names|list }}" when: cluster|bool delegate_to: localhost Добрый день подскажите,может кто сталкивался, в данном модуле при использовании loop он перезатирает значение vms, как можно обойти?
A
Что значит перезатирает?
A
item берётся из списка в луп контроле. Если что-то не так, надо либо луп контрол менять, либо значение vms
Art
всем привет. подскажите, как можно в подобном плейбуке подключать файлы с переменными, а не перечислять их по одной? vars_files вместо vars на этом уровне не работает( roles: - role: app_user vars: myname: Ian - role: app_user vars: myname: Terry
Roman
Всем привет! Тренируюсь в написании своего модуля, подкиньте, плиз, идею по функционалу, что он должен делать. Что-нибудь не суперсложное для начала. Что-нибудь из практики.
Артём
tuned-adm настраивать.
Dennis
Добрый вечер Никто не сталкивался с fatal: [ansibletarget]: FAILED! => { "changed": false, "msg": "AnsibleUndefinedVariable: float object has no element 0" }
inqfen
Написано же, ты пытаешься взять элемент 0 у float, который как бы не лист
Nick
Весь день читал доки. Не понял. Можно ли в tower хранить секреты, которые потом в плейбуке можно зарезольвить?
Nick
Пытался сделать через credentials. Но там только логины/пароли получается хранить
shadow
народ, целый день пытаюсь скопировать файл напрямую с одного хоста на другой. как это сделать?
shadow
copy/fetch похоже используют машину, которая запускает плэйбук, а как скопировать файл с server1 на server2?
Я и твой кот
Ну или в settings можно вообще кастомные credentials создать. Вполне себе secrets.
shadow
в принципе так и делаю, но смущает только, что надо key-based passwordless аутентификацию мутить
shadow
мож можно как-то не создавать приватный ключ на одном из серверов?
Я и твой кот
в принципе так и делаю, но смущает только, что надо key-based passwordless аутентификацию мутить
Ну временно сделайте ключ, и после окончания работы удаляйте.
shadow
ok, спс
shadow
девы охренели в конец и не хотят апликации выкладивать в artifactory. поэтому надо сливать файлы c servappdist на сервер куда буду деплоить и затем деплоить в вэблоджик
shadow
т.е. полключаюсь на destination сервер, но забирать надо файлы с другой удаленной машины и деплоить
Vladimir
rsync?
+ кстати
shadow
ну вот походу так и придется через shell модуль делать
shadow
что есть не комильфо, не?
Aleksey
не комильфо что ведетесь на стремные пожелания девов
Aleksey
они с больной головы на вашу переложили
Aleksey
теперь секс будет не у них а у вас.
Sergey
https://t.me/pro_ansible/157432 ^^^ +++
Aleksey
или как раз наоборот у вас не будет.
shadow
погодите, у меня нет выбора, все полимеры просраны. Думаете так просто решить проблемы, которые присутствуют десятилетия?