ridley 0.12.4 → 1.0.0.rc1
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.
- data/Gemfile +1 -1
 - data/lib/ridley.rb +3 -3
 - data/lib/ridley/bootstrap_context.rb +100 -0
 - data/lib/ridley/bootstrap_context/unix.rb +74 -0
 - data/lib/ridley/bootstrap_context/windows.rb +120 -0
 - data/lib/ridley/chef_objects/node_object.rb +8 -5
 - data/lib/ridley/host_commander.rb +207 -0
 - data/lib/ridley/host_connector.rb +49 -87
 - data/lib/ridley/host_connector/ssh.rb +153 -39
 - data/lib/ridley/host_connector/winrm.rb +164 -39
 - data/lib/ridley/resources/node_resource.rb +52 -56
 - data/lib/ridley/version.rb +1 -1
 - data/ridley.gemspec +0 -2
 - data/spec/spec_helper.rb +4 -4
 - data/spec/support/chef_server.rb +9 -3
 - data/spec/unit/ridley/{bootstrap_bindings/unix_template_binding_spec.rb → bootstrap_context/unix_spec.rb} +2 -2
 - data/spec/unit/ridley/{bootstrap_bindings/windows_template_binding_spec.rb → bootstrap_context/windows_spec.rb} +2 -2
 - data/spec/unit/ridley/{mixin/bootstrap_binding_spec.rb → bootstrap_context_spec.rb} +2 -6
 - data/spec/unit/ridley/host_commander_spec.rb +208 -0
 - data/spec/unit/ridley/host_connector/ssh_spec.rb +37 -31
 - data/spec/unit/ridley/host_connector/winrm_spec.rb +124 -31
 - data/spec/unit/ridley/host_connector_spec.rb +23 -147
 - data/spec/unit/ridley/resources/node_resource_spec.rb +55 -115
 - metadata +17 -66
 - data/lib/ridley/bootstrap_bindings.rb +0 -3
 - data/lib/ridley/bootstrap_bindings/unix_template_binding.rb +0 -108
 - data/lib/ridley/bootstrap_bindings/windows_template_binding.rb +0 -163
 - data/lib/ridley/bootstrapper.rb +0 -89
 - data/lib/ridley/bootstrapper/context.rb +0 -81
 - data/lib/ridley/host_connector/response_set.rb +0 -98
 - data/lib/ridley/host_connector/ssh/worker.rb +0 -135
 - data/lib/ridley/host_connector/winrm/worker.rb +0 -159
 - data/lib/ridley/log.rb +0 -10
 - data/lib/ridley/mixin/bootstrap_binding.rb +0 -77
 - data/spec/unit/ridley/bootstrapper/context_spec.rb +0 -45
 - data/spec/unit/ridley/bootstrapper_spec.rb +0 -96
 - data/spec/unit/ridley/host_connector/response_set_spec.rb +0 -112
 - data/spec/unit/ridley/host_connector/ssh/worker_spec.rb +0 -57
 - data/spec/unit/ridley/host_connector/winrm/worker_spec.rb +0 -139
 
| 
         @@ -3,163 +3,103 @@ require 'spec_helper' 
     | 
|
| 
       3 
3 
     | 
    
         
             
            describe Ridley::NodeResource do
         
     | 
| 
       4 
4 
     | 
    
         
             
              let(:host) { "33.33.33.10" }
         
     | 
| 
       5 
5 
     | 
    
         
             
              let(:worker) { double('worker', alive?: true, terminate: nil) }
         
     | 
| 
      
 6 
     | 
    
         
            +
              let(:host_commander) { double('host-commander') }
         
     | 
| 
       6 
7 
     | 
    
         
             
              let(:options) do
         
     | 
| 
       7 
8 
     | 
    
         
             
                {
         
     | 
| 
       8 
     | 
    
         
            -
                  server_url:  
     | 
| 
       9 
     | 
    
         
            -
                  validator_path:  
     | 
| 
       10 
     | 
    
         
            -
                  validator_client:  
     | 
| 
       11 
     | 
    
         
            -
                  encrypted_data_bag_secret:  
     | 
| 
       12 
     | 
    
         
            -
                  ssh:  
     | 
| 
       13 
     | 
    
         
            -
             
     | 
| 
       14 
     | 
    
         
            -
             
     | 
| 
       15 
     | 
    
         
            -
                  },
         
     | 
| 
       16 
     | 
    
         
            -
                  winrm: {
         
     | 
| 
       17 
     | 
    
         
            -
                    user: "Administrator",
         
     | 
| 
       18 
     | 
    
         
            -
                    password: "secret"
         
     | 
| 
       19 
     | 
    
         
            -
                  },
         
     | 
| 
       20 
     | 
    
         
            -
                  chef_version: "11.4.0"
         
     | 
| 
      
 9 
     | 
    
         
            +
                  server_url: double('server_url'),
         
     | 
| 
      
 10 
     | 
    
         
            +
                  validator_path: double('validator_path'),
         
     | 
| 
      
 11 
     | 
    
         
            +
                  validator_client: double('validator_client'),
         
     | 
| 
      
 12 
     | 
    
         
            +
                  encrypted_data_bag_secret: double('encrypted_data_bag_secret'),
         
     | 
| 
      
 13 
     | 
    
         
            +
                  ssh: double('ssh'),
         
     | 
| 
      
 14 
     | 
    
         
            +
                  winrm: double('winrm'),
         
     | 
| 
      
 15 
     | 
    
         
            +
                  chef_version: double('chef_version')
         
     | 
| 
       21 
16 
     | 
    
         
             
                }
         
     | 
| 
       22 
17 
     | 
    
         
             
              end
         
     | 
| 
       23 
     | 
    
         
            -
              let(:instance)  
     | 
| 
      
 18 
     | 
    
         
            +
              let(:instance) do
         
     | 
| 
      
 19 
     | 
    
         
            +
                inst = described_class.new(double, options)
         
     | 
| 
      
 20 
     | 
    
         
            +
                inst.stub(connection: chef_zero_connection, host_commander: host_commander)
         
     | 
| 
      
 21 
     | 
    
         
            +
                inst
         
     | 
| 
      
 22 
     | 
    
         
            +
              end
         
     | 
| 
       24 
23 
     | 
    
         | 
| 
       25 
24 
     | 
    
         
             
              describe "#bootstrap" do
         
     | 
| 
       26 
     | 
    
         
            -
                 
     | 
| 
       27 
     | 
    
         
            -
             
     | 
