puppet 5.5.18 → 5.5.19

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

Potentially problematic release.


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

Files changed (87) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +12 -11
  3. data/lib/puppet.rb +5 -2
  4. data/lib/puppet/application/filebucket.rb +13 -0
  5. data/lib/puppet/defaults.rb +60 -33
  6. data/lib/puppet/indirector/catalog/compiler.rb +8 -0
  7. data/lib/puppet/network/http/connection.rb +4 -0
  8. data/lib/puppet/network/http/pool.rb +5 -1
  9. data/lib/puppet/pops/evaluator/access_operator.rb +2 -2
  10. data/lib/puppet/pops/evaluator/evaluator_impl.rb +1 -1
  11. data/lib/puppet/pops/types/type_calculator.rb +24 -0
  12. data/lib/puppet/provider/group/groupadd.rb +19 -19
  13. data/lib/puppet/provider/mailalias/aliases.rb +1 -1
  14. data/lib/puppet/provider/package/apt.rb +14 -3
  15. data/lib/puppet/provider/package/dnfmodule.rb +9 -2
  16. data/lib/puppet/provider/package/dpkg.rb +13 -6
  17. data/lib/puppet/provider/package/fink.rb +20 -3
  18. data/lib/puppet/provider/package/openbsd.rb +13 -1
  19. data/lib/puppet/provider/package/pkg.rb +18 -5
  20. data/lib/puppet/provider/package/yum.rb +9 -5
  21. data/lib/puppet/provider/user/directoryservice.rb +30 -5
  22. data/lib/puppet/provider/user/useradd.rb +5 -6
  23. data/lib/puppet/ssl/certificate.rb +2 -1
  24. data/lib/puppet/ssl/certificate_authority.rb +6 -5
  25. data/lib/puppet/test/test_helper.rb +7 -0
  26. data/lib/puppet/transaction/resource_harness.rb +1 -1
  27. data/lib/puppet/type/file.rb +13 -0
  28. data/lib/puppet/type/package.rb +63 -9
  29. data/lib/puppet/util/plist.rb +6 -0
  30. data/lib/puppet/version.rb +1 -1
  31. data/locales/puppet.pot +100 -92
  32. data/man/man5/puppet.conf.5 +12 -6
  33. data/man/man8/puppet-agent.8 +1 -1
  34. data/man/man8/puppet-apply.8 +1 -1
  35. data/man/man8/puppet-ca.8 +1 -1
  36. data/man/man8/puppet-catalog.8 +1 -1
  37. data/man/man8/puppet-cert.8 +1 -1
  38. data/man/man8/puppet-certificate.8 +1 -1
  39. data/man/man8/puppet-certificate_request.8 +1 -1
  40. data/man/man8/puppet-certificate_revocation_list.8 +1 -1
  41. data/man/man8/puppet-config.8 +1 -1
  42. data/man/man8/puppet-describe.8 +1 -1
  43. data/man/man8/puppet-device.8 +1 -1
  44. data/man/man8/puppet-doc.8 +1 -1
  45. data/man/man8/puppet-epp.8 +1 -1
  46. data/man/man8/puppet-facts.8 +1 -1
  47. data/man/man8/puppet-filebucket.8 +16 -1
  48. data/man/man8/puppet-generate.8 +1 -1
  49. data/man/man8/puppet-help.8 +1 -1
  50. data/man/man8/puppet-key.8 +1 -1
  51. data/man/man8/puppet-lookup.8 +1 -1
  52. data/man/man8/puppet-man.8 +1 -1
  53. data/man/man8/puppet-master.8 +1 -1
  54. data/man/man8/puppet-module.8 +1 -1
  55. data/man/man8/puppet-node.8 +1 -1
  56. data/man/man8/puppet-parser.8 +1 -1
  57. data/man/man8/puppet-plugin.8 +1 -1
  58. data/man/man8/puppet-report.8 +1 -1
  59. data/man/man8/puppet-resource.8 +1 -1
  60. data/man/man8/puppet-script.8 +1 -1
  61. data/man/man8/puppet-status.8 +1 -1
  62. data/man/man8/puppet.8 +2 -2
  63. data/spec/fixtures/integration/provider/mailalias/aliases/test1 +1 -0
  64. data/spec/integration/indirector/facts/facter_spec.rb +4 -0
  65. data/spec/unit/application/apply_spec.rb +2 -12
  66. data/spec/unit/configurer/fact_handler_spec.rb +0 -4
  67. data/spec/unit/configurer_spec.rb +0 -3
  68. data/spec/unit/indirector/catalog/compiler_spec.rb +45 -26
  69. data/spec/unit/network/http/connection_spec.rb +17 -1
  70. data/spec/unit/network/http/pool_spec.rb +32 -0
  71. data/spec/unit/node_spec.rb +7 -4
  72. data/spec/unit/provider/group/groupadd_spec.rb +30 -1
  73. data/spec/unit/provider/package/apt_spec.rb +13 -2
  74. data/spec/unit/provider/package/aptitude_spec.rb +1 -0
  75. data/spec/unit/provider/package/dnfmodule_spec.rb +22 -0
  76. data/spec/unit/provider/package/dpkg_spec.rb +20 -4
  77. data/spec/unit/provider/package/openbsd_spec.rb +17 -0
  78. data/spec/unit/provider/package/pkg_spec.rb +13 -1
  79. data/spec/unit/provider/package/yum_spec.rb +50 -0
  80. data/spec/unit/provider/user/directoryservice_spec.rb +41 -0
  81. data/spec/unit/provider/user/useradd_spec.rb +7 -2
  82. data/spec/unit/puppet_pal_2pec.rb +3 -0
  83. data/spec/unit/ssl/certificate_authority_spec.rb +2 -3
  84. data/spec/unit/ssl/certificate_spec.rb +7 -0
  85. data/spec/unit/type/package_spec.rb +8 -0
  86. data/spec/unit/util/plist_spec.rb +20 -0
  87. metadata +2 -2
