puppet 0.13.6 → 0.16.0

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of puppet might be problematic. Click here for more details.

Files changed (149) hide show
  1. data/CHANGELOG +57 -0
  2. data/Rakefile +38 -410
  3. data/bin/puppet +14 -12
  4. data/bin/puppetca +1 -3
  5. data/bin/puppetd +25 -7
  6. data/bin/puppetdoc +161 -104
  7. data/bin/puppetmasterd +4 -4
  8. data/conf/epm.list +8 -0
  9. data/conf/redhat/client.init +6 -1
  10. data/conf/redhat/no-chuser-0.15.1.patch +38 -0
  11. data/conf/redhat/puppet.spec +20 -5
  12. data/conf/redhat/puppetd.conf +1 -1
  13. data/conf/redhat/puppetmasterd.conf +1 -1
  14. data/conf/redhat/server.init +2 -4
  15. data/examples/code/snippets/{casestatement → casestatement.pp} +12 -1
  16. data/examples/code/snippets/selectorvalues.pp +15 -0
  17. data/examples/code/snippets/singleselector.pp +22 -0
  18. data/examples/code/snippets/tag.pp +9 -0
  19. data/ext/module_puppet +1 -1
  20. data/install.rb +303 -303
  21. data/lib/puppet.rb +7 -9
  22. data/lib/puppet/client.rb +18 -5
  23. data/lib/puppet/client/dipper.rb +12 -10
  24. data/lib/puppet/client/master.rb +113 -41
  25. data/lib/puppet/client/pelement.rb +20 -0
  26. data/lib/puppet/config.rb +113 -6
  27. data/lib/puppet/element.rb +1 -3
  28. data/lib/puppet/event.rb +12 -23
  29. data/lib/puppet/filetype.rb +93 -5
  30. data/lib/puppet/inifile.rb +201 -0
  31. data/lib/puppet/log.rb +18 -6
  32. data/lib/puppet/parameter.rb +80 -29
  33. data/lib/puppet/parser/ast.rb +6 -4
  34. data/lib/puppet/parser/ast/caseopt.rb +13 -4
  35. data/lib/puppet/parser/ast/casestatement.rb +2 -2
  36. data/lib/puppet/parser/ast/component.rb +4 -14
  37. data/lib/puppet/parser/ast/hostclass.rb +1 -1
  38. data/lib/puppet/parser/ast/leaf.rb +12 -0
  39. data/lib/puppet/parser/ast/node.rb +4 -4
  40. data/lib/puppet/parser/ast/objectdef.rb +5 -51
  41. data/lib/puppet/parser/ast/selector.rb +2 -0
  42. data/lib/puppet/parser/ast/tag.rb +26 -0
  43. data/lib/puppet/parser/interpreter.rb +89 -74
  44. data/lib/puppet/parser/lexer.rb +4 -3
  45. data/lib/puppet/parser/parser.rb +440 -378
  46. data/lib/puppet/parser/scope.rb +844 -887
  47. data/lib/puppet/server.rb +12 -1
  48. data/lib/puppet/server/authconfig.rb +166 -0
  49. data/lib/puppet/server/authstore.rb +8 -6
  50. data/lib/puppet/server/ca.rb +23 -26
  51. data/lib/puppet/server/filebucket.rb +24 -23
  52. data/lib/puppet/server/fileserver.rb +116 -47
  53. data/lib/puppet/server/master.rb +58 -19
  54. data/lib/puppet/server/pelement.rb +176 -0
  55. data/lib/puppet/server/rights.rb +78 -0
  56. data/lib/puppet/server/servlet.rb +19 -6
  57. data/lib/puppet/sslcertificates.rb +4 -2
  58. data/lib/puppet/sslcertificates/ca.rb +66 -34
  59. data/lib/puppet/storage.rb +20 -26
  60. data/lib/puppet/transaction.rb +49 -92
  61. data/lib/puppet/type.rb +142 -35
  62. data/lib/puppet/type/cron.rb +29 -14
  63. data/lib/puppet/type/exec.rb +92 -35
  64. data/lib/puppet/type/group.rb +29 -11
  65. data/lib/puppet/type/nameservice.rb +50 -1
  66. data/lib/puppet/type/nameservice/netinfo.rb +68 -1
  67. data/lib/puppet/type/nameservice/objectadd.rb +1 -0
  68. data/lib/puppet/type/package.rb +150 -109
  69. data/lib/puppet/type/package/apple.rb +27 -0
  70. data/lib/puppet/type/package/apt.rb +1 -0
  71. data/lib/puppet/type/package/darwinport.rb +97 -0
  72. data/lib/puppet/type/package/dpkg.rb +10 -2
  73. data/lib/puppet/type/package/freebsd.rb +19 -0
  74. data/lib/puppet/type/package/{bsd.rb → openbsd.rb} +36 -7
  75. data/lib/puppet/type/package/ports.rb +98 -0
  76. data/lib/puppet/type/package/rpm.rb +43 -7
  77. data/lib/puppet/type/package/sun.rb +53 -36
  78. data/lib/puppet/type/package/yum.rb +5 -16
  79. data/lib/puppet/type/parsedtype.rb +41 -29
  80. data/lib/puppet/type/parsedtype/host.rb +13 -5
  81. data/lib/puppet/type/parsedtype/mount.rb +250 -0
  82. data/lib/puppet/type/parsedtype/port.rb +8 -6
  83. data/lib/puppet/type/pfile.rb +284 -30
  84. data/lib/puppet/type/pfile/checksum.rb +96 -68
  85. data/lib/puppet/type/pfile/content.rb +16 -13
  86. data/lib/puppet/type/pfile/ensure.rb +64 -126
  87. data/lib/puppet/type/pfile/group.rb +12 -5
  88. data/lib/puppet/type/pfile/mode.rb +16 -4
  89. data/lib/puppet/type/pfile/source.rb +47 -73
  90. data/lib/puppet/type/pfile/target.rb +81 -0
  91. data/lib/puppet/type/pfile/uid.rb +10 -3
  92. data/lib/puppet/type/pfilebucket.rb +12 -3
  93. data/lib/puppet/type/schedule.rb +5 -1
  94. data/lib/puppet/type/service.rb +138 -66
  95. data/lib/puppet/type/service/debian.rb +9 -3
  96. data/lib/puppet/type/service/init.rb +51 -56
  97. data/lib/puppet/type/service/smf.rb +16 -6
  98. data/lib/puppet/type/state.rb +71 -32
  99. data/lib/puppet/type/symlink.rb +12 -7
  100. data/lib/puppet/type/tidy.rb +5 -1
  101. data/lib/puppet/type/user.rb +116 -20
  102. data/lib/puppet/type/yumrepo.rb +314 -0
  103. data/lib/puppet/util.rb +84 -14
  104. data/test/client/client.rb +41 -18
  105. data/test/client/master.rb +50 -4
  106. data/test/executables/puppetbin.rb +31 -4
  107. data/test/executables/puppetca.rb +18 -2
  108. data/test/language/ast.rb +201 -31
  109. data/test/language/interpreter.rb +8 -2
  110. data/test/{parser → language}/lexer.rb +1 -1
  111. data/test/language/node.rb +84 -0
  112. data/test/{parser → language}/parser.rb +1 -1
  113. data/test/language/scope.rb +101 -2
  114. data/test/language/snippets.rb +23 -2
  115. data/test/other/config.rb +99 -1
  116. data/test/other/filetype.rb +95 -0
  117. data/test/other/inifile.rb +114 -0
  118. data/test/other/log.rb +3 -2
  119. data/test/other/transactions.rb +55 -10
  120. data/test/puppet/utiltest.rb +25 -1
  121. data/test/puppettest.rb +140 -46
  122. data/test/server/authconfig.rb +56 -0
  123. data/test/server/bucket.rb +32 -18
  124. data/test/server/fileserver.rb +75 -30
  125. data/test/server/master.rb +27 -4
  126. data/test/server/pelement.rb +298 -0
  127. data/test/server/rights.rb +41 -0
  128. data/test/server/server.rb +2 -2
  129. data/test/tagging/tagging.rb +100 -1
  130. data/test/types/basic.rb +3 -3
  131. data/test/types/cron.rb +24 -1
  132. data/test/types/exec.rb +99 -1
  133. data/test/types/file.rb +298 -2
  134. data/test/types/filebucket.rb +4 -15
  135. data/test/types/filesources.rb +43 -14
  136. data/test/types/group.rb +1 -13
  137. data/test/types/mount.rb +277 -0
  138. data/test/types/package.rb +164 -33
  139. data/test/types/parameter.rb +107 -0
  140. data/test/types/port.rb +2 -1
  141. data/test/types/service.rb +37 -2
  142. data/test/types/state.rb +92 -0
  143. data/test/types/symlink.rb +30 -2
  144. data/test/types/tidy.rb +2 -14
  145. data/test/types/type.rb +35 -1
  146. data/test/types/user.rb +110 -1
  147. data/test/types/yumrepo.rb +95 -0
  148. metadata +316 -290
  149. data/test/types/filetype.rb +0 -160
