Class: Urushiol::Varnish

Inherits:
Object
  • Object
show all
Defined in:
lib/varnish.rb

Instance Method Summary collapse

Constructor Details

#initialize(name) ⇒ Varnish

Returns a new instance of Varnish.



3
4
5
6
# File 'lib/varnish.rb', line 3

def initialize (name)
  @varnish_string = "\n# Start a varnish instance called \"#{name}\"\n"
  @varnish_string << "varnish #{name}"
end

Instance Method Details

#args(args_string) ⇒ Object



8
9
10
# File 'lib/varnish.rb', line 8

def args(args_string)
  @varnish_string << " -arg \"#{args_string}\""
end

#mock_server_addressObject



20
21
22
# File 'lib/varnish.rb', line 20

def mock_server_address
  server_address("127.0.0.1","8080")
end

#server_address(ip_adress, port) ⇒ Object



16
17
18
# File 'lib/varnish.rb', line 16

def server_address(ip_adress,port)
  args "-a #{ip_adress}:#{port}"
end

#startObject



32
33
34
# File 'lib/varnish.rb', line 32

def start
  @varnish_string << " -start"
end

#varnish_sourceObject



36
37
38
39
40
41
42
43
44
# File 'lib/varnish.rb', line 36

def varnish_source
  if @varnish_string.end_with?(" -start")
    @varnish_string
  else
    start
    @varnish_string
  end

end

#vcl(vcl_string) ⇒ Object



24
25
26
# File 'lib/varnish.rb', line 24

def vcl(vcl_string)
  @varnish_string << " -vcl {\n#{vcl_string}\n}"
end

#vcl_backend(vcl_backend_string) ⇒ Object



28
29
30
# File 'lib/varnish.rb', line 28

def vcl_backend(vcl_backend_string)
  @varnish_string << " -vcl+backend {\n#{vcl_backend_string}\n}"
end

#vcl_file(file_path) ⇒ Object



12
13
14
# File 'lib/varnish.rb', line 12

def vcl_file(file_path)
  args "-f #{file_path}"
end