Class: Kitchen::Verifier::Base
- Inherits:
-
Object
- Object
- Kitchen::Verifier::Base
- Defined in:
- lib/kitchen/helpers.rb
Instance Method Summary collapse
Instance Method Details
#call(state) ⇒ Object
189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 |
# File 'lib/kitchen/helpers.rb', line 189 def call(state) create_sandbox sandbox_dirs = Dir.glob(File.join(sandbox_path, "*")) instance.transport.connection(state) do |conn| conn.execute(install_command) unless state[:data_container].nil? conn.execute(init_command) info("Transferring files to #{instance.to_str}") conn.upload(sandbox_dirs, config[:root_path]) debug("Transfer complete") end conn.execute(prepare_command) conn.execute(run_command) end rescue Kitchen::Transport::TransportFailed => ex raise ActionFailed, ex. end |
#create_sandbox ⇒ Object
172 173 174 175 176 177 178 |
# File 'lib/kitchen/helpers.rb', line 172 def create_sandbox info("Creating kitchen sandbox in #{sandbox_path}") unless ::Dir.exist?(sandbox_path) FileUtils.mkdir_p(sandbox_path) File.chmod(0755, sandbox_path) end end |
#instance_name ⇒ Object
184 185 186 187 |
# File 'lib/kitchen/helpers.rb', line 184 def instance_name prefix = (Digest::SHA2.hexdigest FileUtils.pwd)[0, 10] "#{prefix}-#{instance.name}" end |
#sandbox_path ⇒ Object
180 181 182 |
# File 'lib/kitchen/helpers.rb', line 180 def sandbox_path "#{Dir.home}/.dokken/verifier_sandbox/#{instance_name}" end |