specinfra 2.0.0.beta15 → 2.0.0.beta16

Sign up to get free protection for your applications and to get access to all the features.
Files changed (107) hide show
  1. checksums.yaml +4 -4
  2. data/lib/specinfra.rb +1 -1
  3. data/lib/specinfra/command/aix/base/file.rb +15 -13
  4. data/lib/specinfra/command/aix/base/group.rb +5 -3
  5. data/lib/specinfra/command/aix/base/package.rb +7 -5
  6. data/lib/specinfra/command/aix/base/port.rb +5 -3
  7. data/lib/specinfra/command/aix/base/service.rb +7 -5
  8. data/lib/specinfra/command/aix/base/user.rb +10 -8
  9. data/lib/specinfra/command/arch/base/file.rb +4 -2
  10. data/lib/specinfra/command/arch/base/package.rb +17 -15
  11. data/lib/specinfra/command/arch/base/service.rb +3 -1
  12. data/lib/specinfra/command/base.rb +70 -68
  13. data/lib/specinfra/command/base/cron.rb +8 -6
  14. data/lib/specinfra/command/base/file.rb +94 -92
  15. data/lib/specinfra/command/base/group.rb +8 -6
  16. data/lib/specinfra/command/base/host.rb +18 -16
  17. data/lib/specinfra/command/base/mail_alias.rb +5 -3
  18. data/lib/specinfra/command/base/package.rb +36 -34
  19. data/lib/specinfra/command/base/port.rb +7 -5
  20. data/lib/specinfra/command/base/process.rb +10 -9
  21. data/lib/specinfra/command/base/routing_table.rb +6 -4
  22. data/lib/specinfra/command/base/service.rb +19 -17
  23. data/lib/specinfra/command/base/user.rb +24 -22
  24. data/lib/specinfra/command/darwin/base/file.rb +35 -33
  25. data/lib/specinfra/command/darwin/base/package.rb +12 -10
  26. data/lib/specinfra/command/darwin/base/port.rb +5 -3
  27. data/lib/specinfra/command/darwin/base/service.rb +7 -5
  28. data/lib/specinfra/command/debian/base/package.rb +16 -14
  29. data/lib/specinfra/command/debian/base/service.rb +5 -3
  30. data/lib/specinfra/command/fedora/base/service.rb +7 -6
  31. data/lib/specinfra/command/fedora/v15/service.rb +3 -1
  32. data/lib/specinfra/command/freebsd/base/file.rb +8 -6
  33. data/lib/specinfra/command/freebsd/base/package.rb +13 -11
  34. data/lib/specinfra/command/freebsd/base/port.rb +5 -3
  35. data/lib/specinfra/command/freebsd/base/service.rb +4 -2
  36. data/lib/specinfra/command/freebsd/v10/package.rb +13 -11
  37. data/lib/specinfra/command/gentoo/base/package.rb +4 -2
  38. data/lib/specinfra/command/gentoo/base/service.rb +9 -7
  39. data/lib/specinfra/command/linux/base/file.rb +10 -8
  40. data/lib/specinfra/command/linux/base/interface.rb +13 -11
  41. data/lib/specinfra/command/linux/base/iptables.rb +9 -7
  42. data/lib/specinfra/command/linux/base/kernel_module.rb +4 -2
  43. data/lib/specinfra/command/linux/base/lxc_container.rb +7 -5
  44. data/lib/specinfra/command/linux/base/selinux.rb +9 -7
  45. data/lib/specinfra/command/linux/base/zfs.rb +3 -1
  46. data/lib/specinfra/command/nixos/base/package.rb +12 -10
  47. data/lib/specinfra/command/nixos/base/service.rb +3 -1
  48. data/lib/specinfra/command/openbsd/base/file.rb +31 -29
  49. data/lib/specinfra/command/openbsd/base/interface.rb +8 -13
  50. data/lib/specinfra/command/openbsd/base/mail_alias.rb +4 -2
  51. data/lib/specinfra/command/openbsd/base/package.rb +10 -8
  52. data/lib/specinfra/command/openbsd/base/port.rb +4 -2
  53. data/lib/specinfra/command/openbsd/base/service.rb +7 -5
  54. data/lib/specinfra/command/openbsd/base/user.rb +8 -6
  55. data/lib/specinfra/command/opensuse/base/service.rb +3 -1
  56. data/lib/specinfra/command/plamo/base/package.rb +7 -5
  57. data/lib/specinfra/command/plamo/base/service.rb +6 -4
  58. data/lib/specinfra/command/redhat/base/file.rb +5 -3
  59. data/lib/specinfra/command/redhat/base/package.rb +14 -12
  60. data/lib/specinfra/command/redhat/base/service.rb +4 -2
  61. data/lib/specinfra/command/redhat/base/yumrepo.rb +7 -5
  62. data/lib/specinfra/command/redhat/v5/iptables.rb +7 -5
  63. data/lib/specinfra/command/redhat/v7/service.rb +3 -1
  64. data/lib/specinfra/command/smartos/base/package.rb +10 -8
  65. data/lib/specinfra/command/smartos/base/service.rb +7 -5
  66. data/lib/specinfra/command/solaris/base/cron.rb +8 -6
  67. data/lib/specinfra/command/solaris/base/file.rb +15 -13
  68. data/lib/specinfra/command/solaris/base/group.rb +5 -3
  69. data/lib/specinfra/command/solaris/base/host.rb +7 -5
  70. data/lib/specinfra/command/solaris/base/ipfilter.rb +4 -2
  71. data/lib/specinfra/command/solaris/base/ipnat.rb +5 -3
  72. data/lib/specinfra/command/solaris/base/package.rb +7 -5
  73. data/lib/specinfra/command/solaris/base/port.rb +9 -7
  74. data/lib/specinfra/command/solaris/base/service.rb +14 -13
  75. data/lib/specinfra/command/solaris/base/user.rb +10 -8
  76. data/lib/specinfra/command/solaris/base/zfs.rb +3 -1
  77. data/lib/specinfra/command/solaris/v10/file.rb +33 -31
  78. data/lib/specinfra/command/solaris/v10/group.rb +4 -2
  79. data/lib/specinfra/command/solaris/v10/host.rb +9 -7
  80. data/lib/specinfra/command/solaris/v10/package.rb +7 -5
  81. data/lib/specinfra/command/solaris/v10/user.rb +8 -6
  82. data/lib/specinfra/command/suse/base/package.rb +14 -12
  83. data/lib/specinfra/command/suse/base/service.rb +4 -2
  84. data/lib/specinfra/command/ubuntu/base/ppa.rb +11 -9
  85. data/lib/specinfra/command/ubuntu/base/service.rb +4 -2
  86. data/lib/specinfra/command/windows/base.rb +11 -10
  87. data/lib/specinfra/command/windows/base/feature.rb +11 -9
  88. data/lib/specinfra/command/windows/base/file.rb +72 -71
  89. data/lib/specinfra/command/windows/base/group.rb +7 -5
  90. data/lib/specinfra/command/windows/base/host.rb +18 -16
  91. data/lib/specinfra/command/windows/base/hot_fix.rb +13 -11
  92. data/lib/specinfra/command/windows/base/iis_app_pool.rb +11 -9
  93. data/lib/specinfra/command/windows/base/iis_website.rb +26 -24
  94. data/lib/specinfra/command/windows/base/package.rb +7 -5
  95. data/lib/specinfra/command/windows/base/port.rb +11 -9
  96. data/lib/specinfra/command/windows/base/process.rb +5 -3
  97. data/lib/specinfra/command/windows/base/registry_key.rb +36 -35
  98. data/lib/specinfra/command/windows/base/scheduled_task.rb +6 -4
  99. data/lib/specinfra/command/windows/base/service.rb +21 -19
  100. data/lib/specinfra/command/windows/base/user.rb +16 -14
  101. data/lib/specinfra/runner.rb +1 -2
  102. data/lib/specinfra/version.rb +1 -1
  103. data/spec/command/base_spec.rb +12 -4
  104. data/spec/command/module/systemd_spec.rb +14 -4
  105. data/spec/command/redhat/interface_spec.rb +1 -1
  106. metadata +1 -2
  107. data/lib/specinfra/command/smartos/tmp.rb +0 -8
