Skip to content
Snippets Groups Projects
sync_scripts.pp 1.84 KiB
Newer Older
# Manage the sync scripts and their configurations.

# the reason that each one is selected seperately is that not all environments get the same sync scripts.
# while these are intended for install on the tools server,
# this is still flexible enough to put it on the master

class su_ldap::sync_scripts (
  $ldap_master_fqdn                   = undef,
  # select the sync scripts one by one in the hiera file
  $enable_ldap_wg_maint               = false,
  $enable_ldap_sync_attribute         = false,
  $enable_ldap_group_maint            = false,
  $enable_ldap_sync_sugal_attributes  = false,
  $enable_ldap_alias_maint            = false,
  $enable_posix_account_sync          = false,
  $enable_ldap_reports                = false,
Adam Lewenberg's avatar
Adam Lewenberg committed
  if ($enable_ldap_wg_maint) {
    class { 'su_ldap::syncs::ldap_wg_maint':
Adam Lewenberg's avatar
Adam Lewenberg committed
      ensure => present,
    }
  }
  if ($enable_ldap_group_maint) {
    class { 's_ldap::base::syncs::ldap_group_maint':
      ensure => present
    }
  }

  if ($enable_ldap_sync_sugal_attributes) {
    class { 'su_ldap::syncs::ldap_sync_sugal_attributes':
      ensure => present
    }
  }

  if () {
    class { 'su_ldap::syncs::ldap_sync_suprivilegegroup':
      ensure => present
    }
  }

  if () {
    class{ 'su_ldap::syncs::ldap_alias_maint':
      ensure => present
    }

  }

  if ($enable_posix_account_sync) {
    su_ldap::syncs::posix_account_sync { 'aeroastroarl': ensure => present }
    su_ldap::syncs::posix_account_sync { 'anesthesia':   ensure => present }
    su_ldap::syncs::posix_account_sync { 'statistics':   ensure => present }
  }

  if ($enable_ldap_reports) {
    class{ 'su_ldap::syncs::ldap-reports':
      ensure => present
    }
  }

        file { '/etc/cron.d/ldap-reports':
          ensure => present,
          mode   => '0644',
          source => "puppet:///modules/s_ldap/etc/cron.d/ldap-reports",
        }