lib/specinfra/command/base/file.rb in specinfra-2.0.0.beta15 vs lib/specinfra/command/base/file.rb in specinfra-2.0.0.beta16
- old
+ new
@@ -1,95 +1,97 @@
class Specinfra::Command::Base::File < Specinfra::Command::Base
- def check_is_file(file)
- "test -f #{escape(file)}"
- end
+ class << self
+ def check_is_file(file)
+ "test -f #{escape(file)}"
+ end
- def check_is_directory(directory)
- "test -d #{escape(directory)}"
- end
+ def check_is_directory(directory)
+ "test -d #{escape(directory)}"
+ end
- def check_is_socket(file)
- "test -S #{escape(file)}"
- end
+ def check_is_socket(file)
+ "test -S #{escape(file)}"
+ end
- def check_contains(file, expected_pattern)
- "#{check_file_contains_with_regexp(file, expected_pattern)} || #{check_file_contains_with_fixed_strings(file, expected_pattern)}"
- end
+ def check_contains(file, expected_pattern)
+ "#{check_file_contains_with_regexp(file, expected_pattern)} || #{check_file_contains_with_fixed_strings(file, expected_pattern)}"
+ end
- def check_is_grouped(file, group)
- regexp = "^#{group}$"
- "stat -c %G #{escape(file)} | grep -- #{escape(regexp)}"
- end
+ def check_is_grouped(file, group)
+ regexp = "^#{group}$"
+ "stat -c %G #{escape(file)} | grep -- #{escape(regexp)}"
+ end
- def check_is_owned_by(file, owner)
- regexp = "^#{owner}$"
- "stat -c %U #{escape(file)} | grep -- #{escape(regexp)}"
- end
+ def check_is_owned_by(file, owner)
+ regexp = "^#{owner}$"
+ "stat -c %U #{escape(file)} | grep -- #{escape(regexp)}"
+ end
- def check_has_mode(file, mode)
- regexp = "^#{mode}$"
- "stat -c %a #{escape(file)} | grep -- #{escape(regexp)}"
- end
+ def check_has_mode(file, mode)
+ regexp = "^#{mode}$"
+ "stat -c %a #{escape(file)} | grep -- #{escape(regexp)}"
+ end
- def check_contains_within(file, expected_pattern, from=nil, to=nil)
- from ||= '1'
- to ||= '$'
- sed = "sed -n #{escape(from)},#{escape(to)}p #{escape(file)}"
- checker_with_regexp = check_file_contains_with_regexp("-", expected_pattern)
- checker_with_fixed = check_file_contains_with_fixed_strings("-", expected_pattern)
- "#{sed} | #{checker_with_regexp} || #{sed} | #{checker_with_fixed}"
- end
+ def check_contains_within(file, expected_pattern, from=nil, to=nil)
+ from ||= '1'
+ to ||= '$'
+ sed = "sed -n #{escape(from)},#{escape(to)}p #{escape(file)}"
+ checker_with_regexp = check_file_contains_with_regexp("-", expected_pattern)
+ checker_with_fixed = check_file_contains_with_fixed_strings("-", expected_pattern)
+ "#{sed} | #{checker_with_regexp} || #{sed} | #{checker_with_fixed}"
+ end
- def check_contains_lines(file, expected_lines, from=nil, to=nil)
- require 'digest/md5'
- from ||= '1'
- to ||= '$'
- sed = "sed -n #{escape(from)},#{escape(to)}p #{escape(file)}"
- head_line = expected_lines.first.chomp
- lines_checksum = Digest::MD5.hexdigest(expected_lines.map(&:chomp).join("\n") + "\n")
- afterwards_length = expected_lines.length - 1
- "#{sed} | grep -A #{escape(afterwards_length)} -F -- #{escape(head_line)} | md5sum | grep -qiw -- #{escape(lines_checksum)}"
- end
+ def check_contains_lines(file, expected_lines, from=nil, to=nil)
+ require 'digest/md5'
+ from ||= '1'
+ to ||= '$'
+ sed = "sed -n #{escape(from)},#{escape(to)}p #{escape(file)}"
+ head_line = expected_lines.first.chomp
+ lines_checksum = Digest::MD5.hexdigest(expected_lines.map(&:chomp).join("\n") + "\n")
+ afterwards_length = expected_lines.length - 1
+ "#{sed} | grep -A #{escape(afterwards_length)} -F -- #{escape(head_line)} | md5sum | grep -qiw -- #{escape(lines_checksum)}"
+ end
- def check_contains_with_regexp(file, expected_pattern)
- "grep -q -- #{escape(expected_pattern)} #{escape(file)}"
- end
+ def check_contains_with_regexp(file, expected_pattern)
+ "grep -q -- #{escape(expected_pattern)} #{escape(file)}"
+ end
- def check_contains_with_fixed_strings(file, expected_pattern)
- "grep -qF -- #{escape(expected_pattern)} #{escape(file)}"
- end
+ def check_contains_with_fixed_strings(file, expected_pattern)
+ "grep -qF -- #{escape(expected_pattern)} #{escape(file)}"
+ end
- def check_has_md5checksum(file, expected)
- regexp = "^#{expected}"
- "md5sum #{escape(file)} | grep -iw -- #{escape(regexp)}"
- end
+ def check_has_md5checksum(file, expected)
+ regexp = "^#{expected}"
+ "md5sum #{escape(file)} | grep -iw -- #{escape(regexp)}"
+ end
- def check_has_sha256checksum(file, expected)
- regexp = "^#{expected}"
- "sha256sum #{escape(file)} | grep -iw -- #{escape(regexp)}"
- end
+ def check_has_sha256checksum(file, expected)
+ regexp = "^#{expected}"
+ "sha256sum #{escape(file)} | grep -iw -- #{escape(regexp)}"
+ end
- def get_content(file)
- "cat #{file} 2> /dev/null || echo -n"
- end
+ def get_content(file)
+ "cat #{file} 2> /dev/null || echo -n"
+ end
- def check_is_mounted(path)
- regexp = "on #{path}"
- "mount | grep -w -- #{escape(regexp)}"
- end
+ def check_is_mounted(path)
+ regexp = "on #{path}"
+ "mount | grep -w -- #{escape(regexp)}"
+ end
- def get_mode(file)
- "stat -c %a #{escape(file)}"
- end
+ def get_mode(file)
+ "stat -c %a #{escape(file)}"
+ end
- def check_is_linked_to(link, target)
- "stat -c %N #{escape(link)} | egrep -e \"-> .#{escape(target)}.\""
- end
+ def check_is_linked_to(link, target)
+ "stat -c %N #{escape(link)} | egrep -e \"-> .#{escape(target)}.\""
+ end
- def get_mtime(file)
- "stat -c %Y #{escape(file)}"
- end
+ def get_mtime(file)
+ "stat -c %Y #{escape(file)}"
+ end
- def get_size(file)
- "stat -c %s #{escape(file)}"
+ def get_size(file)
+ "stat -c %s #{escape(file)}"
+ end
end
end