@@ -1,19 +1,20 @@
1
1
  class Specinfra::Command::Solaris::Base::Service < Specinfra::Command::Base::Service
2
- def check_is_enabled(service, level=nil)
3
- "svcs -l #{escape(service)} 2> /dev/null | egrep '^enabled *true$'"
4
- end
2
+ class << self
3
+ def check_is_enabled(service, level=nil)
4
+ "svcs -l #{escape(service)} 2> /dev/null | egrep '^enabled *true$'"
5
+ end
5
6
 
6
- def check_running(service)
7
- "svcs -l #{escape(service)} status 2> /dev/null | egrep '^state *online$'"
8
- end
7
+ def check_running(service)
8
+ "svcs -l #{escape(service)} status 2> /dev/null | egrep '^state *online$'"
9
+ end
9
10
 
10
- def check_has_property(svc, property)
11
- commands = []
12
- property.sort.each do |key, value|
13
- regexp = "^#{value}$"
14
- commands << "svcprop -p #{escape(key)} #{escape(svc)} | grep -- #{escape(regexp)}"
11
+ def check_has_property(svc, property)
12
+ commands = []
13
+ property.sort.each do |key, value|
14
+ regexp = "^#{value}$"
15
+ commands << "svcprop -p #{escape(key)} #{escape(svc)} | grep -- #{escape(regexp)}"
16
+ end
17
+ commands.join(' && ')
15
18
  end
