class Praegustator::Setup
Public Instance Methods
create_recepie(dir)
click to toggle source
# File lib/praegustator/setup.rb, line 23 def create_recepie dir content = <<-EOF role("*")do check "basic_commands" properties :user => "root" end EOF create_file "#{dir}/test_recipe.rb",content end
create_settings(dir)
click to toggle source
# File lib/praegustator/setup.rb, line 33 def create_settings dir puts "please enter knife's location (default ~/.chef/knife.rb) : " knife_location = $stdin.gets.chomp knife_location = '~/.chef/knife.rb' if knife_location == '' content = <<-EOF spec: recipes_dir: "#{dir}/" checks_dir: "#{dir}/checks/" chef: knife_location: "#{knife_location}" #ssh: # user: "root" # pasword: nil # keys: [ "~/.ssh/id_rsa" ] report: show_summary: true show_passed: true show_failed: true EOF create_file ".praegustator.yml",content end
create_spec(dir)
click to toggle source
# File lib/praegustator/setup.rb, line 56 def create_spec dir content = <<-EOF user = property[:user] describe command('whoami') do it { should return_stdout user } end describe command('cat /etc/resolv.conf') do it { should return_stdout /8\.8\.8\.8/ } end describe command('ls /foo') do it { should return_stderr /No such file or directory/ } end EOF create_file "#{dir}/checks/basic_commands.rb",content end
init(spec_dir)
click to toggle source
# File lib/praegustator/setup.rb, line 5 def init(spec_dir) create_settings spec_dir mkdir(spec_dir) create_spec spec_dir create_recepie spec_dir end
mkdir(dir)
click to toggle source
# File lib/praegustator/setup.rb, line 12 def mkdir dir if File.exists? dir $stderr.puts "!! #{dir} already exists" else FileUtils.mkdir dir puts " + #{dir}/" FileUtils.mkdir "#{dir}/checks" puts " + #{dir}/checks" end end
Private Instance Methods
create_file(file, content)
click to toggle source
# File lib/praegustator/setup.rb, line 75 def create_file file, content if File.exists? file $stderr.puts "!! #{file} exists" else File.open("#{file}", 'w') do |f| f.puts content end puts " + #{file}" end end