specinfra 2.84.1 → 2.85.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.
- checksums.yaml +4 -4
- data/lib/specinfra/command/guix/base/service.rb +31 -0
- data/lib/specinfra/command/guix/base.rb +2 -0
- data/lib/specinfra/command/guix.rb +1 -0
- data/lib/specinfra/command.rb +5 -0
- data/lib/specinfra/helper/detect_os/guix.rb +10 -0
- data/lib/specinfra/helper/detect_os.rb +1 -0
- data/lib/specinfra/version.rb +1 -1
- data/spec/command/guix/service_spec.rb +24 -0
- data/spec/helper/detect_os/guix_spec.rb +15 -0
- data/spec/host_inventory/guix/filesystem_spec.rb +50 -0
- metadata +12 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 5dcca0a6c67f3f9b47c2833d86186ef641f41483
|
4
|
+
data.tar.gz: b4fcb4bc6a28133ef0e581947a748fb8f4cf5218
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 57fb67750b01a42c2967f2aa98e1759d18bf62c77ff6fc49a8887fd3a54e775d5b48db3b7d4c095871d9592130a52a453a7d1e3a003caa42e625842058acec93
|
7
|
+
data.tar.gz: 590f94b6646ef7d036d4481d6df2c5ead0f2545847bc1e1a852f41c66101767858669faedf32fa407735fec175ee7a14ed0180e0521a077155059990495e9324
|
@@ -0,0 +1,31 @@
|
|
1
|
+
class Specinfra::Command::Guix::Base::Service < Specinfra::Command::Linux::Base::Service
|
2
|
+
class << self
|
3
|
+
def check_is_enabled(service, level=nil)
|
4
|
+
"herd status #{escape(service)} | grep 'It is enabled.'"
|
5
|
+
end
|
6
|
+
|
7
|
+
def check_is_running(service)
|
8
|
+
"herd status #{escape(service)} | grep 'It is started.'"
|
9
|
+
end
|
10
|
+
|
11
|
+
def enable(service)
|
12
|
+
"herd enable #{escape(service)}"
|
13
|
+
end
|
14
|
+
|
15
|
+
def disable(service)
|
16
|
+
"herd disable #{escape(service)}"
|
17
|
+
end
|
18
|
+
|
19
|
+
def start(service)
|
20
|
+
"herd start #{escape(service)}"
|
21
|
+
end
|
22
|
+
|
23
|
+
def stop(service)
|
24
|
+
"herd stop #{escape(service)}"
|
25
|
+
end
|
26
|
+
|
27
|
+
def restart(service)
|
28
|
+
"herd restart #{escape(service)}"
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
@@ -0,0 +1 @@
|
|
1
|
+
class Specinfra::Command::Guix; end
|
data/lib/specinfra/command.rb
CHANGED
@@ -235,6 +235,11 @@ require 'specinfra/command/gentoo/base'
|
|
235
235
|
require 'specinfra/command/gentoo/base/package'
|
236
236
|
require 'specinfra/command/gentoo/base/service'
|
237
237
|
|
238
|
+
# Guix (inherit Linux)
|
239
|
+
require 'specinfra/command/guix'
|
240
|
+
require 'specinfra/command/guix/base'
|
241
|
+
require 'specinfra/command/guix/base/service'
|
242
|
+
|
238
243
|
# Plamo (inherit Linux)
|
239
244
|
require 'specinfra/command/plamo'
|
240
245
|
require 'specinfra/command/plamo/base'
|
@@ -0,0 +1,10 @@
|
|
1
|
+
class Specinfra::Helper::DetectOs::Guix < Specinfra::Helper::DetectOs
|
2
|
+
def detect
|
3
|
+
if run_command('ls /etc/os-release').success?
|
4
|
+
line = run_command('cat /etc/os-release').stdout
|
5
|
+
if line =~ /ID=guix/
|
6
|
+
{ :family => 'guix', :release => nil }
|
7
|
+
end
|
8
|
+
end
|
9
|
+
end
|
10
|
+
end
|
@@ -31,6 +31,7 @@ require 'specinfra/helper/detect_os/esxi'
|
|
31
31
|
require 'specinfra/helper/detect_os/eos'
|
32
32
|
require 'specinfra/helper/detect_os/freebsd'
|
33
33
|
require 'specinfra/helper/detect_os/gentoo'
|
34
|
+
require 'specinfra/helper/detect_os/guix'
|
34
35
|
require 'specinfra/helper/detect_os/nixos'
|
35
36
|
require 'specinfra/helper/detect_os/openbsd'
|
36
37
|
require 'specinfra/helper/detect_os/photon'
|
data/lib/specinfra/version.rb
CHANGED
@@ -0,0 +1,24 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
property[:os] = nil
|
4
|
+
set :os, :family => 'guix'
|
5
|
+
|
6
|
+
describe get_command(:enable_service, 'nginx') do
|
7
|
+
it { should eq 'herd enable nginx' }
|
8
|
+
end
|
9
|
+
|
10
|
+
describe get_command(:disable_service, 'nginx') do
|
11
|
+
it { should eq 'herd disable nginx' }
|
12
|
+
end
|
13
|
+
|
14
|
+
describe get_command(:start_service, 'nginx') do
|
15
|
+
it { should eq 'herd start nginx' }
|
16
|
+
end
|
17
|
+
|
18
|
+
describe get_command(:stop_service, 'nginx') do
|
19
|
+
it { should eq 'herd stop nginx' }
|
20
|
+
end
|
21
|
+
|
22
|
+
describe get_command(:restart_service, 'nginx') do
|
23
|
+
it { should eq 'herd restart nginx' }
|
24
|
+
end
|
@@ -0,0 +1,15 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
require 'specinfra/helper/detect_os/guix'
|
3
|
+
|
4
|
+
describe Specinfra::Helper::DetectOs::Guix do
|
5
|
+
guix = Specinfra::Helper::DetectOs::Guix.new(:exec)
|
6
|
+
it 'Should return guix when Guix is installed.' do
|
7
|
+
allow(guix).to receive(:run_command) {
|
8
|
+
CommandResult.new(:stdout => "NAME=\"Guix System\" \nID=guix\nPRETTY_NAME=\"Guix System\" \nLOGO=guix-icon\nHOME_URL=\"https://guix.gnu.org\" \nDOCUMENTATION_URL=\"https://guix.gnu.org/en/manual\" \nSUPPORT_URL=\"https://guix.gnu.org/en/help\" \nBUG_REPORT_URL=\"https://lists.gnu.org/mailman/listinfo/bug-guix\"", :exit_status => 0)
|
9
|
+
}
|
10
|
+
expect(guix.detect).to include(
|
11
|
+
:family => 'guix',
|
12
|
+
:release => nil
|
13
|
+
)
|
14
|
+
end
|
15
|
+
end
|
@@ -0,0 +1,50 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
## Output from 'df -k'
|
4
|
+
str = <<-EOH
|
5
|
+
Filesystem 1K-blocks Used Available Use% Mounted on
|
6
|
+
none 4015168 0 4015168 0% /dev
|
7
|
+
/dev/sda3 235797392 184584640 39162064 83% /
|
8
|
+
/dev/sda1 523248 3640 519608 1% /boot/efi
|
9
|
+
tmpfs 4025296 1052 4024244 1% /dev/shm
|
10
|
+
none 4025292 44 4025248 1% /run/systemd
|
11
|
+
none 4025292 0 4025292 0% /run/user
|
12
|
+
cgroup 4025292 0 4025292 0% /sys/fs/cgroup
|
13
|
+
none 4025292 0 4025292 0% /var/cache/fontconfig
|
14
|
+
none 4025292 684 4024608 1% /var/lib/gdm
|
15
|
+
tmpfs 805056 44 805012 1% /run/user/1000
|
16
|
+
EOH
|
17
|
+
|
18
|
+
describe Specinfra::HostInventory::Filesystem do
|
19
|
+
let(:host_inventory) { nil }
|
20
|
+
describe 'Example of Guix' do
|
21
|
+
ret = Specinfra::HostInventory::Filesystem.new(host_inventory).parse(str)
|
22
|
+
example "/dev/sda3" do
|
23
|
+
expect(ret["/dev/sda3"]).to include(
|
24
|
+
"kb_available" => "39162064",
|
25
|
+
"kb_size" => "235797392",
|
26
|
+
"mount" => "/",
|
27
|
+
"percent_used" => "83%",
|
28
|
+
"kb_used" => "184584640"
|
29
|
+
)
|
30
|
+
end
|
31
|
+
example "/dev/sda1" do
|
32
|
+
expect(ret["/dev/sda1"]).to include(
|
33
|
+
"kb_available" => "519608",
|
34
|
+
"kb_size" => "523248",
|
35
|
+
"mount" => "/boot/efi",
|
36
|
+
"percent_used" => "1%",
|
37
|
+
"kb_used" => "3640"
|
38
|
+
)
|
39
|
+
end
|
40
|
+
example "cgroup" do
|
41
|
+
expect(ret["cgroup"]).to include(
|
42
|
+
"kb_available" => "4025292",
|
43
|
+
"kb_size" => "4025292",
|
44
|
+
"mount" => "/sys/fs/cgroup",
|
45
|
+
"percent_used" => "0%",
|
46
|
+
"kb_used" => "0"
|
47
|
+
)
|
48
|
+
end
|
49
|
+
end
|
50
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: specinfra
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.85.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Gosuke Miyashita
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-
|
11
|
+
date: 2023-02-18 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: net-scp
|
@@ -290,6 +290,9 @@ files:
|
|
290
290
|
- lib/specinfra/command/gentoo/base.rb
|
291
291
|
- lib/specinfra/command/gentoo/base/package.rb
|
292
292
|
- lib/specinfra/command/gentoo/base/service.rb
|
293
|
+
- lib/specinfra/command/guix.rb
|
294
|
+
- lib/specinfra/command/guix/base.rb
|
295
|
+
- lib/specinfra/command/guix/base/service.rb
|
293
296
|
- lib/specinfra/command/linux.rb
|
294
297
|
- lib/specinfra/command/linux/base.rb
|
295
298
|
- lib/specinfra/command/linux/base/bond.rb
|
@@ -468,6 +471,7 @@ files:
|
|
468
471
|
- lib/specinfra/helper/detect_os/esxi.rb
|
469
472
|
- lib/specinfra/helper/detect_os/freebsd.rb
|
470
473
|
- lib/specinfra/helper/detect_os/gentoo.rb
|
474
|
+
- lib/specinfra/helper/detect_os/guix.rb
|
471
475
|
- lib/specinfra/helper/detect_os/nixos.rb
|
472
476
|
- lib/specinfra/helper/detect_os/openbsd.rb
|
473
477
|
- lib/specinfra/helper/detect_os/photon.rb
|
@@ -557,6 +561,7 @@ files:
|
|
557
561
|
- spec/command/freebsd/interface_spec.rb
|
558
562
|
- spec/command/freebsd/package_spec.rb
|
559
563
|
- spec/command/freebsd/service_spec.rb
|
564
|
+
- spec/command/guix/service_spec.rb
|
560
565
|
- spec/command/linux/bond_spec.rb
|
561
566
|
- spec/command/linux/bridge_spec.rb
|
562
567
|
- spec/command/linux/file_spec.rb
|
@@ -600,6 +605,7 @@ files:
|
|
600
605
|
- spec/helper/detect_os/eos_spec.rb
|
601
606
|
- spec/helper/detect_os/esxi_spec.rb
|
602
607
|
- spec/helper/detect_os/freebsd_spec.rb
|
608
|
+
- spec/helper/detect_os/guix_spec.rb
|
603
609
|
- spec/helper/detect_os/openbsd_spec.rb
|
604
610
|
- spec/helper/detect_os/suse_spec.rb
|
605
611
|
- spec/helper/os_spec.rb
|
@@ -611,6 +617,7 @@ files:
|
|
611
617
|
- spec/host_inventory/darwin/filesystem_spec.rb
|
612
618
|
- spec/host_inventory/darwin/kernel_spec.rb
|
613
619
|
- spec/host_inventory/freebsd/filesystem_spec.rb
|
620
|
+
- spec/host_inventory/guix/filesystem_spec.rb
|
614
621
|
- spec/host_inventory/linux/block_device_spec.rb
|
615
622
|
- spec/host_inventory/linux/cpu_spec.rb
|
616
623
|
- spec/host_inventory/linux/filesystem_spec.rb
|
@@ -704,6 +711,7 @@ test_files:
|
|
704
711
|
- spec/command/freebsd/interface_spec.rb
|
705
712
|
- spec/command/freebsd/package_spec.rb
|
706
713
|
- spec/command/freebsd/service_spec.rb
|
714
|
+
- spec/command/guix/service_spec.rb
|
707
715
|
- spec/command/linux/bond_spec.rb
|
708
716
|
- spec/command/linux/bridge_spec.rb
|
709
717
|
- spec/command/linux/file_spec.rb
|
@@ -747,6 +755,7 @@ test_files:
|
|
747
755
|
- spec/helper/detect_os/eos_spec.rb
|
748
756
|
- spec/helper/detect_os/esxi_spec.rb
|
749
757
|
- spec/helper/detect_os/freebsd_spec.rb
|
758
|
+
- spec/helper/detect_os/guix_spec.rb
|
750
759
|
- spec/helper/detect_os/openbsd_spec.rb
|
751
760
|
- spec/helper/detect_os/suse_spec.rb
|
752
761
|
- spec/helper/os_spec.rb
|
@@ -758,6 +767,7 @@ test_files:
|
|
758
767
|
- spec/host_inventory/darwin/filesystem_spec.rb
|
759
768
|
- spec/host_inventory/darwin/kernel_spec.rb
|
760
769
|
- spec/host_inventory/freebsd/filesystem_spec.rb
|
770
|
+
- spec/host_inventory/guix/filesystem_spec.rb
|
761
771
|
- spec/host_inventory/linux/block_device_spec.rb
|
762
772
|
- spec/host_inventory/linux/cpu_spec.rb
|
763
773
|
- spec/host_inventory/linux/filesystem_spec.rb
|