16
- commands.join(' && ')
17
19
  end
18
-
19
20
  end
@@ -1,13 +1,15 @@
1
1
  class Specinfra::Command::Solaris::Base::User < Specinfra::Command::Base::User
2
- def check_belongs_to_group(user, group)
3
- "id -Gn #{escape(user)} | grep -- #{escape(group)}"
4
- end
2
+ class << self
3
+ def check_belongs_to_group(user, group)
4
+ "id -Gn #{escape(user)} | grep -- #{escape(group)}"
5
+ end
5
6
 
6
- def check_has_home_directory(user, path_to_home)
7
- "getent passwd #{escape(user)} | cut -f 6 -d ':' | grep -w -- #{escape(path_to_home)}"
8
- end
7
+ def check_has_home_directory(user, path_to_home)
8
+ "getent passwd #{escape(user)} | cut -f 6 -d ':' | grep -w -- #{escape(path_to_home)}"
9
+ end
9
10
 
10
- def check_has_login_shell(user, path_to_shell)
11
- "getent passwd #{escape(user)} | cut -f 7 -d ':' | grep -w -- #{escape(path_to_shell)}"
11
+ def check_has_login_shell(user, path_to_shell)
12
+ "getent passwd #{escape(user)} | cut -f 7 -d ':' | grep -w -- #{escape(path_to_shell)}"
13
+ end
12
14
  end
13
15
  end
@@ -1,5 +1,7 @@
1
1
  class Specinfra::Command::Solaris::Base::Zfs < Specinfra::Command::Base::Zfs
2
- include Specinfra::Command::Module::Zfs
2
+ class << self
3
+ include Specinfra::Command::Module::Zfs
4
+ end
3
5
  end
4
6
 
5
7
 
@@ -1,40 +1,42 @@
1
1
  class Specinfra::Command::Solaris::V10::File < Specinfra::Command::Solaris::Base::File
2
- # reference: http://perldoc.perl.org/functions/stat.html
3
- def check_has_mode(file, mode)
4
- regexp = "^#{mode}$"
5
- "perl -e 'printf \"%o\", (stat shift)[2]&07777' #{escape(file)} | grep -- #{escape(regexp)}"
6
- end
2
+ class << self
3
+ # reference: http://perldoc.perl.org/functions/stat.html
4
+ def check_has_mode(file, mode)
5
+ regexp = "^#{mode}$"
6
+ "perl -e 'printf \"%o\", (stat shift)[2]&07777' #{escape(file)} | grep -- #{escape(regexp)}"
7
+ end
7
8
 
