summaryrefslogtreecommitdiff
path: root/lib/puppet/type/dns_record.rb
blob: 7f212dd7ba14089005c5e6b1e63169b4106822c3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
Puppet::Type.newtype(:dns_record) do
  @doc = %q{
  }

  # concat/lib/puppet/type/concat_file.rb
  ensurable

  newparam(:zone) do
    desc "Zone which this record belongs to"
    isrequired
  end

  newparam(:name, :namevar => true) do
    desc "Hello"
  end

  #newparam(:refresh) do
  #  desc "Refreshes"
  #end

  newproperty(:type) do
    desc "DNS Record type, such as A, or TXT"
    newvalues(:A, :AAAA, :CNAME, :NS, :PTR)
    isrequired
  end

  newproperty(:key) do
    desc "DNS Name"
    isrequired
  end

  newproperty(:value) do
    desc "Record contents, valid value depend on type"
    isrequired
  end

  newproperty(:ttl) do
    desc "Optional TTL for record"
  end

  autonotify(:dns_zone) { parameter(:zone).value }
  autobefore(:dns_zone) { parameter(:zone).value }
  autorequire(:dns_zone) { parameter(:zone).value }

end