kanrisuru 0.9.2 → 0.12.0

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.
Files changed (76) hide show
  1. checksums.yaml +4 -4
  2. data/.github/CONTRIBUTING.md +9 -9
  3. data/.github/ISSUE_TEMPLATE/bug_report.md +7 -8
  4. data/.rspec +1 -1
  5. data/CHANGELOG.md +125 -96
  6. data/CODE_OF_CONDUCT.md +10 -10
  7. data/README.md +19 -90
  8. data/kanrisuru.gemspec +2 -1
  9. data/lib/kanrisuru/command.rb +7 -0
  10. data/lib/kanrisuru/core/archive.rb +13 -36
  11. data/lib/kanrisuru/core/disk.rb +0 -3
  12. data/lib/kanrisuru/core/dmi.rb +1 -1
  13. data/lib/kanrisuru/core/file.rb +4 -11
  14. data/lib/kanrisuru/core/find.rb +6 -11
  15. data/lib/kanrisuru/core/mount.rb +14 -15
  16. data/lib/kanrisuru/core/socket.rb +2 -1
  17. data/lib/kanrisuru/core/stream.rb +1 -2
  18. data/lib/kanrisuru/core/zypper.rb +6 -23
  19. data/lib/kanrisuru/os_package/collection.rb +58 -0
  20. data/lib/kanrisuru/os_package/define.rb +34 -0
  21. data/lib/kanrisuru/os_package/include.rb +163 -0
  22. data/lib/kanrisuru/os_package.rb +3 -245
  23. data/lib/kanrisuru/remote/cpu.rb +5 -1
  24. data/lib/kanrisuru/remote/env.rb +8 -0
  25. data/lib/kanrisuru/remote/fstab.rb +5 -5
  26. data/lib/kanrisuru/result.rb +5 -4
  27. data/lib/kanrisuru/util.rb +1 -1
  28. data/lib/kanrisuru/version.rb +1 -1
  29. data/spec/functional/core/apt_spec.rb +22 -30
  30. data/spec/functional/core/archive_spec.rb +170 -0
  31. data/spec/functional/core/find_spec.rb +94 -113
  32. data/spec/functional/core/mount_spec.rb +121 -0
  33. data/spec/functional/core/socket_spec.rb +23 -28
  34. data/spec/functional/core/stream_spec.rb +12 -12
  35. data/spec/functional/core/transfer_spec.rb +108 -131
  36. data/spec/functional/core/yum_spec.rb +58 -83
  37. data/spec/functional/remote/cluster_spec.rb +11 -2
  38. data/spec/functional/remote/cpu_spec.rb +104 -0
  39. data/spec/functional/remote/env_spec.rb +48 -0
  40. data/spec/helper/stub_network.rb +49 -14
  41. data/spec/helper/test_hosts.rb +11 -1
  42. data/spec/integration/core/apt_spec.rb +2 -3
  43. data/spec/integration/core/archive_spec.rb +8 -13
  44. data/spec/integration/core/disk_spec.rb +2 -3
  45. data/spec/integration/core/dmi_spec.rb +2 -3
  46. data/spec/integration/core/file_spec.rb +4 -14
  47. data/spec/integration/core/find_spec.rb +3 -3
  48. data/spec/integration/core/group_spec.rb +2 -3
  49. data/spec/integration/core/ip_spec.rb +2 -3
  50. data/spec/integration/core/path_spec.rb +2 -3
  51. data/spec/integration/core/socket_spec.rb +2 -4
  52. data/spec/integration/core/stat_spec.rb +2 -3
  53. data/spec/integration/core/stream_spec.rb +6 -9
  54. data/spec/integration/core/system_spec.rb +2 -4
  55. data/spec/integration/core/transfer_spec.rb +4 -9
  56. data/spec/integration/core/user_spec.rb +2 -4
  57. data/spec/integration/core/yum_spec.rb +2 -3
  58. data/spec/integration/core/zypper_spec.rb +5 -6
  59. data/spec/{functional → integration}/os_package_spec.rb +0 -0
  60. data/spec/integration/remote/cpu_spec.rb +2 -3
  61. data/spec/integration/remote/env_spec.rb +2 -3
  62. data/spec/integration/remote/fstab_spec.rb +2 -3
  63. data/spec/integration/remote/host_spec.rb +2 -3
  64. data/spec/integration/remote/memory_spec.rb +2 -2
  65. data/spec/integration/remote/os_spec.rb +2 -3
  66. data/spec/integration/remote/remote_file_spec.rb +9 -15
  67. data/spec/spec_helper.rb +12 -3
  68. data/spec/unit/command_spec.rb +49 -0
  69. data/spec/unit/core/find_spec.rb +1 -1
  70. data/spec/unit/core/yum_spec.rb +1 -1
  71. data/spec/unit/mode_spec.rb +33 -2
  72. data/spec/unit/remote/cluster_spec.rb +3 -1
  73. data/spec/unit/remote/cpu_spec.rb +1 -2
  74. data/spec/unit/remote/env_spec.rb +17 -0
  75. data/spec/unit/util_spec.rb +13 -0
  76. metadata +28 -5
