# File lib/docker/util.rb, line 122 def create_tar(hash = {}) output = StringIO.new Gem::Package::TarWriter.new(output) do |tar| hash.each do |file_name, file_details| permissions = file_details.is_a?(Hash) ? file_details[:permissions] : 0640 tar.add_file(file_name, permissions) do |tar_file| content = file_details.is_a?(Hash) ? file_details[:content] : file_details tar_file.write(content) end end end output.tap(&:rewind).string end