8
- # reference: http://perldoc.perl.org/functions/stat.html
9
- # http://www.tutorialspoint.com/perl/perl_getpwuid.htm
10
- def check_is_owned_by(file, owner)
11
- regexp = "^#{owner}$"
12
- "perl -e 'printf \"%s\", getpwuid((stat(\"#{escape(file)}\"))[4])' | grep -- #{escape(regexp)}"
13
- end
9
+ # reference: http://perldoc.perl.org/functions/stat.html
10
+ # http://www.tutorialspoint.com/perl/perl_getpwuid.htm
11
+ def check_is_owned_by(file, owner)
12
+ regexp = "^#{owner}$"
13
+ "perl -e 'printf \"%s\", getpwuid((stat(\"#{escape(file)}\"))[4])' | grep -- #{escape(regexp)}"
14
+ end
14
15
 
15
- # reference: http://perldoc.perl.org/functions/stat.html
16
- # http://www.tutorialspoint.com/perl/perl_getgrgid.htm
17
- def check_is_grouped(file, group)
18
- regexp = "^#{group}$"
19
- "perl -e 'printf \"%s\", getgrgid((stat(\"#{escape(file)}\"))[5])' | grep -- #{escape(regexp)}"
20
- end
16
+ # reference: http://perldoc.perl.org/functions/stat.html
17
+ # http://www.tutorialspoint.com/perl/perl_getgrgid.htm
18
+ def check_is_grouped(file, group)
19
+ regexp = "^#{group}$"
20
+ "perl -e 'printf \"%s\", getgrgid((stat(\"#{escape(file)}\"))[5])' | grep -- #{escape(regexp)}"
21
+ end
21
22
 
22
- # reference: http://www.tutorialspoint.com/perl/perl_readlink.htm
23
- def check_is_linked_to(link, target)
24
- regexp = "^#{target}$"
25
- "perl -e 'printf \"%s\", readlink(\"#{escape(link)}\")' | grep -- #{escape(regexp)}"
26
- end
23
+ # reference: http://www.tutorialspoint.com/perl/perl_readlink.htm
24
+ def check_is_linked_to(link, target)
25
+ regexp = "^#{target}$"
26
+ "perl -e 'printf \"%s\", readlink(\"#{escape(link)}\")' | grep -- #{escape(regexp)}"
27
+ end
27
28
 
28
- def check_contain(file, expected_pattern)
29
- "grep -- #{escape(expected_pattern)} #{escape(file)}"
30
- end
29
+ def check_contain(file, expected_pattern)
30
+ "grep -- #{escape(expected_pattern)} #{escape(file)}"
31
+ end
31
32
 
32
- def check_has_md5checksum(file, expected)
33
- "digest -a md5 -v #{escape(file)} | grep -iw -- #{escape(expected)}"
34
- end
33
+ def check_has_md5checksum(file, expected)
34
+ "digest -a md5 -v #{escape(file)} | grep -iw -- #{escape(expected)}"
35
+ end
35
36
 
36
- # reference: http://perldoc.perl.org/functions/stat.html
37
- def get_mode(file)
38
- "perl -e 'printf \"%o\", (stat shift)[2]&07777' #{escape(file)}"
37
+ # reference: http://perldoc.perl.org/functions/stat.html
38
+ def get_mode(file)
39
+ "perl -e 'printf \"%o\", (stat shift)[2]&07777' #{escape(file)}"
40
+ end
39
41
  end
40
42
  end
@@ -1,5 +1,7 @@
1
1
  class Specinfra::Command::Solaris::V10::Group < Specinfra::Command::Solaris::Base::Group
