module Sidedock

Allow gem users to do:

Sidedock.configure do |config|

config.debug = true

end

Attributes

configuration[RW]

Public Class Methods

base_directory() click to toggle source
# File lib/sidedock.rb, line 30
def base_directory
  case ENV['RAILS_ENV']
  when 'test'
    'spec'
  else
    'app'
  end
end
configure() { |configuration| ... } click to toggle source
# File lib/sidedock/configuration.rb, line 13
def self.configure
  yield configuration
end
path_to_dockerfile(name) click to toggle source
# File lib/sidedock.rb, line 24
def path_to_dockerfile(name)
  path = Rails.root.join base_directory, 'docker', name
  raise "Dockerfile path `#{path}` not found" unless File.exist? path
  path
end
with_docker_image(image, options = {}) { |container| ... } click to toggle source
# File lib/sidedock.rb, line 6
def with_docker_image(image, options = {}, &block)
  container = Sidedock::Container.create image, options
  container.start
  yield container
  container.stop
  container.remove unless options[:keep_image]
end
with_dockerfile(name, options = {}) { |container| ... } click to toggle source
# File lib/sidedock.rb, line 14
def with_dockerfile(name, options = {}, &block)
  image = Sidedock::Image.build path_to_dockerfile(name)

  with_docker_image image.id, options do |container|
    yield container
  end

  image.remove
end