#ansible
#ansible
Вопрос:
мой yml выглядит так:
---
# YAML documents begin with the document separator ---
# The minus in YAML this indicates a list item. The playbook contains a list
# of plays, with each play being a dictionary
-
# Hosts: where our play will run and options it will run with
hosts: localhost
gather_facts: false
# Vars: variables that will apply to the play, on all target systems
vars:
DDVE_public_IP : 34.107.103.175
destination_port: 3009
Instance_id : 8529834022607504819
S3_bucket_name : bucket_for_ddve_6
# Tasks: the list of tasks that will be executed within the playbook
tasks:
- name: login access token
uri:
url: https://{{ DDVE_public_IP }}:{{ destination_port }}/{{ resource_path }}
method: POST
headers:
Content-Type: application/json
body_format: json
body:
username: sysadmin
password: {{ Instance_id }}
return_content: yes
ignore_errors: yes
register: rest_post
vars:
resource_path: rest/v1.0/auth
- name: DEBUG / GOT INFO
debug:
msg: "{{ rest_post.json }}"
when: rest_post.status == 201
# Handlers: the list of handlers that are executed as a notify key from a task
# Roles: list of roles to be imported into the play
# Three dots indicate the end of a YAML document
...
ansible-playbook ddve6-post-deploy-object-store.yml
[ПРЕДУПРЕЖДЕНИЕ]: инвентаризация не была проанализирована, доступен только неявный localhost.
[ПРЕДУПРЕЖДЕНИЕ]: список предоставленных хостов пуст, доступен только localhost. Обратите внимание, что
неявный localhost не соответствует ‘all’.
ОШИБКА! Мы не смогли прочитать ни как JSON, ни YAML, это ошибки, которые мы получили от каждого:
JSON: ожидаемое значение: строка 1, столбец 1 (символ 0)Синтаксическая ошибка при загрузке YAML. не найден ожидаемый ключ
Ошибка, по-видимому, находится в ‘/ Users / juergen / Documents / DPSCodeAcademy /Ansible / #dev / ddve / ddve6-post-deploy-object-store.yml’: строка 30, столбец 9, но может быть в другом месте файла в зависимости от конкретной синтаксической проблемы.
Нарушающая строка выглядит:
password: {{ Instance_id }} return_content: yes ^ here
Я понятия не имею, откуда эта ошибка, поскольку я не могу найти здесь проблему с ответом.
Ответ №1:
У вас просто есть некоторые ошибки отступа в этом документе YAML. Выберите уровень отступа (например, 2 пробела для каждого уровня) и придерживайтесь его последовательно. У многих редакторов есть плагины, которые будут проверять синтаксис ваших документов YAML во время их написания.
Следующее проверяется правильно:
---
- hosts: localhost
gather_facts: false
vars:
DDVE_public_IP: 34.107.103.175
destination_port: 3009
Instance_id: 8529834022607504819
S3_bucket_name: bucket_for_ddve_6
tasks:
- name: login access token
uri:
url: https://{{ DDVE_public_IP }}:{{ destination_port }}/{{ resource_path }}
method: POST
headers:
Content-Type: application/json
body_format: json
body:
username: sysadmin
password: "{{ Instance_id }}"
return_content: true
ignore_errors: true
register: rest_post
vars:
resource_path: rest/v1.0/auth
- name: DEBUG / GOT INFO
debug:
msg: "{{ rest_post.json }}"
when: rest_post.status == 201
Обратите внимание, что очень редко ваши документы YAML завершаются ...
маркером.
Комментарии:
1. Спасибо за это. Теперь я столкнулся с некоторыми проблемами ReST uri