openvox 8.28.1 → 9.0.0.pre.alpha2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +28 -41
- data/Gemfile +3 -3
- data/Rakefile +1 -2
- data/lib/puppet/defaults.rb +4 -2
- data/lib/puppet/feature/base.rb +1 -1
- data/lib/puppet/generate/type.rb +1 -5
- data/lib/puppet/node/server_facts.rb +0 -6
- data/lib/puppet/pops/lookup/sub_lookup.rb +0 -3
- data/lib/puppet/pops/serialization/to_data_converter.rb +1 -1
- data/lib/puppet/provider/package/puppetserver_gem.rb +1 -4
- data/lib/puppet/resource/type.rb +8 -8
- data/lib/puppet/ssl/state_machine.rb +0 -6
- data/lib/puppet/type/file/ensure.rb +5 -14
- data/lib/puppet/util.rb +6 -5
- data/lib/puppet/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 339c5fb2d2500d3313f1cce4ce036c2195687ab085c27ff51b057b8268129cf4
|
|
4
|
+
data.tar.gz: 1f1d1fc0714e7d123acbbcb46956187ee74509342a006d1acef23a7c1fc6e841
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 2718c3a0382123b2293d5b25aa8ccf3c28f8f3a9bbf6c818e1e4bc0d294ea925a1647188acfd84560b1ba6c48f4d7e88552346686d3f634f59b78706bb642476
|
|
7
|
+
data.tar.gz: de6fbe865701dec9ef8a1e42afc4d9ad02ef3adcaa1397090c3e20e4b33025dd774ac8dbb0903e684ca671c0586af497c0fd90a60b37644decbf7cb2667e112c
|
data/CHANGELOG.md
CHANGED
|
@@ -2,57 +2,39 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
|
|
5
|
-
## [
|
|
5
|
+
## [9.0.0-alpha2](https://github.com/openvoxproject/openvox/tree/9.0.0-alpha2) (2026-06-10)
|
|
6
6
|
|
|
7
|
-
[Full Changelog](https://github.com/openvoxproject/openvox/compare/
|
|
7
|
+
[Full Changelog](https://github.com/openvoxproject/openvox/compare/9.0.0-alpha1...9.0.0-alpha2)
|
|
8
8
|
|
|
9
|
-
**
|
|
10
|
-
|
|
11
|
-
- \[Bug\]: ca\_refresh\_interval is not respected — agent refreshes CA on every run when server responds 304 [\#435](https://github.com/OpenVoxProject/openvox/issues/435)
|
|
12
|
-
- \[Bug\]: Puppet 8 introduced a regex node definition regression [\#14](https://github.com/OpenVoxProject/openvox/issues/14)
|
|
13
|
-
- \[Backport 8.x\] Update ca\_last\_update/crl\_last\_update on HTTP 304 [\#526](https://github.com/OpenVoxProject/openvox/pull/526) ([OpenVoxProjectBot](https://github.com/OpenVoxProjectBot))
|
|
14
|
-
- \[Backport 8.x\] Copy input mtime to files generated by puppet generate types [\#523](https://github.com/OpenVoxProject/openvox/pull/523) ([OpenVoxProjectBot](https://github.com/OpenVoxProjectBot))
|
|
15
|
-
- \[Backport 8.x\] Fix regex node lookup regression from PUP-11515 [\#515](https://github.com/OpenVoxProject/openvox/pull/515) ([OpenVoxProjectBot](https://github.com/OpenVoxProjectBot))
|
|
16
|
-
- \[Backport 8.x\] Tolerate concurrent creation of directories [\#507](https://github.com/OpenVoxProject/openvox/pull/507) ([OpenVoxProjectBot](https://github.com/OpenVoxProjectBot))
|
|
17
|
-
|
|
18
|
-
**Closed issues:**
|
|
9
|
+
**Breaking changes:**
|
|
19
10
|
|
|
20
|
-
-
|
|
21
|
-
-
|
|
22
|
-
- \
|
|
23
|
-
- \[Deprecation\] `pluginsync` Setting [\#339](https://github.com/OpenVoxProject/openvox/issues/339)
|
|
24
|
-
- \[Deprecation\] `configprint` Setting [\#337](https://github.com/OpenVoxProject/openvox/issues/337)
|
|
25
|
-
- \[Deprecation\] `regsubst()` Encoding Argument [\#336](https://github.com/OpenVoxProject/openvox/issues/336)
|
|
26
|
-
|
|
27
|
-
**Merged pull requests:**
|
|
28
|
-
|
|
29
|
-
- Promote puppet-resource\_api 1.9.2 into 8.x [\#527](https://github.com/OpenVoxProject/openvox/pull/527) ([OpenVoxProjectBot](https://github.com/OpenVoxProjectBot))
|
|
30
|
-
- Promote puppet-resource\_api 1.9.1 into 8.x [\#518](https://github.com/OpenVoxProject/openvox/pull/518) ([OpenVoxProjectBot](https://github.com/OpenVoxProjectBot))
|
|
31
|
-
- \[Backport 8.x\] Fix handling of Puppet::Pops serialization issues [\#514](https://github.com/OpenVoxProject/openvox/pull/514) ([OpenVoxProjectBot](https://github.com/OpenVoxProjectBot))
|
|
32
|
-
- Promote puppet-runtime 2026.06.24.1 into 8.x [\#501](https://github.com/OpenVoxProject/openvox/pull/501) ([OpenVoxProjectBot](https://github.com/OpenVoxProjectBot))
|
|
33
|
-
- Add arm64 support to acceptance 8.x [\#499](https://github.com/OpenVoxProject/openvox/pull/499) ([jpartlow](https://github.com/jpartlow))
|
|
34
|
-
- Add jruby 9.4.15 to CI [\#487](https://github.com/OpenVoxProject/openvox/pull/487) ([bastelfreak](https://github.com/bastelfreak))
|
|
35
|
-
|
|
36
|
-
## [8.28.0](https://github.com/openvoxproject/openvox/tree/8.28.0) (2026-06-10)
|
|
37
|
-
|
|
38
|
-
[Full Changelog](https://github.com/openvoxproject/openvox/compare/8.27.0...8.28.0)
|
|
11
|
+
- return to preprocessing deferred functions by default [\#462](https://github.com/OpenVoxProject/openvox/pull/462) ([binford2k](https://github.com/binford2k))
|
|
12
|
+
- Decouple :posix feature from :syslog library check [\#458](https://github.com/OpenVoxProject/openvox/pull/458) ([silug](https://github.com/silug))
|
|
13
|
+
- remove pe\_serverversion fact [\#397](https://github.com/OpenVoxProject/openvox/pull/397) ([corporate-gadfly](https://github.com/corporate-gadfly))
|
|
39
14
|
|
|
40
15
|
**Implemented enhancements:**
|
|
41
16
|
|
|
42
|
-
-
|
|
17
|
+
- Add windows-msys2-x64 build for OpenVox 9 [\#468](https://github.com/OpenVoxProject/openvox/pull/468) ([Sharpie](https://github.com/Sharpie))
|
|
43
18
|
|
|
44
19
|
**Fixed bugs:**
|
|
45
20
|
|
|
46
|
-
-
|
|
47
|
-
-
|
|
21
|
+
- Manage group members on EL 10 without libuser [\#476](https://github.com/OpenVoxProject/openvox/pull/476) ([Sharpie](https://github.com/Sharpie))
|
|
22
|
+
- Fix File.open Ruby 3.2 regression in FileSystem::Uniquefile [\#450](https://github.com/OpenVoxProject/openvox/pull/450) ([JonasVerhofste](https://github.com/JonasVerhofste))
|
|
48
23
|
|
|
49
24
|
**Merged pull requests:**
|
|
50
25
|
|
|
51
|
-
- Promote puppet-runtime 2026.06.09.1 into
|
|
26
|
+
- Promote puppet-runtime 2026.06.09.1 into main [\#479](https://github.com/OpenVoxProject/openvox/pull/479) ([OpenVoxProjectBot](https://github.com/OpenVoxProjectBot))
|
|
27
|
+
- CI: Use bot account for backports [\#472](https://github.com/OpenVoxProject/openvox/pull/472) ([bastelfreak](https://github.com/bastelfreak))
|
|
28
|
+
- Add JRuby 10.0.5.0 and 10.1.0.0 to test matrix [\#463](https://github.com/OpenVoxProject/openvox/pull/463) ([silug](https://github.com/silug))
|
|
52
29
|
|
|
53
|
-
## [
|
|
30
|
+
## [9.0.0-alpha1](https://github.com/openvoxproject/openvox/tree/9.0.0-alpha1) (2026-05-20)
|
|
54
31
|
|
|
55
|
-
[Full Changelog](https://github.com/openvoxproject/openvox/compare/8.
|
|
32
|
+
[Full Changelog](https://github.com/openvoxproject/openvox/compare/8.27.0...9.0.0-alpha1)
|
|
33
|
+
|
|
34
|
+
**Implemented enhancements:**
|
|
35
|
+
|
|
36
|
+
- Add platform definitions for Fedora 44 [\#455](https://github.com/OpenVoxProject/openvox/pull/455) ([Sharpie](https://github.com/Sharpie))
|
|
37
|
+
- Promote openfact 5.6.1 into main [\#436](https://github.com/OpenVoxProject/openvox/pull/436) ([OpenVoxProjectBot](https://github.com/OpenVoxProjectBot))
|
|
56
38
|
|
|
57
39
|
**Fixed bugs:**
|
|
58
40
|
|
|
@@ -60,13 +42,18 @@ All notable changes to this project will be documented in this file.
|
|
|
60
42
|
|
|
61
43
|
**Merged pull requests:**
|
|
62
44
|
|
|
63
|
-
-
|
|
64
|
-
-
|
|
65
|
-
-
|
|
66
|
-
- Promote puppet-runtime 2026.05.07.1 into
|
|
45
|
+
- Promote puppet-runtime 2026.05.20.1 into main [\#453](https://github.com/OpenVoxProject/openvox/pull/453) ([OpenVoxProjectBot](https://github.com/OpenVoxProjectBot))
|
|
46
|
+
- Switch from puppet-strings to openvox-strings [\#434](https://github.com/OpenVoxProject/openvox/pull/434) ([tuxmea](https://github.com/tuxmea))
|
|
47
|
+
- Update acceptance defaults and descriptions for OpenVox 9 [\#431](https://github.com/OpenVoxProject/openvox/pull/431) ([nmburgan](https://github.com/nmburgan))
|
|
48
|
+
- Promote puppet-runtime 2026.05.07.1 into main [\#429](https://github.com/OpenVoxProject/openvox/pull/429) ([OpenVoxProjectBot](https://github.com/OpenVoxProjectBot))
|
|
49
|
+
- Change branch name in promote workflow [\#428](https://github.com/OpenVoxProject/openvox/pull/428) ([nmburgan](https://github.com/nmburgan))
|
|
67
50
|
- Changes to prepare for 8.x branching [\#425](https://github.com/OpenVoxProject/openvox/pull/425) ([nmburgan](https://github.com/nmburgan))
|
|
68
51
|
- Add release version check and stop trying to bump to an RC version [\#413](https://github.com/OpenVoxProject/openvox/pull/413) ([nmburgan](https://github.com/nmburgan))
|
|
69
52
|
|
|
53
|
+
## [8.27.0](https://github.com/openvoxproject/openvox/tree/8.27.0) (2026-05-15)
|
|
54
|
+
|
|
55
|
+
[Full Changelog](https://github.com/openvoxproject/openvox/compare/8.26.2...8.27.0)
|
|
56
|
+
|
|
70
57
|
## [8.26.2](https://github.com/openvoxproject/openvox/tree/8.26.2) (2026-04-18)
|
|
71
58
|
|
|
72
59
|
[Full Changelog](https://github.com/openvoxproject/openvox/compare/8.26.1...8.26.2)
|
data/Gemfile
CHANGED
|
@@ -45,18 +45,18 @@ end
|
|
|
45
45
|
group(:test) do
|
|
46
46
|
# 1.16.0 - 1.16.2 are broken on Windows
|
|
47
47
|
gem 'ffi', '>= 1.15.5', '< 2', '!= 1.16.0', '!= 1.16.1', '!= 1.16.2', require: false
|
|
48
|
-
gem "json-schema", '>= 2', '<
|
|
48
|
+
gem "json-schema", '>= 2', '< 6', require: false
|
|
49
49
|
gem "rake", *location_for(ENV['RAKE_LOCATION'] || '~> 13.0')
|
|
50
50
|
gem "rspec", "~> 3.1", require: false
|
|
51
51
|
gem "rspec-expectations", ["~> 3.9", "!= 3.9.3"]
|
|
52
|
-
gem "rspec-its", "~>
|
|
52
|
+
gem "rspec-its", "~> 1.1", require: false
|
|
53
53
|
gem 'rspec-mocks', '< 3.13.3', require: false # breaking change afterwards: https://github.com/rspec/rspec-mocks/pull/1596
|
|
54
54
|
gem 'vcr', '~> 6.1', require: false
|
|
55
55
|
gem 'webmock', '~> 3.0', require: false
|
|
56
56
|
gem 'webrick', '~> 1.7', require: false
|
|
57
57
|
gem 'yard', require: false
|
|
58
58
|
|
|
59
|
-
gem 'rubocop', '~> 1.
|
|
59
|
+
gem 'rubocop', '~> 1.87.0', require: false, platforms: [:ruby]
|
|
60
60
|
gem 'rubocop-i18n', '~> 3.0', require: false, platforms: [:ruby]
|
|
61
61
|
gem 'rubocop-performance', '~> 1.0', require: false, platforms: [:ruby]
|
|
62
62
|
gem 'rubocop-rake', '~> 0.6', require: false, platforms: [:ruby]
|
data/Rakefile
CHANGED
|
@@ -162,8 +162,7 @@ begin
|
|
|
162
162
|
config.exclude_labels = %w[dependencies duplicate question invalid wontfix wont-fix modulesync skip-changelog]
|
|
163
163
|
config.since_tag = "8.18.1"
|
|
164
164
|
config.future_release = Puppet::PUPPETVERSION
|
|
165
|
-
config.exclude_tags_regex = /\
|
|
166
|
-
config.release_branch = "8.x"
|
|
165
|
+
config.exclude_tags_regex = /\A7\./
|
|
167
166
|
end
|
|
168
167
|
rescue LoadError
|
|
169
168
|
task :changelog do
|
data/lib/puppet/defaults.rb
CHANGED
|
@@ -2100,14 +2100,16 @@ EOT
|
|
|
2100
2100
|
what is being done.",
|
|
2101
2101
|
},
|
|
2102
2102
|
:preprocess_deferred => {
|
|
2103
|
-
:default =>
|
|
2103
|
+
:default => true,
|
|
2104
2104
|
:type => :boolean,
|
|
2105
2105
|
:desc => "Whether Puppet should call deferred functions before applying
|
|
2106
2106
|
the catalog. If set to `true`, all prerequisites required for the
|
|
2107
2107
|
deferred function must be satisfied before the Puppet run. If set to
|
|
2108
2108
|
`false`, deferred functions follow Puppet relationships and
|
|
2109
2109
|
ordering. In this way, Puppet can install the prerequisites required for a
|
|
2110
|
-
deferred function and call the deferred function in the same run.
|
|
2110
|
+
deferred function and call the deferred function in the same run.
|
|
2111
|
+
Please note that many functions that return complex datatypes will fail
|
|
2112
|
+
when disabling preprocessing and this option may be removed in the future.",
|
|
2111
2113
|
},
|
|
2112
2114
|
:summarize => {
|
|
2113
2115
|
:default => false,
|
data/lib/puppet/feature/base.rb
CHANGED
|
@@ -12,7 +12,7 @@ Puppet.features.add(:syslog, :libs => ["syslog"])
|
|
|
12
12
|
# We can use POSIX user functions
|
|
13
13
|
Puppet.features.add(:posix) do
|
|
14
14
|
require 'etc'
|
|
15
|
-
!Etc.getpwuid(0).nil?
|
|
15
|
+
!Puppet::Util::Platform.windows? && !Etc.getpwuid(0).nil?
|
|
16
16
|
end
|
|
17
17
|
|
|
18
18
|
# We can use Microsoft Windows functions
|
data/lib/puppet/generate/type.rb
CHANGED
|
@@ -45,14 +45,11 @@ module Puppet
|
|
|
45
45
|
end
|
|
46
46
|
|
|
47
47
|
# Determines if the output file is up-to-date with respect to the input file.
|
|
48
|
-
# Generated files are stamped with their input's mtime, so the output is
|
|
49
|
-
# up-to-date only on an exact match; an input with older timestamps (e.g.
|
|
50
|
-
# a module downgrade) also triggers regeneration.
|
|
51
48
|
# @param [String, nil] The path to output to, or nil if determined by input
|
|
52
49
|
# @return [Boolean] Returns true if the output is up-to-date or false if not.
|
|
53
50
|
def up_to_date?(outputdir)
|
|
54
51
|
f = effective_output_path(outputdir)
|
|
55
|
-
Puppet::FileSystem.exist?(f) && (Puppet::FileSystem.stat(@path) <=> Puppet::FileSystem.stat(f))
|
|
52
|
+
Puppet::FileSystem.exist?(f) && (Puppet::FileSystem.stat(@path) <=> Puppet::FileSystem.stat(f)) <= 0
|
|
56
53
|
end
|
|
57
54
|
|
|
58
55
|
# Gets the filename of the output file.
|
|
@@ -243,7 +240,6 @@ module Puppet
|
|
|
243
240
|
Puppet::FileSystem.open(effective_output_path, nil, 'w:UTF-8') do |file|
|
|
244
241
|
file.write(result)
|
|
245
242
|
end
|
|
246
|
-
Puppet::FileSystem.touch(effective_output_path, mtime: Puppet::FileSystem.stat(input.path).mtime)
|
|
247
243
|
rescue Exception => e
|
|
248
244
|
@bad_input = true
|
|
249
245
|
Puppet.log_exception(e, _("Failed to generate '%{effective_output_path}': %{message}") % { effective_output_path: effective_output_path, message: e.message })
|
|
@@ -7,12 +7,6 @@ class Puppet::Node::ServerFacts
|
|
|
7
7
|
# Add implementation information
|
|
8
8
|
server_facts["serverimplementation"] = Puppet.implementation
|
|
9
9
|
|
|
10
|
-
# Add our server Puppet Enterprise version, if available.
|
|
11
|
-
pe_version_file = '/opt/puppetlabs/server/pe_version'
|
|
12
|
-
if File.readable?(pe_version_file) and !File.zero?(pe_version_file)
|
|
13
|
-
server_facts['pe_serverversion'] = File.read(pe_version_file).chomp
|
|
14
|
-
end
|
|
15
|
-
|
|
16
10
|
# Add our server version to the fact list
|
|
17
11
|
server_facts["serverversion"] = Puppet.version.to_s
|
|
18
12
|
|
|
@@ -21,8 +21,6 @@ module SubLookup
|
|
|
21
21
|
def split_key(key)
|
|
22
22
|
return [key] if key.match(SPECIAL).nil?
|
|
23
23
|
|
|
24
|
-
# Rubocop 1.86.2 starts mis-classifying the "raise yield" constructions as a failure.
|
|
25
|
-
# rubocop:disable Lint/ParenthesesAsGroupedExpression
|
|
26
24
|
segments = key.split(/(\s*"[^"]+"\s*|\s*'[^']+'\s*|[^'".]+)/)
|
|
27
25
|
if segments.empty?
|
|
28
26
|
# Only happens if the original key was an empty string
|
|
@@ -47,7 +45,6 @@ module SubLookup
|
|
|
47
45
|
else
|
|
48
46
|
raise yield('Syntax error')
|
|
49
47
|
end
|
|
50
|
-
# rubocop:enable Lint/ParenthesesAsGroupedExpression
|
|
51
48
|
end
|
|
52
49
|
|
|
53
50
|
# Perform a sub-lookup using the given _segments_ to access the given _value_. Each segment must be a string. A string
|
|
@@ -305,7 +305,7 @@ module Serialization
|
|
|
305
305
|
if tos.empty?
|
|
306
306
|
semantic = Puppet::Pops::SemanticError.new(issue, nil, EMPTY_HASH)
|
|
307
307
|
else
|
|
308
|
-
file, line =
|
|
308
|
+
file, line = stacktrace
|
|
309
309
|
semantic = Puppet::Pops::SemanticError.new(issue, nil, { :file => file, :line => line })
|
|
310
310
|
end
|
|
311
311
|
end
|
|
@@ -146,10 +146,7 @@ Puppet::Type.type(:package).provide :puppetserver_gem, :parent => :gem do
|
|
|
146
146
|
puppet_default_vendor_gems = '/opt/puppetlabs/puppet/lib/ruby/vendor_gems'
|
|
147
147
|
puppetserver_default_gem_path = [puppetserver_default_gem_home, puppetserver_default_vendored_jruby_gems, puppet_default_vendor_gems].join(':')
|
|
148
148
|
|
|
149
|
-
|
|
150
|
-
os_puppetserver_conf_file = '/etc/puppetlabs/puppetserver/puppetserver.conf'
|
|
151
|
-
puppetserver_conf_file = Puppet.runtime[:facter].value(:pe_server_version) ? pe_puppetserver_conf_file : os_puppetserver_conf_file
|
|
152
|
-
puppetserver_conf = Hocon.load(puppetserver_conf_file)
|
|
149
|
+
puppetserver_conf = Hocon.load('/etc/puppetlabs/puppetserver/puppetserver.conf')
|
|
153
150
|
|
|
154
151
|
gem_env = {}
|
|
155
152
|
if puppetserver_conf.empty? || puppetserver_conf.key?('jruby-puppet') == false
|
data/lib/puppet/resource/type.rb
CHANGED
|
@@ -34,13 +34,13 @@ class Puppet::Resource::Type
|
|
|
34
34
|
EMPTY_ARRAY = [].freeze
|
|
35
35
|
|
|
36
36
|
LOOKAROUND_OPERATORS = {
|
|
37
|
-
"(" => '
|
|
38
|
-
"?" => "
|
|
39
|
-
"<" => "
|
|
40
|
-
">" => "
|
|
41
|
-
"!" => "
|
|
42
|
-
"=" => "
|
|
43
|
-
")" => '
|
|
37
|
+
"(" => 'LP',
|
|
38
|
+
"?" => "QU",
|
|
39
|
+
"<" => "LT",
|
|
40
|
+
">" => "GT",
|
|
41
|
+
"!" => "EX",
|
|
42
|
+
"=" => "EQ",
|
|
43
|
+
")" => 'RP'
|
|
44
44
|
}.freeze
|
|
45
45
|
|
|
46
46
|
attr_accessor :file, :line, :doc, :code, :parent, :resource_type_collection, :override
|
|
@@ -206,7 +206,7 @@ class Puppet::Resource::Type
|
|
|
206
206
|
|
|
207
207
|
def name
|
|
208
208
|
if type == :node && name_is_regex?
|
|
209
|
-
# Normalize
|
|
209
|
+
# Normalize lookarround regex patthern
|
|
210
210
|
internal_name = @name.source.downcase.gsub(/\(\?[^)]*\)/) do |str|
|
|
211
211
|
str.gsub(/./) { |ch| LOOKAROUND_OPERATORS[ch] || ch }
|
|
212
212
|
end
|
|
@@ -121,10 +121,6 @@ class Puppet::SSL::StateMachine
|
|
|
121
121
|
rescue Puppet::HTTP::ResponseError => e
|
|
122
122
|
if e.response.code == 304
|
|
123
123
|
Puppet.info(_("CA certificate is unmodified, using existing CA certificate"))
|
|
124
|
-
# 304 confirms the local CA is current, so reset the TTL.
|
|
125
|
-
# Otherwise ca_last_update (backed by ca.pem mtime) never advances
|
|
126
|
-
# past the initial download and needs_refresh? triggers on every run.
|
|
127
|
-
@cert_provider.ca_last_update = Time.now
|
|
128
124
|
else
|
|
129
125
|
Puppet.info(_("Failed to refresh CA certificate, using existing CA certificate: %{message}") % { message: e.message })
|
|
130
126
|
end
|
|
@@ -223,8 +219,6 @@ class Puppet::SSL::StateMachine
|
|
|
223
219
|
rescue Puppet::HTTP::ResponseError => e
|
|
224
220
|
if e.response.code == 304
|
|
225
221
|
Puppet.info(_("CRL is unmodified, using existing CRL"))
|
|
226
|
-
# 304 confirms the local CRL is current, so reset the TTL.
|
|
227
|
-
@cert_provider.crl_last_update = Time.now
|
|
228
222
|
else
|
|
229
223
|
Puppet.info(_("Failed to refresh CRL, using existing CRL: %{message}") % { message: e.message })
|
|
230
224
|
end
|
|
@@ -86,21 +86,12 @@ module Puppet
|
|
|
86
86
|
raise Puppet::Error,
|
|
87
87
|
"Cannot create #{@resource[:path]}; parent directory #{parent} does not exist"
|
|
88
88
|
end
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
Dir.mkdir(@resource[:path], symbolic_mode_to_int(mode, 0o755, true))
|
|
93
|
-
end
|
|
94
|
-
else
|
|
95
|
-
Dir.mkdir(@resource[:path])
|
|
89
|
+
if mode
|
|
90
|
+
Puppet::Util.withumask(0o00) do
|
|
91
|
+
Dir.mkdir(@resource[:path], symbolic_mode_to_int(mode, 0o755, true))
|
|
96
92
|
end
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
# really is a directory now, treat that as success.
|
|
100
|
-
#
|
|
101
|
-
# Directory mode, and other properties, will be checked and enforced by
|
|
102
|
-
# the call to `property_fix`.
|
|
103
|
-
raise unless Puppet::FileSystem.directory?(@resource[:path])
|
|
93
|
+
else
|
|
94
|
+
Dir.mkdir(@resource[:path])
|
|
104
95
|
end
|
|
105
96
|
@resource.send(:property_fix)
|
|
106
97
|
return :directory_created
|
data/lib/puppet/util.rb
CHANGED
|
@@ -523,11 +523,12 @@ module Util
|
|
|
523
523
|
|
|
524
524
|
module_function :thinmark
|
|
525
525
|
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
526
|
+
# Matches the frame where Puppet::Pops::PuppetStack.stack appears in a Ruby
|
|
527
|
+
# backtrace. The format varies by Ruby version and implementation:
|
|
528
|
+
# Ruby 3.3: in `stack'
|
|
529
|
+
# Ruby 3.4+: in 'Puppet::Pops::PuppetStack.stack' (qualified for module method)
|
|
530
|
+
# JRuby 10+: in 'stack' (unqualified)
|
|
531
|
+
PUPPET_STACK_INSERTION_FRAME = /puppet_stack\.rb.*in ['`](?:Puppet::Pops::PuppetStack\.)?stack'/
|
|
531
532
|
|
|
532
533
|
# utility method to get the current call stack and format it to a human-readable string (which some IDEs/editors
|
|
533
534
|
# will recognize as links to the line numbers in the trace)
|
data/lib/puppet/version.rb
CHANGED