Browse Source

bttrack: Added bitorrent tracker recipe (refs: #216)

Sebastien Badia 8 years ago
parent
commit
63ada9bfe6
2 changed files with 61 additions and 0 deletions
  1. 48 0
      manifests/bttrack.pp
  2. 13 0
      templates/bttrack/bttrack.service.erb

+ 48 - 0
manifests/bttrack.pp

@@ -0,0 +1,48 @@
+# Module:: public
+# Manifest:: bttrack.pp
+
+class public::bttrack(
+  $port = 6969,
+  $ipv6_enabled = 0,
+  $ipv6_binds_v4 = 0,
+  $bind = '',
+  $logfile = '/var/log/bttrack.log',
+  $dfile = '/var/run/bttrack.state',
+  $allowed_dir = '/var/lib/bttrack',
+  $nat_check = 0,
+) {
+
+  package { 'bittornado':
+    ensure => installed,
+  }
+
+  file { '/etc/systemd/system/bttrack.service':
+    ensure  => file,
+    owner   => root,
+    group   => staff,
+    mode    => '0755',
+    content => template('public/bttrack/bttrack.service.erb'),
+    notify  => Service['bttrack'],
+    require => User['bttrack'],
+  }
+
+  user { 'bttrack':
+    ensure  => present,
+    system  => true,
+    comment => 'Bittorent Tracker User',
+  }
+
+  service { 'bttrack':
+    ensure  => running,
+    enable  => true,
+    require => File['/etc/systemd/system/bttrack.service'],
+  }
+
+  file { $allowed_dir:
+    ensure => directory,
+    owner  => 'bttrack',
+    group  => 'bttrack',
+    mode   => '0755',
+  }
+
+}

+ 13 - 0
templates/bttrack/bttrack.service.erb

@@ -0,0 +1,13 @@
+[Unit]
+Description=Bittorent LDN Tracker
+After=network.target auditd.service
+
+[Service]
+ExecStart=/usr/bin/bttrack --dfile <%= @dfile %> --logfile <%= @logfile %> --port <%= @port %> --nat_check <%= @nat_check %> --allowed_dir <%= @allowed_dir %> --ipv6_enabled <%= @ipv6_enabled %> --ipv6_binds_v4 <%= @ipv6_binds_v4 %> --bind <%= @bind %>
+ExecReload=/bin/kill -HUP $MAINPID
+KillMode=process
+Restart=on-failure
+
+[Install]
+WantedBy=multi-user.target
+Alias=tracker.service