Puppet Class: dynatraceoneagent::uninstall

Defined in:
manifests/uninstall.pp

Summary

Uninstalls the Dynatrace OneAgent

Overview



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
# File 'manifests/uninstall.pp', line 4

class dynatraceoneagent::uninstall {

  $provider                            = $dynatraceoneagent::provider
  $install_dir                         = $dynatraceoneagent::install_dir
  $created_dir                         = $dynatraceoneagent::created_dir

  $created_dir_exists = find_file($created_dir)

  if $created_dir_exists {

    if ($::kernel == 'Linux' or $::osfamily == 'AIX') {
      exec { 'uninstall_oneagent':
        command   => "${install_dir}/agent/uninstall.sh",
        timeout   => 6000,
        provider  => $provider,
        logoutput => on_failure,
      }
    } elsif $::osfamily == 'Windows' {
      $uninstall_command = @(EOT)
        $app = Get-WmiObject win32_product -filter "Name like 'Dynatrace OneAgent'"
        msiexec /x $app.IdentifyingNumber /quiet /l*vx uninstall.log
        | EOT

      exec { 'uninstall_oneagent':
        command   => $uninstall_command,
        timeout   => 6000,
        provider  => powershell,
        logoutput => on_failure,
      }
    }
  }

}