@@ -1,160 +0,0 @@
1
- if __FILE__ == $0
2
- $:.unshift '..'
3
- $:.unshift '../../lib'
4
- $puppetbase = "../../../../language/trunk"
5
- end
6
-
7
- require 'puppet'
8
- #require 'puppet/type/typegen/filetype'
9
- #require 'puppet/type/typegen/filerecord'
10
- require 'test/unit'
11
-
12
- #class TestFileType < Test::Unit::TestCase
13
- class TestFileType
14
- def disabled_setup
15
-
16
- @passwdtype = Puppet.type(:filetype)["passwd"]
17
- if @passwdtype.nil?
18
- assert_nothing_raised() {
19
- @passwdtype = Puppet.type(:filetype).createtype(
20
- :name => "passwd"
21
- )
22
- @passwdtype.addrecord(
23
- :name => "user",
24
- :splitchar => ":",
25
- :fields => %w{name password uid gid gcos home shell}
26
- )
27
- }
28
- end
29
-
30
- @syslogtype = Puppet.type(:filetype)["syslog"]
31
- if @syslogtype.nil?
32
- assert_nothing_raised() {
33
- @syslogtype = Puppet.type(:filetype).createtype(
34
- :escapednewlines => true,
35
- :name => "syslog"
36
- )
37
- @syslogtype.addrecord(
38
- :name => "data",
39
- :regex => %r{^([^#\s]+)\s+(\S+)$},
40
- :joinchar => "\t",
41
- :fields => %w{logs dest}
42
- )
43
- @syslogtype.addrecord(
44
- :name => "comment",
45
- :regex => %r{^(#.*)$},
46
- :joinchar => "", # not really necessary...
47
- :fields => %w{comment}
48
- )
49
- @syslogtype.addrecord(
50
- :name => "blank",
51
- :regex => %r{^(\s*)$},
52
- :joinchar => "", # not really necessary...
53
- :fields => %w{blank}
54
- )
55
- }
56
- end
57
-
58
- end
59
-
60
- def disabled_test_passwd1_nochange
61
- file = nil
62
- type = nil
63
- assert_nothing_raised() {
64
- file = @passwdtype.new("/etc/passwd")
65
- }
66
- assert_nothing_raised() {
67
- file.retrieve
68
- }
69
-
70
- assert(file.insync?)
71
-
72
- contents = ""
73
- ::File.open("/etc/passwd") { |ofile|
74
- ofile.each { |line|
75
- contents += line
76
- }
77
- }
78
-
79
- assert_equal(
80
- contents,
81
- file.to_s
82
- )
83
-
84
- end
85
-
86
- def disabled_test_passwd2_change
87
- file = nil
88
- type = nil
89
- newfile = tempfile()
90
- Kernel.system("cp /etc/passwd #{newfile}")
91
- assert_nothing_raised() {
92
- file = @passwdtype.new(newfile)
93
- }
94
- assert_nothing_raised() {
95
- file.retrieve
96
- }
97
-
98
- assert(file.insync?)
99
-
100
- assert_nothing_raised() {
101
- file.add("user") { |obj|
102
- obj["name"] = "yaytest"
103
- obj["password"] = "x"
104
- obj["uid"] = "10000"
105
- obj["gid"] = "10000"
106
- obj["home"] = "/home/yaytest"
107
- obj["gcos"] = "The Yaytest"
108
- obj["shell"] = "/bin/sh"
109
- }
110
- }
111
-
112
- assert(!file.insync?)
113
-
114
- assert_nothing_raised() {
115
- file.evaluate
116
- }
117
-
118
- assert(file.insync?)
119
-
120
- assert_nothing_raised() {
121
- file.delete("bin")
122
- }
123
-
124
- assert(!file.insync?)
125
-
126
- assert_nothing_raised() {
127
- file.evaluate
128
- }
129
-
130
- assert(file.insync?)
131
- end
132
-
133
- def disabled_test_syslog_nochange
134
- file = nil
135
- type = nil
136
- syslog = File.join($puppetbase, "examples/root/etc/debian-syslog.conf")
137
- assert_nothing_raised() {
138
- file = @syslogtype.new(syslog)
139
- }
140
- assert_nothing_raised() {
141
- file.retrieve
142
- }
143
-
144
- assert(file.insync?)
145
-
146
- contents = ""
147
- ::File.open(syslog) { |ofile|
148
- ofile.each { |line|
149
- contents += line
150
- }
151
- }
152
- #assert_equal(
153
- # contents,
154
- # file.to_s
155
- #)
156
-
157
- end
158
- end
159
-
160
- # $Id: filetype.rb 873 2006-02-07 23:12:33Z luke $