chore: migrate media applications #299

Merged
unkinben merged 1 commits from benvin/migrate_media into develop 2025-05-25 20:27:18 +10:00
11 changed files with 78 additions and 67 deletions

View File

@ -61,3 +61,11 @@ profiles::yum::global::repos:
baseurl: https://download1.rpmfusion.org/nonfree/el/updates/%{facts.os.release.major}/%{facts.os.architecture}
gpgkey: https://download1.rpmfusion.org/nonfree/el/RPM-GPG-KEY-rpmfusion-nonfree-el-%{facts.os.release.major}
mirrorlist: absent
unkinben:
name: unkinben
descr: unkinben repository
target: /etc/yum.repos.d/unkin.repo
baseurl: https://git.query.consul/api/packages/unkinben/rpm/el8
gpgkey: https://git.query.consul/api/packages/unkinben/rpm/repository.key
gpgcheck: false
mirrorlist: absent

View File

@ -5,6 +5,9 @@ hiera_include:
- profiles::media::nzbget
- profiles::nginx::ldapauth
profiles::packages::include:
unrar: {}
# manage nzbget
nzbget::params::user: nzbget
nzbget::params::group: media

View File

@ -6,11 +6,5 @@ profiles::packages::include:
# disable mlock for vault nodes on lxd/incus
vault::disable_mlock: true
hiera_exclude:
# exclude the media profiles which are just cephfs-mount-management
- profiles::media::lidarr
- profiles::media::nzbget
- profiles::media::prowlarr
- profiles::media::radarr
- profiles::media::readarr
- profiles::media::sonarr
# manage jellyfin changes
profiles::media::jellyfin::data_dir: /shared/apps/jellyfin

View File

