Puppet Class: idea::base

Defined in:
manifests/base.pp

Overview

Class: idea::base

Install IntelliJ IDEA from the official vendor site. The required Java runtime environment will not be installed automatically.

Parameters

version

Specify the version of IntelliJ IDEA which should be installed.

url

Specify the absolute URL of the IntelliJ IDEA tarball. This overrides any version which has been set before.

build

Specify the directory of IntelliJ IDEA inside the tarball. You have to specify this for every new version of IntelliJ IDEA since it doesn’t match the version number or anything else which could be automatically set.

target

Specify the location of the symlink to the IntelliJ IDEA installation on the local filesystem.

timeout

Download timeout passed to archive module.

Variables

The variables being used by this module are named exactly like the class parameters with the prefix ‘idea_’, e. g. idea_version and idea_url.

Authors

Jochen Schalanda <j.schalanda@smarchive.de>

Copyright 2012, 2013 smarchive GmbH

Parameters:

  • version (Any)
  • url (Any)
  • build (Any)
  • target (Any)
  • timeout (Any)


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

class idea::base(
  $version,
  $url,
  $build,
  $target,
  $timeout,
) {

  Exec {
    path  => [
      '/usr/local/sbin', '/usr/local/bin',
      '/usr/sbin', '/usr/bin', '/sbin', '/bin',
    ],
    user  => 'root',
    group => 'root',
  }

  archive { "idea-${version}":
    ensure     => present,
    url        => $url,
    checksum   => false,
    src_target => '/var/tmp',
    target     => '/opt',
    extension  => 'tar.gz',
    timeout    => $timeout,
  }

  file { $target:
    ensure  => link,
    target  => "/opt/${build}",
    require => Archive["idea-${version}"],
  }
}