blob: 7b7040dbb09e1ed27f2d1abc8fb845a2f536743a (
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
|
Puppet::Type.newtype(:dns_record) do
@doc = %q{
}
ensurable
newparam(:zone) do
desc "Zone which this record belongs to"
isrequired
end
newparam(:name, :namevar => true) do
desc "Hello"
end
newproperty(:type) do
desc "DNS Record type, such as A, or TXT"
newvalues(:A, :AAAA, :CNAME, :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"
# TODO How does newvalues work with an optional parameter?
# newvalues /([0-9]+[SsMmHhDdWw]?)+/
end
autonotify('dns_zone') { [ parameter(:zone).value ] }
end
|