aboutsummaryrefslogtreecommitdiff
path: root/manifests/vserver/ip/binding.pp
blob: 2489b697e5a3757b18d7234ef6eee482dd5a12c4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
define virtual::vserver::ip::binding($vserver, $ip, $ensure) {
  case $ensure {
    connected: {
      file { "/etc/vservers/${vserver}/interfaces/${name}":
        ensure  => "/etc/vservers/local-interfaces/${ip}/",
        require => [ File["/etc/vservers/local-interfaces/${ip}"], Exec["vserver_instance_${vserver}"] ],
        notify  => Exec["vs_restart_${vserver}"],
      }
    }
    disconnected: {
      file { "/etc/vservers/${vserver}/interfaces/${name}":
        ensure => absent,
      }
    }
    default: {
      err( "${fqdn}: vs_ip: ${vserver} -> ${ip}: unknown ensure: '${ensure}'" )
    }
  }
}