Error del libro de jugadas ansible

Error del libro de jugadas ansible

Hola, acabo de empezar a aprender ansible. Estoy intentando escribir un libro de jugadas como:

vpc-setup.ymlque incluye

hosts: localhost
connection: local
gather_facts: False
tasks:
 - name: Import VPC Variables
   include_vars: vars/vpc_setup.md

 - name: Create vprofile VPC
   ec2_vpc_net:
    name: "{{vpc_name}}"
    cidr_block: "{{vpcCidr}}"
    region: "{{region}}"
    dns_hostnames: yes
    tenancy: default
    state: "{{state}}"
    register: vpcout

el error viene en la primera línea:

[WARNING]: provided hosts list is empty, only localhost is available. Note that the implicit localhost does not match
'all'
ERROR! A playbook must be a list of plays, got a <class 'ansible.parsing.yaml.objects.AnsibleMapping'> instead

The error appears to be in '/home/ubuntu/ansible-aws-vpc/vpc-setup.yml': line 1, column 1, but may
be elsewhere in the file depending on the exact syntax problem.

The offending line appears to be:


hosts: localhost
^ here

Por favor ayuda

Respuesta1

Un libro de jugadas de Ansible es un documento YAML que contiene una lista de jugadas, posiblemente más de una. Debido a que es una lista, la parte exterior del documento necesita notación de lista YAML, por lo que -.

- name: VPC for thing
  hosts: localhost
  gather_facts: False
  tasks:

El resto de la obra sigue.

Más ejemplos en Ansibleguía que presenta los libros de jugadas. Preste mucha atención a la sangría y al exterior -que indica una lista YAML.


Consejos adicionales:

nameLa palabra clave en las obras documenta un propósito. Mantenga el nombre breve, de 50 caracteres o menos.

Eliminar connection: localen el nivel de juego. Si se ejecuta según un patrón con varios hosts, se ejecutará muchas veces, lo cual es poco probable que sea lo que usted desea.Host local implícitoya es local, o puede configurar el complemento de conexión por host o grupo en el nivel de inventario.

información relacionada