Puppet Class: bmc::oem::omsa
- Inherits:
- bmc
- Defined in:
- manifests/oem/omsa.pp
Overview
Install OpenManage Server Administrator (OMSA), iDRAC Service Module(iSM) and Deployment Tool Kit (DTK) software
Parameters:
ensure: If you need a specific version of omsa.
7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 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 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 |
# File 'manifests/oem/omsa.pp', line 7
class bmc::oem::omsa (
Optional[String] $ensure,
Array[String] $packages,
Optional[String] $apt_repos,
Optional[String] $apt_source_location,
) inherits bmc {
if $ensure {
$_ensure = $ensure
} else {
$_ensure = $::bmc::ensure
}
if $::bmc::manage_oem_repo {
case $::osfamily {
'Debian': {
include ::apt
if $facts['os']['release']['major'] == '16.04' {
$_decription_version = split($facts['os']['distro']['description'], ' ')[1]
if versioncmp($_decription_version, '16.04.4') >= 0 {
$_omsa_version = '911'
} else {
$_omsa_version = '910'
}
$_apt_location = "http://linux.dell.com/repo/community/openmanage/${_omsa_version}/${::lsbdistcodename}"
} else {
$_apt_location = $apt_source_location
}
if $::bmc::ensure == 'purged' {
$apt_ensure = 'absent'
} else {
$apt_ensure = 'present'
}
apt::source { 'DellOpenManage':
ensure => $apt_ensure,
comment => 'Dell OpenManage Ubuntu & Debian Repositories',
location => $_apt_location,
release => $::lsbdistcodename,
repos => $apt_repos,
key => {
'id' => '42550ABD1E80D7C1BC0BAD851285491434D8786F',
'server' => 'pool.sks-keyservers.net',
},
include => {
'src' => false
},
before => [Class['apt::update'], Package[$packages]],
}
}
'RedHat': {
$_yum_repo_file_name = '/etc/yum.repos.d/dell-system-update.repo'
if $::bmc::ensure == 'purged' {
File { 'DELL system update repo':
ensure => absent,
path => $_yum_repo_file_name,
}
} else {
exec { 'Dell Yum repository':
command => 'curl -s http://linux.dell.com/repo/hardware/dsu/bootstrap.cgi | bash',
cwd => '/tmp',
creates => $_yum_repo_file_name,
path => ['/usr/bin', '/usr/sbin'],
before => Package[$packages],
}
}
}
default: {
fail("${module_name} provides no repository information for OSfamily: ${::osfamily}")
}
}
}
package { $packages:
ensure => $_ensure,
}
}
|