feat: add nzbget module/role
- add nzbget module - add nzbget ldap user/group
This commit is contained in:
@@ -0,0 +1,6 @@
|
||||
class nzbget::config (
|
||||
$user = $nzbget::params::user,
|
||||
$group = $nzbget::params::group,
|
||||
) {
|
||||
# todo
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
# manage nzbget
|
||||
class nzbget (
|
||||
$packages = $nzbget::params::packages,
|
||||
$user = $nzbget::params::user,
|
||||
$group = $nzbget::params::group,
|
||||
$manage_group = $nzbget::params::manage_group,
|
||||
$service_enable = $nzbget::params::service_enable,
|
||||
$service_name = $nzbget::params::service_name,
|
||||
$bind_address = $sonarr::params::bind_address,
|
||||
$port = $sonarr::params::port,
|
||||
) inherits nzbget::params {
|
||||
|
||||
include nzbget::install
|
||||
include nzbget::config
|
||||
include nzbget::service
|
||||
|
||||
Class['nzbget::install'] -> Class['nzbget::config'] -> Class['nzbget::service']
|
||||
}
|
||||
@@ -0,0 +1,29 @@
|
||||
# instsall nzbget
|
||||
class nzbget::install (
|
||||
$packages = $nzbget::packages,
|
||||
$user = $nzbget::user,
|
||||
$group = $nzbget::group,
|
||||
$manage_group = $nzbget::manage_group,
|
||||
) {
|
||||
|
||||
$_packages = $packages ? {
|
||||
Array => true,
|
||||
default => false,
|
||||
}
|
||||
|
||||
if $_packages {
|
||||
ensure_packages($packages, {ensure => 'installed'})
|
||||
}
|
||||
|
||||
if $manage_group {
|
||||
group { $group:
|
||||
ensure => present,
|
||||
}
|
||||
}
|
||||
|
||||
user { $user:
|
||||
ensure => present,
|
||||
shell => '/sbin/nologin',
|
||||
groups => $group,
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
# nzbget params
|
||||
class nzbget::params (
|
||||
Array[String] $packages = [
|
||||
'nzbget'
|
||||
],
|
||||
String $user = 'nzbget',
|
||||
String $group = 'nzbget',
|
||||
String $manage_group = true,
|
||||
Stdlib::Host $bind_address = '127.0.0.1',
|
||||
Stdlib::Port $port = 6789,
|
||||
) { }
|
||||
@@ -0,0 +1,17 @@
|
||||
# manage nzbget service
|
||||
class nzbget::service (
|
||||
$service_enable = $nzbget::service_enable,
|
||||
$service_name = $nzbget::service_name,
|
||||
$user = $nzbget::user,
|
||||
$group = $nzbget::group,
|
||||
) {
|
||||
if $service_enable {
|
||||
include ::systemd
|
||||
|
||||
systemd::unit_file { "${service_name}.service":
|
||||
content => template('nzbget/nzbget.service.erb'),
|
||||
enable => true,
|
||||
active => true,
|
||||
}
|
||||
}
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,17 @@
|
||||
[Unit]
|
||||
Description=<%= @service_name %> Daemon
|
||||
Documentation=http://nzbget.com/documentation/
|
||||
After=network.target
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
User=<%= @user %>
|
||||
Group=<%= @group %>
|
||||
WorkingDirectory=/var/lib/nzbget
|
||||
ExecStart=/usr/bin/nzbget -s -c /var/lib/nzbget/nzbget.conf -o OutputMode=log -o WriteLog=none
|
||||
ExecReload=/usr/bin/nzbget -O -c /var/lib/nzbget/nzbget.conf
|
||||
ExecStop=/usr/bin/nzbget -Q -c /var/lib/nzbget/nzbget.conf
|
||||
Restart=on-failure
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
Reference in New Issue
Block a user