Puppet Class: tf2_server::install

Inherits:
tf2_server
Defined in:
manifests/install.pp

Overview



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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
# File 'manifests/install.pp', line 1

class tf2_server::install inherits tf2_server {
  require tf2_server::steamcmd
  package { 'screen':
    ensure => present,
  }
  file { "$server_install_dir/steamcmd.sh":
    ensure => file,
    owner  => "$server_owner",
    mode   => "764",
  }
  file { "$server_install_dir/linux32/steamcmd":
    ensure => file,
    owner => "$server_owner",
    mode  => "764",
  }
  file { "$server_install_dir/tf2_ds.txt":
    ensure  => file,
    content => "login anonymous\nforce_install_dir ./tf2\napp_update 232250 validate\nquit\n",
  }
  file { "$server_install_dir/update.sh":
    ensure  => file,
    content => "#!/bin/sh\n/home/steam/hlds/steamcmd.sh +runscript tf2_ds.txt",
    owner   => "$server_owner",
    mode    => "764",
  }
  exec { 'install_server':
    command   => "./update.sh",
    cwd => "$server_install_dir",
    provider => "shell",
    timeout => 0,
    logoutput => true,
    unless => "cat $server_install_dir/tf2/tf/cfg/server.cfg",
    require => [File["$server_install_dir/steamcmd.sh"], File["$server_install_dir/linux32/steamcmd"],
                File["$server_install_dir/tf2_ds.txt"], File["$server_install_dir/update.sh"]],
    before => [File["$server_install_dir/tf2/steam_appid.txt"], File["/etc/init.d/tf2-server"]],
  }
  file { "$server_install_dir/tf2/steam_appid.txt":
    ensure => file,
    content => "440",
  }
  file { "/etc/init.d/tf2-server":
    ensure => file,
    content => template("tf2_server/init_script.erb"),
    mode => "764",
    owner => "root",
    require => [Exec['install_server']],
  }
}