Add public_folder macro
This commit is contained in:
parent
b7ec6014aa
commit
aaa2ee1e31
3 changed files with 9 additions and 14 deletions
|
@ -28,4 +28,9 @@ describe "Config" do
|
|||
config.add_handler CustomTestHandler.new
|
||||
config.handlers.size.should eq(1)
|
||||
end
|
||||
|
||||
it "sets public folder" do
|
||||
public_folder "/some/path/to/folder"
|
||||
Kemal.config.public_folder.should eq("/some/path/to/folder")
|
||||
end
|
||||
end
|
||||
|
|
|
@ -10,7 +10,6 @@ module Kemal
|
|||
@port = 3000
|
||||
@env = "development" unless @env
|
||||
@public_folder = "./public"
|
||||
read_file
|
||||
end
|
||||
|
||||
def scheme
|
||||
|
@ -28,19 +27,6 @@ module Kemal
|
|||
def add_ws_handler(handler : HTTP::WebSocketHandler)
|
||||
HANDLERS << handler
|
||||
end
|
||||
|
||||
# Reads configuration from config.yml. Currently it only supports the public_folder
|
||||
# option.
|
||||
# config.yml
|
||||
# public_folder = "root/to/folder"
|
||||
def read_file
|
||||
path = File.expand_path("config.yml", Dir.current)
|
||||
if File.exists?(path)
|
||||
data = YAML.load(File.read(path)) as Hash
|
||||
public_folder = File.expand_path("./#{data["public_folder"]}", Dir.current)
|
||||
@public_folder = public_folder
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
def self.config
|
||||
|
|
|
@ -26,3 +26,7 @@ macro basic_auth(username, password)
|
|||
auth_handler = Kemal::Middleware::HTTPBasicAuth.new("serdar", "123")
|
||||
Kemal.config.add_handler auth_handler
|
||||
end
|
||||
|
||||
macro public_folder(path)
|
||||
Kemal.config.public_folder = {{path}}
|
||||
end
|
||||
|
|
Loading…
Reference in a new issue