2
- def check_exists(group)
3
- "getent group | grep -w -- #{escape(group)}"
2
+ class << self
3
+ def check_exists(group)
4
+ "getent group | grep -w -- #{escape(group)}"
5
+ end
4
6
  end
5
7
  end
@@ -1,11 +1,13 @@
1
1
  class Specinfra::Command::Solaris::V10::Host < Specinfra::Command::Solaris::Base::Host
2
- def check_is_reachable(host, port, proto, timeout)
3
- if port.nil?
4
- "ping -n #{escape(host)} #{escape(timeout)}"
5
- elsif proto == 'tcp'
6
- "echo 'quit' | mconnect -p #{escape(port)} #{escape(host)} > /dev/null 2>&1"
7
- else
8
- raise NotImplementedError.new
2
+ class << self
3
+ def check_is_reachable(host, port, proto, timeout)
4
+ if port.nil?
5
+ "ping -n #{escape(host)} #{escape(timeout)}"
6
+ elsif proto == 'tcp'
7
+ "echo 'quit' | mconnect -p #{escape(port)} #{escape(host)} > /dev/null 2>&1"
8
+ else
9
+ raise NotImplementedError.new
10
+ end
9
11
  end
10
12
  end
11
13
  end
@@ -1,9 +1,11 @@
1
1
  class Specinfra::Command::Solaris::V10::Package < Specinfra::Command::Solaris::Base::Package
2
- def check_is_installed(package, version=nil)
3
- cmd = "pkginfo -q #{escape(package)}"
4
- if version
5
- cmd = "#{cmd} | grep -- #{escape(version)}"
2
+ class << self
3
+ def check_is_installed(package, version=nil)
4
+ cmd = "pkginfo -q #{escape(package)}"
5
+ if version
6
+ cmd = "#{cmd} | grep -- #{escape(version)}"
7
+ end
8
+ cmd
6
9
  end
7
- cmd
8
10
  end
9
11
  end
@@ -1,11 +1,13 @@
1
1
  class Specinfra::Command::Solaris::V10::User < Specinfra::Command::Solaris::Base::User
2
- def check_belongs_to_group(user, group)
3
- "id -ap #{escape(user)} | grep -- #{escape(group)}"
4
- end
2
+ class << self
3
+ def check_belongs_to_group(user, group)
4
+ "id -ap #{escape(user)} | grep -- #{escape(group)}"
5
+ end
5
6
 
6
- def check_has_authorized_key(user, key)
7
- key.sub!(/\s+\S*$/, '') if key.match(/^\S+\s+\S+\s+\S*$/)
8
- "grep -- #{escape(key)} ~#{escape(user)}/.ssh/authorized_keys"
7
+ def check_has_authorized_key(user, key)
8
+ key.sub!(/\s+\S*$/, '') if key.match(/^\S+\s+\S+\s+\S*$/)
9
+ "grep -- #{escape(key)} ~#{escape(user)}/.ssh/authorized_keys"
10
+ end
9
11
  end
10
12
  end
11
13
 
@@ -1,19 +1,21 @@
1
1
  class Specinfra::Command::Suse::Base::Package < Specinfra::Command::Linux::Base::Package
2
- def check_is_installed(package,version=nil)
3
- cmd = "rpm -q #{escape(package)}"
4
- if version
5
- cmd = "#{cmd} | grep -w -- #{escape(version)}"
2
+ class << self
3
+ def check_is_installed(package,version=nil)
4
+ cmd = "rpm -q #{escape(package)}"
5
+ if version
6
+ cmd = "#{cmd} | grep -w -- #{escape(version)}"
7
+ end
8
+ cmd
6
9
  end
7
- cmd
8
- end
9
10
 
10
- alias :check_is_installed_by_rpm :check_is_installed
11
+ alias :check_is_installed_by_rpm :check_is_installed
11
12
 
12
- def install(package)
13
- cmd = "zypper -n install #{package}"
14
- end
13
+ def install(package)
14
+ cmd = "zypper -n install #{package}"
15
+ end
15
16
 
