puppet 6.2.0-universal-darwin → 6.3.0-universal-darwin
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/CODE_OF_CONDUCT.md +70 -0
- data/Gemfile.lock +7 -7
- data/lib/puppet/application.rb +1 -1
- data/lib/puppet/application/lookup.rb +1 -1
- data/lib/puppet/confine/boolean.rb +45 -0
- data/lib/puppet/confine/false.rb +7 -1
- data/lib/puppet/confine/true.rb +7 -1
- data/lib/puppet/defaults.rb +0 -18
- data/lib/puppet/functions/call.rb +2 -1
- data/lib/puppet/functions/group_by.rb +54 -0
- data/lib/puppet/functions/index.rb +167 -0
- data/lib/puppet/functions/partition.rb +54 -0
- data/lib/puppet/pops/evaluator/evaluator_impl.rb +1 -1
- data/lib/puppet/pops/issues.rb +4 -0
- data/lib/puppet/pops/model/factory.rb +38 -4
- data/lib/puppet/pops/parser/egrammar.ra +2 -2
- data/lib/puppet/pops/parser/eparser.rb +2 -2
- data/lib/puppet/pops/parser/heredoc_support.rb +17 -7
- data/lib/puppet/pops/parser/lexer2.rb +6 -1
- data/lib/puppet/pops/parser/locator.rb +106 -86
- data/lib/puppet/pops/parser/parser_support.rb +11 -2
- data/lib/puppet/pops/types/type_mismatch_describer.rb +1 -1
- data/lib/puppet/pops/validation/checker4_0.rb +2 -2
- data/lib/puppet/provider/group/windows_adsi.rb +4 -1
- data/lib/puppet/provider/package/apt.rb +2 -2
- data/lib/puppet/provider/package/dnf.rb +2 -2
- data/lib/puppet/provider/package/gem.rb +2 -2
- data/lib/puppet/provider/package/openbsd.rb +2 -2
- data/lib/puppet/provider/package/pacman.rb +1 -2
- data/lib/puppet/provider/package/pip.rb +1 -2
- data/lib/puppet/provider/package/pip3.rb +1 -2
- data/lib/puppet/provider/package/pkg.rb +2 -4
- data/lib/puppet/provider/package/portage.rb +1 -2
- data/lib/puppet/provider/package/rpm.rb +1 -2
- data/lib/puppet/provider/package/sun.rb +2 -2
- data/lib/puppet/provider/package/windows.rb +2 -2
- data/lib/puppet/provider/package/yum.rb +1 -2
- data/lib/puppet/provider/package/zypper.rb +2 -2
- data/lib/puppet/provider/service/upstart.rb +16 -6
- data/lib/puppet/transaction/resource_harness.rb +1 -0
- data/lib/puppet/type/file.rb +6 -1
- data/lib/puppet/util/log.rb +7 -2
- data/lib/puppet/util/pidlock.rb +14 -1
- data/lib/puppet/util/windows/process.rb +73 -5
- data/lib/puppet/version.rb +1 -1
- data/locales/puppet.pot +92 -92
- data/man/man5/puppet.conf.5 +2 -2
- data/man/man8/puppet-agent.8 +1 -1
- data/man/man8/puppet-apply.8 +1 -1
- data/man/man8/puppet-catalog.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 +2 -2
- data/man/man8/puppet-man.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-ssl.8 +1 -1
- data/man/man8/puppet-status.8 +1 -1
- data/man/man8/puppet.8 +2 -2
- data/spec/unit/application_spec.rb +8 -1
- data/spec/unit/confine/false_spec.rb +27 -0
- data/spec/unit/confine/true_spec.rb +27 -0
- data/spec/unit/defaults_spec.rb +0 -14
- data/spec/unit/functions/group_by_spec.rb +40 -0
- data/spec/unit/functions/index_spec.rb +184 -0
- data/spec/unit/functions/partition_spec.rb +40 -0
- data/spec/unit/pops/loaders/loaders_spec.rb +5 -0
- data/spec/unit/pops/parser/locator_spec.rb +45 -0
- data/spec/unit/pops/parser/parse_heredoc_spec.rb +111 -15
- data/spec/unit/pops/types/type_mismatch_describer_spec.rb +9 -0
- data/spec/unit/provider/group/windows_adsi_spec.rb +7 -1
- data/spec/unit/transaction/resource_harness_spec.rb +26 -0
- data/spec/unit/util/execution_spec.rb +2 -2
- data/spec/unit/util/log_spec.rb +15 -0
- data/spec/unit/util/pidlock_spec.rb +21 -1
- metadata +13 -2
@@ -114,8 +114,17 @@ class Parser
|
|
114
114
|
pos = nil
|
115
115
|
if token != 0
|
116
116
|
file = value[:file]
|
117
|
-
|
118
|
-
|
117
|
+
locator = value.locator
|
118
|
+
if locator.is_a?(Puppet::Pops::Parser::Locator::SubLocator)
|
119
|
+
# The error occurs when doing sub-parsing and the token must be transformed
|
120
|
+
# Transpose the local offset, length to global "coordinates"
|
121
|
+
global_offset, _ = locator.to_global(value.offset, value.length)
|
122
|
+
line = locator.locator.line_for_offset(global_offset)
|
123
|
+
pos = locator.locator.pos_on_line(global_offset)
|
124
|
+
else
|
125
|
+
line = value[:line]
|
126
|
+
pos = value[:pos]
|
127
|
+
end
|
119
128
|
else
|
120
129
|
# At end of input, use what the lexer thinks is the source file
|
121
130
|
file = lexer.file
|
@@ -753,7 +753,7 @@ module Types
|
|
753
753
|
end
|
754
754
|
|
755
755
|
def describe_POptionalType(expected, original, actual, path)
|
756
|
-
return EMPTY_ARRAY if actual.is_a?(PUndefType)
|
756
|
+
return EMPTY_ARRAY if actual.is_a?(PUndefType) || expected.optional_type.nil?
|
757
757
|
internal_describe(expected.optional_type, original.is_a?(PTypeAliasType) ? original : expected, actual, path)
|
758
758
|
end
|
759
759
|
|
@@ -330,8 +330,8 @@ class Checker4_0 < Evaluator::LiteralEvaluator
|
|
330
330
|
end
|
331
331
|
|
332
332
|
def check_HeredocExpression(o)
|
333
|
-
# Only check static text in heredoc
|
334
|
-
expr = o.text_expr
|
333
|
+
# Only syntax check static text in heredoc during validation - dynamic text is validated by the evaluator.
|
334
|
+
expr = o.text_expr
|
335
335
|
if expr.is_a?(Model::LiteralString)
|
336
336
|
assert_external_syntax(nil, expr.value, o.syntax, o.text_expr)
|
337
337
|
end
|
@@ -67,7 +67,10 @@ Puppet::Type.type(:group).provide :windows_adsi do
|
|
67
67
|
|
68
68
|
def members
|
69
69
|
@members ||= Puppet::Util::Windows::ADSI::Group.name_sid_hash(group.members)
|
70
|
-
|
70
|
+
|
71
|
+
# @members.keys returns an array of SIDs. We need to convert those SIDs into
|
72
|
+
# names so that `puppet resource` prints the right output.
|
73
|
+
members_to_s(@members.keys).split(',')
|
71
74
|
end
|
72
75
|
|
73
76
|
def members=(members)
|
@@ -5,8 +5,8 @@ Puppet::Type.type(:package).provide :apt, :parent => :dpkg, :source => :dpkg do
|
|
5
5
|
desc "Package management via `apt-get`.
|
6
6
|
|
7
7
|
This provider supports the `install_options` attribute, which allows command-line flags to be passed to apt-get.
|
8
|
-
These options should be specified as
|
9
|
-
|
8
|
+
These options should be specified as an array where each element is either a
|
9
|
+
string or a hash."
|
10
10
|
|
11
11
|
has_feature :versionable, :install_options
|
12
12
|
|
@@ -6,8 +6,8 @@ Puppet::Type.type(:package).provide :dnf, :parent => :yum do
|
|
6
6
|
feature is destructive and should be used with the utmost care.
|
7
7
|
|
8
8
|
This provider supports the `install_options` attribute, which allows command-line flags to be passed to dnf.
|
9
|
-
These options should be specified as
|
10
|
-
|
9
|
+
These options should be specified as an array where each element is either
|
10
|
+
a string or a hash."
|
11
11
|
|
12
12
|
has_feature :install_options, :versionable, :virtual_packages
|
13
13
|
|
@@ -12,8 +12,8 @@ Puppet::Type.type(:package).provide :gem, :parent => Puppet::Provider::Package d
|
|
12
12
|
|
13
13
|
This provider supports the `install_options` and `uninstall_options` attributes,
|
14
14
|
which allow command-line flags to be passed to the gem command.
|
15
|
-
These options should be specified as
|
16
|
-
|
15
|
+
These options should be specified as an array where each element is either a
|
16
|
+
string or a hash."
|
17
17
|
|
18
18
|
has_feature :versionable, :install_options, :uninstall_options
|
19
19
|
|
@@ -6,8 +6,8 @@ Puppet::Type.type(:package).provide :openbsd, :parent => Puppet::Provider::Packa
|
|
6
6
|
|
7
7
|
This provider supports the `install_options` and `uninstall_options`
|
8
8
|
attributes, which allow command-line flags to be passed to pkg_add and pkg_delete.
|
9
|
-
These options should be specified as
|
10
|
-
|
9
|
+
These options should be specified as an array where each element is either a
|
10
|
+
string or a hash."
|
11
11
|
|
12
12
|
commands :pkginfo => "pkg_info",
|
13
13
|
:pkgadd => "pkg_add",
|
@@ -6,8 +6,7 @@ Puppet::Type.type(:package).provide :pacman, :parent => Puppet::Provider::Packag
|
|
6
6
|
desc "Support for the Package Manager Utility (pacman) used in Archlinux.
|
7
7
|
|
8
8
|
This provider supports the `install_options` attribute, which allows command-line flags to be passed to pacman.
|
9
|
-
These options should be specified as a string
|
10
|
-
or an array where each element is either a string or a hash."
|
9
|
+
These options should be specified as an array where each element is either a string or a hash."
|
11
10
|
|
12
11
|
# If yaourt is installed, we can make use of it
|
13
12
|
def self.yaourt?
|
@@ -10,8 +10,7 @@ Puppet::Type.type(:package).provide :pip,
|
|
10
10
|
desc "Python packages via `pip`.
|
11
11
|
|
12
12
|
This provider supports the `install_options` attribute, which allows command-line flags to be passed to pip.
|
13
|
-
These options should be specified as a string
|
14
|
-
or an array where each element is either a string or a hash."
|
13
|
+
These options should be specified as an array where each element is either a string or a hash."
|
15
14
|
|
16
15
|
has_feature :installable, :uninstallable, :upgradeable, :versionable, :install_options
|
17
16
|
|
@@ -9,8 +9,7 @@ Puppet::Type.type(:package).provide :pip3,
|
|
9
9
|
desc "Python packages via `pip3`.
|
10
10
|
|
11
11
|
This provider supports the `install_options` attribute, which allows command-line flags to be passed to pip3.
|
12
|
-
These options should be specified as a string
|
13
|
-
or an array where each element is either a string or a hash."
|
12
|
+
These options should be specified as an array where each element is either a string or a hash."
|
14
13
|
|
15
14
|
has_feature :installable, :uninstallable, :upgradeable, :versionable, :install_options
|
16
15
|
|
@@ -4,10 +4,8 @@ Puppet::Type.type(:package).provide :pkg, :parent => Puppet::Provider::Package d
|
|
4
4
|
desc "OpenSolaris image packaging system. See pkg(5) for more information.
|
5
5
|
|
6
6
|
This provider supports the `install_options` attribute, which allows
|
7
|
-
command-line flags to be passed to pkg. These options should be specified
|
8
|
-
|
9
|
-
- as a hash (for example, {'--flag' => 'value'}), or
|
10
|
-
- as an array where each element is either a string or a hash."
|
7
|
+
command-line flags to be passed to pkg. These options should be specified as an
|
8
|
+
array where each element is either a string or a hash."
|
11
9
|
|
12
10
|
# https://docs.oracle.com/cd/E19963-01/html/820-6572/managepkgs.html
|
13
11
|
# A few notes before we start:
|
@@ -5,8 +5,7 @@ Puppet::Type.type(:package).provide :portage, :parent => Puppet::Provider::Packa
|
|
5
5
|
desc "Provides packaging support for Gentoo's portage system.
|
6
6
|
|
7
7
|
This provider supports the `install_options` and `uninstall_options` attributes, which allows command-line
|
8
|
-
flags to be passed to emerge.
|
9
|
-
(e.g. {'--flag' => 'value'}), or an array where each element is either a string or a hash."
|
8
|
+
flags to be passed to emerge. These options should be specified as an array where each element is either a string or a hash."
|
10
9
|
|
11
10
|
has_features :install_options, :purgeable, :reinstallable, :uninstall_options, :versionable, :virtual_packages
|
12
11
|
|
@@ -7,8 +7,7 @@ Puppet::Type.type(:package).provide :rpm, :source => :rpm, :parent => Puppet::Pr
|
|
7
7
|
|
8
8
|
This provider supports the `install_options` and `uninstall_options`
|
9
9
|
attributes, which allow command-line flags to be passed to rpm.
|
10
|
-
|
11
|
-
or an array where each element is either a string or a hash."
|
10
|
+
These options should be specified as an array where each element is either a string or a hash."
|
12
11
|
|
13
12
|
has_feature :versionable
|
14
13
|
has_feature :install_options
|
@@ -7,8 +7,8 @@ Puppet::Type.type(:package).provide :sun, :parent => Puppet::Provider::Package d
|
|
7
7
|
the packages you're managing.
|
8
8
|
|
9
9
|
This provider supports the `install_options` attribute, which allows command-line flags to be passed to pkgadd.
|
10
|
-
These options should be specified as
|
11
|
-
|
10
|
+
These options should be specified as an array where each element is either a string
|
11
|
+
or a hash."
|
12
12
|
|
13
13
|
commands :pkginfo => "/usr/bin/pkginfo",
|
14
14
|
:pkgadd => "/usr/sbin/pkgadd",
|
@@ -12,8 +12,8 @@ Puppet::Type.type(:package).provide(:windows, :parent => Puppet::Provider::Packa
|
|
12
12
|
|
13
13
|
This provider supports the `install_options` and `uninstall_options`
|
14
14
|
attributes, which allow command-line flags to be passed to the installer.
|
15
|
-
These options should be specified as
|
16
|
-
|
15
|
+
These options should be specified as an array where each element is either
|
16
|
+
a string or a hash.
|
17
17
|
|
18
18
|
If the executable requires special arguments to perform a silent install or
|
19
19
|
uninstall, then the appropriate arguments should be specified using the
|
@@ -6,8 +6,7 @@ Puppet::Type.type(:package).provide :yum, :parent => :rpm, :source => :rpm do
|
|
6
6
|
feature is destructive and should be used with the utmost care.
|
7
7
|
|
8
8
|
This provider supports the `install_options` attribute, which allows command-line flags to be passed to yum.
|
9
|
-
These options should be specified as a string
|
10
|
-
or an array where each element is either a string or a hash."
|
9
|
+
These options should be specified as an array where each element is either a string or a hash."
|
11
10
|
|
12
11
|
has_feature :install_options, :versionable, :virtual_packages
|
13
12
|
|
@@ -2,8 +2,8 @@ Puppet::Type.type(:package).provide :zypper, :parent => :rpm, :source => :rpm do
|
|
2
2
|
desc "Support for SuSE `zypper` package manager. Found in SLES10sp2+ and SLES11.
|
3
3
|
|
4
4
|
This provider supports the `install_options` attribute, which allows command-line flags to be passed to zypper.
|
5
|
-
These options should be specified as
|
6
|
-
|
5
|
+
These options should be specified as an array where each element is either a
|
6
|
+
string or a hash."
|
7
7
|
|
8
8
|
has_feature :versionable, :install_options, :virtual_packages
|
9
9
|
|
@@ -28,12 +28,22 @@ Puppet::Type.type(:service).provide :upstart, :parent => :debian do
|
|
28
28
|
# We only want to use upstart as our provider if the upstart daemon is running.
|
29
29
|
# This can be checked by running `initctl version --quiet` on a machine that has
|
30
30
|
# upstart installed.
|
31
|
-
confine :true =>
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
31
|
+
confine :true => lambda {
|
32
|
+
# Puppet::Util::Execution.execute does not currently work on jRuby.
|
33
|
+
# Unfortunately, since this confine is invoked whenever we check for
|
34
|
+
# provider suitability and since provider suitability is still checked
|
35
|
+
# on the master, this confine will still be invoked on the master. Thus
|
36
|
+
# to avoid raising an exception, we do an early return if we're running
|
37
|
+
# on jRuby.
|
38
|
+
next false if Puppet::Util::Platform.jruby?
|
39
|
+
|
40
|
+
begin
|
41
|
+
initctl('version', '--quiet')
|
42
|
+
true
|
43
|
+
rescue
|
44
|
+
false
|
45
|
+
end
|
46
|
+
}
|
37
47
|
|
38
48
|
# upstart developer haven't implemented initctl enable/disable yet:
|
39
49
|
# http://www.linuxplanet.com/linuxplanet/tutorials/7033/2/
|
@@ -161,6 +161,7 @@ class Puppet::Transaction::ResourceHarness
|
|
161
161
|
name = param.name.to_s
|
162
162
|
event.message ||= _("could not create change error message for %{name}") % { name: name }
|
163
163
|
event.calculate_corrective_change(@persistence.get_system_value(context.resource.ref, name))
|
164
|
+
event.message << ' (corrective)' if event.corrective_change
|
164
165
|
context.record(event)
|
165
166
|
event.send_log
|
166
167
|
context.synced_params << param.name
|
data/lib/puppet/type/file.rb
CHANGED
@@ -31,7 +31,12 @@ Puppet::Type.newtype(:file) do
|
|
31
31
|
|
32
32
|
**Autorequires:** If Puppet is managing the user or group that owns a
|
33
33
|
file, the file resource will autorequire them. If Puppet is managing any
|
34
|
-
parent directories of a file, the file resource
|
34
|
+
parent directories of a file, the file resource autorequires them.
|
35
|
+
|
36
|
+
Warning: Enabling `recurse` on directories containing large numbers of
|
37
|
+
files slows agent runs. To manage file attributes for many files,
|
38
|
+
consider using alternative methods such as the `chmod_r`, `chown_r`,
|
39
|
+
or `recursive_file_permissions` modules from the Forge."
|
35
40
|
|
36
41
|
feature :manages_symlinks,
|
37
42
|
"The provider can manage symbolic links."
|
data/lib/puppet/util/log.rb
CHANGED
@@ -60,7 +60,7 @@ class Puppet::Util::Log
|
|
60
60
|
end
|
61
61
|
|
62
62
|
def self.close_all
|
63
|
-
destinations.keys.each { |dest|
|
63
|
+
@destinations.keys.each { |dest|
|
64
64
|
close(dest)
|
65
65
|
}
|
66
66
|
#TRANSLATORS "Log.close_all" is a method name and should not be translated
|
@@ -147,7 +147,12 @@ class Puppet::Util::Log
|
|
147
147
|
Puppet.log_exception(detail)
|
148
148
|
|
149
149
|
# If this was our only destination, then add the console back in.
|
150
|
-
|
150
|
+
if destinations.empty? && dest.intern != :console
|
151
|
+
newdestination(:console)
|
152
|
+
end
|
153
|
+
|
154
|
+
# Re-raise (end exit Puppet) because we could not set up logging correctly.
|
155
|
+
raise detail
|
151
156
|
end
|
152
157
|
end
|
153
158
|
|
data/lib/puppet/util/pidlock.rb
CHANGED
@@ -54,7 +54,20 @@ class Puppet::Util::Pidlock
|
|
54
54
|
begin
|
55
55
|
Process.kill(0, lock_pid)
|
56
56
|
rescue *errors
|
57
|
-
@lockfile.unlock
|
57
|
+
return @lockfile.unlock
|
58
|
+
end
|
59
|
+
|
60
|
+
# Ensure the process associated with this pid is our process. If
|
61
|
+
# not, we can unlock the lockfile. For now this is only done on
|
62
|
+
# POSIX and Windows platforms (PUP-9247).
|
63
|
+
if Puppet.features.posix?
|
64
|
+
procname = Puppet::Util::Execution.execute(["ps", "-p", lock_pid, "-o", "comm="]).strip
|
65
|
+
@lockfile.unlock unless procname =~ /puppet$/
|
66
|
+
elsif Puppet.features.microsoft_windows?
|
67
|
+
# On Windows, we're checking if the filesystem path name of the running
|
68
|
+
# process is our vendored ruby:
|
69
|
+
exe_path = Puppet::Util::Windows::Process::get_process_image_name_by_pid(lock_pid)
|
70
|
+
@lockfile.unlock unless exe_path =~ /Puppet\\puppet\\bin\\ruby.exe/
|
58
71
|
end
|
59
72
|
end
|
60
73
|
private :clear_if_stale
|
@@ -10,6 +10,10 @@ module Puppet::Util::Windows::Process
|
|
10
10
|
WAIT_INTERVAL = 200
|
11
11
|
# https://docs.microsoft.com/en-us/windows/desktop/ProcThread/process-creation-flags
|
12
12
|
CREATE_NO_WINDOW = 0x08000000
|
13
|
+
# https://docs.microsoft.com/en-us/windows/desktop/ProcThread/process-security-and-access-rights
|
14
|
+
PROCESS_QUERY_INFORMATION = 0x0400
|
15
|
+
# https://docs.microsoft.com/en-us/windows/desktop/FileIO/naming-a-file#maximum-path-length-limitation
|
16
|
+
MAX_PATH_LENGTH = 32767
|
13
17
|
|
14
18
|
def execute(command, arguments, stdin, stdout, stderr)
|
15
19
|
create_args = {
|
@@ -24,12 +28,10 @@ module Puppet::Util::Windows::Process
|
|
24
28
|
if arguments[:suppress_window]
|
25
29
|
create_args[:creation_flags] = CREATE_NO_WINDOW
|
26
30
|
end
|
27
|
-
|
28
|
-
|
29
|
-
Dir.chdir(cwd) { Process.create(create_args) }
|
30
|
-
else
|
31
|
-
Process.create(create_args)
|
31
|
+
if arguments[:cwd]
|
32
|
+
create_args[:cwd] = arguments[:cwd]
|
32
33
|
end
|
34
|
+
Process.create(create_args)
|
33
35
|
end
|
34
36
|
module_function :execute
|
35
37
|
|
@@ -62,6 +64,26 @@ module Puppet::Util::Windows::Process
|
|
62
64
|
end
|
63
65
|
module_function :get_current_process
|
64
66
|
|
67
|
+
def open_process(desired_access, inherit_handle, process_id, &block)
|
68
|
+
phandle = nil
|
69
|
+
inherit = inherit_handle ? FFI::WIN32_TRUE : FFI::WIN32_FALSE
|
70
|
+
begin
|
71
|
+
phandle = OpenProcess(desired_access, inherit, process_id)
|
72
|
+
if phandle == FFI::Pointer::NULL_HANDLE
|
73
|
+
raise Puppet::Util::Windows::Error.new(
|
74
|
+
"OpenProcess(#{desired_access.to_s(8)}, #{inherit}, #{process_id})")
|
75
|
+
end
|
76
|
+
|
77
|
+
yield phandle
|
78
|
+
ensure
|
79
|
+
FFI::WIN32.CloseHandle(phandle) if phandle
|
80
|
+
end
|
81
|
+
|
82
|
+
# phandle has had CloseHandle called against it, so nothing to return
|
83
|
+
nil
|
84
|
+
end
|
85
|
+
module_function :open_process
|
86
|
+
|
65
87
|
def open_process_token(handle, desired_access, &block)
|
66
88
|
token_handle = nil
|
67
89
|
begin
|
@@ -97,6 +119,32 @@ module Puppet::Util::Windows::Process
|
|
97
119
|
end
|
98
120
|
module_function :with_process_token
|
99
121
|
|
122
|
+
def get_process_image_name_by_pid(pid)
|
123
|
+
image_name = ""
|
124
|
+
|
125
|
+
open_process(PROCESS_QUERY_INFORMATION, false, pid) do |phandle|
|
126
|
+
|
127
|
+
FFI::MemoryPointer.new(:dword, 1) do |exe_name_length_ptr|
|
128
|
+
# Add 1 for the null terminator, and UTF is 2 bytes/char:
|
129
|
+
max_path_length = (MAX_PATH_LENGTH + 1) * 2
|
130
|
+
exe_name_length_ptr.write_dword(max_path_length)
|
131
|
+
FFI::MemoryPointer.new(max_path_length) do |exe_name_ptr|
|
132
|
+
use_win32_path_format = 0
|
133
|
+
result = QueryFullProcessImageNameW(phandle, use_win32_path_format, exe_name_ptr, exe_name_length_ptr)
|
134
|
+
if result == FFI::WIN32_FALSE
|
135
|
+
raise Puppet::Util::Windows::Error.new(
|
136
|
+
"QueryFullProcessImageNameW(phandle, #{use_win32_path_format}, " +
|
137
|
+
"exe_name_ptr, #{max_path_length}")
|
138
|
+
end
|
139
|
+
image_name = exe_name_ptr.read_wide_string(MAX_PATH_LENGTH + 1)
|
140
|
+
end
|
141
|
+
end
|
142
|
+
end
|
143
|
+
|
144
|
+
image_name
|
145
|
+
end
|
146
|
+
module_function :get_process_image_name_by_pid
|
147
|
+
|
100
148
|
def lookup_privilege_value(name, system_name = '', &block)
|
101
149
|
FFI::MemoryPointer.new(LUID.size) do |luid_ptr|
|
102
150
|
result = LookupPrivilegeValueW(
|
@@ -366,6 +414,16 @@ module Puppet::Util::Windows::Process
|
|
366
414
|
attach_function_private :SetEnvironmentVariableW,
|
367
415
|
[:lpcwstr, :lpcwstr], :win32_bool
|
368
416
|
|
417
|
+
# https://msdn.microsoft.com/en-us/library/windows/desktop/ms684320(v=vs.85).aspx
|
418
|
+
# HANDLE WINAPI OpenProcess(
|
419
|
+
# _In_ DWORD DesiredAccess,
|
420
|
+
# _In_ BOOL InheritHandle,
|
421
|
+
# _In_ DWORD ProcessId
|
422
|
+
# );
|
423
|
+
ffi_lib :kernel32
|
424
|
+
attach_function_private :OpenProcess,
|
425
|
+
[:dword, :win32_bool, :dword], :handle
|
426
|
+
|
369
427
|
# https://msdn.microsoft.com/en-us/library/windows/desktop/aa379295(v=vs.85).aspx
|
370
428
|
# BOOL WINAPI OpenProcessToken(
|
371
429
|
# _In_ HANDLE ProcessHandle,
|
@@ -376,6 +434,16 @@ module Puppet::Util::Windows::Process
|
|
376
434
|
attach_function_private :OpenProcessToken,
|
377
435
|
[:handle, :dword, :phandle], :win32_bool
|
378
436
|
|
437
|
+
# https://docs.microsoft.com/en-us/windows/desktop/api/winbase/nf-winbase-queryfullprocessimagenamew
|
438
|
+
# BOOL WINAPI QueryFullProcessImageName(
|
439
|
+
# _In_ HANDLE hProcess,
|
440
|
+
# _In_ DWORD dwFlags,
|
441
|
+
# _Out_ LPWSTR lpExeName,
|
442
|
+
# _In_ PDWORD lpdwSize,
|
443
|
+
# );
|
444
|
+
ffi_lib :kernel32
|
445
|
+
attach_function_private :QueryFullProcessImageNameW,
|
446
|
+
[:handle, :dword, :lpwstr, :pdword], :win32_bool
|
379
447
|
|
380
448
|
# https://msdn.microsoft.com/en-us/library/windows/desktop/aa379261(v=vs.85).aspx
|
381
449
|
# typedef struct _LUID {
|
data/lib/puppet/version.rb
CHANGED
data/locales/puppet.pot
CHANGED
@@ -6,11 +6,11 @@
|
|
6
6
|
#, fuzzy
|
7
7
|
msgid ""
|
8
8
|
msgstr ""
|
9
|
-
"Project-Id-Version: Puppet automation framework 6.
|
9
|
+
"Project-Id-Version: Puppet automation framework 6.2.0-46-gd0b3885\n"
|
10
10
|
"\n"
|
11
11
|
"Report-Msgid-Bugs-To: https://tickets.puppetlabs.com\n"
|
12
|
-
"POT-Creation-Date: 2019-
|
13
|
-
"PO-Revision-Date: 2019-
|
12
|
+
"POT-Creation-Date: 2019-02-02 21:03+0000\n"
|
13
|
+
"PO-Revision-Date: 2019-02-02 21:03+0000\n"
|
14
14
|
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
15
15
|
"Language-Team: LANGUAGE <LL@li.org>\n"
|
16
16
|
"Language: \n"
|
@@ -160,6 +160,10 @@ msgstr ""
|
|
160
160
|
msgid "No valid command or main"
|
161
161
|
msgstr ""
|
162
162
|
|
163
|
+
#: ../lib/puppet/application.rb:428
|
164
|
+
msgid "Could not set logdest to %{dest}."
|
165
|
+
msgstr ""
|
166
|
+
|
163
167
|
#: ../lib/puppet/application.rb:504
|
164
168
|
msgid "No help available for puppet %{app_name}"
|
165
169
|
msgstr ""
|
@@ -705,14 +709,6 @@ msgstr ""
|
|
705
709
|
msgid "Invalid value '%{value}' for parameter %{name}. Allowed values are '%{allowed_values}'"
|
706
710
|
msgstr ""
|
707
711
|
|
708
|
-
#: ../lib/puppet/defaults.rb:1459 ../lib/puppet/defaults.rb:1474
|
709
|
-
msgid "Attempted to set both server and server_list."
|
710
|
-
msgstr ""
|
711
|
-
|
712
|
-
#: ../lib/puppet/defaults.rb:1460 ../lib/puppet/defaults.rb:1475
|
713
|
-
msgid "Server setting will not be used."
|
714
|
-
msgstr ""
|
715
|
-
|
716
712
|
#: ../lib/puppet/error.rb:69
|
717
713
|
msgid "Could not parse for environment %{environment}: %{message}"
|
718
714
|
msgstr ""
|
@@ -5361,150 +5357,154 @@ msgid "An escape char for @() may only appear once. Got '%{escapes}'"
|
|
5361
5357
|
msgstr ""
|
5362
5358
|
|
5363
5359
|
#: ../lib/puppet/pops/issues.rb:763
|
5364
|
-
msgid "
|
5360
|
+
msgid "Heredoc with text in the margin is not allowed (line %{heredoc_line} in this heredoc)"
|
5365
5361
|
msgstr ""
|
5366
5362
|
|
5367
5363
|
#: ../lib/puppet/pops/issues.rb:767
|
5368
|
-
msgid "
|
5364
|
+
msgid "Illegal %{format} Byte Order mark at beginning of input: %{bom} - remove these from the puppet source"
|
5369
5365
|
msgstr ""
|
5370
5366
|
|
5371
5367
|
#: ../lib/puppet/pops/issues.rb:771
|
5368
|
+
msgid "No such file or directory: %{file}"
|
5369
|
+
msgstr ""
|
5370
|
+
|
5371
|
+
#: ../lib/puppet/pops/issues.rb:775
|
5372
5372
|
msgid "%{file} is not a file"
|
5373
5373
|
msgstr ""
|
5374
5374
|
|
5375
|
-
#: ../lib/puppet/pops/issues.rb:
|
5375
|
+
#: ../lib/puppet/pops/issues.rb:780
|
5376
5376
|
msgid "%{expression} resulted in a value outside of Puppet Integer max range, got '%{value}'"
|
5377
5377
|
msgstr ""
|
5378
5378
|
|
5379
|
-
#: ../lib/puppet/pops/issues.rb:
|
5379
|
+
#: ../lib/puppet/pops/issues.rb:782
|
5380
5380
|
msgid "%{expression} resulted in a value outside of Puppet Integer min range, got '%{value}'"
|
5381
5381
|
msgstr ""
|
5382
5382
|
|
5383
|
-
#: ../lib/puppet/pops/issues.rb:
|
5383
|
+
#: ../lib/puppet/pops/issues.rb:787
|
5384
5384
|
msgid "This runtime does not support hiera.yaml version %{version}"
|
5385
5385
|
msgstr ""
|
5386
5386
|
|
5387
|
-
#: ../lib/puppet/pops/issues.rb:
|
5387
|
+
#: ../lib/puppet/pops/issues.rb:791
|
5388
5388
|
msgid "hiera.yaml version 3 cannot be used in %{location}"
|
5389
5389
|
msgstr ""
|
5390
5390
|
|
5391
|
-
#: ../lib/puppet/pops/issues.rb:
|
5391
|
+
#: ../lib/puppet/pops/issues.rb:795
|
5392
5392
|
msgid "hiera.yaml version 4 cannot be used in the global layer"
|
5393
5393
|
msgstr ""
|
5394
5394
|
|
5395
|
-
#: ../lib/puppet/pops/issues.rb:
|
5395
|
+
#: ../lib/puppet/pops/issues.rb:799
|
5396
5396
|
msgid "Undefined variable '%{name}'"
|
5397
5397
|
msgstr ""
|
5398
5398
|
|
5399
|
-
#: ../lib/puppet/pops/issues.rb:
|
5399
|
+
#: ../lib/puppet/pops/issues.rb:803
|
5400
5400
|
msgid "Backend '%{name}' is defined more than once."
|
5401
5401
|
msgstr ""
|
5402
5402
|
|
5403
|
-
#: ../lib/puppet/pops/issues.rb:
|
5403
|
+
#: ../lib/puppet/pops/issues.rb:806 ../lib/puppet/pops/issues.rb:819
|
5404
5404
|
msgid "First defined at %{error_location}"
|
5405
5405
|
msgstr ""
|
5406
5406
|
|
5407
|
-
#: ../lib/puppet/pops/issues.rb:
|
5407
|
+
#: ../lib/puppet/pops/issues.rb:812
|
5408
5408
|
msgid "No data provider is registered for backend '%{name}'"
|
5409
5409
|
msgstr ""
|
5410
5410
|
|
5411
|
-
#: ../lib/puppet/pops/issues.rb:
|
5411
|
+
#: ../lib/puppet/pops/issues.rb:816
|
5412
5412
|
msgid "Hierarchy name '%{name}' defined more than once."
|
5413
5413
|
msgstr ""
|
5414
5414
|
|
5415
|
-
#: ../lib/puppet/pops/issues.rb:
|
5415
|
+
#: ../lib/puppet/pops/issues.rb:825
|
5416
5416
|
msgid "'hiera3_backend' is only allowed in the global layer"
|
5417
5417
|
msgstr ""
|
5418
5418
|
|
5419
|
-
#: ../lib/puppet/pops/issues.rb:
|
5419
|
+
#: ../lib/puppet/pops/issues.rb:829
|
5420
5420
|
msgid "'default_hierarchy' is only allowed in the module layer"
|
5421
5421
|
msgstr ""
|
5422
5422
|
|
5423
|
-
#: ../lib/puppet/pops/issues.rb:
|
5423
|
+
#: ../lib/puppet/pops/issues.rb:833
|
5424
5424
|
msgid "Use \"data_hash: %{function_name}_data\" instead of \"hiera3_backend: %{function_name}\""
|
5425
5425
|
msgstr ""
|
5426
5426
|
|
5427
|
-
#: ../lib/puppet/pops/issues.rb:
|
5427
|
+
#: ../lib/puppet/pops/issues.rb:837
|
5428
5428
|
msgid "One of %{keys} must be defined in hierarchy '%{name}'"
|
5429
5429
|
msgstr ""
|
5430
5430
|
|
5431
|
-
#: ../lib/puppet/pops/issues.rb:
|
5431
|
+
#: ../lib/puppet/pops/issues.rb:841 ../lib/puppet/pops/issues.rb:849
|
5432
5432
|
msgid "Only one of %{keys} can be defined in hierarchy '%{name}'"
|
5433
5433
|
msgstr ""
|
5434
5434
|
|
5435
|
-
#: ../lib/puppet/pops/issues.rb:
|
5435
|
+
#: ../lib/puppet/pops/issues.rb:845
|
5436
5436
|
msgid "Only one of %{keys} can be defined in defaults"
|
5437
5437
|
msgstr ""
|
5438
5438
|
|
5439
|
-
#: ../lib/puppet/pops/issues.rb:
|
5439
|
+
#: ../lib/puppet/pops/issues.rb:853
|
5440
5440
|
msgid "Option key '%{key}' used in hierarchy '%{name}' is reserved by Puppet"
|
5441
5441
|
msgstr ""
|
5442
5442
|
|
5443
|
-
#: ../lib/puppet/pops/issues.rb:
|
5443
|
+
#: ../lib/puppet/pops/issues.rb:857
|
5444
5444
|
msgid "Option key '%{key}' used in defaults is reserved by Puppet"
|
5445
5445
|
msgstr ""
|
5446
5446
|
|
5447
|
-
#: ../lib/puppet/pops/issues.rb:
|
5447
|
+
#: ../lib/puppet/pops/issues.rb:861
|
5448
5448
|
msgid "Unable to find '%{function_type}' function named '%{function_name}'"
|
5449
5449
|
msgstr ""
|
5450
5450
|
|
5451
|
-
#: ../lib/puppet/pops/issues.rb:
|
5451
|
+
#: ../lib/puppet/pops/issues.rb:865
|
5452
5452
|
msgid "'alias' interpolation is only permitted if the expression is equal to the entire string"
|
5453
5453
|
msgstr ""
|
5454
5454
|
|
5455
|
-
#: ../lib/puppet/pops/issues.rb:
|
5455
|
+
#: ../lib/puppet/pops/issues.rb:869
|
5456
5456
|
msgid "Unknown interpolation method '%{name}'"
|
5457
5457
|
msgstr ""
|
5458
5458
|
|
5459
|
-
#: ../lib/puppet/pops/issues.rb:
|
5459
|
+
#: ../lib/puppet/pops/issues.rb:873
|
5460
5460
|
msgid "Interpolation using method syntax is not allowed in this context"
|
5461
5461
|
msgstr ""
|
5462
5462
|
|
5463
|
-
#: ../lib/puppet/pops/issues.rb:
|
5463
|
+
#: ../lib/puppet/pops/issues.rb:877
|
5464
5464
|
msgid "Endless recursion detected when attempting to serialize value of class %{type_name}"
|
5465
5465
|
msgstr ""
|
5466
5466
|
|
5467
|
-
#: ../lib/puppet/pops/issues.rb:
|
5467
|
+
#: ../lib/puppet/pops/issues.rb:881
|
5468
5468
|
msgid "%{path} contains the special value default. It will be converted to the String 'default'"
|
5469
5469
|
msgstr ""
|
5470
5470
|
|
5471
|
-
#: ../lib/puppet/pops/issues.rb:
|
5471
|
+
#: ../lib/puppet/pops/issues.rb:885
|
5472
5472
|
msgid "%{path} contains %{klass} value. It will be converted to the String '%{value}'"
|
5473
5473
|
msgstr ""
|
5474
5474
|
|
5475
|
-
#: ../lib/puppet/pops/issues.rb:
|
5475
|
+
#: ../lib/puppet/pops/issues.rb:889
|
5476
5476
|
msgid "%{path} contains a hash with %{klass} key. It will be converted to the String '%{value}'"
|
5477
5477
|
msgstr ""
|
5478
5478
|
|
5479
|
-
#: ../lib/puppet/pops/issues.rb:
|
5479
|
+
#: ../lib/puppet/pops/issues.rb:893
|
5480
5480
|
msgid "The feature '%{feature}' is only available when compiling a catalog"
|
5481
5481
|
msgstr ""
|
5482
5482
|
|
5483
|
-
#: ../lib/puppet/pops/issues.rb:
|
5483
|
+
#: ../lib/puppet/pops/issues.rb:897
|
5484
5484
|
msgid "The catalog operation '%{operation}' is only available when compiling a catalog"
|
5485
5485
|
msgstr ""
|
5486
5486
|
|
5487
|
-
#: ../lib/puppet/pops/issues.rb:
|
5487
|
+
#: ../lib/puppet/pops/issues.rb:901
|
5488
5488
|
msgid "%{expr} is only available when compiling a catalog"
|
5489
5489
|
msgstr ""
|
5490
5490
|
|
5491
|
-
#: ../lib/puppet/pops/issues.rb:
|
5491
|
+
#: ../lib/puppet/pops/issues.rb:905
|
5492
5492
|
msgid "The task operation '%{operation}' is not available when compiling a catalog"
|
5493
5493
|
msgstr ""
|
5494
5494
|
|
5495
|
-
#: ../lib/puppet/pops/issues.rb:
|
5495
|
+
#: ../lib/puppet/pops/issues.rb:909
|
5496
5496
|
msgid "%{expr} is not available when compiling a catalog"
|
5497
5497
|
msgstr ""
|
5498
5498
|
|
5499
|
-
#: ../lib/puppet/pops/issues.rb:
|
5499
|
+
#: ../lib/puppet/pops/issues.rb:913
|
5500
5500
|
msgid "The 'bolt' library is required to %{action}"
|
5501
5501
|
msgstr ""
|
5502
5502
|
|
5503
|
-
#: ../lib/puppet/pops/issues.rb:
|
5503
|
+
#: ../lib/puppet/pops/issues.rb:917
|
5504
5504
|
msgid "Task not found: %{type_name}"
|
5505
5505
|
msgstr ""
|
5506
5506
|
|
5507
|
-
#: ../lib/puppet/pops/issues.rb:
|
5507
|
+
#: ../lib/puppet/pops/issues.rb:921
|
5508
5508
|
msgid "Failed to load: %{type_name}"
|
5509
5509
|
msgstr ""
|
5510
5510
|
|
@@ -5834,19 +5834,19 @@ msgid "Unacceptable transform - found an Object without a rule: %{klass}"
|
|
5834
5834
|
msgstr ""
|
5835
5835
|
|
5836
5836
|
#. TRANSLATORS 'NUMBER' refers to a method name and the 'name_or_numeric' was the passed in value and should not be translated
|
5837
|
-
#: ../lib/puppet/pops/model/factory.rb:
|
5837
|
+
#: ../lib/puppet/pops/model/factory.rb:848
|
5838
5838
|
msgid "Internal Error, NUMBER token does not contain a valid number, %{name_or_numeric}"
|
5839
5839
|
msgstr ""
|
5840
5840
|
|
5841
|
-
#: ../lib/puppet/pops/model/factory.rb:
|
5841
|
+
#: ../lib/puppet/pops/model/factory.rb:1164
|
5842
5842
|
msgid "can only concatenate strings, got %{class_name}"
|
5843
5843
|
msgstr ""
|
5844
5844
|
|
5845
|
-
#: ../lib/puppet/pops/parser/parser_support.rb:
|
5845
|
+
#: ../lib/puppet/pops/parser/parser_support.rb:204
|
5846
5846
|
msgid "attempt to pass argument list to the function '%{name}' which cannot be called without parentheses"
|
5847
5847
|
msgstr ""
|
5848
5848
|
|
5849
|
-
#: ../lib/puppet/pops/parser/parser_support.rb:
|
5849
|
+
#: ../lib/puppet/pops/parser/parser_support.rb:206
|
5850
5850
|
msgid "illegal comma separated argument list"
|
5851
5851
|
msgstr ""
|
5852
5852
|
|
@@ -7973,23 +7973,23 @@ msgstr ""
|
|
7973
7973
|
msgid "could not create change error message for %{name}"
|
7974
7974
|
msgstr ""
|
7975
7975
|
|
7976
|
-
#: ../lib/puppet/transaction/resource_harness.rb:
|
7976
|
+
#: ../lib/puppet/transaction/resource_harness.rb:215
|
7977
7977
|
msgid "audit change: previously recorded value %s has been changed to %s"
|
7978
7978
|
msgstr ""
|
7979
7979
|
|
7980
|
-
#: ../lib/puppet/transaction/resource_harness.rb:
|
7980
|
+
#: ../lib/puppet/transaction/resource_harness.rb:225
|
7981
7981
|
msgid " (previously recorded value was %s)"
|
7982
7982
|
msgstr ""
|
7983
7983
|
|
7984
|
-
#: ../lib/puppet/transaction/resource_harness.rb:
|
7984
|
+
#: ../lib/puppet/transaction/resource_harness.rb:232
|
7985
7985
|
msgid "current_value %s, should be %s (noop)"
|
7986
7986
|
msgstr ""
|
7987
7987
|
|
7988
|
-
#: ../lib/puppet/transaction/resource_harness.rb:
|
7988
|
+
#: ../lib/puppet/transaction/resource_harness.rb:241
|
7989
7989
|
msgid "changed %s to %s"
|
7990
7990
|
msgstr ""
|
7991
7991
|
|
7992
|
-
#: ../lib/puppet/transaction/resource_harness.rb:
|
7992
|
+
#: ../lib/puppet/transaction/resource_harness.rb:264
|
7993
7993
|
msgid "audit change: newly-recorded value %s"
|
7994
7994
|
msgstr ""
|
7995
7995
|
|
@@ -8127,90 +8127,90 @@ msgstr ""
|
|
8127
8127
|
msgid "Check %{value} exceeded timeout"
|
8128
8128
|
msgstr ""
|
8129
8129
|
|
8130
|
-
#: ../lib/puppet/type/file.rb:
|
8130
|
+
#: ../lib/puppet/type/file.rb:61
|
8131
8131
|
msgid "File paths must be fully qualified, not '%{path}'"
|
8132
8132
|
msgstr ""
|
8133
8133
|
|
8134
|
-
#: ../lib/puppet/type/file.rb:
|
8134
|
+
#: ../lib/puppet/type/file.rb:129
|
8135
8135
|
msgid "Invalid backup type %{value}"
|
8136
8136
|
msgstr ""
|
8137
8137
|
|
8138
|
-
#: ../lib/puppet/type/file.rb:
|
8138
|
+
#: ../lib/puppet/type/file.rb:173 ../lib/puppet/type/tidy.rb:48
|
8139
8139
|
msgid "Invalid recurse value %{value}"
|
8140
8140
|
msgstr ""
|
8141
8141
|
|
8142
|
-
#: ../lib/puppet/type/file.rb:
|
8142
|
+
#: ../lib/puppet/type/file.rb:205
|
8143
8143
|
msgid "Invalid recurselimit value %{value}"
|
8144
8144
|
msgstr ""
|
8145
8145
|
|
8146
|
-
#: ../lib/puppet/type/file.rb:
|
8146
|
+
#: ../lib/puppet/type/file.rb:375
|
8147
8147
|
msgid "You cannot specify more than one of %{creators}"
|
8148
8148
|
msgstr ""
|
8149
8149
|
|
8150
|
-
#: ../lib/puppet/type/file.rb:
|
8150
|
+
#: ../lib/puppet/type/file.rb:377
|
8151
8151
|
msgid "You cannot specify a remote recursion without a source"
|
8152
8152
|
msgstr ""
|
8153
8153
|
|
8154
|
-
#: ../lib/puppet/type/file.rb:
|
8154
|
+
#: ../lib/puppet/type/file.rb:379
|
8155
8155
|
msgid "You cannot specify source when using checksum 'none'"
|
8156
8156
|
msgstr ""
|
8157
8157
|
|
8158
|
-
#: ../lib/puppet/type/file.rb:
|
8158
|
+
#: ../lib/puppet/type/file.rb:382
|
8159
8159
|
msgid "You cannot specify content when using checksum '%{checksum_type}'"
|
8160
8160
|
msgstr ""
|
8161
8161
|
|
8162
|
-
#: ../lib/puppet/type/file.rb:
|
8162
|
+
#: ../lib/puppet/type/file.rb:385
|
8163
8163
|
msgid "Possible error: recurselimit is set but not recurse, no recursion will happen"
|
8164
8164
|
msgstr ""
|
8165
8165
|
|
8166
|
-
#: ../lib/puppet/type/file.rb:
|
8166
|
+
#: ../lib/puppet/type/file.rb:393
|
8167
8167
|
msgid "Checksum value '%{value}' is not a valid checksum type %{checksum}"
|
8168
8168
|
msgstr ""
|
8169
8169
|
|
8170
|
-
#: ../lib/puppet/type/file.rb:
|
8170
|
+
#: ../lib/puppet/type/file.rb:396
|
8171
8171
|
msgid "Checksum value is ignored unless content or source are specified"
|
8172
8172
|
msgstr ""
|
8173
8173
|
|
8174
|
-
#: ../lib/puppet/type/file.rb:
|
8174
|
+
#: ../lib/puppet/type/file.rb:434
|
8175
8175
|
msgid "Can not find filebucket for backups without a catalog"
|
8176
8176
|
msgstr ""
|
8177
8177
|
|
8178
|
-
#: ../lib/puppet/type/file.rb:
|
8178
|
+
#: ../lib/puppet/type/file.rb:438
|
8179
8179
|
msgid "Could not find filebucket %{backup} specified in backup"
|
8180
8180
|
msgstr ""
|
8181
8181
|
|
8182
|
-
#: ../lib/puppet/type/file.rb:
|
8182
|
+
#: ../lib/puppet/type/file.rb:734
|
8183
8183
|
msgid "Could not back up file of type %{current_type}"
|
8184
8184
|
msgstr ""
|
8185
8185
|
|
8186
|
-
#: ../lib/puppet/type/file.rb:
|
8186
|
+
#: ../lib/puppet/type/file.rb:749
|
8187
8187
|
msgid "Could not remove files of type %{current_type}"
|
8188
8188
|
msgstr ""
|
8189
8189
|
|
8190
8190
|
#. TRANSLATORS "source_permissions => ignore" should not be translated
|
8191
|
-
#: ../lib/puppet/type/file.rb:
|
8191
|
+
#: ../lib/puppet/type/file.rb:760
|
8192
8192
|
msgid "Copying owner/mode/group from the source file on Windows is not supported; use source_permissions => ignore."
|
8193
8193
|
msgstr ""
|
8194
8194
|
|
8195
8195
|
#. TRANSLATORS "stat" is a program name and should not be translated
|
8196
|
-
#: ../lib/puppet/type/file.rb:
|
8196
|
+
#: ../lib/puppet/type/file.rb:841 ../lib/puppet/type/tidy.rb:345
|
8197
8197
|
msgid "Could not stat; permission denied"
|
8198
8198
|
msgstr ""
|
8199
8199
|
|
8200
|
-
#: ../lib/puppet/type/file.rb:
|
8200
|
+
#: ../lib/puppet/type/file.rb:844
|
8201
8201
|
msgid "Could not stat; invalid pathname"
|
8202
8202
|
msgstr ""
|
8203
8203
|
|
8204
|
-
#: ../lib/puppet/type/file.rb:
|
8204
|
+
#: ../lib/puppet/type/file.rb:969
|
8205
8205
|
msgid "Not removing directory; use 'force' to override"
|
8206
8206
|
msgstr ""
|
8207
8207
|
|
8208
8208
|
#. TRANSLATORS refers to a file which could not be backed up
|
8209
|
-
#: ../lib/puppet/type/file.rb:
|
8209
|
+
#: ../lib/puppet/type/file.rb:994
|
8210
8210
|
msgid "Could not back up; will not remove"
|
8211
8211
|
msgstr ""
|
8212
8212
|
|
8213
|
-
#: ../lib/puppet/type/file.rb:
|
8213
|
+
#: ../lib/puppet/type/file.rb:1008
|
8214
8214
|
msgid "File written to disk did not match checksum; discarding changes (%{content_checksum} vs %{newsum})"
|
8215
8215
|
msgstr ""
|
8216
8216
|
|
@@ -9011,7 +9011,7 @@ msgstr ""
|
|
9011
9011
|
msgid "Logs require a level"
|
9012
9012
|
msgstr ""
|
9013
9013
|
|
9014
|
-
#: ../lib/puppet/util/log.rb:87 ../lib/puppet/util/log.rb:
|
9014
|
+
#: ../lib/puppet/util/log.rb:87 ../lib/puppet/util/log.rb:375 ../lib/puppet/util/windows/eventlog.rb:99
|
9015
9015
|
msgid "Invalid log level %{level}"
|
9016
9016
|
msgstr ""
|
9017
9017
|
|
@@ -9023,40 +9023,40 @@ msgstr ""
|
|
9023
9023
|
msgid "Unknown destination type %{dest}"
|
9024
9024
|
msgstr ""
|
9025
9025
|
|
9026
|
-
#: ../lib/puppet/util/log.rb:
|
9026
|
+
#: ../lib/puppet/util/log.rb:176
|
9027
9027
|
msgid "Received a Log attribute with invalid encoding:%{log_message}"
|
9028
9028
|
msgstr ""
|
9029
9029
|
|
9030
|
-
#: ../lib/puppet/util/log.rb:
|
9030
|
+
#: ../lib/puppet/util/log.rb:178
|
9031
9031
|
msgid ""
|
9032
9032
|
"Backtrace:\n"
|
9033
9033
|
"%{backtrace}"
|
9034
9034
|
msgstr ""
|
9035
9035
|
|
9036
|
-
#: ../lib/puppet/util/log.rb:
|
9036
|
+
#: ../lib/puppet/util/log.rb:232
|
9037
9037
|
msgid "Reopening log files"
|
9038
9038
|
msgstr ""
|
9039
9039
|
|
9040
9040
|
#. TRANSLATORS 'Puppet::Util::Log' refers to a Puppet source code class
|
9041
|
-
#: ../lib/puppet/util/log.rb:
|
9041
|
+
#: ../lib/puppet/util/log.rb:365
|
9042
9042
|
msgid "Puppet::Util::Log requires a message"
|
9043
9043
|
msgstr ""
|
9044
9044
|
|
9045
9045
|
#. TRANSLATORS 'Puppet::Util::Log' refers to a Puppet source code class
|
9046
|
-
#: ../lib/puppet/util/log.rb:
|
9046
|
+
#: ../lib/puppet/util/log.rb:371
|
9047
9047
|
msgid "Puppet::Util::Log requires a log level"
|
9048
9048
|
msgstr ""
|
9049
9049
|
|
9050
9050
|
#. TRANSLATORS 'Puppet::Util::Log' refers to a Puppet source code class
|
9051
|
-
#: ../lib/puppet/util/log.rb:
|
9051
|
+
#: ../lib/puppet/util/log.rb:373
|
9052
9052
|
msgid "Puppet::Util::Log requires a symbol or string"
|
9053
9053
|
msgstr ""
|
9054
9054
|
|
9055
|
-
#: ../lib/puppet/util/log.rb:
|
9055
|
+
#: ../lib/puppet/util/log.rb:404
|
9056
9056
|
msgid "Could not parse for environment %{environment}: %{msg}"
|
9057
9057
|
msgstr ""
|
9058
9058
|
|
9059
|
-
#: ../lib/puppet/util/log.rb:
|
9059
|
+
#: ../lib/puppet/util/log.rb:406
|
9060
9060
|
msgid "%{msg} on node %{node}"
|
9061
9061
|
msgstr ""
|
9062
9062
|
|
@@ -9437,27 +9437,27 @@ msgstr ""
|
|
9437
9437
|
msgid "Failed to call LookupAccountSidW with bytes: %{sid_bytes}"
|
9438
9438
|
msgstr ""
|
9439
9439
|
|
9440
|
-
#: ../lib/puppet/util/windows/process.rb:
|
9440
|
+
#: ../lib/puppet/util/windows/process.rb:46
|
9441
9441
|
msgid "Failed to get child process exit code"
|
9442
9442
|
msgstr ""
|
9443
9443
|
|
9444
|
-
#: ../lib/puppet/util/windows/process.rb:
|
9444
|
+
#: ../lib/puppet/util/windows/process.rb:285
|
9445
9445
|
msgid "GetVersionEx failed"
|
9446
9446
|
msgstr ""
|
9447
9447
|
|
9448
|
-
#: ../lib/puppet/util/windows/process.rb:
|
9448
|
+
#: ../lib/puppet/util/windows/process.rb:314
|
9449
9449
|
msgid "Discarding environment variable %{string} which contains invalid bytes"
|
9450
9450
|
msgstr ""
|
9451
9451
|
|
9452
|
-
#: ../lib/puppet/util/windows/process.rb:
|
9452
|
+
#: ../lib/puppet/util/windows/process.rb:330
|
9453
9453
|
msgid "environment variable name must not be nil or empty"
|
9454
9454
|
msgstr ""
|
9455
9455
|
|
9456
|
-
#: ../lib/puppet/util/windows/process.rb:
|
9456
|
+
#: ../lib/puppet/util/windows/process.rb:335
|
9457
9457
|
msgid "Failed to remove environment variable: %{name}"
|
9458
9458
|
msgstr ""
|
9459
9459
|
|
9460
|
-
#: ../lib/puppet/util/windows/process.rb:
|
9460
|
+
#: ../lib/puppet/util/windows/process.rb:340
|
9461
9461
|
msgid "Failed to set environment variable: %{name}"
|
9462
9462
|
msgstr ""
|
9463
9463
|
|