diff --git a/lib/foreman/procfile.rb b/lib/foreman/procfile.rb index a307643..fbbe995 100644 --- a/lib/foreman/procfile.rb +++ b/lib/foreman/procfile.rb @@ -83,7 +83,7 @@ private def parse(filename) File.read(filename).gsub("\r\n","\n").split("\n").map do |line| - if line =~ /^([A-Za-z0-9_]+):\s*(.+)$/ + if line =~ /^([A-Za-z0-9_-]+):\s*(.+)$/ [$1, $2] end end.compact diff --git a/spec/foreman/procfile_spec.rb b/spec/foreman/procfile_spec.rb index b447a72..59d1658 100644 --- a/spec/foreman/procfile_spec.rb +++ b/spec/foreman/procfile_spec.rb @@ -16,8 +16,10 @@ describe Foreman::Procfile, :fakefs do it "loads a passed-in Procfile" do write_procfile procfile = Foreman::Procfile.new("Procfile") - procfile["alpha"].should == "./alpha" - procfile["bravo"].should == "./bravo" + procfile["alpha"].should == "./alpha" + procfile["bravo"].should == "./bravo" + procfile["foo-bar"].should == "./foo-bar" + procfile["foo_bar"].should == "./foo_bar" end it "can have a process appended to it" do diff --git a/spec/spec_helper.rb b/spec/spec_helper.rb index f7dd057..70536cd 100644 --- a/spec/spec_helper.rb +++ b/spec/spec_helper.rb @@ -79,6 +79,8 @@ def write_procfile(procfile="Procfile", alpha_env="") file.puts "alpha: ./alpha" + " #{alpha_env}".rstrip file.puts "\n" file.puts "bravo:\t./bravo" + file.puts "foo_bar:\t./foo_bar" + file.puts "foo-bar:\t./foo-bar" end File.expand_path(procfile) end