16
- def get_version(package, opts=nil)
17
- "rpm -qi #{package} | grep Version | awk '{print $3}'"
17
+ def get_version(package, opts=nil)
18
+ "rpm -qi #{package} | grep Version | awk '{print $3}'"
19
+ end
18
20
  end
19
21
  end
@@ -1,6 +1,8 @@
1
1
  class Specinfra::Command::Suse::Base::Service < Specinfra::Command::Linux::Base::Service
2
- def check_is_enabled(service, level=3)
3
- "chkconfig --list #{escape(service)} | grep #{level}:on"
2
+ class << self
3
+ def check_is_enabled(service, level=3)
4
+ "chkconfig --list #{escape(service)} | grep #{level}:on"
5
+ end
4
6
  end
5
7
  end
6
8
 
@@ -1,15 +1,17 @@
1
1
  class Specinfra::Command::Ubuntu::Base::Ppa < Specinfra::Command::Debian::Base::Ppa
2
- def check_exists(package)
3
- %Q{find /etc/apt/ -name \*.list | xargs grep -o "deb http://ppa.launchpad.net/#{to_apt_line_uri(package)}"}
4
- end
2
+ class << self
3
+ def check_exists(package)
4
+ %Q{find /etc/apt/ -name \*.list | xargs grep -o "deb http://ppa.launchpad.net/#{to_apt_line_uri(package)}"}
5
+ end
5
6
 
6
- def check_is_enabled(package)
7
- %Q{find /etc/apt/ -name \*.list | xargs grep -o "^deb http://ppa.launchpad.net/#{to_apt_line_uri(package)}"}
8
- end
7
+ def check_is_enabled(package)
8
+ %Q{find /etc/apt/ -name \*.list | xargs grep -o "^deb http://ppa.launchpad.net/#{to_apt_line_uri(package)}"}
9
+ end
9
10
 
10
- private
11
+ private
11
12
 
12
- def to_apt_line_uri(repo)
13
- escape(repo.gsub(/^ppa:/,''))
13
+ def to_apt_line_uri(repo)
14
+ escape(repo.gsub(/^ppa:/,''))
15
+ end
14
16
  end
15
17
  end
@@ -1,5 +1,7 @@
1
1
  class Specinfra::Command::Ubuntu::Base::Service < Specinfra::Command::Debian::Base::Service
2
- def check_is_running(service)
3
- "service #{escape(service)} status && service #{escape(service)} status | grep 'running'"
2
+ class << self
3
+ def check_is_running(service)
4
+ "service #{escape(service)} status && service #{escape(service)} status | grep 'running'"
5
+ end
4
6
  end
5
7
  end
@@ -1,14 +1,15 @@
1
1
  class Specinfra::Command::Windows::Base
2
- def self.create
3
- self.new
4
- end
2
+ class << self
3
+ def create
4
+ self
5
+ end
5
6
 
6
- private
7
- def windows_account account
8
- match = /((.+)\\)?(.+)/.match account
9
- domain = match[2]
10
- name = match[3]
11
- [name, domain]
7
+ private
8
+ def windows_account account
9
+ match = /((.+)\\)?(.+)/.match account
10
+ domain = match[2]
11
+ name = match[3]
12
+ [name, domain]
13
+ end
12
14
  end
13
-
14
15
  end
@@ -1,14 +1,16 @@
1
1
  class Specinfra::Command::Windows::Base::Feature < Specinfra::Command::Windows::Base
2
- def check_is_enabled(name,provider)
3
- if provider.nil?
4
- cmd = "@(ListWindowsFeatures -feature #{name}).count -gt 0"
5
- else
6
- cmd = "@(ListWindowsFeatures -feature #{name} -provider #{provider}).count -gt 0"
7
- end
2
+ class << self
3
+ def check_is_enabled(name,provider)
4
+ if provider.nil?
5
+ cmd = "@(ListWindowsFeatures -feature #{name}).count -gt 0"
6
+ else
7
+ cmd = "@(ListWindowsFeatures -feature #{name} -provider #{provider}).count -gt 0"
8
+ end
8
9
 