@ -1,9 +1,9 @@
# jellyfin params
class jellyfin::params (
Array[String] $packages = [
'jellyfin',
'jellyfin-web',
'jellyfin-server',
'jellyfin-ffmpeg-bin',
'SDL2',
'ffmpeg',
'ffmpeg-devel',

View File

@ -2,10 +2,10 @@
class profiles::media::jellyfin (
Stdlib::Absolutepath $media_root = '/shared/media',
Stdlib::Absolutepath $data_dir = '/data/jellyfin',
Stdlib::Absolutepath $lib_dir = '/data/jellyfin/var/lib',
Stdlib::Absolutepath $cache_dir = '/data/jellyfin/var/cache',
Stdlib::Absolutepath $config_dir = '/data/jellyfin/etc',
Stdlib::Absolutepath $log_dir = '/data/jellyfin/var/log',
Stdlib::Absolutepath $lib_dir = "${data_dir}/var/lib",
Stdlib::Absolutepath $cache_dir = "${data_dir}/var/cache",
Stdlib::Absolutepath $config_dir = "${data_dir}/etc",
Stdlib::Absolutepath $log_dir = "${data_dir}/var/log",
Stdlib::Absolutepath $ffmpeg_path = '/usr/local/bin/ffmpeg',
Stdlib::Absolutepath $sysconfig_file = '/etc/sysconfig/jellyfin',
Stdlib::Absolutepath $migration_flag = '/etc/sysconfig/jellyfin_migration_done',

View File

@ -3,15 +3,16 @@ class profiles::media::lidarr (
Stdlib::Absolutepath $media_root = '/shared/media',
) {
include profiles::ceph::client
# manage the sharedvol
profiles::storage::cephfsvol {"${::facts['networking']['fqdn']}_media":
mount => $media_root,
keyring => '/etc/ceph/ceph.client.media.keyring',
cephfs_name => 'media',
cephfs_fs => 'mediafs',
require => Profiles::Ceph::Keyring['media'],
if $facts['virtual'] != 'lxc' {
# manage the sharedvol
include profiles::ceph::client
profiles::storage::cephfsvol {"${::facts['networking']['fqdn']}_media":
mount => $media_root,
keyring => '/etc/ceph/ceph.client.media.keyring',
cephfs_name => 'media',
cephfs_fs => 'mediafs',
require => Profiles::Ceph::Keyring['media'],
}
}
# export haproxy balancemember

View File

@ -3,15 +3,16 @@ class profiles::media::nzbget (
Stdlib::Absolutepath $media_root = '/shared/media',
) {
include profiles::ceph::client
# manage the sharedvol
profiles::storage::cephfsvol {"${::facts['networking']['fqdn']}_media":
mount => $media_root,
keyring => '/etc/ceph/ceph.client.media.keyring',
cephfs_name => 'media',
cephfs_fs => 'mediafs',
require => Profiles::Ceph::Keyring['media'],
if $facts['virtual'] != 'lxc' {
# manage the sharedvol
include profiles::ceph::client
profiles::storage::cephfsvol {"${::facts['networking']['fqdn']}_media":
mount => $media_root,
keyring => '/etc/ceph/ceph.client.media.keyring',
cephfs_name => 'media',
cephfs_fs => 'mediafs',
require => Profiles::Ceph::Keyring['media'],
}
}
# export haproxy balancemember

View File

@ -3,15 +3,16 @@ class profiles::media::prowlarr (
Stdlib::Absolutepath $media_root = '/shared/media',
) {
include profiles::ceph::client
# manage the sharedvol
profiles::storage::cephfsvol {"${::facts['networking']['fqdn']}_media":
mount => $media_root,
keyring => '/etc/ceph/ceph.client.media.keyring',
cephfs_name => 'media',
cephfs_fs => 'mediafs',
require => Profiles::Ceph::Keyring['media'],
if $facts['virtual'] != 'lxc' {
# manage the sharedvol
include profiles::ceph::client
profiles::storage::cephfsvol {"${::facts['networking']['fqdn']}_media":
mount => $media_root,
keyring => '/etc/ceph/ceph.client.media.keyring',
cephfs_name => 'media',
cephfs_fs => 'mediafs',
require => Profiles::Ceph::Keyring['media'],
}
}
# export haproxy balancemember

View File

@ -3,15 +3,16 @@ class profiles::media::radarr (
Stdlib::Absolutepath $media_root = '/shared/media',
) {
include profiles::ceph::client
# manage the sharedvol
profiles::storage::cephfsvol {"${::facts['networking']['fqdn']}_media":
mount => $media_root,
keyring => '/etc/ceph/ceph.client.media.keyring',
cephfs_name => 'media',
cephfs_fs => 'mediafs',
require => Profiles::Ceph::Keyring['media'],
if $facts['virtual'] != 'lxc' {
# manage the sharedvol
include profiles::ceph::client
profiles::storage::cephfsvol {"${::facts['networking']['fqdn']}_media":
mount => $media_root,
keyring => '/etc/ceph/ceph.client.media.keyring',
cephfs_name => 'media',
cephfs_fs => 'mediafs',
require => Profiles::Ceph::Keyring['media'],
}
}
# export haproxy balancemember

View File

@ -3,15 +3,16 @@ class profiles::media::readarr (
Stdlib::Absolutepath $media_root = '/shared/media',
) {
include profiles::ceph::client
# manage the sharedvol
profiles::storage::cephfsvol {"${::facts['networking']['fqdn']}_media":
mount => $media_root,
keyring => '/etc/ceph/ceph.client.media.keyring',
cephfs_name => 'media',
cephfs_fs => 'mediafs',
require => Profiles::Ceph::Keyring['media'],
if $facts['virtual'] != 'lxc' {
# manage the sharedvol
include profiles::ceph::client
profiles::storage::cephfsvol {"${::facts['networking']['fqdn']}_media":
mount => $media_root,
keyring => '/etc/ceph/ceph.client.media.keyring',
cephfs_name => 'media',
cephfs_fs => 'mediafs',
require => Profiles::Ceph::Keyring['media'],
}
}
# export haproxy balancemember

View File

@ -3,15 +3,16 @@ class profiles::media::sonarr (
Stdlib::Absolutepath $media_root = '/shared/media',
) {
include profiles::ceph::client
# manage the sharedvol
profiles::storage::cephfsvol {"${::facts['networking']['fqdn']}_media":
mount => $media_root,
keyring => '/etc/ceph/ceph.client.media.keyring',
cephfs_name => 'media',
cephfs_fs => 'mediafs',
require => Profiles::Ceph::Keyring['media'],
if $facts['virtual'] != 'lxc' {
# manage the sharedvol
include profiles::ceph::client
profiles::storage::cephfsvol {"${::facts['networking']['fqdn']}_media":
mount => $media_root,
keyring => '/etc/ceph/ceph.client.media.keyring',
cephfs_name => 'media',
cephfs_fs => 'mediafs',
require => Profiles::Ceph::Keyring['media'],
}
}
# export haproxy balancemember