Ich möchte 2 "Unteraufgaben" in einer Hauptaufgabe haben, aber aus irgendeinem Grund bekomme ich einen Syntaxfehler.Ansible Unteraufgaben in Hauptaufgaben
In meinem /etc/ansible
Verzeichnis habe ich auf folgende Struktur:
playbooks/
set_users.yml
roles/
users/
tasks/
main.yml
create_admin.yml
update_root.yml
vars/
main.yml
In der create_admin.yml
Datei ich folgende Voraussetzungen erfüllt sein:
---
- name: Create srv_admin user
user: name=srv_admin password="{{ admin_password }}" groups=wheel shell=/bin/bash
Und in update_root.yml
:
---
- name Update root password
user: name=root password="{{ root_password }}"
ich dann Schließen Sie diese Aufgaben in main.yml
ein :
---
- name: Modify users
tasks:
- include: update_root.yml
- include: create_admin.yml
Mein vars/main.yml
enthält meine Passwörter:
---
- name: create user
hosts: servers
remote_user: root
roles:
- users
Aber ich offensichtlich falsch, etwas zu tun:
---
admin_password: SHA512HASH
root_password: SHA512HAS
Nun, sie alle zusammen in playbooks/set_users.yml
zu bringen. Als ich das Textbuch laufen lasse, erhalte ich folgende Fehlermeldung:
ERROR! no action detected in task. This often indicates a misspelled module name, or incorrect module path.
The error appears to have been in '/etc/ansible/roles/users/tasks/main.yml': line 2, column 3, but may
be elsewhere in the file depending on the exact syntax problem.
The offending line appears to be:
---
- name: Modify users
^here
Wie kann ich diese beiden „sub“ Aufgaben in tasks/main.yml
verwenden, so dass ich einfach die Rolle in dem Textbuch importieren?
EDIT Nach @Konstantin Suvorov Vorschlag der Umsetzung:
The error appears to have been in '/etc/ansible/roles/users/tasks/update_root.yml': line 3, column 7, but may
be elsewhere in the file depending on the exact syntax problem.
The offending line appears to be:
- name Update root password
user: name=root password="{{ root_password }}"
^here
We could be wrong, but this one looks like it might be an issue with
missing quotes. Always quote template expression brackets when they
start a value. For instance:
with_items:
- {{ foo }}
Should be written as:
with_items:
- "{{ foo }}"
Das hat geholfen, aber jetzt bekomme ich einen weiteren Fehler. Bitte beachten Sie den Fehler oben. – rhillhouse
Aktualisierte Antwort. Aber, bitte, sei nett - lies Fehlermeldungen von Ansible. –
Vielen Dank! Sorry, ich bin noch sehr neu bei Ansible und habe den Fehler nicht verstanden. Ich versuche immer noch, die Syntax zu verstehen. Die aktualisierte Antwort enthält auch einen Syntaxfehler, aber ich könnte es beheben, indem ich '- name ...' zu '- name: ...' – rhillhouse