puppet 5.5.17-x86-mingw32 → 5.5.18-x86-mingw32
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.
- checksums.yaml +4 -4
- data/CODEOWNERS +1 -1
- data/Gemfile +2 -3
- data/Gemfile.lock +35 -31
- data/ext/build_defaults.yaml +1 -0
- data/ext/cert_inspector +3 -3
- data/ext/puppet-test +2 -2
- data/ext/regexp_nodes/regexp_nodes.rb +4 -4
- data/ext/windows/service/daemon.rb +54 -8
- data/install.rb +6 -6
- data/lib/puppet/application.rb +1 -1
- data/lib/puppet/application/apply.rb +2 -2
- data/lib/puppet/application/describe.rb +3 -9
- data/lib/puppet/application/doc.rb +1 -1
- data/lib/puppet/application/lookup.rb +1 -1
- data/lib/puppet/application/script.rb +2 -2
- data/lib/puppet/configurer.rb +86 -28
- data/lib/puppet/configurer/downloader.rb +2 -6
- data/lib/puppet/defaults.rb +17 -4
- data/lib/puppet/error.rb +9 -1
- data/lib/puppet/external/nagios/base.rb +1 -1
- data/lib/puppet/face/ca.rb +1 -1
- data/lib/puppet/face/module/list.rb +5 -5
- data/lib/puppet/face/module/search.rb +1 -1
- data/lib/puppet/face/module/uninstall.rb +1 -1
- data/lib/puppet/face/module/upgrade.rb +1 -1
- data/lib/puppet/file_serving/http_metadata.rb +1 -1
- data/lib/puppet/file_system.rb +0 -8
- data/lib/puppet/file_system/memory_file.rb +1 -1
- data/lib/puppet/file_system/posix.rb +3 -2
- data/lib/puppet/forge.rb +3 -3
- data/lib/puppet/functions/epp.rb +4 -4
- data/lib/puppet/functions/inline_epp.rb +5 -5
- data/lib/puppet/gettext/module_translations.rb +1 -1
- data/lib/puppet/graph/rb_tree_map.rb +2 -2
- data/lib/puppet/graph/simple_graph.rb +6 -5
- data/lib/puppet/indirector/file_bucket_file/file.rb +1 -1
- data/lib/puppet/indirector/hiera.rb +2 -0
- data/lib/puppet/indirector/resource/ral.rb +1 -3
- data/lib/puppet/indirector/resource/validator.rb +1 -1
- data/lib/puppet/interface.rb +2 -1
- data/lib/puppet/loaders.rb +0 -1
- data/lib/puppet/metatype/manager.rb +1 -1
- data/lib/puppet/module.rb +1 -1
- data/lib/puppet/module_tool/applications/builder.rb +1 -1
- data/lib/puppet/module_tool/applications/installer.rb +1 -1
- data/lib/puppet/module_tool/applications/uninstaller.rb +3 -3
- data/lib/puppet/module_tool/metadata.rb +1 -1
- data/lib/puppet/module_tool/shared_behaviors.rb +4 -4
- data/lib/puppet/module_tool/tar/mini.rb +1 -1
- data/lib/puppet/network/http/api/indirected_routes.rb +12 -11
- data/lib/puppet/network/http/connection.rb +10 -12
- data/lib/puppet/network/http/pool.rb +2 -0
- data/lib/puppet/network/http/rack/rest.rb +2 -2
- data/lib/puppet/network/http/site.rb +1 -1
- data/lib/puppet/network/resolver.rb +2 -2
- data/lib/puppet/node/environment.rb +4 -2
- data/lib/puppet/parser/ast.rb +1 -1
- data/lib/puppet/parser/ast/resourceparam.rb +1 -1
- data/lib/puppet/parser/functions.rb +1 -1
- data/lib/puppet/parser/functions/epp.rb +3 -3
- data/lib/puppet/parser/functions/inline_epp.rb +5 -5
- data/lib/puppet/pops/evaluator/collectors/catalog_collector.rb +1 -1
- data/lib/puppet/pops/evaluator/collectors/exported_collector.rb +1 -1
- data/lib/puppet/pops/evaluator/external_syntax_support.rb +3 -2
- data/lib/puppet/pops/evaluator/runtime3_support.rb +4 -4
- data/lib/puppet/pops/loaders.rb +1 -1
- data/lib/puppet/pops/lookup/hiera_config.rb +1 -0
- data/lib/puppet/pops/lookup/sub_lookup.rb +1 -1
- data/lib/puppet/pops/merge_strategy.rb +22 -18
- data/lib/puppet/pops/parser/heredoc_support.rb +1 -1
- data/lib/puppet/pops/parser/interpolation_support.rb +4 -4
- data/lib/puppet/pops/parser/locator.rb +1 -1
- data/lib/puppet/pops/parser/pn_parser.rb +17 -16
- data/lib/puppet/pops/puppet_stack.rb +51 -48
- data/lib/puppet/pops/types/p_sensitive_type.rb +1 -1
- data/lib/puppet/pops/types/string_converter.rb +10 -10
- data/lib/puppet/pops/types/types.rb +3 -3
- data/lib/puppet/property.rb +1 -1
- data/lib/puppet/property/ensure.rb +1 -1
- data/lib/puppet/provider/augeas/augeas.rb +1 -1
- data/lib/puppet/provider/cron/crontab.rb +1 -1
- data/lib/puppet/provider/exec.rb +6 -2
- data/lib/puppet/provider/mount.rb +1 -1
- data/lib/puppet/provider/mount/parsed.rb +8 -8
- data/lib/puppet/provider/nameservice/directoryservice.rb +1 -1
- data/lib/puppet/provider/nameservice/pw.rb +2 -2
- data/lib/puppet/provider/package/dnfmodule.rb +87 -0
- data/lib/puppet/provider/package/dpkg.rb +3 -12
- data/lib/puppet/provider/package/openbsd.rb +1 -1
- data/lib/puppet/provider/package/pip.rb +34 -9
- data/lib/puppet/provider/package/portage.rb +4 -4
- data/lib/puppet/provider/package/rpm.rb +6 -6
- data/lib/puppet/provider/package/windows/package.rb +1 -1
- data/lib/puppet/provider/package/yum.rb +1 -1
- data/lib/puppet/provider/package_targetable.rb +5 -4
- data/lib/puppet/provider/parsedfile.rb +1 -1
- data/lib/puppet/provider/scheduled_task/win32_taskscheduler.rb +3 -3
- data/lib/puppet/provider/service/daemontools.rb +9 -9
- data/lib/puppet/provider/service/openbsd.rb +1 -1
- data/lib/puppet/provider/service/rcng.rb +2 -2
- data/lib/puppet/provider/service/runit.rb +2 -8
- data/lib/puppet/provider/service/systemd.rb +8 -8
- data/lib/puppet/provider/user/directoryservice.rb +1 -1
- data/lib/puppet/provider/user/hpux.rb +1 -1
- data/lib/puppet/provider/user/user_role_add.rb +1 -1
- data/lib/puppet/provider/user/useradd.rb +22 -13
- data/lib/puppet/provider/user/windows_adsi.rb +4 -5
- data/lib/puppet/provider/yumrepo/inifile.rb +2 -2
- data/lib/puppet/reference/indirection.rb +2 -2
- data/lib/puppet/reference/metaparameter.rb +1 -3
- data/lib/puppet/reference/providers.rb +1 -1
- data/lib/puppet/reference/type.rb +3 -9
- data/lib/puppet/reports.rb +1 -1
- data/lib/puppet/resource.rb +1 -1
- data/lib/puppet/resource/catalog.rb +1 -1
- data/lib/puppet/settings.rb +3 -3
- data/lib/puppet/settings/environment_conf.rb +1 -0
- data/lib/puppet/ssl/certificate_authority/interface.rb +1 -1
- data/lib/puppet/ssl/certificate_factory.rb +2 -2
- data/lib/puppet/ssl/host.rb +3 -3
- data/lib/puppet/ssl/oids.rb +1 -1
- data/lib/puppet/transaction/report.rb +1 -1
- data/lib/puppet/type.rb +2 -4
- data/lib/puppet/type/cron.rb +1 -1
- data/lib/puppet/type/exec.rb +7 -3
- data/lib/puppet/type/file.rb +1 -2
- data/lib/puppet/type/file/data_sync.rb +5 -1
- data/lib/puppet/type/group.rb +4 -2
- data/lib/puppet/type/interface.rb +1 -1
- data/lib/puppet/type/notify.rb +3 -2
- data/lib/puppet/type/package.rb +2 -2
- data/lib/puppet/type/schedule.rb +1 -1
- data/lib/puppet/type/selboolean.rb +17 -3
- data/lib/puppet/type/service.rb +1 -1
- data/lib/puppet/type/user.rb +4 -2
- data/lib/puppet/util.rb +35 -12
- data/lib/puppet/util/command_line/trollop.rb +1 -1
- data/lib/puppet/util/http_proxy.rb +8 -14
- data/lib/puppet/util/instance_loader.rb +1 -1
- data/lib/puppet/util/log.rb +1 -1
- data/lib/puppet/util/log/destinations.rb +2 -2
- data/lib/puppet/util/logging.rb +30 -18
- data/lib/puppet/util/metric.rb +2 -2
- data/lib/puppet/util/monkey_patches.rb +1 -1
- data/lib/puppet/util/nagios_maker.rb +2 -2
- data/lib/puppet/util/network_device/cisco/device.rb +1 -1
- data/lib/puppet/util/network_device/cisco/interface.rb +2 -2
- data/lib/puppet/util/network_device/transport/ssh.rb +1 -1
- data/lib/puppet/util/provider_features.rb +2 -4
- data/lib/puppet/util/rdoc.rb +1 -1
- data/lib/puppet/util/reference.rb +1 -1
- data/lib/puppet/util/resource_template.rb +1 -1
- data/lib/puppet/util/selinux.rb +3 -1
- data/lib/puppet/util/windows/adsi.rb +58 -28
- data/lib/puppet/util/windows/registry.rb +7 -5
- data/lib/puppet/vendor.rb +1 -1
- data/lib/puppet/version.rb +1 -1
- data/lib/puppet_pal.rb +2 -2
- data/locales/puppet.pot +115 -95
- data/man/man5/puppet.conf.5 +21 -5
- data/man/man8/puppet-agent.8 +1 -1
- data/man/man8/puppet-apply.8 +1 -1
- data/man/man8/puppet-ca.8 +1 -1
- data/man/man8/puppet-catalog.8 +1 -1
- data/man/man8/puppet-cert.8 +1 -1
- data/man/man8/puppet-certificate.8 +1 -1
- data/man/man8/puppet-certificate_request.8 +1 -1
- data/man/man8/puppet-certificate_revocation_list.8 +1 -1
- data/man/man8/puppet-config.8 +1 -1
- data/man/man8/puppet-describe.8 +1 -1
- data/man/man8/puppet-device.8 +1 -1
- data/man/man8/puppet-doc.8 +1 -1
- data/man/man8/puppet-epp.8 +1 -1
- data/man/man8/puppet-facts.8 +1 -1
- data/man/man8/puppet-filebucket.8 +1 -1
- data/man/man8/puppet-generate.8 +1 -1
- data/man/man8/puppet-help.8 +1 -1
- data/man/man8/puppet-key.8 +1 -1
- data/man/man8/puppet-lookup.8 +1 -1
- data/man/man8/puppet-man.8 +1 -1
- data/man/man8/puppet-master.8 +1 -1
- data/man/man8/puppet-module.8 +1 -1
- data/man/man8/puppet-node.8 +1 -1
- data/man/man8/puppet-parser.8 +1 -1
- data/man/man8/puppet-plugin.8 +1 -1
- data/man/man8/puppet-report.8 +1 -1
- data/man/man8/puppet-resource.8 +1 -1
- data/man/man8/puppet-script.8 +1 -1
- data/man/man8/puppet-status.8 +1 -1
- data/man/man8/puppet.8 +2 -2
- data/spec/fixtures/unit/provider/package/dnfmodule/dnf-module-list-installed.txt +11 -0
- data/spec/integration/configurer_spec.rb +52 -0
- data/spec/integration/type/notify_spec.rb +46 -0
- data/spec/unit/configurer_spec.rb +380 -397
- data/spec/unit/forge/forge_spec.rb +1 -3
- data/spec/unit/forge/repository_spec.rb +1 -3
- data/spec/unit/indirector/resource/ral_spec.rb +4 -4
- data/spec/unit/network/http/connection_spec.rb +26 -0
- data/spec/unit/pops/evaluator/evaluating_parser_spec.rb +8 -3
- data/spec/unit/provider/exec_spec.rb +209 -0
- data/spec/unit/provider/package/dnfmodule_spec.rb +186 -0
- data/spec/unit/provider/package/dpkg_spec.rb +15 -3
- data/spec/unit/provider/package/pip_spec.rb +51 -6
- data/spec/unit/provider/package/portage_spec.rb +4 -4
- data/spec/unit/provider/package_targetable_spec.rb +60 -0
- data/spec/unit/provider/service/daemontools_spec.rb +24 -0
- data/spec/unit/provider/service/runit_spec.rb +24 -0
- data/spec/unit/provider/service/systemd_spec.rb +22 -22
- data/spec/unit/provider/user/hpux_spec.rb +2 -2
- data/spec/unit/provider/user/useradd_spec.rb +46 -0
- data/spec/unit/type/exec_spec.rb +6 -12
- data/spec/unit/type/file/content_spec.rb +9 -3
- data/spec/unit/type/file_spec.rb +9 -4
- data/spec/unit/type/selboolean_spec.rb +4 -6
- data/spec/unit/util/execution_spec.rb +16 -0
- data/spec/unit/util/http_proxy_spec.rb +97 -0
- data/spec/unit/util/log/destinations_spec.rb +7 -3
- data/spec/unit/util/log_spec.rb +0 -138
- data/spec/unit/util/logging_spec.rb +200 -0
- data/spec/unit/util/windows/adsi_spec.rb +51 -0
- data/tasks/manpages.rake +1 -0
- metadata +12 -5
- data/lib/puppet/pops/loader/null_loader.rb +0 -60
- data/locales/ja/puppet.po +0 -12114
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 3719bfa76b4e48069c0bb5aaf212fcbe4326d3a36702054377e44e9915989ff3
|
4
|
+
data.tar.gz: e804a7e5c5e0acad263cd3bf4f4f54570ee1231a857b4e69ed99ce9d7d826867
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 7331cd73acf1998ed9bffc391a6b19f67b1dd7d4165f9042ba5526ad08b0c89eaacd1d5363caed0b128b726b3c83ba10078036c8b0fc4af0c02887c1717a3146
|
7
|
+
data.tar.gz: bab2ef3ecc72550ae89e5e30e087a84d9bf761f9b965ad8b48f35ba5ac2cdd2d13023a79ca864fe51624e5ec11f59bf51785bba6f4428cfcffa52acf59152f71
|
data/CODEOWNERS
CHANGED
data/Gemfile
CHANGED
@@ -74,7 +74,7 @@ group(:development, :test) do
|
|
74
74
|
gem 'hashdiff', '0.3.8'
|
75
75
|
gem 'webmock', '~> 1.24'
|
76
76
|
gem 'vcr', '~> 2.9'
|
77
|
-
gem "hiera-eyaml",
|
77
|
+
gem "hiera-eyaml", *location_for(ENV['HIERA_EYAML_LOCATION'])
|
78
78
|
|
79
79
|
gem 'memory_profiler', :platforms => [:mri_21, :mri_22, :mri_23, :mri_24, :mri_25]
|
80
80
|
end
|
@@ -93,8 +93,7 @@ group(:extra) do
|
|
93
93
|
gem "msgpack", :require => false
|
94
94
|
end
|
95
95
|
|
96
|
-
|
97
|
-
if File.exists? "#{__FILE__}.local"
|
96
|
+
if File.exist? "#{__FILE__}.local"
|
98
97
|
eval(File.read("#{__FILE__}.local"), binding)
|
99
98
|
end
|
100
99
|
|
data/Gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
puppet (5.5.
|
4
|
+
puppet (5.5.18)
|
5
5
|
CFPropertyList (~> 2.2)
|
6
6
|
facter (>= 2.4.0, < 4)
|
7
7
|
fast_gettext (~> 1.1.2)
|
@@ -18,53 +18,54 @@ GEM
|
|
18
18
|
addressable (2.4.0)
|
19
19
|
artifactory (2.8.2)
|
20
20
|
ast (2.4.0)
|
21
|
-
builder (3.2.
|
21
|
+
builder (3.2.4)
|
22
22
|
coderay (1.1.2)
|
23
23
|
crack (0.4.3)
|
24
24
|
safe_yaml (~> 1.0.0)
|
25
|
+
csv (3.1.2)
|
25
26
|
diff-lcs (1.3)
|
27
|
+
docopt (0.6.1)
|
26
28
|
facter (2.5.6)
|
27
29
|
fast_gettext (1.1.2)
|
28
30
|
gettext (3.2.9)
|
29
31
|
locale (>= 2.0.5)
|
30
32
|
text (>= 1.3.0)
|
31
|
-
gettext-setup (0.
|
33
|
+
gettext-setup (0.34)
|
32
34
|
fast_gettext (~> 1.1.0)
|
33
|
-
gettext (>= 3.0.2)
|
35
|
+
gettext (>= 3.0.2, < 3.3.0)
|
34
36
|
locale
|
35
37
|
hashdiff (0.3.8)
|
36
|
-
hiera (3.
|
37
|
-
hiera-eyaml (3.
|
38
|
+
hiera (3.6.0)
|
39
|
+
hiera-eyaml (3.1.1)
|
38
40
|
highline (~> 1.6.19)
|
39
41
|
optimist
|
40
42
|
highline (1.6.21)
|
41
|
-
hocon (1.
|
43
|
+
hocon (1.3.0)
|
42
44
|
hpricot (0.8.6)
|
43
45
|
json-schema (2.8.1)
|
44
46
|
addressable (>= 2.4)
|
45
47
|
locale (2.1.2)
|
46
48
|
memory_profiler (0.9.14)
|
47
|
-
metaclass (0.0.4)
|
48
49
|
method_source (0.9.2)
|
49
|
-
mocha (1.
|
50
|
-
metaclass (~> 0.0.1)
|
50
|
+
mocha (1.11.2)
|
51
51
|
msgpack (1.3.1)
|
52
|
-
multi_json (1.
|
53
|
-
mustache (1.1.
|
52
|
+
multi_json (1.14.1)
|
53
|
+
mustache (1.1.1)
|
54
54
|
net-ssh (4.2.0)
|
55
55
|
optimist (3.0.0)
|
56
|
-
packaging (0.99.
|
56
|
+
packaging (0.99.52)
|
57
57
|
artifactory (~> 2)
|
58
58
|
rake (>= 12.3)
|
59
|
-
|
60
|
-
|
59
|
+
release-metrics
|
60
|
+
parallel (1.19.1)
|
61
|
+
parser (2.7.0.2)
|
61
62
|
ast (~> 2.4.0)
|
62
63
|
pathspec (0.2.1)
|
63
64
|
powerpack (0.1.2)
|
64
65
|
pry (0.12.2)
|
65
66
|
coderay (~> 1.1.0)
|
66
67
|
method_source (~> 0.9.0)
|
67
|
-
puppet-lint (2.
|
68
|
+
puppet-lint (2.4.2)
|
68
69
|
puppet-syntax (2.6.0)
|
69
70
|
rake
|
70
71
|
puppetlabs_spec_helper (2.14.1)
|
@@ -74,38 +75,41 @@ GEM
|
|
74
75
|
puppet-syntax (~> 2.0)
|
75
76
|
rspec-puppet (~> 2.0)
|
76
77
|
racc (1.4.9)
|
77
|
-
rack (1.6.
|
78
|
+
rack (1.6.12)
|
78
79
|
rainbow (2.1.0)
|
79
80
|
rake (12.3.3)
|
80
81
|
rdiscount (2.2.0.1)
|
81
82
|
rdoc (4.3.0)
|
82
83
|
redcarpet (2.3.0)
|
84
|
+
release-metrics (1.1.0)
|
85
|
+
csv
|
86
|
+
docopt
|
83
87
|
ronn (0.7.3)
|
84
88
|
hpricot (>= 0.8.2)
|
85
89
|
mustache (>= 0.7.0)
|
86
90
|
rdiscount (>= 1.5.8)
|
87
|
-
rspec (3.
|
88
|
-
rspec-core (~> 3.
|
89
|
-
rspec-expectations (~> 3.
|
90
|
-
rspec-mocks (~> 3.
|
91
|
+
rspec (3.9.0)
|
92
|
+
rspec-core (~> 3.9.0)
|
93
|
+
rspec-expectations (~> 3.9.0)
|
94
|
+
rspec-mocks (~> 3.9.0)
|
91
95
|
rspec-collection_matchers (1.2.0)
|
92
96
|
rspec-expectations (>= 2.99.0.beta1)
|
93
|
-
rspec-core (3.
|
94
|
-
rspec-support (~> 3.
|
95
|
-
rspec-expectations (3.
|
97
|
+
rspec-core (3.9.1)
|
98
|
+
rspec-support (~> 3.9.1)
|
99
|
+
rspec-expectations (3.9.0)
|
96
100
|
diff-lcs (>= 1.2.0, < 2.0)
|
97
|
-
rspec-support (~> 3.
|
101
|
+
rspec-support (~> 3.9.0)
|
98
102
|
rspec-its (1.3.0)
|
99
103
|
rspec-core (>= 3.0.0)
|
100
104
|
rspec-expectations (>= 3.0.0)
|
101
105
|
rspec-legacy_formatters (1.0.2)
|
102
106
|
rspec (~> 3.0)
|
103
|
-
rspec-mocks (3.
|
107
|
+
rspec-mocks (3.9.1)
|
104
108
|
diff-lcs (>= 1.2.0, < 2.0)
|
105
|
-
rspec-support (~> 3.
|
106
|
-
rspec-puppet (2.7.
|
109
|
+
rspec-support (~> 3.9.0)
|
110
|
+
rspec-puppet (2.7.8)
|
107
111
|
rspec
|
108
|
-
rspec-support (3.
|
112
|
+
rspec-support (3.9.2)
|
109
113
|
rubocop (0.49.1)
|
110
114
|
parallel (~> 1.10)
|
111
115
|
parser (>= 2.3.3.1, < 3.0)
|
@@ -115,7 +119,7 @@ GEM
|
|
115
119
|
unicode-display_width (~> 1.0, >= 1.0.1)
|
116
120
|
rubocop-i18n (1.2.0)
|
117
121
|
rubocop (~> 0.49.0)
|
118
|
-
ruby-prof (1.
|
122
|
+
ruby-prof (1.1.0)
|
119
123
|
ruby-progressbar (1.10.1)
|
120
124
|
safe_yaml (1.0.5)
|
121
125
|
text (1.3.1)
|
@@ -125,7 +129,7 @@ GEM
|
|
125
129
|
addressable (>= 2.3.6)
|
126
130
|
crack (>= 0.3.2)
|
127
131
|
hashdiff
|
128
|
-
yard (0.9.
|
132
|
+
yard (0.9.24)
|
129
133
|
yarjuf (2.0.0)
|
130
134
|
builder
|
131
135
|
rspec (~> 3)
|
data/ext/build_defaults.yaml
CHANGED
data/ext/cert_inspector
CHANGED
@@ -75,15 +75,15 @@ class X509Collector
|
|
75
75
|
end
|
76
76
|
when OpenSSL::X509::Certificate
|
77
77
|
signature_desc = who_signed(meaning, key_names, keys)
|
78
|
-
"Certificate assigning name #{meaning.subject
|
78
|
+
"Certificate assigning name #{meaning.subject} to #{key_names[meaning.public_key.to_s]}\n serial number #{meaning.serial}\n issued by #{meaning.issuer}\n signed by #{signature_desc}"
|
79
79
|
when OpenSSL::X509::Request
|
80
80
|
signature_desc = who_signed(meaning, key_names, keys)
|
81
|
-
"Certificate request for #{meaning.subject
|
81
|
+
"Certificate request for #{meaning.subject} having key #{key_names[meaning.public_key.to_s]}\n signed by #{signature_desc}"
|
82
82
|
when OpenSSL::X509::CRL
|
83
83
|
signature_desc = who_signed(meaning, key_names, keys)
|
84
84
|
revoked_serial_numbers = meaning.revoked.map { |r| r.serial }
|
85
85
|
revoked_desc = if revoked_serial_numbers.count > 0 then "serial numbers #{revoked_serial_numbers.inspect}" else "nothing" end
|
86
|
-
"Certificate revocation list revoking #{revoked_desc}\n issued by #{meaning.issuer
|
86
|
+
"Certificate revocation list revoking #{revoked_desc}\n issued by #{meaning.issuer}\n signed by #{signature_desc}"
|
87
87
|
else
|
88
88
|
"Unknown"
|
89
89
|
end
|
data/ext/puppet-test
CHANGED
@@ -435,9 +435,9 @@ begin
|
|
435
435
|
when "--node"
|
436
436
|
$options[:nodes] << arg
|
437
437
|
when "--list"
|
438
|
-
Suite.suites.
|
438
|
+
Suite.suites.sort_by(&:to_s).each do |suite_name|
|
439
439
|
suite = Suite[suite_name]
|
440
|
-
tests = suite.tests.
|
440
|
+
tests = suite.tests.sort_by(&:to_s).join(", ")
|
441
441
|
puts "%20s: %s" % [suite_name, tests]
|
442
442
|
end
|
443
443
|
exit(0)
|
@@ -159,7 +159,7 @@ class ExternalNode
|
|
159
159
|
log("list of patterns for #{filepath}: #{patternlist}")
|
160
160
|
|
161
161
|
if matchthis =~ Regexp.union(patternlist)
|
162
|
-
log("matched #{
|
162
|
+
log("matched #{$~} in #{matchthis}, returning true")
|
163
163
|
return true
|
164
164
|
|
165
165
|
else # hostname didn't match anything in patternlist
|
@@ -181,7 +181,7 @@ class ExternalNode
|
|
181
181
|
log("Attempting to match [#{@hostname}] in [#{filepath}]")
|
182
182
|
if matched_in_patternfile?(filepath,@hostname)
|
183
183
|
@classes << patternfile.to_s
|
184
|
-
log("Appended #{patternfile
|
184
|
+
log("Appended #{patternfile} to classes instance variable")
|
185
185
|
end
|
186
186
|
end
|
187
187
|
end
|
@@ -198,7 +198,7 @@ class ExternalNode
|
|
198
198
|
log("Attempting to match [#{@hostname}] in [#{filepath}]")
|
199
199
|
if matched_in_patternfile?(filepath,@hostname)
|
200
200
|
@environment = patternfile.to_s
|
201
|
-
log("Wrote #{patternfile
|
201
|
+
log("Wrote #{patternfile} to environment instance variable")
|
202
202
|
end
|
203
203
|
end
|
204
204
|
end
|
@@ -230,7 +230,7 @@ class ExternalNode
|
|
230
230
|
log("Attempting to match [#{@hostname}] in [#{secondlevel}]")
|
231
231
|
if matched_in_patternfile?(secondlevel, @hostname)
|
232
232
|
@parameters[ parametername.to_s ] = patternfile.to_s
|
233
|
-
log("Set @parameters[#{parametername
|
233
|
+
log("Set @parameters[#{parametername}] = #{patternfile}")
|
234
234
|
end
|
235
235
|
end
|
236
236
|
end
|
@@ -15,6 +15,7 @@ class WindowsDaemon < Win32::Daemon
|
|
15
15
|
|
16
16
|
@run_thread = nil
|
17
17
|
@LOG_TO_FILE = false
|
18
|
+
@loglevel = 0
|
18
19
|
LOG_FILE = File.expand_path(File.join(Dir::COMMON_APPDATA, 'PuppetLabs', 'puppet', 'var', 'log', 'windows.log'))
|
19
20
|
LEVELS = [:debug, :info, :notice, :warning, :err, :alert, :emerg, :crit]
|
20
21
|
LEVELS.each do |level|
|
@@ -37,7 +38,9 @@ class WindowsDaemon < Win32::Daemon
|
|
37
38
|
FileUtils.mkdir_p(File.dirname(LOG_FILE))
|
38
39
|
args = args.gsub("--logtofile","")
|
39
40
|
end
|
40
|
-
|
41
|
+
|
42
|
+
base_dir = File.expand_path(File.join(File.dirname(__FILE__), '..'))
|
43
|
+
load_env(base_dir)
|
41
44
|
|
42
45
|
# The puppet installer registers a 'Puppet' event source. For the moment events will be logged with this key, but
|
43
46
|
# it may be a good idea to split the Service and Puppet events later so it's easier to read in the windows Event Log.
|
@@ -54,25 +57,29 @@ class WindowsDaemon < Win32::Daemon
|
|
54
57
|
# )
|
55
58
|
# end
|
56
59
|
|
57
|
-
puppet = File.join(
|
58
|
-
|
60
|
+
puppet = File.join(base_dir, 'puppet', 'bin', 'puppet').tr('/', '\\')
|
61
|
+
ruby = File.join(base_dir, "sys", "ruby", "bin", "ruby.exe").tr('/', '\\')
|
62
|
+
ruby_puppet_cmd = "\"#{ruby}\" \"#{puppet}\""
|
63
|
+
|
64
|
+
unless File.exist?(puppet)
|
59
65
|
log_err("File not found: '#{puppet}'")
|
60
66
|
return
|
61
67
|
end
|
62
68
|
log_debug("Using '#{puppet}'")
|
63
69
|
|
64
70
|
cmdline_debug = argsv.index('--debug') ? :debug : nil
|
65
|
-
@loglevel = parse_log_level(
|
71
|
+
@loglevel = parse_log_level(ruby_puppet_cmd, cmdline_debug)
|
66
72
|
log_notice('Service started')
|
67
73
|
|
68
74
|
service = self
|
69
75
|
@run_thread = Thread.new do
|
70
76
|
begin
|
71
77
|
while service.running? do
|
72
|
-
runinterval = service.parse_runinterval(
|
78
|
+
runinterval = service.parse_runinterval(ruby_puppet_cmd)
|
79
|
+
|
73
80
|
if service.state == RUNNING or service.state == IDLE
|
74
81
|
service.log_notice("Executing agent with arguments: #{args}")
|
75
|
-
pid = Process.create(:command_line => "
|
82
|
+
pid = Process.create(:command_line => "#{ruby_puppet_cmd} agent --onetime #{args}", :creation_flags => CREATE_NEW_CONSOLE).process_id
|
76
83
|
service.log_debug("Process created: #{pid}")
|
77
84
|
else
|
78
85
|
service.log_debug("Service is paused. Not invoking Puppet agent")
|
@@ -153,7 +160,7 @@ class WindowsDaemon < Win32::Daemon
|
|
153
160
|
|
154
161
|
def parse_runinterval(puppet_path)
|
155
162
|
begin
|
156
|
-
runinterval = %x{
|
163
|
+
runinterval = %x{ #{puppet_path} agent --configprint runinterval }.to_i
|
157
164
|
if runinterval == 0
|
158
165
|
runinterval = 1800
|
159
166
|
log_err("Failed to determine runinterval, defaulting to #{runinterval} seconds")
|
@@ -168,7 +175,7 @@ class WindowsDaemon < Win32::Daemon
|
|
168
175
|
|
169
176
|
def parse_log_level(puppet_path,cmdline_debug)
|
170
177
|
begin
|
171
|
-
loglevel = %x{
|
178
|
+
loglevel = %x{ #{puppet_path} agent --configprint log_level}.chomp
|
172
179
|
unless loglevel
|
173
180
|
loglevel = :notice
|
174
181
|
log_err("Failed to determine loglevel, defaulting to #{loglevel}")
|
@@ -180,6 +187,45 @@ class WindowsDaemon < Win32::Daemon
|
|
180
187
|
|
181
188
|
LEVELS.index(cmdline_debug ? cmdline_debug : loglevel.to_sym)
|
182
189
|
end
|
190
|
+
|
191
|
+
private
|
192
|
+
|
193
|
+
def load_env(base_dir)
|
194
|
+
begin
|
195
|
+
# ENV that uses backward slashes
|
196
|
+
ENV['FACTERDIR'] = File.join(base_dir, 'facter').tr('/', '\\')
|
197
|
+
ENV['FACTER_env_windows_installdir'] = base_dir.tr('/', '\\')
|
198
|
+
ENV['HIERA_DIR'] = File.join(base_dir, 'hiera').tr('/', '\\')
|
199
|
+
ENV['MCOLLECTIVE_DIR'] = File.join(base_dir, 'mcollective').tr('/', '\\')
|
200
|
+
ENV['PL_BASEDIR'] = base_dir.tr('/', '\\')
|
201
|
+
ENV['PUPPET_DIR'] = File.join(base_dir, 'puppet').tr('/', '\\')
|
202
|
+
ENV['RUBYOPT'] = 'rubygems'
|
203
|
+
ENV['RUBY_DIR'] = File.join(base_dir, 'sys', 'ruby').tr('/', '\\')
|
204
|
+
ENV['OPENSSL_CONF'] = File.join(base_dir, 'puppet', 'ssl', 'openssl.cnf').tr('/', '\\')
|
205
|
+
ENV['SSL_CERT_DIR'] = File.join(base_dir, 'puppet', 'ssl', 'certs').tr('/', '\\')
|
206
|
+
ENV['SSL_CERT_FILE'] = File.join(base_dir, 'puppet', 'ssl', 'cert.pem').tr('/', '\\')
|
207
|
+
ENV['Path'] = [
|
208
|
+
File.join(base_dir, 'puppet', 'bin'),
|
209
|
+
File.join(base_dir, 'facter', 'bin'),
|
210
|
+
File.join(base_dir, 'hiera', 'bin'),
|
211
|
+
File.join(base_dir, 'mcollective', 'bin'),
|
212
|
+
File.join(base_dir, 'bin'),
|
213
|
+
File.join(base_dir, 'sys', 'ruby', 'bin'),
|
214
|
+
File.join(base_dir, 'sys', 'tools', 'bin')
|
215
|
+
].join(';').tr('/', '\\') + ';' + ENV['Path']
|
216
|
+
|
217
|
+
# ENV that uses forward slashes
|
218
|
+
ENV['RUBYLIB'] = [
|
219
|
+
File.join(base_dir, 'puppet','lib'),
|
220
|
+
File.join(base_dir, 'facter', 'lib'),
|
221
|
+
File.join(base_dir, 'hiera', 'lib'),
|
222
|
+
File.join(base_dir, 'mcollective', 'lib'),
|
223
|
+
ENV['RUBYLIB']
|
224
|
+
].compact.join(';') + ';'
|
225
|
+
rescue => e
|
226
|
+
log_exception(e)
|
227
|
+
end
|
228
|
+
end
|
183
229
|
end
|
184
230
|
|
185
231
|
if __FILE__ == $0
|
data/install.rb
CHANGED
@@ -122,12 +122,12 @@ def check_prereqs
|
|
122
122
|
facter_version = Facter.version.to_f
|
123
123
|
if facter_version < MIN_FACTER_VERSION
|
124
124
|
puts "Facter version: #{facter_version}; minimum required: #{MIN_FACTER_VERSION}; cannot install"
|
125
|
-
exit
|
125
|
+
exit(-1)
|
126
126
|
end
|
127
127
|
end
|
128
128
|
rescue LoadError
|
129
129
|
puts "Could not load #{pre}; cannot install"
|
130
|
-
exit
|
130
|
+
exit(-1)
|
131
131
|
end
|
132
132
|
}
|
133
133
|
end
|
@@ -248,7 +248,7 @@ def prepare_installation
|
|
248
248
|
require 'win32/dir'
|
249
249
|
rescue LoadError => e
|
250
250
|
puts "Cannot run on Microsoft Windows without the win32-process, win32-dir & win32-service gems: #{e}"
|
251
|
-
exit
|
251
|
+
exit(-1)
|
252
252
|
end
|
253
253
|
end
|
254
254
|
|
@@ -437,13 +437,13 @@ def install_binfile(from, op_file, target)
|
|
437
437
|
if $operatingsystem == "windows" && InstallOptions.batch_files
|
438
438
|
installed_wrapper = false
|
439
439
|
|
440
|
-
unless File.extname(from)
|
441
|
-
if File.
|
440
|
+
unless File.extname(from) =~ /\.(cmd|bat)/
|
441
|
+
if File.exist?("#{from}.bat")
|
442
442
|
FileUtils.install("#{from}.bat", File.join(target, "#{op_file}.bat"), :mode => 0755, :preserve => true, :verbose => true)
|
443
443
|
installed_wrapper = true
|
444
444
|
end
|
445
445
|
|
446
|
-
if File.
|
446
|
+
if File.exist?("#{from}.cmd")
|
447
447
|
FileUtils.install("#{from}.cmd", File.join(target, "#{op_file}.cmd"), :mode => 0755, :preserve => true, :verbose => true)
|
448
448
|
installed_wrapper = true
|
449
449
|
end
|
data/lib/puppet/application.rb
CHANGED
@@ -183,7 +183,7 @@ class Application
|
|
183
183
|
|
184
184
|
# used to declare code that handle an option
|
185
185
|
def option(*options, &block)
|
186
|
-
long = options.find { |opt| opt =~ /^--/ }.gsub(/^--(?:\[no-\])?([^ =]+).*$/, '\1' ).
|
186
|
+
long = options.find { |opt| opt =~ /^--/ }.gsub(/^--(?:\[no-\])?([^ =]+).*$/, '\1' ).tr('-','_')
|
187
187
|
fname = "handle_#{long}".intern
|
188
188
|
if (block_given?)
|
189
189
|
define_method(fname, &block)
|
@@ -260,8 +260,8 @@ Copyright (c) 2011 Puppet Inc., LLC Licensed under the Apache 2.0 License
|
|
260
260
|
catalog =
|
261
261
|
begin
|
262
262
|
Puppet::Resource::Catalog.indirection.find(node.name, :use_node => node)
|
263
|
-
rescue Puppet::
|
264
|
-
# already logged and handled by the compiler
|
263
|
+
rescue Puppet::Error
|
264
|
+
# already logged and handled by the compiler, including Puppet::ParseErrorWithIssue
|
265
265
|
exit(1)
|
266
266
|
end
|
267
267
|
|
@@ -64,9 +64,7 @@ class TypeDoc
|
|
64
64
|
|
65
65
|
def list_types
|
66
66
|
puts "These are the types known to puppet:\n"
|
67
|
-
@types.keys.
|
68
|
-
a.to_s <=> b.to_s
|
69
|
-
}.each do |name|
|
67
|
+
@types.keys.sort_by(&:to_s).each do |name|
|
70
68
|
type = @types[name]
|
71
69
|
s = type.doc.gsub(/\s+/, " ")
|
72
70
|
n = s.index(". ")
|
@@ -149,18 +147,14 @@ class TypeDoc
|
|
149
147
|
end
|
150
148
|
|
151
149
|
def format_providers(type)
|
152
|
-
type.providers.
|
153
|
-
a.to_s <=> b.to_s
|
154
|
-
}.each { |prov|
|
150
|
+
type.providers.sort_by(&:to_s).each { |prov|
|
155
151
|
puts "\n- **#{prov}**"
|
156
152
|
puts @format.wrap(type.provider(prov).doc, :indent => 4, :scrub => true)
|
157
153
|
}
|
158
154
|
end
|
159
155
|
|
160
156
|
def list_providers(type)
|
161
|
-
list = type.providers.
|
162
|
-
a.to_s <=> b.to_s
|
163
|
-
}.join(", ")
|
157
|
+
list = type.providers.sort_by(&:to_s).join(", ")
|
164
158
|
puts @format.wrap(list, :indent => 4)
|
165
159
|
end
|
166
160
|
|