Erro no manual Ansible

Erro no manual Ansible

Olá, acabei de começar a aprender ansible. Estou tentando escrever um manual como:

vpc-setup.ymlque incluindo

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

o erro está chegando na 1ª linha:

[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 ajude

Responder1

Um playbook Ansible é um documento YAML que contém uma lista de peças, possivelmente mais de uma. Por ser uma lista, a parte externa do documento precisa da notação de lista YAML, portanto -.

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

O resto da peça segue.

Mais exemplos no Ansibleguia de apresentação de playbooks. Preste muita atenção ao recuo e ao exterior -indicando uma lista YAML.


Dicas bônus:

namepalavra-chave em peças documenta um propósito. Mantenha o nome curto, com 50 caracteres ou menos.

Exclua connection: localno nível do jogo. Se executado em um padrão com vários hosts, ele será executado muitas vezes, o que é improvável que você queira.Host local implícitojá é local ou você pode definir o plug-in de conexão por host ou grupo no nível do inventário.

informação relacionada