@@ -64,12 +64,11 @@ Puppet::Type.type(:user).provide :useradd, :parent => Puppet::Provider::NameServ
64
64
  passwd_file = "/etc/passwd"
65
65
  passwd_keys = [:account, :password, :uid, :gid, :gecos, :directory, :shell]
66
66
  index = passwd_keys.index(key)
67
- File.open(passwd_file) do |f|
68
- f.each_line do |line|
69
- user = line.split(":")
70
- if user[index] == value
71
- return Hash[passwd_keys.zip(user)]
72
- end
67
+ @passwd_content ||= File.read(passwd_file)
68
+ @passwd_content.each_line do |line|
69
+ user = line.split(":")
70
+ if user[index] == value
71
+ return Hash[passwd_keys.zip(user)]
73
72
  end
74
73
  end
75
74
  false
@@ -50,7 +50,8 @@ DOC
50
50
  def custom_extensions
51
51
  custom_exts = content.extensions.select do |ext|
52
52
  Puppet::SSL::Oids.subtree_of?('ppRegCertExt', ext.oid) or
53
- Puppet::SSL::Oids.subtree_of?('ppPrivCertExt', ext.oid)
53
+ Puppet::SSL::Oids.subtree_of?('ppPrivCertExt', ext.oid) or
54
+ Puppet::SSL::Oids.subtree_of?('ppAuthCertExt', ext.oid)
54
55
  end
55
56
 
56
57
  custom_exts.map do |ext|
@@ -441,11 +441,11 @@ class Puppet::SSL::CertificateAuthority
441
441
  # Certificate Revocation List and flags
442
442
  #
443
443
  # @return [OpenSSL::X509::Store]
444
- def create_x509_store
445
- store = OpenSSL::X509::Store.new()
444
+ def create_x509_store(purpose = OpenSSL::X509::PURPOSE_ANY)
445
+ store = OpenSSL::X509::Store.new
446
446
  store.add_file(Puppet[:cacert])
447
447
  store.add_crl(crl.content) if self.crl
448
- store.purpose = OpenSSL::X509::PURPOSE_SSL_CLIENT
448
+ store.purpose = purpose
449
449
  if Puppet.lookup(:certificate_revocation)
450
450
  store.flags = OpenSSL::X509::V_FLAG_CRL_CHECK_ALL | OpenSSL::X509::V_FLAG_CRL_CHECK
451
451
  end
@@ -486,17 +486,18 @@ class Puppet::SSL::CertificateAuthority
486
486
  # certificate with that name.
487
487
  #
488
488
  # @param name [String] certificate name to verify
489
+ # @param purpose [Integer] bitwise combination of X509::PURPOSE_*
489
490
  #
490
491
  # @raise [ArgumentError] if the certificate name cannot be found
491
492
  # (i.e. doesn't exist or is unsigned)
492
493
  # @raise [CertificateVerficationError] if the certificate has been revoked
493
494
  #
494
495
  # @return [Boolean] true if signed, there are no cases where false is returned
495
- def verify(name)
496
+ def verify(name, purpose = OpenSSL::X509::PURPOSE_ANY)
496
497
  unless cert = Puppet::SSL::Certificate.indirection.find(name)
497
498
  raise ArgumentError, _("Could not find a certificate for %{name}") % { name: name }
498
499
  end
499
- store = create_x509_store
500
+ store = create_x509_store(purpose)
500
501
 
501
502
  raise CertificateVerificationError.new(store.error), store.error_string unless store.verify(cert.content)
502
503
  end
@@ -143,6 +143,13 @@ module Puppet::Test
143
143
  Puppet::Application.clear!
144
144
  Puppet::Util::Profiler.clear
145
145
 
146
+ Puppet::SSL::Host.reset
147
+ Puppet::SSL::Host.ca_location = :none
148
+
149
+ Puppet::Node::Facts.indirection.terminus_class = :memory
150
+ facts = Puppet::Node::Facts.new(Puppet[:node_name_value])
151
+ Puppet::Node::Facts.indirection.save(facts)
152
+
146
153
  Puppet.clear_deprecation_warnings
147
154
  end
148
155
 
@@ -99,7 +99,7 @@ class Puppet::Transaction::ResourceHarness
99
99
  # We persist the last known values for the properties of a resource after resource
100
100
  # application.
101
101
  # @param [Puppet::Type] resource resource whose values we are to persist.
102
- # @param [ResourceApplicationContent] context the application context to operate on.
102
+ # @param [ResourceApplicationContext] context the application context to operate on.
103
103
  def persist_system_values(resource, context)
104
104
  param_to_event = {}
105
105
  context.status.events.each do |ev|
@@ -105,6 +105,19 @@ Puppet::Type.newtype(:file) do
105
105
  balancer to direct all filebucket traffic to a single master, or use
106
106
  something like an out-of-band rsync task to synchronize the content on all
107
107
  masters.
108
+
109
+ > **Note**: Enabling and using the backup option, and by extension the
110
+ filebucket resource, requires appropriate planning and management to ensure
111
+ that sufficient disk space is available for the file backups. Generally, you
112
+ can implement this using one of the following two options:
113
+ - Use a `find` command and `crontab` entry to retain only the last X days
114
+ of file backups. For example,
115
+
116
+ ```shell script
117
+ find /opt/puppetlabs/server/data/puppetserver/bucket -type f -mtime +45 -atime +45 -print0 | xargs -0 rm
118
+ ```
119
+
120
+ - Restrict the directory to a maximum size after which the oldest items are removed.
108
121
  EOT
109
122
 
110
123
  defaultto "puppet"
@@ -54,14 +54,14 @@ module Puppet
54
54
  feature :holdable, "The provider is capable of placing packages on hold
55
55
  such that they are not automatically upgraded as a result of
56
56
  other package dependencies unless explicit action is taken by
57
- a user or another package. Held is considered a superset of
58
- installed.",
59
- :methods => [:hold]
57
+ a user or another package.",
58
+ :methods => [:hold, :unhold]
60
59
  feature :install_only, "The provider accepts options to only install packages never update (kernels, etc.)"
