Condicionales en puppet


En este post conoceremos las distintas condicionales en puppet y realizaremos unos ejemplos para usarlas.

oscar Escrito por oscar 12 May 2023 686 0

En Puppet, se pueden utilizar condicionales para tomar decisiones basadas en el estado actual del sistema o en el valor de las variables. Las condicionales más comunes que se pueden utilizar en Puppet son:

if y else

Se utilizan para tomar una decisión entre dos opciones. Por ejemplo:

Creamos el archivo;

sudo nano /etc/puppetlabs/puppet/manifests/condicionalIfElse.pp

if $osfamily == 'RedHat' {
  notify {'greeting':
    message => 'hola desde RedHat'
  }
} else {
  notify {'greeting':
    message => "hola desde otro sistema operativo"
  }
}

Resultado

Condicional if else

case

Se utiliza para tomar una decisión entre varias opciones. Por ejemplo:

Creamos el archivo

sudo nano /etc/puppetlabs/puppet/manifests/condicionalCase.pp

case $osfamily {
  'RedHat': {
    notify {'greeting':
        message => 'hola desde RedHat'
    }
  }
  'Debian': {
    notify {'greeting':
        message => 'hola desde Debian'
    }
  }
  'Ubuntu': {
    notify {'greeting':
        message => 'hola desde Ubuntu'
    }
  }
}

Resultado

Condicional case

unless

Se utiliza para especificar una condición negativa. Es decir, si la condición es falsa, se ejecuta el recurso. Por ejemplo:

unless $paquete == 'nginx' {
  package { 'httpd':
    ensure => installed,
  }
}

defined

Se utiliza para comprobar si una variable está definida. Por ejemplo:

if defined($paquete) {
  package { $paquete:
    ensure => installed,
  }
}

match

Se utiliza para comparar una variable con una expresión regular. Por ejemplo:

if $nombre =~ /Juan/ {
  notify { "El nombre es Juan": }
}

 


Comentario

Debe aceptar antes de enviar