@@ -1,9 +1,8 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- RSpec.describe Kanrisuru::Remote::Fstab do
4
- TestHosts.each_os do |os_name|
3
+ TestHosts.each_os do |os_name. host_json|
4
+ RSpec.describe Kanrisuru::Remote::Fstab do
5
5
  context "with #{os_name}" do
6
- let(:host_json) { TestHosts.host(os_name) }
7
6
  let(:host) do
8
7
  Kanrisuru::Remote::Host.new(
9
8
  host: host_json['hostname'],
@@ -2,10 +2,9 @@
2
2
 
3
3
  require 'spec_helper'
4
4
 
5
- RSpec.describe Kanrisuru::Remote::Host do
6
- TestHosts.each_os do |os_name|
5
+ TestHosts.each_os do |os_name, host_json|
6
+ RSpec.describe Kanrisuru::Remote::Host do
7
7
  context "with #{os_name}" do
8
- let(:host_json) { TestHosts.host(os_name) }
9
8
  let(:host) do
10
9
  described_class.new(
11
10
  host: host_json['hostname'],
@@ -2,8 +2,8 @@
2
2
 
3
3
  require 'spec_helper'
4
4
 
5
- RSpec.describe Kanrisuru::Remote::Memory do
6
- TestHosts.each_os do |os_name|
5
+ TestHosts.each_os do |os_name|
6
+ RSpec.describe Kanrisuru::Remote::Memory do
7
7
  context "with #{os_name}" do
8
8
  let(:host_json) { TestHosts.host(os_name) }
9
9
  let(:host) do
@@ -2,10 +2,9 @@
2
2
 
3
3
  require 'spec_helper'
4
4
 
5
- RSpec.describe Kanrisuru::Remote::Os do
6
- TestHosts.each_os do |os_name|
5
+ TestHosts.each_os do |os_name, host_json|
6
+ RSpec.describe Kanrisuru::Remote::Os do
7
7
  context "with #{os_name}" do
8
- let(:host_json) { TestHosts.host(os_name) }
9
8
  let(:host) do
10
9
  Kanrisuru::Remote::Host.new(
11
10
  host: host_json['hostname'],
@@ -1,29 +1,27 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- RSpec.describe Kanrisuru::Remote::File do
4
- module Kanrisuru
5
- module Remote
6
- Class.new(File) do
7
- READ_FILE_SIZE = 25_000
8
- end
3
+ module Kanrisuru
4
+ module Remote
5
+ Class.new(File) do
6
+ READ_FILE_SIZE = 25_000
9
7
  end
10
8
  end
9
+ end
11
10
 
12
- TestHosts.each_os do |os_name|
11
+ TestHosts.each_os do |os_name, host_json, spec_dir|
12
+ RSpec.describe Kanrisuru::Remote::File do
13
13
  context "with #{os_name}" do
14
14
  before(:all) do
15
- host_json = TestHosts.host(os_name)
16
15
  host = Kanrisuru::Remote::Host.new(
17
16
  host: host_json['hostname'],
18
17
  username: host_json['username'],
19
18
  keys: [host_json['ssh_key']]
20
19
  )
21
20
 
22
- host.mkdir("#{host_json['home']}/.kanrisuru_spec_files", silent: true)
21
+ host.mkdir(spec_dir, silent: true)
23
22
  host.disconnect
24
23
  end
25
24
 
26
- let(:host_json) { TestHosts.host(os_name) }
27
25
  let(:host) do
28
26
  Kanrisuru::Remote::Host.new(
29
27
  host: host_json['hostname'],
@@ -32,22 +30,18 @@ RSpec.describe Kanrisuru::Remote::File do
32
30
  )
33
31
  end
34
32
 
35
- let(:spec_dir) { "#{host_json['home']}/.kanrisuru_spec_files" }
36
-
37
33
  after do
38
34
  host.disconnect
39
35
  end
40
36
 
41
37
  after(:all) do
42
- host_json = TestHosts.host(os_name)
43
38
  host = Kanrisuru::Remote::Host.new(
44
39
  host: host_json['hostname'],
45
40
  username: host_json['username'],
46
41
  keys: [host_json['ssh_key']]
47
42
  )
48
43
 
49
- host.rmdir("#{host_json['home']}/.kanrisuru_spec_files")
50
- host.rmdir("#{host_json['home']}/extract-tar-files") if host.dir?("#{host_json['home']}/extract-tar-files")
44
+ host.rmdir(spec_dir)
51
45
  host.disconnect
52
46
  end
53
47
 
data/spec/spec_helper.rb CHANGED
@@ -1,10 +1,17 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require 'simplecov'
4
- SimpleCov.start
5
-
6
4
  require 'simplecov-cobertura'
7
- SimpleCov.formatter = SimpleCov::Formatter::CoberturaFormatter
5
+
6
+ SimpleCov.formatter = SimpleCov::Formatter::MultiFormatter.new([
7
+ SimpleCov::Formatter::HTMLFormatter,
8
+ SimpleCov::Formatter::CoberturaFormatter
9
+ ])
10
+
11
+ SimpleCov.use_merging true
12
+ SimpleCov.command_name("kanrisuru-tests" + (ENV['TEST_ENV_NUMBER'] || ''))
13
+
14
+ SimpleCov.start
8
15
 
9
16
  require 'kanrisuru'
10
17
 
@@ -21,6 +28,8 @@ RSpec.configure do |config|
21
28
  # Disable RSpec exposing methods globally on `Module` and `main`
22
29
  config.disable_monkey_patching!
23
30
 
31
+ config.silence_filter_announcements = true if ENV['TEST_ENV_NUMBER']
32
+
24
33
  config.expect_with :rspec do |c|
25
34
  c.syntax = :expect
26
35
  end
@@ -0,0 +1,49 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'spec_helper'
4
+
5
+ RSpec.describe Kanrisuru::Command do
6
+ it 'responds to methods' do
7
+ command = described_class.new('ls')
8
+ expect(command).to respond_to(:exit_status)
9
+ expect(command).to respond_to(:raw_result)
10
+ expect(command).to respond_to(:program)
11
+ expect(command).to respond_to(:success?)
12
+ expect(command).to respond_to(:failure?)
13
+ expect(command).to respond_to(:to_i)
14
+ expect(command).to respond_to(:to_s)
15
+ expect(command).to respond_to(:to_a)
16
+ expect(command).to respond_to(:to_json)
17
+ expect(command).to respond_to(:prepared_command)
18
+ expect(command).to respond_to(:raw_command)
19
+ expect(command).to respond_to(:handle_status)
20
+ expect(command).to respond_to(:handle_data)
21
+ expect(command).to respond_to(:handle_signal)
22
+ expect(command).to respond_to(:+)
23
+ expect(command).to respond_to(:<<)
24
+ expect(command).to respond_to(:|)
25
+ expect(command).to respond_to(:pipe)
26
+ expect(command).to respond_to(:append_value)
27
+ expect(command).to respond_to(:append_arg)
28
+ expect(command).to respond_to(:append_flag)
29
+ expect(command).to respond_to(:append_valid_exit_code)
30
+ end
31
+
32
+ it 'does not append nil array values' do
33
+ command = described_class.new('hello')
34
+ command.append_array(nil)
35
+ expect(command.raw_command).to eq('hello')
36
+ end
37
+
38
+ it 'appends string array values' do
39
+ command = described_class.new('ls')
40
+ command.append_array('/etc')
41
+ expect(command.raw_command).to eq('ls /etc')
42
+ end
43
+
44
+ it 'appends array values' do
45
+ command = described_class.new('ls')
46
+ command.append_array(['/proc/', '/etc', '/var', '/dev'])
47
+ expect(command.raw_command).to eq('ls /proc/ /etc /var /dev')
48
+ end
49
+ end
@@ -26,7 +26,7 @@ RSpec.describe Kanrisuru::Core::Find do
26
26
  it 'responds to find fields' do
27
27
  expect(Kanrisuru::Core::Find::FilePath.new).to respond_to(:path)
28
28
  expect(Kanrisuru::Core::Find::REGEX_TYPES).to(
29
- eq(['emacs', 'posix-awk', 'posix-basic', 'posix-egrep', 'posix-extended'])
29
+ eq(%w[emacs posix-awk posix-basic posix-egrep posix-extended])
30
30
  )
31
31
  end
32
32
  end
@@ -22,7 +22,7 @@ RSpec.describe Kanrisuru::Core::Yum do
22
22
  it 'responds to methods' do
23
23
  expect(host).to respond_to(:yum)
24
24
  end
25
-
25
+
26
26
  it 'responds to yum fields' do
27
27
  expect(Kanrisuru::Core::Yum::PackageOverview.new).to respond_to(
28
28
  :package, :architecture, :version, :installed
@@ -3,6 +3,18 @@
3
3
  require 'spec_helper'
4
4
 
5
5
  RSpec.describe Kanrisuru::Mode do
6
+ it 'responds to methods' do
7
+ mode = described_class.new('644')
8
+ expect(mode).to respond_to(:directory?)
9
+ expect(mode).to respond_to(:symbolic)
10
+ expect(mode).to respond_to(:symbolic=)
11
+ expect(mode).to respond_to(:numeric)
12
+ expect(mode).to respond_to(:numeric=)
13
+ expect(mode).to respond_to(:inspect)
14
+ expect(mode).to respond_to(:to_s)
15
+ expect(mode).to respond_to(:to_i)
16
+ end
17
+
6
18
  it 'parses int mode' do
7
19
  mode = described_class.new('644')
8
20
  expect(mode.directory?).to eq(false)
@@ -80,9 +92,9 @@ RSpec.describe Kanrisuru::Mode do
80
92
  expect(mode.other.to_i).to eq(7)
81
93
  expect(mode.other.symbolic).to eq('rwx')
82
94
 
83
- mode = described_class.new("---x--x--x")
95
+ mode = described_class.new('---x--x--x')
84
96
  expect(mode.directory?).to eq(false)
85
- expect(mode.numeric).to eq("111")
97
+ expect(mode.numeric).to eq('111')
86
98
 
87
99
  expect(mode.owner.read?).to eq(false)
88
100
  expect(mode.owner.write?).to eq(false)
@@ -205,4 +217,23 @@ RSpec.describe Kanrisuru::Mode do
205
217
  mode.symbolic = '-w'
206
218
  expect(mode.symbolic).to eq('---xr-xr--')
207
219
  end
220
+
221
+ context Kanrisuru::Mode::Permission do
222
+ it 'responds to methods' do
223
+ mode = Kanrisuru::Mode::Permission.new('644', 'rw-rw-r--')
224
+ expect(mode).to respond_to(:to_i)
225
+ expect(mode).to respond_to(:to_s)
226
+ expect(mode).to respond_to(:all?)
227
+ expect(mode).to respond_to(:numeric)
228
+ expect(mode).to respond_to(:numeric=)
229
+ expect(mode).to respond_to(:symbolic=)
230
+ expect(mode).to respond_to(:symbolic)
231
+ expect(mode).to respond_to(:read=)
232
+ expect(mode).to respond_to(:read?)
233
+ expect(mode).to respond_to(:write=)
234
+ expect(mode).to respond_to(:write?)
235
+ expect(mode).to respond_to(:execute=)
236
+ expect(mode).to respond_to(:execute?)
237
+ end
238
+ end
208
239
  end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  RSpec.describe Kanrisuru::Remote::Cluster do
2
4
  before(:all) do
3
5
  StubNetwork.stub!
@@ -16,7 +18,7 @@ RSpec.describe Kanrisuru::Remote::Cluster do
16
18
  end
17
19
 
18
20
  it 'responds to methods' do
19
- cluster = Kanrisuru::Remote::Cluster.new(host1)
21
+ cluster = described_class.new(host1)
20
22
  expect(cluster).to respond_to(:hosts)
21
23
  expect(cluster).to respond_to(:[])
22
24
  expect(cluster).to respond_to(:<<)
@@ -20,8 +20,7 @@ RSpec.describe Kanrisuru::Remote::Cpu do
20
20
  end
21
21
 
22
22
  it 'responds to methods' do
23
- cpu = Kanrisuru::Remote::Cpu.new(host)
24
-
23
+ cpu = described_class.new(host)
25
24
  expect(cpu).to respond_to(:load_average)
26
25
  expect(cpu).to respond_to(:load_average1)
27
26
  expect(cpu).to respond_to(:load_average5)
@@ -0,0 +1,17 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'spec_helper'
4
+
5
+ RSpec.describe Kanrisuru::Remote::Env do
6
+ it 'responds to methods' do
7
+ env = described_class.new
8
+ expect(env).to respond_to(:to_h)
9
+ expect(env).to respond_to(:to_s)
10
+ expect(env).to respond_to(:clear)
11
+ expect(env).to respond_to(:count)
12
+ expect(env).to respond_to(:count)
13
+ expect(env).to respond_to(:delete)
14
+ expect(env).to respond_to(:[])
15
+ expect(env).to respond_to(:[]=)
16
+ end
17
+ end
@@ -84,6 +84,10 @@ RSpec.describe Kanrisuru::Util do
84
84
  expect { Kanrisuru::Util::Bits.convert_bytes(100, :kilobytee, :kilobit) }.to raise_error(ArgumentError)
85
85
  end
86
86
 
87
+ it 'gets invalid signal type' do
88
+ expect { Kanrisuru::Util::Signal[{ 'Hello' => 'World' }] }.to raise_error(ArgumentError)
89
+ end
90
+
87
91
  it 'translates signal from string to numeric' do
88
92
  expect(Kanrisuru::Util::Signal['HUP']).to eq(1)
89
93
  expect(Kanrisuru::Util::Signal['INT']).to eq(2)
@@ -214,6 +218,10 @@ RSpec.describe Kanrisuru::Util do
214
218
  expect(Kanrisuru::Util::Signal[64]).to eq('RTMAX')
215
219
  end
216
220
 
221
+ it 'gets invalid dmi type' do
222
+ expect { Kanrisuru::Util::DmiType[{ 'Hello' => 'World' }] }.to raise_error(ArgumentError)
223
+ end
224
+
217
225
  it 'translates dmi types from string to integer' do
218
226
  expect(Kanrisuru::Util::DmiType['BIOS']).to eq(0)
219
227
  expect(Kanrisuru::Util::DmiType['System']).to eq(1)
@@ -308,6 +316,11 @@ RSpec.describe Kanrisuru::Util do
308
316
  expect(Kanrisuru::Util::DmiType[43]).to eq('TPM Device')
309
317
  end
310
318
 
319
+ it 'gets fs_mount options' do
320
+ expect(Kanrisuru::Util::FsMountOpts.get_device('common')[:async]).to eq('boolean')
321
+ expect(Kanrisuru::Util::FsMountOpts.get_device_opt(:ext4, :acl)).to eq('boolean')
322
+ end
323
+
311
324
  it 'converts power' do
312
325
  expect(Kanrisuru::Util::Bits.convert_power(:deca, :deca)).to eq(0)
313
326
  expect(Kanrisuru::Util::Bits.convert_power(:deca, :kilo)).to eq(-1)
metadata CHANGED
@@ -1,15 +1,29 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: kanrisuru
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.2
4
+ version: 0.12.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ryan Mammina
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-12-01 00:00:00.000000000 Z
11
+ date: 2021-12-05 00:00:00.000000000 Z
12
12
  dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: parallel_tests
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '3.7'
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '3.7'
13
27
  - !ruby/object:Gem::Dependency
14
28
  name: rspec
15
29
  requirement: !ruby/object:Gem::Requirement
@@ -123,7 +137,7 @@ dependencies:
123
137
  - !ruby/object:Gem::Version
124
138
  version: '6.1'
125
139
  description: Kanrisuru helps manage remote servers with objected oriented ruby. Results
126
- come back as structured data, parsed, prepared and ready .
140
+ come back as structured data, parsed, prepared and ready.
127
141
  email: ryan@avamia.com
128
142
  executables: []
129
143
  extensions: []
@@ -170,6 +184,9 @@ files:
170
184
  - lib/kanrisuru/logger.rb
171
185
  - lib/kanrisuru/mode.rb
172
186
  - lib/kanrisuru/os_package.rb
187
+ - lib/kanrisuru/os_package/collection.rb
188
+ - lib/kanrisuru/os_package/define.rb
189
+ - lib/kanrisuru/os_package/include.rb
173
190
  - lib/kanrisuru/remote.rb
174
191
  - lib/kanrisuru/remote/cluster.rb
175
192
  - lib/kanrisuru/remote/cpu.rb
@@ -189,15 +206,18 @@ files:
189
206
  - lib/kanrisuru/util/signal.rb
190
207
  - lib/kanrisuru/version.rb
191
208
  - spec/functional/core/apt_spec.rb
209
+ - spec/functional/core/archive_spec.rb
192
210
  - spec/functional/core/find_spec.rb
211
+ - spec/functional/core/mount_spec.rb
193
212
  - spec/functional/core/path_spec.rb
194
213
  - spec/functional/core/socket_spec.rb
195
214
  - spec/functional/core/stat_spec.rb
196
215
  - spec/functional/core/stream_spec.rb
197
216
  - spec/functional/core/transfer_spec.rb
198
217
  - spec/functional/core/yum_spec.rb
199
- - spec/functional/os_package_spec.rb
200
218
  - spec/functional/remote/cluster_spec.rb
219
+ - spec/functional/remote/cpu_spec.rb
220
+ - spec/functional/remote/env_spec.rb
201
221
  - spec/helper/expect_helpers.rb
202
222
  - spec/helper/stub_network.rb
203
223
  - spec/helper/test_hosts.rb
@@ -219,6 +239,7 @@ files:
219
239
  - spec/integration/core/user_spec.rb
220
240
  - spec/integration/core/yum_spec.rb
221
241
  - spec/integration/core/zypper_spec.rb
242
+ - spec/integration/os_package_spec.rb
222
243
  - spec/integration/remote/cluster_spec.rb
223
244
  - spec/integration/remote/cpu_spec.rb
224
245
  - spec/integration/remote/env_spec.rb
@@ -228,6 +249,7 @@ files:
228
249
  - spec/integration/remote/os_spec.rb
229
250
  - spec/integration/remote/remote_file_spec.rb
230
251
  - spec/spec_helper.rb
252
+ - spec/unit/command_spec.rb
231
253
  - spec/unit/core/apt_spec.rb
232
254
  - spec/unit/core/archive_spec.rb
233
255
  - spec/unit/core/disk_spec.rb
@@ -248,6 +270,7 @@ files:
248
270
  - spec/unit/mode_spec.rb
249
271
  - spec/unit/remote/cluster_spec.rb
250
272
  - spec/unit/remote/cpu_spec.rb
273
+ - spec/unit/remote/env_spec.rb
251
274
  - spec/unit/remote/fstab_spec.rb
252
275
  - spec/unit/template_spec.rb
253
276
  - spec/unit/util_spec.rb
@@ -273,7 +296,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
273
296
  - !ruby/object:Gem::Version
274
297
  version: '0'
275
298
  requirements: []
276
- rubygems_version: 3.1.2
299
+ rubygems_version: 3.2.32
277
300
  signing_key:
278
301
  specification_version: 4
279
302
  summary: Manage remote servers over ssh with ruby.