Defined Type: minecraft::plugin

Defined in:
manifests/plugin.pp

Overview

Parameters:

  • source (Any)
  • plugin_name (Any) (defaults to: $title)
  • ensure (Any) (defaults to: present)


1
2
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
# File 'manifests/plugin.pp', line 1

define minecraft::plugin (
  $source,
  $plugin_name  = $title,
  $ensure       = present
) {
  if $plugin_name =~ /^.*\.jar$/ {
    fail("minecraft plugin title ${plugin_name} must not end in '.jar'")
  }

  archive { $plugin_name:
    ensure  => $ensure,
    source  => $source,
    path    => "${minecraft::install_dir}/plugins/${plugin_name}.jar",
    notify  => Service['minecraft'],
    require => File["${minecraft::install_dir}/plugins"],
    user    => $minecraft::user,
  }

  if $ensure == present {
    $jar_ensure = file
  } else {
    $jar_ensure = $ensure
  }

  file { "${minecraft::install_dir}/plugins/${plugin_name}.jar":
    ensure  => $jar_ensure,
    owner   => $minecraft::user,
    group   => $minecraft::group,
    mode    => '0644',
    require => Archive[$plugin_name],
  }
}