Puppet Class: nfsen::repo

Defined in:
manifests/repo.pp

Overview

Class: nfsen::repo

Controls the NfSen source



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

class nfsen::repo {

  if $::nfsen::custom_repo {

    # Installs the repo from a customized source e.g. github
    vcsrepo { '/opt/nfsen':
      ensure   => present,
      provider => $::nfsen::custom_repo_provider,
      source   => $::nfsen::custom_repo_source,
    }

  } else {

    # Installs vanilla code from sourceforge (is that still a thing??)
    $_source_uri = 'http://sourceforge.net/projects/nfsen/files/stable'
    $_source_file = "/tmp/nfsen-${::nfsen::version}.tar.gz"

    exec { "wget -q ${_source_uri}/nfsen-${::nfsen::version}/nfsen-${::nfsen::version}.tar.gz -O- > ${_source_file}":
      creates => $_source_file,
    } ~>

    exec { "tar xf ${_source_file} -C /opt --transform 's!^[^/]\\+\\($\\|/\\)!nfsen\\1!'":
      creates => '/opt/nfsen',
    }

  }

}