control-repo/site-modules/controlm/manifests/controlm_agent/install.pp
Henry Wang 1381f065c0 tst
2019-12-19 14:06:57 +08:00

62 lines
2.5 KiB
Puppet

class controlm::controlm_agent::install inherits controlm::controlm_agent {
# set up /etc/services
augeas { 'controlm':
context => '/files/etc/services',
changes => [
"ins service-name after service-name[last()]",
"set service-name[last()] 'ctmagent'",
"set service-name[. = 'ctmagent']/port 17005",
"set service-name[. = 'ctmagent']/protocol tcp",
# "set service-name[port = '${s2a_port}'][protocol = 'udp']/ #comment 'Henry123']",
# "set service-name[port = '${s2a_port}'][protocol = 'tcp'] ctmagent",
# "set service-name[port = '${s2a_port}'][protocol = 'tcp']/ #comment 'Henry234']",
# "set service-name[port = '${a2s_port}'][protocol = 'udp'] ctmagent",
# "set service-name[port = '${a2s_port}'][protocol = 'udp']/ #comment 'Henry345'",
# "set service-name[port = '${a2s_port}'][protocol = 'tcp'] ctmagent",
# "set service-name[port = '${a2s_port}'][protocol = 'tcp']/ #comment 'Henry456'",
],
}
# use shellscript and sudo as running the install direct as user ctmagent gives HOME errors plus we get errors in the log file
# also does patches as can't get the patch script running after it for some reason
# patch names need to be in hiera see controlm_agent.pp
exec { 'controlm_agent_install':
command => '/apps/bmc/ctm/controlm_agent_install.sh > /apps/bmc/ctm/controlm_agent_install.log',
creates => '/apps/bmc/ctm/controlm_agent_install.hasrun',
require => [User['ctmagent'],Package['ctmagent_core_clean'],File['/apps/bmc/ctm/ctm_silentinstall_optus.xml','/apps/bmc/ctm/controlm_agent_install.sh'],Exec['chown_/apps/bmc'],],
timeout => 1800,
}
case $::os['release']['major']{
'6': {
service { 'ctm.sh':
ensure => running,
enable => true,
hasstatus => false,
status => '/bin/ps -ef | /bin/grep /apps/bmc/ctm/exe/p_ctm | /bin/grep -v grep',
require => [File['/etc/rc.d/init.d/ctm.sh'],Exec['controlm_agent_install'],]
}
}
'7': {
service { 'ctm.sh':
enable => false,
}
service { 'ctm':
ensure => running,
enable => true,
hasstatus => false,
status => '/bin/ps -ef | /bin/grep /apps/bmc/ctm/exe/p_ctm | /bin/grep -v grep',
require => [File['/etc/rc.d/init.d/ctm'],Exec['controlm_agent_install']]
}
}
default: {fail "Unsupported Major version ${::os['release']['major']} detected"}
}
}