9
- Backend::PowerShell::Command.new do
10
- using 'list_windows_features.ps1'
11
- exec cmd
10
+ Backend::PowerShell::Command.new do
11
+ using 'list_windows_features.ps1'
12
+ exec cmd
13
+ end
12
14
  end
13
15
  end
14
16
  end
@@ -1,98 +1,99 @@
1
1
  class Specinfra::Command::Windows::Base::File < Specinfra::Command::Windows::Base
2
- def check_is_file(file)
3
- cmd = item_has_attribute file, 'Archive'
4
- Backend::PowerShell::Command.new do
5
- exec cmd
2
+ class << self
3
+ def check_is_file(file)
4
+ cmd = item_has_attribute file, 'Archive'
5
+ Backend::PowerShell::Command.new do
6
+ exec cmd
7
+ end
6
8
  end
7
- end
8
9
 
9
- def check_is_directory(dir)
10
- cmd = item_has_attribute dir, 'Directory'
11
- Backend::PowerShell::Command.new do
12
- exec cmd
10
+ def check_is_directory(dir)
11
+ cmd = item_has_attribute dir, 'Directory'
12
+ Backend::PowerShell::Command.new do
13
+ exec cmd
14
+ end
13
15
  end
14
- end
15
16
 
16
- def check_is_hidden(file)
17
- cmd = item_has_attribute file, 'Hidden'
18
- Backend::PowerShell::Command.new do
19
- exec cmd
17
+ def check_is_hidden(file)
18
+ cmd = item_has_attribute file, 'Hidden'
19
+ Backend::PowerShell::Command.new do
20
+ exec cmd
21
+ end
20
22
  end
21
- end
22
23
 
23
- def check_is_readonly(file)
24
- cmd = item_has_attribute file, 'ReadOnly'
25
- Backend::PowerShell::Command.new do
26
- exec cmd
24
+ def check_is_readonly(file)
25
+ cmd = item_has_attribute file, 'ReadOnly'
26
+ Backend::PowerShell::Command.new do
27
+ exec cmd
28
+ end
27
29
  end
28
- end
29
30
 
30
- def check_is_system(file)
31
- cmd = item_has_attribute file, 'System'
32
- Backend::PowerShell::Command.new do
33
- exec cmd
31
+ def check_is_system(file)
32
+ cmd = item_has_attribute file, 'System'
33
+ Backend::PowerShell::Command.new do
34
+ exec cmd
35
+ end
34
36
  end
35
- end
36
37
 
37
- def get_content(file)
38
- "[Io.File]::ReadAllText('#{file}')"
39
- end
38
+ def get_content(file)
39
+ "[Io.File]::ReadAllText('#{file}')"
40
+ end
40
41
 
41
- def check_is_accessible_by_user(file, user, access)
42
- case access
43
- when 'r'
44
- check_is_readable(file, user)
45
- when 'w'
46
- check_is_writable(file, user)
47
- when 'x'
48
- check_is_executable(file, user)
42
+ def check_is_accessible_by_user(file, user, access)
43
+ case access
44
+ when 'r'
45
+ check_is_readable(file, user)
46
+ when 'w'
47
+ check_is_writable(file, user)
48
+ when 'x'
49
+ check_is_executable(file, user)
50
+ end
49
51
  end
50
- end
51
52
 
52
- def check_is_readable(file, by_whom)
53
- Backend::PowerShell::Command.new do
54
- using 'check_file_access_rules.ps1'
55
- exec "CheckFileAccessRules -path '#{file}' -identity '#{get_identity by_whom}' -rules @('FullControl', 'Modify', 'ReadAndExecute', 'Read', 'ListDirectory')"
53
+ def check_is_readable(file, by_whom)
54
+ Backend::PowerShell::Command.new do
55
+ using 'check_file_access_rules.ps1'
56
+ exec "CheckFileAccessRules -path '#{file}' -identity '#{get_identity by_whom}' -rules @('FullControl', 'Modify', 'ReadAndExecute', 'Read', 'ListDirectory')"
57
+ end
56
58
  end