| 
       28 
     | 
    
         
            -
                   
     | 
| 
       29 
     | 
    
         
            -
                    validator_path: fixtures_path.join("reset.pem").to_s,
         
     | 
| 
       30 
     | 
    
         
            -
                    encrypted_data_bag_secret: File.read(fixtures_path.join("reset.pem"))
         
     | 
| 
       31 
     | 
    
         
            -
                  }
         
     | 
| 
      
 25 
     | 
    
         
            +
                it "sends the message #bootstrap to the instance's host_commander" do
         
     | 
| 
      
 26 
     | 
    
         
            +
                  host_commander.should_receive(:bootstrap).with(host, options)
         
     | 
| 
      
 27 
     | 
    
         
            +
                  instance.bootstrap(host)
         
     | 
| 
       32 
28 
     | 
    
         
             
                end
         
     | 
| 
       33 
     | 
    
         
            -
                let(:bootstrapper) { double('bootstrapper', run: nil) }
         
     | 
| 
       34 
     | 
    
         
            -
                subject { instance }
         
     | 
| 
       35 
     | 
    
         
            -
                before { Ridley::Bootstrapper.should_receive(:new).with(hosts, anything).and_return(bootstrapper) }
         
     | 
| 
       36 
     | 
    
         
            -
             
     | 
| 
       37 
     | 
    
         
            -
                it "runs the Bootstrapper" do
         
     | 
| 
       38 
     | 
    
         
            -
                  bootstrapper.should_receive(:run)
         
     | 
| 
       39 
29 
     | 
    
         | 
| 
       40 
     | 
    
         
            -
             
     | 
| 
      
 30 
     | 
    
         
            +
                it "passes pre-configured options to #bootstrap" do
         
     | 
| 
      
 31 
     | 
    
         
            +
                  host_commander.should_receive(:bootstrap).with(host, options)
         
     | 
| 
      
 32 
     | 
    
         
            +
                  instance.bootstrap(host)
         
     | 
| 
       41 
33 
     | 
    
         
             
                end
         
     | 
| 
       42 
34 
     | 
    
         
             
              end
         
     | 
| 
       43 
35 
     | 
    
         | 
| 
       44 
36 
     | 
    
         
             
              describe "#chef_run" do
         
     | 
| 
       45 
     | 
    
         
            -
                 
     | 
| 
       46 
     | 
    
         
            -
             
     | 
| 
       47 
     | 
    
         
            -
             
     | 
| 
       48 
     | 
    
         
            -
             
     | 
| 
       49 
     | 
    
         
            -
                before do
         
     | 
| 
       50 
     | 
    
         
            -
                  Ridley::HostConnector.stub(:new).and_return(worker)
         
     | 
| 
       51 
     | 
    
         
            -
                  worker.stub(:chef_client).and_return(response)
         
     | 
| 
       52 
     | 
    
         
            -
                end
         
     | 
| 
       53 
     | 
    
         
            -
             
     | 
| 
       54 
     | 
    
         
            -
                it { should eql(response) }
         
     | 
| 
       55 
     | 
    
         
            -
             
     | 
| 
       56 
     | 
    
         
            -
                context "when it executes unsuccessfully" do
         
     | 
| 
       57 
     | 
    
         
            -
                  let(:response) { [ :error, double('response', stderr: 'failure_message') ] }
         
     | 
| 
       58 
     | 
    
         
            -
             
     | 
| 
       59 
     | 
    
         
            -
                  it { should eql(response) }
         
     | 
| 
       60 
     | 
    
         
            -
                end
         
     | 
| 
       61 
     | 
    
         
            -
             
     | 
| 
       62 
     | 
    
         
            -
                it "terminates the worker" do
         
     | 
| 
       63 
     | 
    
         
            -
                  worker.should_receive(:terminate)
         
     | 
| 
       64 
     | 
    
         
            -
                  chef_run
         
     | 
| 
      
 37 
     | 
    
         
            +
                it "sends the message #chef_client to the instance's host_commander" do
         
     | 
| 
      
 38 
     | 
    
         
            +
                  host_commander.should_receive(:chef_client).with(host, ssh: instance.ssh, winrm: instance.winrm)
         
     | 
| 
      
 39 
     | 
    
         
            +
                  instance.chef_run(host)
         
     | 
| 
       65 
40 
     | 
    
         
             
                end
         
     | 
| 
       66 
41 
     | 
    
         
             
              end
         
     | 
| 
       67 
42 
     | 
    
         | 
| 
       68 
43 
     | 
    
         
             
              describe "#put_secret" do
         
     | 
