aboutsummaryrefslogtreecommitdiff
path: root/spec/unit
AgeCommit message (Collapse)Author
2023-11-22Convert ProcessOutput to String explicitlyJosh Cooper
The `filetype` provider executes `crontab` using Puppet's execution API, which returns ProcessOutput objects that inherit from String. See puppetlabs/puppet@732d450 The provider later uses String#gsub to strip off the HEADER. In Ruby 2.7, the gsub method returns a new instance of ProcessOutput: irb(main):002:0> Puppet::Util::Execution::ProcessOutput.new("# HEADER\n0 4 * * * /etc/init.d/script.sh\n", 0).gsub(/# HEADER/, '').class => Puppet::Util::Execution::ProcessOutput If you later serialize the crontab entries to YAML using `puppet resource`, then puppet warns about serializing unknown data types: # puppet resource cron --to_yaml Warning: Cron[unmanaged:/etc/init.d/script.sh-1]['command'] contains a Puppet::Util::Execution::ProcessOutput value. It will be converted to the String '/etc/init.d/script.sh' This wasn't an issue with Ruby 3.2, because String#gsub always returns a String: irb(main):002:0> Puppet::Util::Execution::ProcessOutput.new("# HEADER\n0 4 * * * /etc/init.d/script.sh\n", 0).gsub(/# HEADER/, '').class => String This commit explicitly converts the ProcessOutput to a String so the provider behaves consistently on all Ruby versions. Fixes #61
2021-10-01(MODULES-11197) Update to pdk-templates 2.2.0Gabriel Nagy
Includes REFERENCE.md ToC fixes for MODULES-8183.
2021-03-11(maint) Switch to rspec-mocksGabriel Nagy
2020-08-10(MODULES-7786) Allow leading zeroes for cron paramsDorin Pleava
When applying a cron manigest that contains leading zeroes in a periodic attribute (hour, minute, month, monthday, weekday), puppet will strip down the zeroes even if they are accepted by the system cron. Now puppet will only convert to integer the periodic attributes when validating them, but will not change the input from the manifest.
2020-05-06(MODULES-8603) Ignore .keep_* filesEwoud Kohl van Wijngaarden
On Gentoo there's always a .keep_<package>-<slot> (e.g., .keep_cronbase-0) file inside the cron directory to ensure it's not removed with rmdir. Since usernames are very unlikely to start with .keep_, we can safely filter out these hidden files.
2018-12-07(MODULES-8306) Port over the crontab filetypes from PuppetEnis Inan
2018-11-28Update tests to pass on puppet 4Josh Cooper
2018-11-27(MODULES-8301) Update the unit tests with the crontab filetype fixEnis Inan
Commit 420049f2 in Puppet fixed the crontab filetype's #read method to use Puppet::Util::Execution.execute instead of %x. This commit updates the unit tests to account for this change.
2018-08-08Fix Layout/CommentIndentation violationJorie Tappa
2018-08-01Fix Style/RegexpLiteral violationsJorie Tappa
2018-08-01Fix RSpec/InstanceVariable violationsJorie Tappa
2018-08-01Fix RSpec/RepeatedExample violationsJorie Tappa
2018-08-01Disable Security/YAMLLoadJorie Tappa
2018-08-01Fix Lint/AmbiguousBlockAssociation violationJorie Tappa
2018-08-01Fix Lint/ScriptPermission violationsJorie Tappa
2018-08-01Apply automatic pdk validate fixesJorie Tappa
2018-07-31Initial cron import from puppet 7a4c5f07bdf61a7bc7aa32a50e99489a604eac52Jorie Tappa