Puppet Class: acli::install

Defined in:
manifests/install.pp

Overview

Class: acli::install

This class installs acli. It should not be called directly.

Authors

Copyright 2014 EvenUp.



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

class acli::install {

  $filename = "atlassian-cli-${acli::version}-distribution.zip"

  exec { 'fetch_acli':
    command   => "/usr/bin/curl -o ${filename} ${acli::source}/${filename}",
    cwd       => '/tmp',
    creates   => "/tmp/${filename}",
    path      => '/usr/bin/:/bin',
    logoutput => on_failure,
    unless    => "/usr/bin/test -d /opt/atlassian-cli-${acli::version}",
  }

  exec { 'extract_acli':
    command   => "/usr/bin/unzip /tmp/${filename} -d /opt/",
    cwd       => '/opt',
    creates   => "/opt/atlassian-cli-${acli::version}",
    path      => '/bin/:/usr/bin/',
    require   => Exec['fetch_acli'],
    logoutput => on_failure,
  }

  file { '/opt/acli':
    ensure  => 'link',
    target  => "/opt/atlassian-cli-${acli::version}",
    require => Exec['extract_acli'],
  }

}