57
- end
58
59
 
59
- def check_is_writable(file, by_whom)
60
- Backend::PowerShell::Command.new do
61
- using 'check_file_access_rules.ps1'
62
- exec "CheckFileAccessRules -path '#{file}' -identity '#{get_identity by_whom}' -rules @('FullControl', 'Modify', 'Write')"
60
+ def check_is_writable(file, by_whom)
61
+ Backend::PowerShell::Command.new do
62
+ using 'check_file_access_rules.ps1'
63
+ exec "CheckFileAccessRules -path '#{file}' -identity '#{get_identity by_whom}' -rules @('FullControl', 'Modify', 'Write')"
64
+ end
63
65
  end
64
- end
65
66
 
66
- def check_is_executable(file, by_whom)
67
- Backend::PowerShell::Command.new do
68
- using 'check_file_access_rules.ps1'
69
- exec "CheckFileAccessRules -path '#{file}' -identity '#{get_identity by_whom}' -rules @('FullControl', 'Modify', 'ReadAndExecute', 'ExecuteFile')"
67
+ def check_is_executable(file, by_whom)
68
+ Backend::PowerShell::Command.new do
69
+ using 'check_file_access_rules.ps1'
70
+ exec "CheckFileAccessRules -path '#{file}' -identity '#{get_identity by_whom}' -rules @('FullControl', 'Modify', 'ReadAndExecute', 'ExecuteFile')"
71
+ end
70
72
  end
71
- end
72
73
 
73
- def check_contains(file, pattern)
74
- Backend::PowerShell::Command.new do
75
- exec "[Io.File]::ReadAllText('#{file}') -match '#{convert_regexp(pattern)}'"
74
+ def check_contains(file, pattern)
75
+ Backend::PowerShell::Command.new do
76
+ exec "[Io.File]::ReadAllText('#{file}') -match '#{convert_regexp(pattern)}'"
77
+ end
76
78
  end
77
- end
78
79
 
79
- def check_contains_within file, pattern, from=nil, to=nil
80
- from ||= '^'
81
- to ||= '$'
82
- Backend::PowerShell::Command.new do
83
- using 'crop_text.ps1'
84
- exec %Q[(CropText -text ([Io.File]::ReadAllText('#{file}')) -fromPattern '#{convert_regexp(from)}' -toPattern '#{convert_regexp(to)}') -match '#{pattern}']
80
+ def check_contains_within file, pattern, from=nil, to=nil
81
+ from ||= '^'
82
+ to ||= '$'
83
+ Backend::PowerShell::Command.new do
84
+ using 'crop_text.ps1'
85
+ exec %Q[(CropText -text ([Io.File]::ReadAllText('#{file}')) -fromPattern '#{convert_regexp(from)}' -toPattern '#{convert_regexp(to)}') -match '#{pattern}']
86
+ end
85
87
  end
86
- end
87
88
 
88
- def check_has_version(name,version)
89
- cmd = "((Get-Command '#{name}').FileVersionInfo.ProductVersion -eq '#{version}') -or ((Get-Command '#{name}').FileVersionInfo.FileVersion -eq '#{version}')"
90
- Backend::PowerShell::Command.new { exec cmd }
91
- end
89
+ def check_has_version(name,version)
90
+ cmd = "((Get-Command '#{name}').FileVersionInfo.ProductVersion -eq '#{version}') -or ((Get-Command '#{name}').FileVersionInfo.FileVersion -eq '#{version}')"
91
+ Backend::PowerShell::Command.new { exec cmd }
92
+ end
92
93
 
93
- private
94
- def item_has_attribute item, attribute
95
- "((Get-Item -Path '#{item}' -Force).attributes.ToString() -Split ', ') -contains '#{attribute}'"
94
+ private
95
+ def item_has_attribute item, attribute
96
+ "((Get-Item -Path '#{item}' -Force).attributes.ToString() -Split ', ') -contains '#{attribute}'"
97
+ end
96
98
  end
97
-
98
99
  end