Defined Type: yum::install
- Defined in:
- manifests/install.pp
Overview
Define: yum::install
This definition installs or removes rpms from local file or URL via yum install command. This can be better than using just the rpm provider because it will pull all the dependencies.
Parameters:
[*ensure*] - specifies if package group should be
present (installed) or absent (purged)
[*source*] - file or URL where RPM is available
Actions:
Requires:
RPM based system
Sample usage:
yum::install { 'epel-release':
ensure => present,
source => 'https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm',
}
23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 |
# File 'manifests/install.pp', line 23
define yum::install (
$source,
$ensure = present,
$timeout = undef,
) {
validate_string($source)
Exec {
path => '/bin:/usr/bin:/sbin:/usr/sbin',
environment => 'LC_ALL=C'
}
case $ensure {
present,installed: {
exec { "yum-install-${name}":
command => "yum -y install '${source}'",
unless => "rpm -q '${name}'",
timeout => $timeout,
}
}
absent,purged: {
package { $name:
ensure => $ensure,
}
}
default: {
fail("Invalid ensure state: ${ensure}")
}
}
}
|