Utilizar expresiones regulares en clases puppet | Algo de Linux

martes, 17 de mayo de 2016

Utilizar expresiones regulares en clases puppet

Me preguntaba un compañero cómo podía hacer referencia a un conjunto de nodos concretos con los siguientes nombres de host: siatic-informatica-01,
 siatic-intormatica-02,..., siatic-informatica-30.

Como podemos hacer uso de expresiones regulares en una clase puppet, es muy sencillo identificar los hosts en función del nombre del host obtenido de la variable facter hostname. Por ejemplo:
if $hostname =~ /^siatic-informatica-(\d+)/ {
   lista de includes
}
Si os dáis cuenta:
  • Estamos usando el operador =~ para comparar el contenido de la variable facter hostname con la expresión regular. En la comparación de expresiones regulares también podríamos utilizar el operador de no coincidencia !~
  • La espresión regular es aquella que va entre los símbolos /    /
  • En este caso estamos definiendo una expresión regular que se refiere a un nombre que comienza por la cadena siatic-informatica- y a continuación tiene un número cualquiera de dígitos.
Publicado por primera vez en http://enavas.blogspot.com.es

No hay comentarios: