feat: complete cobbler automation
- add facts to manage the /var/www/cobbler and /data/cobbler directories - move /var/www/cobbler -> /data/cobbler - create symlink from /var/www/cobbler -> /data/cobbler - ensure that cobbler nodes are set to permissive selinux mode
This commit is contained in:
@@ -6,4 +6,29 @@ class profiles::cobbler::install {
|
||||
$packages = $profiles::cobbler::params::packages
|
||||
|
||||
ensure_packages($packages, { ensure => 'present' })
|
||||
|
||||
# move the /var/www/cobbler directory to /data/cobbler
|
||||
if ! $facts['cobbler_var_www_islink'] and ! $facts['cobbler_data_exists'] {
|
||||
exec {'move_cobbler_data':
|
||||
command => 'mv /var/www/cobbler /data/cobbler',
|
||||
onlyif => 'test -d /var/www/cobbler',
|
||||
path => ['/bin', '/usr/bin'],
|
||||
before => Service['cobblerd'],
|
||||
}
|
||||
file { '/var/www/cobbler':
|
||||
ensure => 'link',
|
||||
target => '/data/cobbler',
|
||||
require => Exec['move_cobbler_data'],
|
||||
before => Service['httpd'],
|
||||
notify => Service['httpd'],
|
||||
}
|
||||
}
|
||||
if ! $facts['cobbler_var_www_exists'] and $facts['cobbler_data_exists'] {
|
||||
file { '/var/www/cobbler':
|
||||
ensure => 'link',
|
||||
target => '/data/cobbler',
|
||||
before => Service['httpd'],
|
||||
notify => Service['httpd'],
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -26,6 +26,11 @@ class profiles::cobbler::selinux inherits profiles::cobbler::params {
|
||||
seltype => 'cobbler_var_lib_t',
|
||||
pathspec => "${tftpboot_path}(/.*)?",
|
||||
}
|
||||
selinux::fcontext { '/data/cobbler':
|
||||
ensure => 'present',
|
||||
seltype => 'cobbler_var_lib_t',
|
||||
pathspec => '/data/cobbler(/.*)?',
|
||||
}
|
||||
|
||||
exec { "restorecon_${tftpboot_path}":
|
||||
path => ['/bin', '/usr/bin', '/sbin', '/usr/sbin'],
|
||||
@@ -33,5 +38,11 @@ class profiles::cobbler::selinux inherits profiles::cobbler::params {
|
||||
refreshonly => true,
|
||||
subscribe => Selinux::Fcontext[$tftpboot_path],
|
||||
}
|
||||
exec { 'restorecon_/data/cobbler':
|
||||
path => ['/bin', '/usr/bin', '/sbin', '/usr/sbin'],
|
||||
command => 'restorecon -Rv /data/cobbler',
|
||||
refreshonly => true,
|
||||
subscribe => Selinux::Fcontext['/data/cobbler'],
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user