| 
       69 
     | 
    
         
            -
                let(: 
     | 
| 
       70 
     | 
    
         
            -
                let(:response) { [ :ok, double('response', stdout: 'success_message') ] }
         
     | 
| 
       71 
     | 
    
         
            -
                subject { put_secret }
         
     | 
| 
       72 
     | 
    
         
            -
             
     | 
| 
       73 
     | 
    
         
            -
                before do
         
     | 
| 
       74 
     | 
    
         
            -
                  Ridley::HostConnector.stub(:new).and_return(worker)
         
     | 
| 
       75 
     | 
    
         
            -
                  worker.stub(:put_secret).and_return(response)
         
     | 
| 
       76 
     | 
    
         
            -
                end
         
     | 
| 
       77 
     | 
    
         
            -
             
     | 
| 
       78 
     | 
    
         
            -
                it { should eql(response) }
         
     | 
| 
       79 
     | 
    
         
            -
             
     | 
| 
       80 
     | 
    
         
            -
                context "when it executes unsuccessfully" do
         
     | 
| 
       81 
     | 
    
         
            -
                  let(:response) { [ :error, double('response', stderr: 'failure_message') ] }
         
     | 
| 
       82 
     | 
    
         
            -
             
     | 
| 
       83 
     | 
    
         
            -
                  it { should eql(response) }
         
     | 
| 
       84 
     | 
    
         
            -
                end
         
     | 
| 
      
 44 
     | 
    
         
            +
                let(:secret) { options[:encrypted_data_bag_secret] }
         
     | 
| 
       85 
45 
     | 
    
         | 
| 
       86 
     | 
    
         
            -
                it " 
     | 
| 
       87 
     | 
    
         
            -
                   
     | 
| 
       88 
     | 
    
         
            -
                  put_secret
         
     | 
| 
      
 46 
     | 
    
         
            +
                it "sends the message #put_secret to the instance's host_commander" do
         
     | 
| 
      
 47 
     | 
    
         
            +
                  host_commander.should_receive(:put_secret).with(host, secret, options.slice(:ssh, :winrm))
         
     | 
| 
      
 48 
     | 
    
         
            +
                  instance.put_secret(host)
         
     | 
| 
       89 
49 
     | 
    
         
             
                end
         
     | 
| 
       90 
50 
     | 
    
         
             
              end
         
     | 
| 
       91 
51 
     | 
    
         | 
| 
       92 
52 
     | 
    
         
             
              describe "#ruby_script" do
         
     | 
| 
       93 
     | 
    
         
            -
                let(:ruby_script) { instance.ruby_script(host, command_lines) }
         
     | 
| 
       94 
     | 
    
         
            -
                let(:response) { [:ok, double('response', stdout: 'success_message')] }
         
     | 
| 
       95 
53 
     | 
    
         
             
                let(:command_lines) { ["puts 'hello'", "puts 'there'"] }
         
     | 
| 
       96 
     | 
    
         
            -
                subject { ruby_script }
         
     | 
| 
       97 
54 
     | 
    
         | 
| 
       98 
     | 
    
         
            -
                 
     | 
| 
       99 
     | 
    
         
            -
                   
     | 
| 
       100 
     | 
    
         
            -
                   
     | 
| 
       101 
     | 
    
         
            -
                end
         
     | 
| 
       102 
     | 
    
         
            -
             
     | 
| 
       103 
     | 
    
         
            -
                it { should eq(response) }
         
     | 
| 
       104 
     | 
    
         
            -
             
     | 
| 
       105 
     | 
    
         
            -
                context "when it executes unsuccessfully" do
         
     | 
| 
       106 
     | 
    
         
            -
                  let(:response) { [:error, double('response', stderr: 'failure_message')] }
         
     | 
| 
       107 
     | 
    
         
            -
             
     | 
| 
       108 
     | 
    
         
            -
                  it { should eq(response) }
         
     | 
| 
       109 
     | 
    
         
            -
                end
         
     | 
| 
       110 
     | 
    
         
            -
             
     | 
| 
       111 
     | 
    
         
            -
                it "terminates the worker" do
         
     | 
| 
       112 
     | 
    
         
            -
                  worker.should_receive(:terminate)
         
     | 
| 
       113 
     | 
    
         
            -
                  ruby_script
         
     | 
| 
      
 55 
     | 
    
         
            +
                it "sends the message #ruby_script to the instance's host_commander" do
         
     | 
| 
      
 56 
     | 
    
         
            +
                  host_commander.should_receive(:ruby_script).with(host, command_lines, ssh: instance.ssh, winrm: instance.winrm)
         
     | 
| 
      
 57 
     | 
    
         
            +
                  instance.ruby_script(host, command_lines)
         
     | 
| 
       114 
58 
     | 
    
         
             
                end
         
     | 
| 
       115 
59 
     | 
    
         
             
              end
         
     | 
| 
       116 
60 
     | 
    
         | 
| 
       117 
61 
     | 
    
         
             
              describe "#execute_command" do
         
     | 
| 
       118 
     | 
    
         
            -
                let(:execute_command) { instance.execute_command(host, command) }
         
     | 
| 
       119 
     | 
    
         
            -
                let(:response) { [:ok, double('response', stdout: 'success_message')] }
         
     | 
| 
       120 
62 
     | 
    
         
             
                let(:command) { "echo 'hello world'" }
         
     | 
| 
       121 
     | 
    
         
            -
                subject { execute_command }
         
     | 
| 
       122 
     | 
    
         
            -
             
     | 
| 
       123 
     | 
    
         
            -
                before do
         
     | 
| 
       124 
     | 
    
         
            -
                  Ridley::HostConnector.stub(:new).and_return(worker)
         
     | 
| 
       125 
     | 
    
         
            -
                  worker.stub(:run).and_return(response)
         
     | 
| 
       126 
     | 
    
         
            -
                end
         
     | 
| 
       127 
     | 
    
         
            -
             
     | 
| 
       128 
     | 
    
         
            -
                it { should eq(response) }
         
     | 
| 
       129 
63 
     | 
    
         | 
| 
       130 
     | 
    
         
            -
                 
     | 
| 
       131 
     | 
    
         
            -
                   
     | 
| 
       132 
     | 
    
         
            -
             
     | 
| 
       133 
     | 
    
         
            -
                  it { should eq(response) }
         
     | 
| 
      
 64 
     | 
    
         
            +
                it "sends the message #run to the instance's host_commander" do
         
     | 
| 
      
 65 
     | 
    
         
            +
                  host_commander.should_receive(:run).with(host, command, ssh: instance.ssh, winrm: instance.winrm)
         
     | 
| 
      
 66 
     | 
    
         
            +
                  instance.execute_command(host, command)
         
     | 
| 
       134 
67 
     | 
    
         
             
                end
         
     | 
| 
       135 
68 
     | 
    
         
             
              end
         
     | 
| 
       136 
69 
     | 
    
         | 
| 
       137 
70 
     | 
    
         
             
              describe "#merge_data" do
         
     | 
| 
       138 
     | 
    
         
            -
                 
     | 
| 
       139 
     | 
    
         
            -
                let(: 
     | 
| 
       140 
     | 
    
         
            -
                let(: 
     | 
| 
       141 
     | 
    
         
            -
             
     | 
| 
       142 
     | 
    
         
            -
                 
     | 
| 
      
 71 
     | 
    
         
            +
                let(:node_name) { "rspec-test" }
         
     | 
| 
      
 72 
     | 
    
         
            +
                let(:run_list) { [ "recipe[one]", "recipe[two]" ] }
         
     | 
| 
      
 73 
     | 
    
         
            +
                let(:attributes) { { deep: { two: "val" } } }
         
     | 
| 
      
 74 
     | 
    
         
            +
             
     | 
| 
      
 75 
     | 
    
         
            +
                subject(:result) { instance.merge_data(node_name, run_list: run_list, attributes: attributes) }
         
     | 
| 
      
 76 
     | 
    
         
            +
             
     | 
| 
      
 77 
     | 
    
         
            +
                context "when a node of the given name exists" do
         
     | 
| 
      
 78 
     | 
    
         
            +
                  before do
         
     | 
| 
      
 79 
     | 
    
         
            +
                    chef_node(node_name,
         
     | 
| 
      
 80 
     | 
    
         
            +
                      run_list: [ "recipe[one]", "recipe[three]" ],
         
     | 
| 
      
 81 
     | 
    
         
            +
                      normal: { deep: { one: "val" } }
         
     | 
| 
      
 82 
     | 
    
         
            +
                    )
         
     | 
| 
      
 83 
     | 
    
         
            +
                  end
         
     | 
| 
       143 
84 
     | 
    
         | 
| 
       144 
     | 
    
         
            -
             
     | 
| 
       145 
     | 
    
         
            -
             
     | 
| 
      
 85 
     | 
    
         
            +
                  it "returns a Ridley::NodeObject" do
         
     | 
| 
      
 86 
     | 
    
         
            +
                    expect(result).to be_a(Ridley::NodeObject)
         
     | 
| 
      
 87 
     | 
    
         
            +
                  end
         
     | 
| 
       146 
88 
     | 
    
         | 
| 
       147 
     | 
    
         
            -
                  it " 
     | 
| 
       148 
     | 
    
         
            -
                     
     | 
| 
       149 
     | 
    
         
            -
             
     | 
| 
       150 
     | 
    
         
            -
                    subject.should_receive(:update).with(updated)
         
     | 
| 
      
 89 
     | 
    
         
            +
                  it "has a union between the run list of the original node and the new run list" do
         
     | 
| 
      
 90 
     | 
    
         
            +
                    expect(result.run_list).to eql(["recipe[one]","recipe[three]","recipe[two]"])
         
     | 
| 
      
 91 
     | 
    
         
            +
                  end
         
     | 
| 
       151 
92 
     | 
    
         | 
| 
       152 
     | 
    
         
            -
             
     | 
| 
      
 93 
     | 
    
         
            +
                  it "has a deep merge between the attributes of the original node and the new attributes" do
         
     | 
| 
      
 94 
     | 
    
         
            +
                    expect(result.normal.to_hash).to eql(deep: { one: "val", two: "val" })
         
     | 
| 
       153 
95 
     | 
    
         
             
                  end
         
     | 
| 
       154 
96 
     | 
    
         
             
                end
         
     | 
| 
       155 
97 
     | 
    
         | 
| 
       156 
98 
     | 
    
         
             
                context "when a node with the given name does not exist" do
         
     | 
| 
       157 
     | 
    
         
            -
                   
     | 
| 
      
 99 
     | 
    
         
            +
                  let(:node_name) { "does_not_exist" }
         
     | 
| 
       158 
100 
     | 
    
         | 
| 
       159 
101 
     | 
    
         
             
                  it "raises a ResourceNotFound error" do
         
     | 
| 
       160 
     | 
    
         
            -
                    expect {
         
     | 
| 
       161 
     | 
    
         
            -
                      subject.merge_data(node, data)
         
     | 
| 
       162 
     | 
    
         
            -
                    }.to raise_error(Ridley::Errors::ResourceNotFound)
         
     | 
| 
      
 102 
     | 
    
         
            +
                    expect { result }.to raise_error(Ridley::Errors::ResourceNotFound)
         
     | 
| 
       163 
103 
     | 
    
         
             
                  end
         
     | 
| 
       164 
104 
     | 
    
         
             
                end
         
     | 
| 
       165 
105 
     | 
    
         
             
              end
         
     | 
    
        metadata
    CHANGED
    
    | 
         @@ -1,15 +1,15 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            --- !ruby/object:Gem::Specification
         
     | 
| 
       2 
2 
     | 
    
         
             
            name: ridley
         
     | 
| 
       3 
3 
     | 
    
         
             
            version: !ruby/object:Gem::Version
         
     | 
| 
       4 
     | 
    
         
            -
              version: 0. 
     | 
| 
       5 
     | 
    
         
            -
              prerelease: 
         
     | 
| 
      
 4 
     | 
    
         
            +
              version: 1.0.0.rc1
         
     | 
| 
      
 5 
     | 
    
         
            +
              prerelease: 6
         
     | 
| 
       6 
6 
     | 
    
         
             
            platform: ruby
         
     | 
| 
       7 
7 
     | 
    
         
             
            authors:
         
     | 
| 
       8 
8 
     | 
    
         
             
            - Jamie Winsor
         
     | 
| 
       9 
9 
     | 
    
         
             
            autorequire: 
         
     | 
| 
       10 
10 
     | 
    
         
             
            bindir: bin
         
     | 
| 
       11 
11 
     | 
    
         
             
            cert_chain: []
         
     | 
| 
       12 
     | 
    
         
            -
            date: 2013-05- 
     | 
| 
      
 12 
     | 
    
         
            +
            date: 2013-05-31 00:00:00.000000000 Z
         
     | 
| 
       13 
13 
     | 
    
         
             
            dependencies:
         
     | 
| 
       14 
14 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       15 
15 
     | 
    
         
             
              name: addressable
         
     | 
| 
         @@ -107,22 +107,6 @@ dependencies: 
     | 
|
| 
       107 
107 
     | 
    
         
             
                - - ! '>='
         
     | 
| 
       108 
108 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       109 
109 
     | 
    
         
             
                    version: 2.0.2
         
     | 
| 
       110 
     | 
    
         
            -
            - !ruby/object:Gem::Dependency
         
     | 
| 
       111 
     | 
    
         
            -
              name: mixlib-log
         
     | 
| 
       112 
     | 
    
         
            -
              requirement: !ruby/object:Gem::Requirement
         
     | 
| 
       113 
     | 
    
         
            -
                none: false
         
     | 
| 
       114 
     | 
    
         
            -
                requirements:
         
     | 
| 
       115 
     | 
    
         
            -
                - - ! '>='
         
     | 
| 
       116 
     | 
    
         
            -
                  - !ruby/object:Gem::Version
         
     | 
| 
       117 
     | 
    
         
            -
                    version: 1.3.0
         
     | 
| 
       118 
     | 
    
         
            -
              type: :runtime
         
     | 
| 
       119 
     | 
    
         
            -
              prerelease: false
         
     | 
| 
       120 
     | 
    
         
            -
              version_requirements: !ruby/object:Gem::Requirement
         
     | 
| 
       121 
     | 
    
         
            -
                none: false
         
     | 
| 
       122 
     | 
    
         
            -
                requirements:
         
     | 
| 
       123 
     | 
    
         
            -
                - - ! '>='
         
     | 
| 
       124 
     | 
    
         
            -
                  - !ruby/object:Gem::Version
         
     | 
| 
       125 
     | 
    
         
            -
                    version: 1.3.0
         
     | 
| 
       126 
110 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       127 
111 
     | 
    
         
             
              name: mixlib-shellout
         
     | 
| 
       128 
112 
     | 
    
         
             
              requirement: !ruby/object:Gem::Requirement
         
     | 
| 
         @@ -139,22 +123,6 @@ dependencies: 
     | 
|
| 
       139 
123 
     | 
    
         
             
                - - ! '>='
         
     | 
| 
       140 
124 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       141 
125 
     | 
    
         
             
                    version: 1.1.0
         
     | 
| 
       142 
     | 
    
         
            -
            - !ruby/object:Gem::Dependency
         
     | 
| 
       143 
     | 
    
         
            -
              name: mixlib-config
         
     | 
| 
       144 
     | 
    
         
            -
              requirement: !ruby/object:Gem::Requirement
         
     | 
| 
       145 
     | 
    
         
            -
                none: false
         
     | 
| 
       146 
     | 
    
         
            -
                requirements:
         
     | 
| 
       147 
     | 
    
         
            -
                - - ! '>='
         
     | 
| 
       148 
     | 
    
         
            -
                  - !ruby/object:Gem::Version
         
     | 
| 
       149 
     | 
    
         
            -
                    version: 1.1.0
         
     | 
| 
       150 
     | 
    
         
            -
              type: :runtime
         
     | 
| 
       151 
     | 
    
         
            -
              prerelease: false
         
     | 
| 
       152 
     | 
    
         
            -
              version_requirements: !ruby/object:Gem::Requirement
         
     | 
| 
       153 
     | 
    
         
            -
                none: false
         
     | 
| 
       154 
     | 
    
         
            -
                requirements:
         
     | 
| 
       155 
     | 
    
         
            -
                - - ! '>='
         
     | 
| 
       156 
     | 
    
         
            -
                  - !ruby/object:Gem::Version
         
     | 
| 
       157 
     | 
    
         
            -
                    version: 1.1.0
         
     | 
| 
       158 
126 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       159 
127 
     | 
    
         
             
              name: mixlib-authentication
         
     | 
| 
       160 
128 
     | 
    
         
             
              requirement: !ruby/object:Gem::Requirement
         
     | 
| 
         @@ -269,11 +237,9 @@ files: 
     | 
|
| 
       269 
237 
     | 
    
         
             
            - bootstrappers/unix_omnibus.erb
         
     | 
| 
       270 
238 
     | 
    
         
             
            - bootstrappers/windows_omnibus.erb
         
     | 
| 
       271 
239 
     | 
    
         
             
            - lib/ridley.rb
         
     | 
| 
       272 
     | 
    
         
            -
            - lib/ridley/ 
     | 
| 
       273 
     | 
    
         
            -
            - lib/ridley/ 
     | 
| 
       274 
     | 
    
         
            -
            - lib/ridley/ 
     | 
| 
       275 
     | 
    
         
            -
            - lib/ridley/bootstrapper.rb
         
     | 
| 
       276 
     | 
    
         
            -
            - lib/ridley/bootstrapper/context.rb
         
     | 
| 
      
 240 
     | 
    
         
            +
            - lib/ridley/bootstrap_context.rb
         
     | 
| 
      
 241 
     | 
    
         
            +
            - lib/ridley/bootstrap_context/unix.rb
         
     | 
| 
      
 242 
     | 
    
         
            +
            - lib/ridley/bootstrap_context/windows.rb
         
     | 
| 
       277 
243 
     | 
    
         
             
            - lib/ridley/chef.rb
         
     | 
| 
       278 
244 
     | 
    
         
             
            - lib/ridley/chef/chefignore.rb
         
     | 
| 
       279 
245 
     | 
    
         
             
            - lib/ridley/chef/cookbook.rb
         
     | 
| 
         @@ -293,15 +259,12 @@ files: 
     | 
|
| 
       293 
259 
     | 
    
         
             
            - lib/ridley/client.rb
         
     | 
| 
       294 
260 
     | 
    
         
             
            - lib/ridley/connection.rb
         
     | 
| 
       295 
261 
     | 
    
         
             
            - lib/ridley/errors.rb
         
     | 
| 
      
 262 
     | 
    
         
            +
            - lib/ridley/host_commander.rb
         
     | 
| 
       296 
263 
     | 
    
         
             
            - lib/ridley/host_connector.rb
         
     | 
| 
       297 
264 
     | 
    
         
             
            - lib/ridley/host_connector/response.rb
         
     | 
| 
       298 
     | 
    
         
            -
            - lib/ridley/host_connector/response_set.rb
         
     | 
| 
       299 
265 
     | 
    
         
             
            - lib/ridley/host_connector/ssh.rb
         
     | 
| 
       300 
     | 
    
         
            -
            - lib/ridley/host_connector/ssh/worker.rb
         
     | 
| 
       301 
266 
     | 
    
         
             
            - lib/ridley/host_connector/winrm.rb
         
     | 
| 
       302 
267 
     | 
    
         
             
            - lib/ridley/host_connector/winrm/command_uploader.rb
         
     | 
| 
       303 
     | 
    
         
            -
            - lib/ridley/host_connector/winrm/worker.rb
         
     | 
| 
       304 
     | 
    
         
            -
            - lib/ridley/log.rb
         
     | 
| 
       305 
268 
     | 
    
         
             
            - lib/ridley/logging.rb
         
     | 
| 
       306 
269 
     | 
    
         
             
            - lib/ridley/middleware.rb
         
     | 
| 
       307 
270 
     | 
    
         
             
            - lib/ridley/middleware/chef_auth.rb
         
     | 
| 
         @@ -311,7 +274,6 @@ files: 
     | 
|
| 
       311 
274 
     | 
    
         
             
            - lib/ridley/middleware/parse_json.rb
         
     | 
| 
       312 
275 
     | 
    
         
             
            - lib/ridley/middleware/retry.rb
         
     | 
| 
       313 
276 
     | 
    
         
             
            - lib/ridley/mixin.rb
         
     | 
| 
       314 
     | 
    
         
            -
            - lib/ridley/mixin/bootstrap_binding.rb
         
     | 
| 
       315 
277 
     | 
    
         
             
            - lib/ridley/mixin/checksum.rb
         
     | 
| 
       316 
278 
     | 
    
         
             
            - lib/ridley/mixin/shell_out.rb
         
     | 
| 
       317 
279 
     | 
    
         
             
            - lib/ridley/resource.rb
         
     | 
| 
         @@ -361,10 +323,9 @@ files: 
     | 
|
| 
       361 
323 
     | 
    
         
             
            - spec/support/filepath_matchers.rb
         
     | 
| 
       362 
324 
     | 
    
         
             
            - spec/support/shared_examples/ridley_resource.rb
         
     | 
| 
       363 
325 
     | 
    
         
             
            - spec/support/spec_helpers.rb
         
     | 
| 
       364 
     | 
    
         
            -
            - spec/unit/ridley/ 
     | 
| 
       365 
     | 
    
         
            -
            - spec/unit/ridley/ 
     | 
| 
       366 
     | 
    
         
            -
            - spec/unit/ridley/ 
     | 
| 
       367 
     | 
    
         
            -
            - spec/unit/ridley/bootstrapper_spec.rb
         
     | 
| 
      
 326 
     | 
    
         
            +
            - spec/unit/ridley/bootstrap_context/unix_spec.rb
         
     | 
| 
      
 327 
     | 
    
         
            +
            - spec/unit/ridley/bootstrap_context/windows_spec.rb
         
     | 
| 
      
 328 
     | 
    
         
            +
            - spec/unit/ridley/bootstrap_context_spec.rb
         
     | 
| 
       368 
329 
     | 
    
         
             
            - spec/unit/ridley/chef/chefignore_spec.rb
         
     | 
| 
       369 
330 
     | 
    
         
             
            - spec/unit/ridley/chef/cookbook_spec.rb
         
     | 
| 
       370 
331 
     | 
    
         
             
            - spec/unit/ridley/chef/digester_spec.rb
         
     | 
| 
         @@ -380,18 +341,15 @@ files: 
     | 
|
| 
       380 
341 
     | 
    
         
             
            - spec/unit/ridley/client_spec.rb
         
     | 
| 
       381 
342 
     | 
    
         
             
            - spec/unit/ridley/connection_spec.rb
         
     | 
| 
       382 
343 
     | 
    
         
             
            - spec/unit/ridley/errors_spec.rb
         
     | 
| 
       383 
     | 
    
         
            -
            - spec/unit/ridley/ 
     | 
| 
       384 
     | 
    
         
            -
            - spec/unit/ridley/host_connector/ssh/worker_spec.rb
         
     | 
| 
      
 344 
     | 
    
         
            +
            - spec/unit/ridley/host_commander_spec.rb
         
     | 
| 
       385 
345 
     | 
    
         
             
            - spec/unit/ridley/host_connector/ssh_spec.rb
         
     | 
| 
       386 
346 
     | 
    
         
             
            - spec/unit/ridley/host_connector/winrm/command_uploader_spec.rb
         
     | 
| 
       387 
     | 
    
         
            -
            - spec/unit/ridley/host_connector/winrm/worker_spec.rb
         
     | 
| 
       388 
347 
     | 
    
         
             
            - spec/unit/ridley/host_connector/winrm_spec.rb
         
     | 
| 
       389 
348 
     | 
    
         
             
            - spec/unit/ridley/host_connector_spec.rb
         
     | 
| 
       390 
349 
     | 
    
         
             
            - spec/unit/ridley/middleware/chef_auth_spec.rb
         
     | 
| 
       391 
350 
     | 
    
         
             
            - spec/unit/ridley/middleware/chef_response_spec.rb
         
     | 
| 
       392 
351 
     | 
    
         
             
            - spec/unit/ridley/middleware/gzip_spec.rb
         
     | 
| 
       393 
352 
     | 
    
         
             
            - spec/unit/ridley/middleware/parse_json_spec.rb
         
     | 
| 
       394 
     | 
    
         
            -
            - spec/unit/ridley/mixin/bootstrap_binding_spec.rb
         
     | 
| 
       395 
353 
     | 
    
         
             
            - spec/unit/ridley/resource_spec.rb
         
     | 
| 
       396 
354 
     | 
    
         
             
            - spec/unit/ridley/resources/client_resource_spec.rb
         
     | 
| 
       397 
355 
     | 
    
         
             
            - spec/unit/ridley/resources/cookbook_resource_spec.rb
         
     | 
| 
         @@ -420,12 +378,9 @@ required_ruby_version: !ruby/object:Gem::Requirement 
     | 
|
| 
       420 
378 
     | 
    
         
             
            required_rubygems_version: !ruby/object:Gem::Requirement
         
     | 
| 
       421 
379 
     | 
    
         
             
              none: false
         
     | 
| 
       422 
380 
     | 
    
         
             
              requirements:
         
     | 
| 
       423 
     | 
    
         
            -
              - - ! ' 
     | 
| 
      
 381 
     | 
    
         
            +
              - - ! '>'
         
     | 
| 
       424 
382 
     | 
    
         
             
                - !ruby/object:Gem::Version
         
     | 
| 
       425 
     | 
    
         
            -
                  version:  
     | 
| 
       426 
     | 
    
         
            -
                  segments:
         
     | 
| 
       427 
     | 
    
         
            -
                  - 0
         
     | 
| 
       428 
     | 
    
         
            -
                  hash: 744717169722095875
         
     | 
| 
      
 383 
     | 
    
         
            +
                  version: 1.3.1
         
     | 
| 
       429 
384 
     | 
    
         
             
            requirements: []
         
     | 
| 
       430 
385 
     | 
    
         
             
            rubyforge_project: 
         
     | 
| 
       431 
386 
     | 
    
         
             
            rubygems_version: 1.8.23
         
     | 
| 
         @@ -466,10 +421,9 @@ test_files: 
     | 
|
| 
       466 
421 
     | 
    
         
             
            - spec/support/filepath_matchers.rb
         
     | 
| 
       467 
422 
     | 
    
         
             
            - spec/support/shared_examples/ridley_resource.rb
         
     | 
| 
       468 
423 
     | 
    
         
             
            - spec/support/spec_helpers.rb
         
     | 
| 
       469 
     | 
    
         
            -
            - spec/unit/ridley/ 
     | 
| 
       470 
     | 
    
         
            -
            - spec/unit/ridley/ 
     | 
| 
       471 
     | 
    
         
            -
            - spec/unit/ridley/ 
     | 
| 
       472 
     | 
    
         
            -
            - spec/unit/ridley/bootstrapper_spec.rb
         
     | 
| 
      
 424 
     | 
    
         
            +
            - spec/unit/ridley/bootstrap_context/unix_spec.rb
         
     | 
| 
      
 425 
     | 
    
         
            +
            - spec/unit/ridley/bootstrap_context/windows_spec.rb
         
     | 
| 
      
 426 
     | 
    
         
            +
            - spec/unit/ridley/bootstrap_context_spec.rb
         
     | 
| 
       473 
427 
     | 
    
         
             
            - spec/unit/ridley/chef/chefignore_spec.rb
         
     | 
| 
       474 
428 
     | 
    
         
             
            - spec/unit/ridley/chef/cookbook_spec.rb
         
     | 
| 
       475 
429 
     | 
    
         
             
            - spec/unit/ridley/chef/digester_spec.rb
         
     | 
| 
         @@ -485,18 +439,15 @@ test_files: 
     | 
|
| 
       485 
439 
     | 
    
         
             
            - spec/unit/ridley/client_spec.rb
         
     | 
| 
       486 
440 
     | 
    
         
             
            - spec/unit/ridley/connection_spec.rb
         
     | 
| 
       487 
441 
     | 
    
         
             
            - spec/unit/ridley/errors_spec.rb
         
     | 
| 
       488 
     | 
    
         
            -
            - spec/unit/ridley/ 
     | 
| 
       489 
     | 
    
         
            -
            - spec/unit/ridley/host_connector/ssh/worker_spec.rb
         
     | 
| 
      
 442 
     | 
    
         
            +
            - spec/unit/ridley/host_commander_spec.rb
         
     | 
| 
       490 
443 
     | 
    
         
             
            - spec/unit/ridley/host_connector/ssh_spec.rb
         
     | 
| 
       491 
444 
     | 
    
         
             
            - spec/unit/ridley/host_connector/winrm/command_uploader_spec.rb
         
     | 
| 
       492 
     | 
    
         
            -
            - spec/unit/ridley/host_connector/winrm/worker_spec.rb
         
     | 
| 
       493 
445 
     | 
    
         
             
            - spec/unit/ridley/host_connector/winrm_spec.rb
         
     | 
| 
       494 
446 
     | 
    
         
             
            - spec/unit/ridley/host_connector_spec.rb
         
     | 
| 
       495 
447 
     | 
    
         
             
            - spec/unit/ridley/middleware/chef_auth_spec.rb
         
     | 
| 
       496 
448 
     | 
    
         
             
            - spec/unit/ridley/middleware/chef_response_spec.rb
         
     | 
| 
       497 
449 
     | 
    
         
             
            - spec/unit/ridley/middleware/gzip_spec.rb
         
     | 
| 
       498 
450 
     | 
    
         
             
            - spec/unit/ridley/middleware/parse_json_spec.rb
         
     | 
| 
       499 
     | 
    
         
            -
            - spec/unit/ridley/mixin/bootstrap_binding_spec.rb
         
     | 
| 
       500 
451 
     | 
    
         
             
            - spec/unit/ridley/resource_spec.rb
         
     | 
| 
       501 
452 
     | 
    
         
             
            - spec/unit/ridley/resources/client_resource_spec.rb
         
     | 
| 
       502 
453 
     | 
    
         
             
            - spec/unit/ridley/resources/cookbook_resource_spec.rb
         
     | 
| 
         @@ -1,108 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            module Ridley
         
     | 
| 
       2 
     | 
    
         
            -
              # Represents a binding that will be evaluated as an ERB template. When bootstrapping
         
     | 
| 
       3 
     | 
    
         
            -
              # nodes, an instance of this class represents the customizable and necessary configurations
         
     | 
| 
       4 
     | 
    
         
            -
              # needed by the Host in order to install and connect to Chef. By default, this class will be used
         
     | 
| 
       5 
     | 
    
         
            -
              # when SSH is the best way to connect to the node.
         
     | 
| 
       6 
     | 
    
         
            -
              #
         
     | 
| 
       7 
     | 
    
         
            -
              # @author Kyle Allan <kallan@riotgames.com>
         
     | 
| 
       8 
     | 
    
         
            -
              class UnixTemplateBinding
         
     | 
| 
       9 
     | 
    
         
            -
                include Ridley::BootstrapBinding
         
     | 
| 
       10 
     | 
    
         
            -
             
     | 
| 
       11 
     | 
    
         
            -
                attr_reader :sudo
         
     | 
| 
       12 
     | 
    
         
            -
                attr_reader :hints
         
     | 
| 
       13 
     | 
    
         
            -
             
     | 
| 
       14 
     | 
    
         
            -
                # @option options [String] :validator_client
         
     | 
| 
       15 
     | 
    
         
            -
                # @option options [String] :validator_path
         
     | 
| 
       16 
     | 
    
         
            -
                #   filepath to the validator used to bootstrap the node (required)
         
     | 
| 
       17 
     | 
    
         
            -
                # @option options [String] :bootstrap_proxy (nil)
         
     | 
| 
       18 
     | 
    
         
            -
                #   URL to a proxy server to bootstrap through
         
     | 
| 
       19 
     | 
    
         
            -
                # @option options [String] :encrypted_data_bag_secret
         
     | 
| 
       20 
     | 
    
         
            -
                #   your organizations encrypted data bag secret
         
     | 
| 
       21 
     | 
    
         
            -
                # @option options [Hash] :hints (Hash.new)
         
     | 
| 
       22 
     | 
    
         
            -
                #   a hash of Ohai hints to place on the bootstrapped node
         
     | 
| 
       23 
     | 
    
         
            -
                # @option options [Hash] :attributes (Hash.new)
         
     | 
| 
       24 
     | 
    
         
            -
                #   a hash of attributes to use in the first Chef run
         
     | 
| 
       25 
     | 
    
         
            -
                # @option options [Array] :run_list (Array.new)
         
     | 
| 
       26 
     | 
    
         
            -
                #   an initial run list to bootstrap with
         
     | 
| 
       27 
     | 
    
         
            -
                # @option options [String] :chef_version (nil)
         
     | 
| 
       28 
     | 
    
         
            -
                #   version of Chef to install on the node
         
     | 
| 
       29 
     | 
    
         
            -
                # @option options [String] :environment ('_default')
         
     | 
| 
       30 
     | 
    
         
            -
                #   environment to join the node to
         
     | 
| 
       31 
     | 
    
         
            -
                # @option options [Boolean] :sudo (true)
         
     | 
| 
       32 
     | 
    
         
            -
                #   bootstrap with sudo (default: true)
         
     | 
| 
       33 
     | 
    
         
            -
                # @option options [String] :template ('unix_omnibus')
         
     | 
| 
       34 
     | 
    
         
            -
                #   bootstrap template to use
         
     | 
| 
       35 
     | 
    
         
            -
                def initialize(options = {})
         
     | 
| 
       36 
     | 
    
         
            -
                  options = self.class.default_options.merge(options)
         
     | 
| 
       37 
     | 
    
         
            -
                  options[:template] ||= default_template
         
     | 
| 
       38 
     | 
    
         
            -
                  self.class.validate_options(options)
         
     | 
| 
       39 
     | 
    
         
            -
             
     | 
| 
       40 
     | 
    
         
            -
                  @template_file             = options[:template]
         
     | 
| 
       41 
     | 
    
         
            -
                  @bootstrap_proxy           = options[:bootstrap_proxy]
         
     | 
| 
       42 
     | 
    
         
            -
                  @chef_version              = options[:chef_version]
         
     | 
| 
       43 
     | 
    
         
            -
                  @sudo                      = options[:sudo]
         
     | 
| 
       44 
     | 
    
         
            -
                  @validator_path            = options[:validator_path]
         
     | 
| 
       45 
     | 
    
         
            -
                  @encrypted_data_bag_secret = options[:encrypted_data_bag_secret]
         
     | 
| 
       46 
     | 
    
         
            -
                  @hints                     = options[:hints]
         
     | 
| 
       47 
     | 
    
         
            -
                  @server_url                = options[:server_url]
         
     | 
| 
       48 
     | 
    
         
            -
                  @validator_client          = options[:validator_client]
         
     | 
| 
       49 
     | 
    
         
            -
                  @node_name                 = options[:node_name]
         
     | 
| 
       50 
     | 
    
         
            -
                  @attributes                = options[:attributes]
         
     | 
| 
       51 
     | 
    
         
            -
                  @run_list                  = options[:run_list]
         
     | 
| 
       52 
     | 
    
         
            -
                  @environment               = options[:environment]
         
     | 
| 
       53 
     | 
    
         
            -
                end
         
     | 
| 
       54 
     | 
    
         
            -
             
     | 
| 
       55 
     | 
    
         
            -
                # @return [String]
         
     | 
| 
       56 
     | 
    
         
            -
                def boot_command
         
     | 
| 
       57 
     | 
    
         
            -
                  cmd = template.evaluate(self)
         
     | 
| 
       58 
     | 
    
         
            -
             
     | 
| 
       59 
     | 
    
         
            -
                  if sudo
         
     | 
| 
       60 
     | 
    
         
            -
                    cmd = "sudo #{cmd}"
         
     | 
| 
       61 
     | 
    
         
            -
                  end
         
     | 
| 
       62 
     | 
    
         
            -
             
     | 
| 
       63 
     | 
    
         
            -
                  cmd
         
     | 
| 
       64 
     | 
    
         
            -
                end
         
     | 
| 
       65 
     | 
    
         
            -
             
     | 
| 
       66 
     | 
    
         
            -
                # @return [String]
         
     | 
| 
       67 
     | 
    
         
            -
                def chef_config
         
     | 
| 
       68 
     | 
    
         
            -
                  body = <<-CONFIG
         
     | 
| 
       69 
     | 
    
         
            -
            log_level        :info
         
     | 
| 
       70 
     | 
    
         
            -
            log_location     STDOUT
         
     | 
| 
       71 
     | 
    
         
            -
            chef_server_url  "#{server_url}"
         
     | 
| 
       72 
     | 
    
         
            -
            validation_client_name "#{validator_client}"
         
     | 
| 
       73 
     | 
    
         
            -
            CONFIG
         
     | 
| 
       74 
     | 
    
         
            -
             
     | 
| 
       75 
     | 
    
         
            -
                  if node_name.present?
         
     | 
| 
       76 
     | 
    
         
            -
                    body << %Q{node_name "#{node_name}"\n}
         
     | 
| 
       77 
     | 
    
         
            -
                  else
         
     | 
| 
       78 
     | 
    
         
            -
                    body << "# Using default node name (fqdn)\n"
         
     | 
| 
       79 
     | 
    
         
            -
                  end
         
     | 
| 
       80 
     | 
    
         
            -
             
     | 
| 
       81 
     | 
    
         
            -
                  if bootstrap_proxy.present?
         
     | 
| 
       82 
     | 
    
         
            -
                    body << %Q{http_proxy        "#{bootstrap_proxy}"\n}
         
     | 
| 
       83 
     | 
    
         
            -
                    body << %Q{https_proxy       "#{bootstrap_proxy}"\n}
         
     | 
| 
       84 
     | 
    
         
            -
                  end
         
     | 
| 
       85 
     | 
    
         
            -
             
     | 
| 
       86 
     | 
    
         
            -
                  if encrypted_data_bag_secret.present?
         
     | 
| 
       87 
     | 
    
         
            -
                    body << %Q{encrypted_data_bag_secret "#{bootstrap_directory}/encrypted_data_bag_secret"\n}
         
     | 
| 
       88 
     | 
    
         
            -
                  end
         
     | 
| 
       89 
     | 
    
         
            -
             
     | 
| 
       90 
     | 
    
         
            -
                  body
         
     | 
| 
       91 
     | 
    
         
            -
                end
         
     | 
| 
       92 
     | 
    
         
            -
             
     | 
| 
       93 
     | 
    
         
            -
                # @return [String]
         
     | 
| 
       94 
     | 
    
         
            -
                def bootstrap_directory
         
     | 
| 
       95 
     | 
    
         
            -
                  "/etc/chef"
         
     | 
| 
       96 
     | 
    
         
            -
                end
         
     | 
| 
       97 
     | 
    
         
            -
             
     | 
| 
       98 
     | 
    
         
            -
                # @return [String]
         
     | 
| 
       99 
     | 
    
         
            -
                def chef_run
         
     | 
| 
       100 
     | 
    
         
            -
                  "chef-client -j #{bootstrap_directory}/first-boot.json -E #{environment}"
         
     | 
| 
       101 
     | 
    
         
            -
                end
         
     | 
| 
       102 
     | 
    
         
            -
             
     | 
| 
       103 
     | 
    
         
            -
                # @return [String]
         
     | 
| 
       104 
     | 
    
         
            -
                def default_template
         
     | 
| 
       105 
     | 
    
         
            -
                  templates_path.join('unix_omnibus.erb').to_s
         
     | 
| 
       106 
     | 
    
         
            -
                end
         
     | 
| 
       107 
     | 
    
         
            -
              end
         
     | 
| 
       108 
     | 
    
         
            -
            end
         
     |