Новое в ансибле: попробуй playbook, в котором есть 1 задача и 1 предварительная задача. Задача копирует файл, который успешно выполняется. Предварительная задача проверяет домашнее пивоварение и, если оно отсутствует, установлено. Это вызывает у меня эту ошибку.
ОШИБКА! поле "хосты" является обязательным, но не задано
Я уже установил значение hosts в верхней части плейбука как localhost, я использую только локальный хост. Я вставил сюда всю пьесу:
Ваша помощь приветствуется. Благодарность
---
- hosts: localhost
tasks:
- copy:
src: "~/.master.testconfig"
dest: "~/.testconfig"
- pre_tasks:
- name: Ensure Homebrew is Installed
stat:
path: /usr/local/bin/brew
register: homebrew_check
- name: Fail If Homebrew Is Not Installed
fail:
msg: Homebrew is missing.. Install from http://brew.sh/
when:
- not homebrew_check.stat.exists
- name: Installing Homebrew
shell: /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
when:
- not homebrew_check.stat.exists
- install_homebrew_if_missing
Вывод: [ПРЕДУПРЕЖДЕНИЕ]: инвентарь не был проанализирован, доступен только неявный localhost [ПРЕДУПРЕЖДЕНИЕ]: если список узлов пуст, доступен только localhost. Обратите внимание, что неявный localhost не соответствует 'all'
ИГРАТЬ [localhost] ******************************************** **************************************
ЗАДАЧА [Сбор фактов] ******************************************* ******************************** ОК: [localhost]
ЗАДАЧА [копия] ********************************************* ***************************************** ОК: [localhost] ОШИБКА! поле "хосты" является обязательным, но не задано
1 ответ
Ошибка связана с синтаксической ошибкой: вам не нужно -
для pre_tasks
. Другая проблема - неправильный отступ.
Правильный синтаксис:
---
- hosts: localhost
tasks:
- copy:
src: "~/.master.testconfig"
dest: "~/.testconfig"
pre_tasks:
- name: Ensure Homebrew is Installed
stat:
path: /usr/local/bin/brew
register: homebrew_check
- name: Fail If Homebrew Is Not Installed
fail:
msg: Homebrew is missing.. Install from http://brew.sh/
when: not homebrew_check.stat.exists
- name: Installing Homebrew
shell: /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
when:
- not homebrew_check.stat.exists
- install_homebrew_if_missing
Похожие вопросы
Новые вопросы
ansible
Red Hat Ansible - это управляемая моделями система управления конфигурацией, многоузлового развертывания / оркестрации и удаленного выполнения задач. По умолчанию он использует SSH, поэтому на узлах, которыми вы управляете, не устанавливается никакого специального программного обеспечения. Ansible написан на Python, но может быть расширен на любом языке. Это входит, версия с открытым исходным кодом и версия Enterprise.