Puppet Class: appdynamics::agent::config::tomcat

Defined in:
manifests/agent/config/tomcat.pp

Overview

Class: appdynamics::agent::config::tomcat

Parameters:

  • agent_enable (Any)
  • agent_base (Any)
  • agent_home (Any)
  • group (Any)
  • user (Any)
  • app (Any)
  • tier (Any)
  • controller_host (Any)
  • controller_port (Any)
  • controller_ssl_enabled (Any)
  • enable_orchestration (Any)
  • account_name (Any)
  • account_access_key (Any)
  • force_agent_registration (Any)
  • node_name (Any)
  • agent_options (Any)
  • application_home (Any)


3
4
5
6
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
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
# File 'manifests/agent/config/tomcat.pp', line 3

class appdynamics::agent::config::tomcat
(
  $agent_enable,
  $agent_base,
  $agent_home,
  $group,
  $user,
  $app,
  $tier,
  $controller_host,
  $controller_port,
  $controller_ssl_enabled,
  $enable_orchestration,
  $account_name,
  $account_access_key,
  $force_agent_registration,
  $node_name,
  $agent_options,
  $application_home,
)
{
  $agent_runtime_directory = "${agent_base}/${agent_home}"

  file { $agent_home:
    ensure => directory,
    path   => $agent_runtime_directory,
    group  => $group,
    owner  => $user,
    mode   => '0755',
  } ->

  exec { 'copy_java_agent_tomcat':
    path    => '/bin:/usr/bin',
    command => "cp -ar ${appdynamics::agent::java_agent_install_dir}/* ${agent_runtime_directory}/",
    onlyif  => "test $(find ${agent_runtime_directory} -type f | wc -l) -eq 0",
  } ->

  exec { 'tomcat_java_agent_file_permissions':
    path      => '/bin:/usr/bin',
    command   => "chown -R tomcat: ${agent_runtime_directory}",
    onlyif    => "test $(find ${agent_runtime_directory} ! -user tomcat | wc -l) -ne 0",
    subscribe => Class['appdynamics::agent::install'],
  } ->

  file { 'tomcat_controller-info_xml':
    path    => "${agent_runtime_directory}/conf/controller-info.xml",
    content => template('appdynamics/agent/tomcat/controller-info_xml.erb'),
    group   => $group,
    owner   => $user,
    mode    => '0644',
  }

  if $agent_enable
  {
    if $appdynamics::agent::tomcat_version == 6
    {
      file_line { 'enable_catalina_tomcat6':
        ensure  => present,
        path    => '/etc/default/tomcat6',
        line    => "JAVA_OPTS=\"\$JAVA_OPTS -javaagent:${agent_runtime_directory}/javaagent.jar\"",
        require => File['tomcat_controller-info_xml'],
        notify  => Service['tomcat6'],
      }
    }
    elsif $appdynamics::agent::tomcat_version == 7
    {
      file_line { 'enable_catalina_tomcat7':
        ensure  => present,
        path    => '/etc/default/tomcat7',
        line    => "JAVA_OPTS=\"\$JAVA_OPTS -javaagent:${agent_runtime_directory}/javaagent.jar\"",
        require => File['tomcat_controller-info_xml'],
        notify  => Service['tomcat7'],
      }
    }
  }
  else
  {
    if $appdynamics::agent::tomcat_version == 6
    {
      file_line { 'disable_catalina_tomcat6':
        ensure            => absent,
        path              => '/etc/default/tomcat6',
        line              => "JAVA_OPTS=\"\$JAVA_OPTS -javaagent:${agent_runtime_directory}/javaagent.jar\"",
        match             => ".*${agent_runtime_directory}.*",
        match_for_absence => true,
        require           => File['tomcat_controller-info_xml'],
        notify            => Service['tomcat6'],
      }
    }
    elsif $appdynamics::agent::tomcat_version == 7
    {
      file_line { 'disable_catalina_tomcat7':
        ensure            => absent,
        path              => '/etc/default/tomcat7',
        line              => "JAVA_OPTS=\"\$JAVA_OPTS -javaagent:${agent_runtime_directory}/javaagent.jar\"",
        match             => ".*${agent_runtime_directory}.*",
        match_for_absence => true,
        require           => File['tomcat_controller-info_xml'],
        notify            => Service['tomcat7'],
      }
    }
  }
}