61
60
  feature :install_options, "The provider accepts options to be
62
61
  passed to the installer command."
63
62
  feature :uninstall_options, "The provider accepts options to be
64
63
  passed to the uninstaller command."
64
+ feature :supports_flavors, "The provider accepts flavors, which are specific variants of packages."
65
65
  feature :package_settings, "The provider accepts package_settings to be
66
66
  ensured for the given package. The meaning and format of these settings is
67
67
  provider-specific.",
@@ -101,7 +101,7 @@ module Puppet
101
101
  end
102
102
 
103
103
  newvalue(:held, :event => :package_held, :required_features => :holdable) do
104
- provider.hold
104
+ provider.deprecated_hold
105
105
  end
106
106
 
107
107
  # Alias the 'present' value.
@@ -401,6 +401,11 @@ module Puppet
401
401
  end
402
402
  end
403
403
 
404
+ newproperty(:flavor, :required_features => :supports_flavors) do
405
+ desc "OpenBSD and DNF modules support 'flavors', which are
406
+ further specifications for which type of package you want."
407
+ end
408
+
404
409
  newparam(:source) do
405
410
  desc "Where to find the package file. This is only used by providers that don't
406
411
  automatically download packages from a central repository. (For example:
@@ -480,11 +485,6 @@ module Puppet
480
485
  newvalues(:true, :false)
481
486
  end
482
487
 
483
- newparam(:flavor) do
484
- desc "OpenBSD and DNF modules support 'flavors', which are
485
- further specifications for which type of package you want."
486
- end
487
-
488
488
  newparam(:install_only, :boolean => false, :parent => Puppet::Parameter::Boolean, :required_features => :install_only) do
489
489
  desc <<-EOT
490
490
  It should be set for packages that should only ever be installed,
@@ -611,5 +611,59 @@ module Puppet
611
611
  provider.reinstall
612
612
  end
613
613
  end
614
+
615
+ newproperty(:mark, :required_features => :holdable) do
616
+ mark_doc='Valid values are: hold/none'
617
+ desc <<-EOT
618
+ Set to hold to tell Debian apt/Solaris pkg to hold the package version
619
+
620
+ #{mark_doc}
621
+ Default is "none". Mark can be specified with or without `ensure`,
622
+ if `ensure` is missing will default to "present".
623
+
624
+ Mark cannot be specified together with "purged", "absent" or "held"
625
+ values for `ensure`.
626
+ EOT
627
+ newvalues(:hold, :none)
628
+ munge do |value|
629
+ case value
630
+ when "hold", :hold
631
+ :hold
632
+ when "none", :none
633
+ :none
634
+ else
635
+ raise ArgumentError, _('Invalid hold value %{value}. %{doc}') % { value: value.inspect, doc: mark_doc}
636
+ end
637
+ end
638
+
639
+ def insync?(is)
640
+ @should[0] == is
641
+ end
642
+
643
+ def should
644
+ @should[0] if @should && @should.is_a?(Array) && @should.size == 1
645
+ end
646
+
647
+ def retrieve
648
+ provider.properties[:mark]
649
+ end
650
+
651
+ def sync
652
+ if @should[0] == :hold
653
+ provider.hold
654
+ else
655
+ provider.unhold
656
+ end
657
+ end
658
+ end
659
+
660
+ validate do
661
+ if :held == @parameters[:ensure].should
662
+ warning '"ensure=>held" has been deprecated and will be removed in a future version, use "mark=hold" instead'
663
+ end
664
+ if @parameters[:mark] && [:absent, :purged, :held].include?(@parameters[:ensure].should)
665
+ raise ArgumentError, _('You cannot use "mark" property while "ensure" is one of ["absent", "purged", "held"]')
666
+ end
667
+ end
614
668
  end
615
669
  end
@@ -56,6 +56,12 @@ module Puppet::Util::Plist
56
56
  # Read plist text using the CFPropertyList gem.
57
57
  def parse_plist(plist_data, file_path = '')
58
58
  bad_xml_doctype = /^.*<!DOCTYPE plist PUBLIC -\/\/Apple Computer.*$/
59
+ # Depending on where parse_plist is called from, plist_data can be either XML or binary.
60
+ # If we get XML, make sure ruby knows it's UTF-8 so we avoid invalid byte sequence errors.
61
+ if plist_data.include?('encoding="UTF-8"') && plist_data.encoding != Encoding::UTF_8
62
+ plist_data.force_encoding(Encoding::UTF_8)
63
+ end
64
+
59
65
  begin
60
66
  if plist_data =~ bad_xml_doctype
61
67
  plist_data.gsub!( bad_xml_doctype, plist_xml_doctype )
@@ -6,7 +6,7 @@
6
6
  # Raketasks and such to set the version based on the output of `git describe`
7
7
 
8
8
  module Puppet
9
- PUPPETVERSION = '5.5.18'
9
+ PUPPETVERSION = '5.5.19'
10
10
 
11
11
  ##
12
12
  # version is a public API method intended to always provide a fast and
@@ -1,16 +1,16 @@
1
1
  # SOME DESCRIPTIVE TITLE.
2
- # Copyright (C) 2019 Puppet, Inc.
2
+ # Copyright (C) 2020 Puppet, Inc.
3
3
  # This file is distributed under the same license as the Puppet automation framework package.
4
- # FIRST AUTHOR <EMAIL@ADDRESS>, 2019.
4
+ # FIRST AUTHOR <EMAIL@ADDRESS>, 2020.
5
5
  #
6
6
  #, fuzzy
7
7
  msgid ""
8
8
  msgstr ""
9
- "Project-Id-Version: Puppet automation framework 5.5.17-100-g3e6abbc\n"
9
+ "Project-Id-Version: Puppet automation framework 5.5.18-49-g561d1a4850\n"
10
10
  "\n"
11
11
  "Report-Msgid-Bugs-To: https://tickets.puppetlabs.com\n"
12
- "POT-Creation-Date: 2019-11-13 23:16+0000\n"
13
- "PO-Revision-Date: 2019-11-13 23:16+0000\n"
12
+ "POT-Creation-Date: 2020-02-05 09:17+0000\n"
13
+ "PO-Revision-Date: 2020-02-05 09:17+0000\n"
14
14
  "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
15
15
  "Language-Team: LANGUAGE <LL@li.org>\n"
16
16
  "Language: \n"
@@ -520,93 +520,93 @@ msgstr ""
520
520
  msgid "Not using cached catalog because its environment '%{catalog_env}' does not match '%{local_env}'"
521
521
  msgstr ""
522
522
 
523
- #: ../lib/puppet/configurer.rb:96 ../lib/puppet/configurer.rb:173
523
+ #: ../lib/puppet/configurer.rb:96 ../lib/puppet/configurer.rb:171
524
524
  msgid "Using cached catalog from environment '%{catalog_env}'"
525
525
  msgstr ""
526
526
 
527
- #: ../lib/puppet/configurer.rb:166
527
+ #: ../lib/puppet/configurer.rb:164
528
528
  msgid "Could not retrieve catalog; skipping run"
529
529
  msgstr ""
530
530
 
531
- #: ../lib/puppet/configurer.rb:184
531
+ #: ../lib/puppet/configurer.rb:180
532
532
  msgid "Applied catalog in %{seconds} seconds"
533
533
  msgstr ""
534
534
 
535
- #: ../lib/puppet/configurer.rb:224
535
+ #: ../lib/puppet/configurer.rb:220
536
536
  msgid "Could not select a functional puppet master from server_list: '%{server_list}'"
537
537
  msgstr ""
538
538
 
539
539
  #. TRANSLATORS 'server_list' is the name of a setting and should not be translated
540
- #: ../lib/puppet/configurer.rb:227
540
+ #: ../lib/puppet/configurer.rb:223
541
541
  msgid "Selected puppet server from the `server_list` setting: %{server}:%{port}"
542
542
  msgstr ""
543
543
 
544
- #: ../lib/puppet/configurer.rb:259
544
+ #: ../lib/puppet/configurer.rb:254
545
545
  msgid "Local environment: '%{local_env}' doesn't match the environment of the cached catalog '%{catalog_env}', switching agent to '%{catalog_env}'."
546
546
  msgstr ""
547
547
 
548
- #: ../lib/puppet/configurer.rb:304
548
+ #: ../lib/puppet/configurer.rb:299
549
549
  msgid "Local environment: '%{local_env}' doesn't match server specified node environment '%{node_env}', switching agent to '%{node_env}'."
550
550
  msgstr ""
551
551
 
552
- #: ../lib/puppet/configurer.rb:309
552
+ #: ../lib/puppet/configurer.rb:304
553
553
  msgid "Using configured environment '%{env}'"
554
554
  msgstr ""
555
555
 
556
- #: ../lib/puppet/configurer.rb:313
556
+ #: ../lib/puppet/configurer.rb:308
557
557
  msgid "Unable to fetch my node definition, but the agent run will continue:"
558
558
  msgstr ""
559
559
 
560
- #: ../lib/puppet/configurer.rb:337
560
+ #: ../lib/puppet/configurer.rb:332
561
561
  msgid "Not using catalog because its environment '%{catalog_env}' does not match agent specified environment '%{local_env}' and strict_environment_mode is set"
562
562
  msgstr ""
563
563
 
564
- #: ../lib/puppet/configurer.rb:348
564
+ #: ../lib/puppet/configurer.rb:343
565
565
  msgid "Catalog environment didn't stabilize after %{tries} fetches, aborting run"
566
566
  msgstr ""
567
567
 
568
- #: ../lib/puppet/configurer.rb:350
568
+ #: ../lib/puppet/configurer.rb:345
569
569
  msgid "Local environment: '%{local_env}' doesn't match server specified environment '%{catalog_env}', restarting agent run with environment '%{catalog_env}'"
570
570
  msgstr ""
571
571
 
572
- #: ../lib/puppet/configurer.rb:369
572
+ #: ../lib/puppet/configurer.rb:385
573
573
  msgid "Failed to apply catalog: %{detail}"
574
574
  msgstr ""
575
575
 
576
- #: ../lib/puppet/configurer.rb:401
576
+ #: ../lib/puppet/configurer.rb:417
577
577
  msgid "Puppet server %{host}:%{port} is unavailable: %{code} %{reason}"
578
578
  msgstr ""
579
579
 
580
580
  #. TRANSLATORS 'server_list' is the name of a setting and should not be translated
581
- #: ../lib/puppet/configurer.rb:405
581
+ #: ../lib/puppet/configurer.rb:421
582
582
  msgid "Unable to connect to server from server_list setting: %{detail}"
583
583
  msgstr ""
584
584
 
585
- #: ../lib/puppet/configurer.rb:417 ../lib/puppet/face/report.rb:47
585
+ #: ../lib/puppet/configurer.rb:433 ../lib/puppet/face/report.rb:47
586
586
  msgid "Could not send report: %{detail}"
587
587
  msgstr ""
588
588
 
589
- #: ../lib/puppet/configurer.rb:426
589
+ #: ../lib/puppet/configurer.rb:442
590
590
  msgid "Could not save last run local report: %{detail}"
591
591
  msgstr ""
592
592
 
593
- #: ../lib/puppet/configurer.rb:446
593
+ #: ../lib/puppet/configurer.rb:462
594
594
  msgid "Uploading facts for %{node} to %{server}"
595
595
  msgstr ""
596
596
 
597
- #: ../lib/puppet/configurer.rb:457
597
+ #: ../lib/puppet/configurer.rb:473
598
598
  msgid "Failed to submit facts: %{detail}"
599
599
  msgstr ""
600
600
 
601
- #: ../lib/puppet/configurer.rb:472
601
+ #: ../lib/puppet/configurer.rb:488
602
602
  msgid "Could not run command from %{setting}: %{detail}"
603
603
  msgstr ""
604
604
 
605
- #: ../lib/puppet/configurer.rb:490
605
+ #: ../lib/puppet/configurer.rb:506
606
606
  msgid "Could not retrieve catalog from cache: %{detail}"
607
607
  msgstr ""
608
608
 
609
- #: ../lib/puppet/configurer.rb:510
609
+ #: ../lib/puppet/configurer.rb:526
610
610
  msgid "Could not retrieve catalog from remote server: %{detail}"
611
611
  msgstr ""
612
612
 
@@ -679,54 +679,54 @@ msgid "Valid values are %{values}."
679
679
  msgstr ""
680
680
 
681
681
  #. TRANSLATORS 'data_binding_terminus' is a setting and should not be translated
682
- #: ../lib/puppet/defaults.rb:473
682
+ #: ../lib/puppet/defaults.rb:480
683
683
  msgid "Setting 'data_binding_terminus' is deprecated."
684
684
  msgstr ""
685
685
 
686
686
  #. TRANSLATORS 'hiera' should not be translated
687
- #: ../lib/puppet/defaults.rb:475
687
+ #: ../lib/puppet/defaults.rb:482
688
688
  msgid "Convert custom terminus to hiera 5 API."
689
689
  msgstr ""
690
690
 
691
691
  #. TRANSLATORS 'environment_data_provider' is a setting and should not be translated
692
- #: ../lib/puppet/defaults.rb:634
692
+ #: ../lib/puppet/defaults.rb:641
693
693
  msgid "Setting 'environment_data_provider' is deprecated."
694
694
  msgstr ""
695
695
 
696
- #: ../lib/puppet/defaults.rb:736
696
+ #: ../lib/puppet/defaults.rb:743
697
697
  msgid "Certificate names must be lower case"
698
698
  msgstr ""
699
699
 
700
- #: ../lib/puppet/defaults.rb:977 ../lib/puppet/settings/enum_setting.rb:13 ../lib/puppet/settings/symbolic_enum_setting.rb:14
700
+ #: ../lib/puppet/defaults.rb:988 ../lib/puppet/settings/enum_setting.rb:13 ../lib/puppet/settings/symbolic_enum_setting.rb:14
701
701
  msgid "Invalid value '%{value}' for parameter %{name}. Allowed values are '%{allowed_values}'"
702
702
  msgstr ""
703
703
 
704
- #: ../lib/puppet/defaults.rb:1048
704
+ #: ../lib/puppet/defaults.rb:1059
705
705
  msgid "The 'caprivatedir' setting is deprecated and will be removed in Puppet 6."
706
706
  msgstr ""
707
707
 
708
- #: ../lib/puppet/defaults.rb:1075
708
+ #: ../lib/puppet/defaults.rb:1086
709
709
  msgid "The 'capass' setting is deprecated and will be removed in Puppet 6."
710
710
  msgstr ""
711
711
 
712
- #: ../lib/puppet/defaults.rb:1315
712
+ #: ../lib/puppet/defaults.rb:1326
713
713
  msgid "The 'ca' setting is deprecated and will be removed in Puppet 6."
714
714
  msgstr ""
715
715
 
716
- #: ../lib/puppet/defaults.rb:1820 ../lib/puppet/settings.rb:1212
716
+ #: ../lib/puppet/defaults.rb:1831 ../lib/puppet/settings.rb:1212
717
717
  msgid "Setting %{name} is deprecated."
718
718
  msgstr ""
719
719
 
720
720
  #. TRANSLATORS 'pluginsync' is a setting and should not be translated
721
- #: ../lib/puppet/defaults.rb:1871
721
+ #: ../lib/puppet/defaults.rb:1882
722
722
  msgid "Setting 'pluginsync' is deprecated."
723
723
  msgstr ""
724
724
 
725
- #: ../lib/puppet/error.rb:69
725
+ #: ../lib/puppet/error.rb:77
726
726
  msgid "Could not parse for environment %{environment}: %{message}"
727
727
  msgstr ""
728
728
 
729
- #: ../lib/puppet/error.rb:70 ../lib/puppet/parser/compiler.rb:41
729
+ #: ../lib/puppet/error.rb:78 ../lib/puppet/parser/compiler.rb:41
730
730
  msgid "%{message} on node %{node}"
731
731
  msgstr ""
732
732
 
@@ -2514,7 +2514,7 @@ msgstr ""
2514
2514
  msgid "Could not find node '%{name}'; cannot compile"
2515
2515
  msgstr ""
2516
2516
 
2517
- #: ../lib/puppet/indirector/catalog/compiler.rb:403
2517
+ #: ../lib/puppet/indirector/catalog/compiler.rb:413
2518
2518
  msgid "Could not retrieve fact %{fact}"
2519
2519
  msgstr ""
2520
2520
 
@@ -4132,27 +4132,27 @@ msgstr ""
4132
4132
  msgid "Received a %{status_code} response from %{server_hostname}. Sleeping for %{retry_sleep} seconds before retrying the request."
4133
4133
  msgstr ""
4134
4134
 
4135
- #: ../lib/puppet/network/http/connection.rb:318
4135
+ #: ../lib/puppet/network/http/connection.rb:317
4136
4136
  msgid "request %{uri} interrupted after %{elapsed} seconds"
4137
4137
  msgstr ""
4138
4138
 
4139
- #: ../lib/puppet/network/http/connection.rb:320
4139
+ #: ../lib/puppet/network/http/connection.rb:319
4140
4140
  msgid "request %{uri} timed out after %{elapsed} seconds"
4141
4141
  msgstr ""
4142
4142
 
4143
- #: ../lib/puppet/network/http/connection.rb:322
4143
+ #: ../lib/puppet/network/http/connection.rb:321
4144
4144
  msgid "request %{uri} failed: %{msg}"
4145
4145
  msgstr ""
4146
4146
 
4147
- #: ../lib/puppet/network/http/connection.rb:348 ../lib/puppet/ssl/validator/default_validator.rb:101
4147
+ #: ../lib/puppet/network/http/connection.rb:346 ../lib/puppet/ssl/validator/default_validator.rb:101
4148
4148
  msgid "expected one of %{certnames}"
4149
4149
  msgstr ""
4150
4150
 
4151
- #: ../lib/puppet/network/http/connection.rb:350 ../lib/puppet/ssl/validator/default_validator.rb:103
4151
+ #: ../lib/puppet/network/http/connection.rb:348 ../lib/puppet/ssl/validator/default_validator.rb:103
4152
4152
  msgid "expected %{certname}"
4153
4153
  msgstr ""
4154
4154
 
4155
- #: ../lib/puppet/network/http/connection.rb:353 ../lib/puppet/ssl/validator/default_validator.rb:106
4155
+ #: ../lib/puppet/network/http/connection.rb:351 ../lib/puppet/ssl/validator/default_validator.rb:106
4156
4156
  msgid "Server hostname '%{host}' did not match server certificate; %{expected_certnames}"
4157
4157
  msgstr ""
4158
4158
 
@@ -6400,7 +6400,7 @@ msgstr ""
6400
6400
  msgid "Options 'include_containers' and 'include_values' cannot both be false"
6401
6401
  msgstr ""
6402
6402
 
6403
- #: ../lib/puppet/pops/types/type_calculator.rb:167
6403
+ #: ../lib/puppet/pops/types/type_calculator.rb:191
6404
6404
  msgid "TypeCalculator.enumerable is deprecated. Use iterable"
6405
6405
  msgstr ""
6406
6406
 
@@ -6768,7 +6768,7 @@ msgstr ""
6768
6768
  msgid "GID must be an integer"
6769
6769
  msgstr ""
6770
6770
 
6771
- #: ../lib/puppet/provider/group/groupadd.rb:60
6771
+ #: ../lib/puppet/provider/group/groupadd.rb:44
6772
6772
  msgid "GID %{resource} already exists, use allowdupe to force group creation"
6773
6773
  msgstr ""
6774
6774
 
@@ -6990,15 +6990,15 @@ msgstr ""
6990
6990
  msgid "/etc/apt/sources.list contains a cdrom source; not installing. Use 'allowcdrom' to override this failure."
6991
6991
  msgstr ""
6992
6992
 
6993
- #: ../lib/puppet/provider/package/apt.rb:83 ../lib/puppet/provider/package/fink.rb:50
6993
+ #: ../lib/puppet/provider/package/apt.rb:88 ../lib/puppet/provider/package/fink.rb:55
6994
6994
  msgid "Could not find latest version"
6995
6995
  msgstr ""
6996
6996
 
6997
- #: ../lib/puppet/provider/package/apt.rb:93 ../lib/puppet/provider/package/fink.rb:60
6997
+ #: ../lib/puppet/provider/package/apt.rb:98 ../lib/puppet/provider/package/fink.rb:65
6998
6998
  msgid "Preseeding %{response} to debconf-set-selections"
6999
6999
  msgstr ""
7000
7000
 
7001
- #: ../lib/puppet/provider/package/apt.rb:97 ../lib/puppet/provider/package/fink.rb:64
7001
+ #: ../lib/puppet/provider/package/apt.rb:102 ../lib/puppet/provider/package/fink.rb:69
7002
7002
  msgid "No responsefile specified or non existent, not preseeding anything"
7003
7003
  msgstr ""
7004
7004
 
@@ -7038,7 +7038,7 @@ msgstr ""
7038
7038
  msgid "You cannot install dpkg packages without a source"
7039
7039
  msgstr ""
7040
7040
 
7041
- #: ../lib/puppet/provider/package/dpkg.rb:107
7041
+ #: ../lib/puppet/provider/package/dpkg.rb:110
7042
7042
  msgid "source doesn't contain named package, but %{name}"
7043
7043
  msgstr ""
7044
7044
 
@@ -7124,19 +7124,19 @@ msgid ""
7124
7124
  "'%{line}'"
7125
7125
  msgstr ""
7126
7126
 
7127
- #: ../lib/puppet/provider/package/openbsd.rb:49 ../lib/puppet/provider/package/opkg.rb:25
7127
+ #: ../lib/puppet/provider/package/openbsd.rb:50 ../lib/puppet/provider/package/opkg.rb:25
7128
7128
  msgid "Failed to match line %{line}"
7129
7129
  msgstr ""
7130
7130
 
7131
- #: ../lib/puppet/provider/package/openbsd.rb:136
7131
+ #: ../lib/puppet/provider/package/openbsd.rb:137
7132
7132
  msgid "No valid installpath found in /etc/pkg.conf and no source was set"
7133
7133
  msgstr ""
7134
7134
 
7135
- #: ../lib/puppet/provider/package/openbsd.rb:140
7135
+ #: ../lib/puppet/provider/package/openbsd.rb:141
7136
7136
  msgid "You must specify a package source or configure an installpath in /etc/pkg.conf"
7137
7137
  msgstr ""
7138
7138
 
7139
- #: ../lib/puppet/provider/package/openbsd.rb:212
7139
+ #: ../lib/puppet/provider/package/openbsd.rb:213
7140
7140
  msgid "%{version} is not available for this package"
7141
7141
  msgstr ""
7142
7142
 
@@ -7192,27 +7192,27 @@ msgstr ""
7192
7192
  msgid "Unknown line format %{resource_name}: %{parse_line}"
7193
7193
  msgstr ""
7194
7194
 
7195
- #: ../lib/puppet/provider/package/pkg.rb:116
7195
+ #: ../lib/puppet/provider/package/pkg.rb:120
7196
7196
  msgid "Unable to unfreeze %{package}"
7197
7197
  msgstr ""
7198
7198
 
7199
- #: ../lib/puppet/provider/package/pkg.rb:151
7199
+ #: ../lib/puppet/provider/package/pkg.rb:155
7200
7200
  msgid "Implicit version %{should} has %{n} possible matches"
7201
7201
  msgstr ""
7202
7202
 
7203
- #: ../lib/puppet/provider/package/pkg.rb:161
7203
+ #: ../lib/puppet/provider/package/pkg.rb:165
7204
7204
  msgid "Selecting version '%{version}' for implicit '%{should}'"
7205
7205
  msgstr ""
7206
7206
 
7207
- #: ../lib/puppet/provider/package/pkg.rb:166
7207
+ #: ../lib/puppet/provider/package/pkg.rb:170
7208
7208
  msgid "No version of %{name} matching %{should} is installable, even though the package is currently installed"
7209
7209
  msgstr ""
7210
7210
 
7211
- #: ../lib/puppet/provider/package/pkg.rb:185
7211
+ #: ../lib/puppet/provider/package/pkg.rb:189
7212
7212
  msgid "pkg warning: %{warnings}"
7213
7213
  msgstr ""
7214
7214
 
7215
- #: ../lib/puppet/provider/package/pkg.rb:221 ../lib/puppet/provider/package/pkg.rb:241
7215
+ #: ../lib/puppet/provider/package/pkg.rb:228 ../lib/puppet/provider/package/pkg.rb:254
7216
7216
  msgid "Unable to update %{package}"
7217
7217
  msgstr ""
7218
7218
 
@@ -7341,11 +7341,11 @@ msgstr ""
7341
7341
  msgid "Failed to update to version %{should}, got version %{version} instead"
7342
7342
  msgstr ""
7343
7343
 
7344
- #: ../lib/puppet/provider/package_targetable.rb:55
7344
+ #: ../lib/puppet/provider/package_targetable.rb:56
7345
7345
  msgid "Provider %{name} package command is not functional on this host"
7346
7346
  msgstr ""
7347
7347
 
7348
- #: ../lib/puppet/provider/package_targetable.rb:58
7348
+ #: ../lib/puppet/provider/package_targetable.rb:59
7349
7349
  msgid "Provider %{name} package command '%{cmd}' does not exist on this host"
7350
7350
  msgstr ""
7351
7351
 
@@ -8107,11 +8107,11 @@ msgstr ""
8107
8107
  msgid "Puppet::SSL::CertificateAuthority#certificate_is_alive? is deprecated. Please use Puppet::SSL::CertificateAuthority#verify or the certificate status API to query certificate information. See https://puppet.com/docs/puppet/latest/http_api/http_certificate_status.html"
8108
8108
  msgstr ""
8109
8109
 
8110
- #: ../lib/puppet/ssl/certificate_authority.rb:497
8110
+ #: ../lib/puppet/ssl/certificate_authority.rb:498
8111
8111
  msgid "Could not find a certificate for %{name}"
8112
8112
  msgstr ""
8113
8113
 
8114
- #: ../lib/puppet/ssl/certificate_authority.rb:506
8114
+ #: ../lib/puppet/ssl/certificate_authority.rb:507
8115
8115
  msgid "Could not find a certificate or csr for %{name}"
8116
8116
  msgstr ""
8117
8117
 
@@ -8942,6 +8942,14 @@ msgstr ""
8942
8942
  msgid "Name must be a String not %{klass}"
8943
8943
  msgstr ""
8944
8944
 
8945
+ #: ../lib/puppet/type/package.rb:635
8946
+ msgid "Invalid hold value %{value}. %{doc}"
8947
+ msgstr ""
8948
+
8949
+ #: ../lib/puppet/type/package.rb:665
8950
+ msgid "You cannot use \"mark\" property while \"ensure\" is one of [\"absent\", \"purged\", \"held\"]"
8951
+ msgstr ""
8952
+
8945
8953
  #: ../lib/puppet/type/resources.rb:15
8946
8954
  msgid "Could not find resource type '%{name}'"
8947
8955
  msgstr ""
@@ -9135,27 +9143,27 @@ msgstr ""
9135
9143
  msgid "Profile names must be provided as an array, not a comma-separated list"
9136
9144
  msgstr ""
9137
9145
 
9138
- #: ../lib/puppet/type/user.rb:703
9146
+ #: ../lib/puppet/type/user.rb:705
9139
9147
  msgid "Each entry for purge_ssh_keys must be a string, not a %{klass}"
9140
9148
  msgstr ""
9141
9149
 
9142
- #: ../lib/puppet/type/user.rb:706
9150
+ #: ../lib/puppet/type/user.rb:708
9143
9151
  msgid "Paths to keyfiles must be absolute, not %{entry}"
9144
9152
  msgstr ""
9145
9153
 
9146
- #: ../lib/puppet/type/user.rb:710
9154
+ #: ../lib/puppet/type/user.rb:712
9147
9155
  msgid "purge_ssh_keys must be true, false, or an array of file names, not %{value}"
9148
9156
  msgstr ""
9149
9157
 
9150
- #: ../lib/puppet/type/user.rb:722
9158
+ #: ../lib/puppet/type/user.rb:724
9151
9159
  msgid "purge_ssh_keys can only be true for users with a defined home directory"
9152
9160
  msgstr ""
9153
9161
 
9154
- #: ../lib/puppet/type/user.rb:729
9162
+ #: ../lib/puppet/type/user.rb:731
9155
9163
  msgid "purge_ssh_keys value '%{value}' meta character ~ or %{home_placeholder} only allowed for users with a defined home directory"
9156
9164
  msgstr ""
9157
9165
 
9158
- #: ../lib/puppet/type/user.rb:743
9166
+ #: ../lib/puppet/type/user.rb:745
9159
9167
  msgid "Class name must be provided."
9160
9168
  msgstr ""
9161
9169
 
@@ -9266,11 +9274,11 @@ msgstr ""
9266
9274
  msgid "path may not be nil"
9267
9275
  msgstr ""
9268
9276
 
9269
- #: ../lib/puppet/util.rb:568
9277
+ #: ../lib/puppet/util.rb:591
9270
9278
  msgid "replace_file requires a block"
9271
9279
  msgstr ""
9272
9280
 
9273
- #: ../lib/puppet/util.rb:572
9281
+ #: ../lib/puppet/util.rb:595
9274
9282
  msgid "replace_file default_mode: %{default_mode} is invalid"
9275
9283
  msgstr ""
9276
9284
 
@@ -9798,20 +9806,20 @@ msgstr ""
9798
9806
  msgid "Unable to set ownership to %{user}:%{group} for log file: %{path}"
9799
9807
  msgstr ""
9800
9808
 
9801
- #: ../lib/puppet/util/logging.rb:82 ../lib/puppet/util/logging.rb:105
9809
+ #: ../lib/puppet/util/logging.rb:80 ../lib/puppet/util/logging.rb:104
9802
9810
  msgid "Wrapped exception:"
9803
9811
  msgstr ""
9804
9812
 
9805
9813
  #. TRANSLATORS the literals ":file", ":line", and ":key" should not be translated
9806
- #: ../lib/puppet/util/logging.rb:149
9814
+ #: ../lib/puppet/util/logging.rb:161
9807
9815
  msgid "Need either :file and :line, or :key"
9808
9816
  msgstr ""
9809
9817
 
9810
- #: ../lib/puppet/util/logging.rb:179
9818
+ #: ../lib/puppet/util/logging.rb:191
9811
9819
  msgid "(file & line not available)"
9812
9820
  msgstr ""
9813
9821
 
9814
- #: ../lib/puppet/util/logging.rb:281
9822
+ #: ../lib/puppet/util/logging.rb:293
9815
9823
  msgid "(location: %{location})"
9816
9824
  msgstr ""
9817
9825
 
@@ -9909,7 +9917,7 @@ msgstr ""
9909
9917
  msgid "Details: %{detail}"
9910
9918
  msgstr ""
9911
9919
 
9912
- #: ../lib/puppet/util/plist.rb:145
9920
+ #: ../lib/puppet/util/plist.rb:151
9913
9921
  msgid "Unable to write the file %{file_path}. %{error}"
9914
9922
  msgstr ""
9915
9923
 
@@ -10093,55 +10101,55 @@ msgstr ""
10093
10101
  msgid "Invalid tag '%{name}'"
10094
10102
  msgstr ""
10095
10103
 
10096
- #: ../lib/puppet/util/windows/adsi.rb:19
10104
+ #: ../lib/puppet/util/windows/adsi.rb:36
10097
10105
  msgid "ADSI connection error: %{e}"
10098
10106
  msgstr ""
10099
10107
 
10100
- #: ../lib/puppet/util/windows/adsi.rb:42
10108
+ #: ../lib/puppet/util/windows/adsi.rb:59
10101
10109
  msgid "Failed to get computer name"
10102
10110
  msgstr ""
10103
10111
 
10104
- #: ../lib/puppet/util/windows/adsi.rb:80
10112
+ #: ../lib/puppet/util/windows/adsi.rb:97
10105
10113
  msgid "Must use a valid SID::Principal"
10106
10114
  msgstr ""
10107
10115
 
10108
- #: ../lib/puppet/util/windows/adsi.rb:137
10116
+ #: ../lib/puppet/util/windows/adsi.rb:162
10109
10117
  msgid "Value must be in DOMAIN\\%{object_class} style syntax"
10110
10118
  msgstr ""
10111
10119
 
10112
- #: ../lib/puppet/util/windows/adsi.rb:163
10120
+ #: ../lib/puppet/util/windows/adsi.rb:188
10113
10121
  msgid "Could not resolve name: %{name}"
10114
10122
  msgstr ""
10115
10123
 
10116
- #: ../lib/puppet/util/windows/adsi.rb:200
10124
+ #: ../lib/puppet/util/windows/adsi.rb:230
10117
10125
  msgid "Subclass must implement class-level method 'list_all'!"
10118
10126
  msgstr ""
10119
10127
 
10120
- #: ../lib/puppet/util/windows/adsi.rb:254
10128
+ #: ../lib/puppet/util/windows/adsi.rb:284
10121
10129
  msgid "Puppet is not able to create/delete domain %{object_class} objects with the %{object_class} resource."
10122
10130
  msgstr ""
10123
10131
 
10124
- #: ../lib/puppet/util/windows/adsi.rb:258
10132
+ #: ../lib/puppet/util/windows/adsi.rb:288
10125
10133
  msgid "%{object_class} update failed: %{error}"
10126
10134
  msgstr ""
10127
10135
 
10128
- #: ../lib/puppet/util/windows/adsi.rb:284
10136
+ #: ../lib/puppet/util/windows/adsi.rb:314
10129
10137
  msgid "Cannot create user if group '%{name}' exists."
10130
10138
  msgstr ""
10131
10139
 
10132
- #: ../lib/puppet/util/windows/adsi.rb:425
10140
+ #: ../lib/puppet/util/windows/adsi.rb:455
10133
10141
  msgid "Unrecognized ADS UserFlags: %{unrecognized_flags}"
10134
10142
  msgstr ""
10135
10143
 
10136
- #: ../lib/puppet/util/windows/adsi.rb:469
10144
+ #: ../lib/puppet/util/windows/adsi.rb:499
10137
10145
  msgid "Failed to get user name"
10138
10146
  msgstr ""
10139
10147
 
10140
- #: ../lib/puppet/util/windows/adsi.rb:506
10148
+ #: ../lib/puppet/util/windows/adsi.rb:536
10141
10149
  msgid "Cannot delete user profile for '%{sid}' prior to Vista SP1"
10142
10150
  msgstr ""
10143
10151
 
10144
- #: ../lib/puppet/util/windows/adsi.rb:524
10152
+ #: ../lib/puppet/util/windows/adsi.rb:554
10145
10153
  msgid "Cannot create group if user '%{name}' exists."
10146
10154
  msgstr ""
10147
10155