Ansible: El script de inventario ec2.py no analizará las etiquetas con un correo electrónico como valor

Creado en 28 abr. 2016  ·  3Comentarios  ·  Fuente: ansible/ansible

TIPO DE PROBLEMA
  • Informe de error
    VERSION ANSIBLE
ansible 2.0.1.0
CONFIGURACIÓN
SO / MEDIO AMBIENTE

RESUMEN

No puedo realizar ninguna acción ansible basada en la etiqueta "Propietario" para las máquinas de mi entorno que tienen una dirección de correo electrónico como valor.

PASOS PARA REPRODUCIR

Verifiqué para asegurarme de que existían los valores de la etiqueta:

./ec2.py --list >> aws_example.json

Y puedo confirmar las etiquetas de "Propietario":

...
"ec2_tag_Owner": "infrastructure",
...
"ec2_tag_Owner": "[email protected]",
...

Pero cuando ejecuto un comando ansible para hacer referencia a los hosts que usan la etiqueta, no puede encontrar aquellos con una dirección de correo electrónico como valor:

ansible -i tools/ec2.py [email protected] -m ping
RESULTADOS PREVISTOS

A continuación, se muestra un ejemplo del mismo comando con un valor de etiqueta de solo "infraestructura".

ansible -i tools/ec2.py tag_Owner_infrastructure -m ping
The authenticity of host '52.53.222.209 (52.53.222.209)' can't be established.

Esto muestra que conoce el host y trató de comunicarse con él para conectarse.

RESULTADOS ACTUALES
$ ansible -i tools/ec2.py [email protected] -m ping -vvvv
Using /Users/.../ansible/ansible.cfg as config file
ERROR! Specified hosts options do not match any hosts

Esto muestra que no pudo asociar una instancia con la clave: "Propietario" y el valor: " [email protected] "

bug

Todos 3 comentarios

@bhuddleston Gracias por el informe, sin embargo, ec2.py está haciendo esto "a propósito" para restringir los valores de nombre de grupo generados a ASCII alfanumérico.

Eche un vistazo a to_safe() en ec2.py: https://github.com/ansible/ansible/blob/devel/contrib/inventory/ec2.py#L1367

El nombre de su grupo debe aparecer como tag_Owner_it_domain_com . (siempre puede hacer debug: var=groups desde el contexto de su anfitrión para averiguar todos los grupos a los que pertenece).

Este comportamiento puede ser un poco draconiano (ya que he verificado que realmente aceptaremos y trabajaremos con nombres de grupos con '@' y '.' En ellos). No dude en presentar un problema o relaciones públicas (o iniciar una discusión sobre nuestra lista de correo / IRC) para cambiar el comportamiento de ec2.py.

¡AH! Ahora que sé lo que está pasando, probé la versión "_" ¡y funcionó! Gracias por la ayuda.

Por curiosidad, ¿está eso detallado en alguna documentación en algún lugar? Quiero estar seguro de que no me perdí algo obvio.

Podría acercarme y ver si la lista de correo es receptiva.


Brian Huddleston
Diseño de TI abierto (Ingeniero de TI)
+1.510.460.1444 (principal)
+1.510.780.2425 (fax)
[email protected]

El 28 de abril de 2016, a las 5:05 p.m., Matt Davis [email protected] escribió:

@bhuddleston Gracias por el informe, sin embargo, ec2.py está haciendo esto "a propósito" para restringir los valores de nombre de grupo generados a ASCII alfanumérico.

Eche un vistazo a to_safe () en ec2.py: https://github.com/ansible/ansible/blob/devel/contrib/inventory/ec2.py#L1367

El nombre de su grupo debería aparecer como tag_Owner_it_domain_com. (siempre puede hacer debug: var = groups desde el contexto de su host para averiguar todos los grupos a los que pertenece).

Este comportamiento puede ser un poco draconiano (ya que he verificado que realmente aceptaremos y trabajaremos con nombres de grupos con '@' y '.' En ellos). No dude en presentar un problema o relaciones públicas (o iniciar una discusión sobre nuestra lista de correo / IRC) para cambiar el comportamiento de ec2.py.

-
Recibes esto porque te mencionaron.
Responda a este correo electrónico directamente o véalo en GitHub

Sí, está en la página de documentos del Inventario dinámico , pero un poco escondido en la sección Etiquetas: "Cada par clave / valor es su propio grupo de instancias, nuevamente con caracteres especiales convertidos en guiones bajos, en el formato tag_KEY_VALUE"

¿Fue útil esta página
0 / 5 - 0 calificaciones