pancake 0.2.0 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/bin/pancake +96 -0
- data/lib/pancake.rb +5 -7
- data/lib/pancake/configuration.rb +2 -23
- data/lib/pancake/core_ext/object.rb +1 -1
- data/lib/pancake/defaults/configuration.rb +21 -1
- data/lib/pancake/generators.rb +0 -3
- data/lib/pancake/hooks/inheritable_inner_classes.rb +15 -2
- data/lib/pancake/master.rb +34 -1
- data/lib/pancake/mixins/render.rb +1 -2
- data/lib/pancake/mixins/stack_helper.rb +1 -1
- data/lib/pancake/router.rb +18 -63
- data/lib/pancake/stack/configuration.rb +3 -5
- data/lib/pancake/stack/router.rb +10 -33
- data/lib/pancake/stack/stack.rb +70 -50
- data/{spec/helpers → lib/pancake/test}/helpers.rb +3 -3
- data/lib/pancake/test/matchers.rb +20 -0
- data/lib/pancake/vendor/hashie/.document +5 -0
- data/lib/pancake/vendor/hashie/.gitignore +7 -0
- data/lib/pancake/vendor/hashie/Gemfile +11 -0
- data/lib/pancake/vendor/hashie/Gemfile.lock +25 -0
- data/lib/pancake/{generators/templates/short/%stack_name%/LICENSE.tt → vendor/hashie/LICENSE} +1 -1
- data/lib/pancake/vendor/hashie/README.rdoc +101 -0
- data/lib/pancake/{generators/templates/micro/%stack_name%/Rakefile.tt → vendor/hashie/Rakefile} +3 -13
- data/lib/pancake/vendor/hashie/VERSION +1 -0
- data/lib/pancake/vendor/hashie/hashie.gemspec +33 -0
- data/lib/pancake/vendor/hashie/lib/hashie.rb +5 -0
- data/lib/pancake/vendor/hashie/lib/hashie/clash.rb +86 -0
- data/lib/pancake/vendor/hashie/lib/hashie/dash.rb +108 -0
- data/lib/pancake/vendor/hashie/lib/hashie/hash.rb +22 -0
- data/lib/pancake/vendor/hashie/lib/hashie/hash_extensions.rb +49 -0
- data/lib/pancake/vendor/hashie/lib/hashie/mash.rb +148 -0
- data/lib/pancake/vendor/hashie/spec/hashie/clash_spec.rb +42 -0
- data/lib/pancake/vendor/hashie/spec/hashie/dash_spec.rb +103 -0
- data/lib/pancake/vendor/hashie/spec/hashie/hash_spec.rb +22 -0
- data/lib/pancake/vendor/hashie/spec/hashie/mash_spec.rb +135 -0
- data/lib/pancake/vendor/hashie/spec/spec.opts +2 -0
- data/lib/pancake/{generators/templates/short/%stack_name%/spec/spec_helper.rb.tt → vendor/hashie/spec/spec_helper.rb} +7 -7
- data/spec/pancake/configuration_spec.rb +1 -1
- data/spec/pancake/constants_spec.rb +1 -1
- data/spec/pancake/defaults/configuration_spec.rb +1 -1
- data/spec/pancake/hooks/on_inherit_spec.rb +13 -13
- data/spec/pancake/inheritance_spec.rb +22 -22
- data/spec/pancake/middleware_spec.rb +6 -5
- data/spec/pancake/middlewares/logger_spec.rb +1 -1
- data/spec/pancake/middlewares/static_spec.rb +1 -1
- data/spec/pancake/mime_types_spec.rb +1 -1
- data/spec/pancake/mixins/publish_spec.rb +24 -24
- data/spec/pancake/mixins/render/template_spec.rb +1 -1
- data/spec/pancake/mixins/render/view_context_spec.rb +1 -1
- data/spec/pancake/mixins/render_spec.rb +1 -1
- data/spec/pancake/mixins/request_helper_spec.rb +1 -1
- data/spec/pancake/mixins/stack_helper_spec.rb +3 -3
- data/spec/pancake/pancake_spec.rb +1 -1
- data/spec/pancake/paths_spec.rb +30 -30
- data/spec/pancake/stack/router_spec.rb +24 -62
- data/spec/pancake/stack/stack_configuration_spec.rb +1 -1
- data/spec/pancake/stack/stack_spec.rb +47 -4
- data/spec/spec_helper.rb +3 -3
- metadata +56 -128
- data/bin/pancake-gen +0 -30
- data/lib/pancake/bootloaders.rb +0 -187
- data/lib/pancake/generators/base.rb +0 -12
- data/lib/pancake/generators/micro_generator.rb +0 -17
- data/lib/pancake/generators/short_generator.rb +0 -18
- data/lib/pancake/generators/templates/common/dotgitignore +0 -22
- data/lib/pancake/generators/templates/common/dothtaccess +0 -17
- data/lib/pancake/generators/templates/micro/%stack_name%/%stack_name%.rb.tt +0 -8
- data/lib/pancake/generators/templates/micro/%stack_name%/config.ru.tt +0 -12
- data/lib/pancake/generators/templates/micro/%stack_name%/pancake_init.rb.tt +0 -1
- data/lib/pancake/generators/templates/micro/%stack_name%/public/.empty_directory +0 -0
- data/lib/pancake/generators/templates/micro/%stack_name%/tmp/.empty_directory +0 -0
- data/lib/pancake/generators/templates/micro/%stack_name%/views/root.html.haml +0 -1
- data/lib/pancake/generators/templates/short/%stack_name%/README.tt +0 -7
- data/lib/pancake/generators/templates/short/%stack_name%/Rakefile.tt +0 -56
- data/lib/pancake/generators/templates/short/%stack_name%/VERSION.tt +0 -1
- data/lib/pancake/generators/templates/short/%stack_name%/lib/%stack_name%.rb.tt +0 -12
- data/lib/pancake/generators/templates/short/%stack_name%/lib/%stack_name%/%stack_name%.rb.tt +0 -6
- data/lib/pancake/generators/templates/short/%stack_name%/lib/%stack_name%/config.ru.tt +0 -10
- data/lib/pancake/generators/templates/short/%stack_name%/lib/%stack_name%/config/config.rb.tt +0 -23
- data/lib/pancake/generators/templates/short/%stack_name%/lib/%stack_name%/config/environments/development.rb.tt +0 -15
- data/lib/pancake/generators/templates/short/%stack_name%/lib/%stack_name%/config/environments/production.rb.tt +0 -16
- data/lib/pancake/generators/templates/short/%stack_name%/lib/%stack_name%/config/environments/staging.rb.tt +0 -17
- data/lib/pancake/generators/templates/short/%stack_name%/lib/%stack_name%/models/.empty_directory +0 -0
- data/lib/pancake/generators/templates/short/%stack_name%/lib/%stack_name%/mounts/.empty_directory +0 -0
- data/lib/pancake/generators/templates/short/%stack_name%/lib/%stack_name%/public/.empty_directory +0 -0
- data/lib/pancake/generators/templates/short/%stack_name%/lib/%stack_name%/tasks/%stack_name%.rake.tt +0 -4
- data/lib/pancake/generators/templates/short/%stack_name%/lib/%stack_name%/tmp/.empty_directory +0 -0
- data/lib/pancake/generators/templates/short/%stack_name%/lib/%stack_name%/views/root.html.haml +0 -2
- data/lib/pancake/generators/templates/short/%stack_name%/pancake_init.rb.tt +0 -1
- data/lib/pancake/generators/templates/short/%stack_name%/spec/%stack_name%_spec.rb.tt +0 -11
- data/lib/pancake/stack/app.rb +0 -10
- data/lib/pancake/stack/bootloader.rb +0 -114
- data/lib/pancake/stack/middleware.rb +0 -0
- data/lib/pancake/stacks/short.rb +0 -3
- data/lib/pancake/stacks/short/bootloaders.rb +0 -5
- data/lib/pancake/stacks/short/controller.rb +0 -184
- data/lib/pancake/stacks/short/default/views/base.html.haml +0 -5
- data/lib/pancake/stacks/short/default/views/error.html.haml +0 -12
- data/lib/pancake/stacks/short/stack.rb +0 -207
- data/spec/helpers/matchers.rb +0 -25
- data/spec/pancake/bootloaders_spec.rb +0 -119
- data/spec/pancake/stack/app_spec.rb +0 -28
- data/spec/pancake/stack/bootloader_spec.rb +0 -41
- data/spec/pancake/stack/middleware_spec.rb +0 -0
- data/spec/pancake/stacks/short/controller_spec.rb +0 -442
- data/spec/pancake/stacks/short/middlewares_spec.rb +0 -22
- data/spec/pancake/stacks/short/router_spec.rb +0 -150
- data/spec/pancake/stacks/short/stack_spec.rb +0 -117
data/lib/pancake/bootloaders.rb
DELETED
|
@@ -1,187 +0,0 @@
|
|
|
1
|
-
require 'set'
|
|
2
|
-
module Pancake
|
|
3
|
-
module BootLoaderMixin
|
|
4
|
-
include Enumerable
|
|
5
|
-
class Base
|
|
6
|
-
# :api: :public
|
|
7
|
-
attr_accessor :config
|
|
8
|
-
|
|
9
|
-
# Sets options for the bootloder
|
|
10
|
-
# By including conditions in the bootloader when you declare it
|
|
11
|
-
# You can selectively run bootloaders later
|
|
12
|
-
# :api: private
|
|
13
|
-
def self.options=(opts={}) # :nodoc:
|
|
14
|
-
@options = opts
|
|
15
|
-
@options[:level] ||= :default
|
|
16
|
-
end
|
|
17
|
-
|
|
18
|
-
# Provides access to the bootloader options
|
|
19
|
-
# :api: private
|
|
20
|
-
def self.options # :nodoc:
|
|
21
|
-
@options ||= {}
|
|
22
|
-
end
|
|
23
|
-
|
|
24
|
-
def stack
|
|
25
|
-
raise "No Stack Configured" unless @config[:stack]
|
|
26
|
-
@config[:stack]
|
|
27
|
-
end
|
|
28
|
-
|
|
29
|
-
def stack_class
|
|
30
|
-
raise "No Stack Class Configured" unless @config[:stack_class]
|
|
31
|
-
@config[:stack_class]
|
|
32
|
-
end
|
|
33
|
-
|
|
34
|
-
def initialize(config)
|
|
35
|
-
@config = config
|
|
36
|
-
end
|
|
37
|
-
|
|
38
|
-
# Creates a new instance and runs it
|
|
39
|
-
# :api: private
|
|
40
|
-
def self.call(config)
|
|
41
|
-
new(config).run!
|
|
42
|
-
end
|
|
43
|
-
|
|
44
|
-
# Checks the conditions with the options of the bootloader
|
|
45
|
-
# To see if this one should be run
|
|
46
|
-
# Only the central bootloaders with the conditions will be checked
|
|
47
|
-
# :api: private
|
|
48
|
-
def self.run?(conditions = {})
|
|
49
|
-
opts = options
|
|
50
|
-
if conditions.keys.include?(:only)
|
|
51
|
-
return conditions[:only].all?{|k,v| opts[k] == v}
|
|
52
|
-
end
|
|
53
|
-
if conditions.keys.include?(:except)
|
|
54
|
-
return conditions[:except].all?{|k,v| opts[k] != v}
|
|
55
|
-
end
|
|
56
|
-
true
|
|
57
|
-
end
|
|
58
|
-
end
|
|
59
|
-
|
|
60
|
-
def self.extended(base)
|
|
61
|
-
base.class_eval do
|
|
62
|
-
extlib_inheritable_reader :_bootloaders, :_central_bootloaders, :_bootloader_map
|
|
63
|
-
@_bootloaders, @_central_bootloaders = {}, []
|
|
64
|
-
@_bootloader_map = Hash.new{|h,k| h[k] = {:before => [], :after => []}}
|
|
65
|
-
end
|
|
66
|
-
end
|
|
67
|
-
|
|
68
|
-
# Provides access to an individual bootloader
|
|
69
|
-
# :api: public
|
|
70
|
-
def [](name)
|
|
71
|
-
_bootloaders[name]
|
|
72
|
-
end
|
|
73
|
-
|
|
74
|
-
# Provides removal of a bootloader, by replacing it as an empty lambda
|
|
75
|
-
# :api: public
|
|
76
|
-
def delete(name)
|
|
77
|
-
!!self[name] && _bootloaders[name] = nil
|
|
78
|
-
end
|
|
79
|
-
|
|
80
|
-
# Add a bootloader. Inside the block we're inside a class definition.
|
|
81
|
-
# Requirements: define a +run!+ method
|
|
82
|
-
#
|
|
83
|
-
# Example
|
|
84
|
-
# FooStack::BootLoader.add(:foo) do
|
|
85
|
-
# def run!
|
|
86
|
-
# # stuff
|
|
87
|
-
# end
|
|
88
|
-
# end
|
|
89
|
-
#
|
|
90
|
-
# :api: public
|
|
91
|
-
def add(name, opts = {}, &block)
|
|
92
|
-
_bootloaders[name] = Class.new(Pancake::BootLoaderMixin::Base, &block)
|
|
93
|
-
raise "You must declare a #run! method on your bootloader" unless _bootloaders[name].method_defined?(:run!)
|
|
94
|
-
before = opts[:before]
|
|
95
|
-
after = opts[:after]
|
|
96
|
-
|
|
97
|
-
if opts[:level]
|
|
98
|
-
levels << opts[:level]
|
|
99
|
-
levels.uniq!
|
|
100
|
-
end
|
|
101
|
-
|
|
102
|
-
# If there are no before or after keys, add it to the central bootloaders
|
|
103
|
-
if before
|
|
104
|
-
_bootloader_map[before][:before] << name
|
|
105
|
-
elsif after
|
|
106
|
-
_bootloader_map[after][:after] << name
|
|
107
|
-
else
|
|
108
|
-
_central_bootloaders << name unless _central_bootloaders.include?(name)
|
|
109
|
-
end
|
|
110
|
-
_bootloaders[name].options = opts
|
|
111
|
-
_bootloaders[name]
|
|
112
|
-
end
|
|
113
|
-
|
|
114
|
-
# Runs the bootloaders in order
|
|
115
|
-
# :api: private
|
|
116
|
-
def run!(options = {}) # :nodoc:
|
|
117
|
-
unless options.keys.include?(:only) || options.keys.include?(:except)
|
|
118
|
-
options[:only] = {:level => :default}
|
|
119
|
-
end
|
|
120
|
-
conditions = if options[:only]
|
|
121
|
-
{:only => options.delete(:only)}
|
|
122
|
-
else
|
|
123
|
-
{:except => options.delete(:except)}
|
|
124
|
-
end
|
|
125
|
-
options[:stack_class] ||= stack
|
|
126
|
-
|
|
127
|
-
each(conditions) do |name, bl|
|
|
128
|
-
next if bl.nil?
|
|
129
|
-
bl.call(options)
|
|
130
|
-
end
|
|
131
|
-
end
|
|
132
|
-
|
|
133
|
-
# Set the stack that this bootloader is responsible for.
|
|
134
|
-
# :api: private
|
|
135
|
-
def stack=(stack) # :nodoc:
|
|
136
|
-
@stack = stack
|
|
137
|
-
end
|
|
138
|
-
|
|
139
|
-
# Access to the stack that this bootloader is responsible for
|
|
140
|
-
# :api: public
|
|
141
|
-
def stack
|
|
142
|
-
@stack ||= self.name.split("::")[0..-2].join("::").constantize
|
|
143
|
-
end
|
|
144
|
-
|
|
145
|
-
# Resets the bootloaders on the stack
|
|
146
|
-
# :api: public
|
|
147
|
-
def reset!
|
|
148
|
-
_central_bootloaders.clear
|
|
149
|
-
_bootloaders.clear
|
|
150
|
-
_bootloader_map.clear
|
|
151
|
-
end
|
|
152
|
-
|
|
153
|
-
# Yields each bootloader in order along with it's name
|
|
154
|
-
#
|
|
155
|
-
# Example
|
|
156
|
-
# FooStack::BootLoader.each do |name, bootloader|
|
|
157
|
-
# # do stuff
|
|
158
|
-
# end
|
|
159
|
-
#
|
|
160
|
-
# :api: public
|
|
161
|
-
def each(conditions = {})
|
|
162
|
-
_map_bootloaders(_central_bootloaders, conditions).each do |n|
|
|
163
|
-
yield n, _bootloaders[n]
|
|
164
|
-
end
|
|
165
|
-
end
|
|
166
|
-
|
|
167
|
-
private
|
|
168
|
-
# Map out the bootloaders by name to run.
|
|
169
|
-
# :api: private
|
|
170
|
-
def _map_bootloaders(*names)
|
|
171
|
-
conditions = Hash === names.last ? names.pop : {}
|
|
172
|
-
names.flatten.map do |name|
|
|
173
|
-
if _bootloaders[name].run?(conditions)
|
|
174
|
-
r = []
|
|
175
|
-
r << _map_bootloaders(_bootloader_map[name][:before])
|
|
176
|
-
r << name
|
|
177
|
-
r << _map_bootloaders(_bootloader_map[name][:after])
|
|
178
|
-
end
|
|
179
|
-
end.flatten.compact
|
|
180
|
-
end
|
|
181
|
-
|
|
182
|
-
def levels
|
|
183
|
-
@levels ||= [:default]
|
|
184
|
-
end
|
|
185
|
-
|
|
186
|
-
end # BootLoaders
|
|
187
|
-
end # Pancake
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
module Pancake
|
|
2
|
-
module Generators
|
|
3
|
-
class Micro < Base
|
|
4
|
-
argument :stack_name, :banner => "Name of stack"
|
|
5
|
-
|
|
6
|
-
desc "Generates a stack"
|
|
7
|
-
def stack
|
|
8
|
-
say "Creating The Stack For #{stack_name}"
|
|
9
|
-
directory "micro/%stack_name%", stack_name
|
|
10
|
-
template File.join(self.class.source_root, "common/dotgitignore"), "#{stack_name}/.gitignore"
|
|
11
|
-
template File.join(self.class.source_root, "common/dothtaccess"), "#{stack_name}/public/.htaccess"
|
|
12
|
-
end
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
end
|
|
16
|
-
end
|
|
17
|
-
end
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
module Pancake
|
|
2
|
-
module Generators
|
|
3
|
-
class Short < Base
|
|
4
|
-
argument :stack_name, :banner => "Name of stack"
|
|
5
|
-
|
|
6
|
-
desc "Generates a short stack"
|
|
7
|
-
def stack
|
|
8
|
-
say "Creating The Short Stack For #{stack_name}"
|
|
9
|
-
directory "short/%stack_name%", stack_name
|
|
10
|
-
template File.join(self.class.source_root, "common/dotgitignore"), "#{stack_name}/.gitignore"
|
|
11
|
-
template File.join(self.class.source_root, "common/dothtaccess"), "#{stack_name}/lib/#{stack_name}/public/.htaccess"
|
|
12
|
-
|
|
13
|
-
end
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
end
|
|
17
|
-
end
|
|
18
|
-
end
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
.DS_Store
|
|
2
|
-
log/*
|
|
3
|
-
tmp/*
|
|
4
|
-
TAGS
|
|
5
|
-
*~
|
|
6
|
-
.#*
|
|
7
|
-
schema/schema.rb
|
|
8
|
-
schema/*_structure.sql
|
|
9
|
-
schema/*.sqlite3
|
|
10
|
-
schema/*.sqlite
|
|
11
|
-
schema/*.db
|
|
12
|
-
*.sqlite
|
|
13
|
-
*.sqlite3
|
|
14
|
-
*.db
|
|
15
|
-
src/*
|
|
16
|
-
.hgignore
|
|
17
|
-
.hg/*
|
|
18
|
-
.svn/*
|
|
19
|
-
gems/gems/*/
|
|
20
|
-
gems/specifications/*
|
|
21
|
-
!gems/gems/thor*/
|
|
22
|
-
!gems/specifications/thor*
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
# Sets the default handler for FastCGI scripts
|
|
2
|
-
AddHandler fastcgi-script .fcgi
|
|
3
|
-
|
|
4
|
-
# If Apache2 is used together with mod_fcgid,
|
|
5
|
-
# uncomment the line below and comment in the line
|
|
6
|
-
# above to set the correct script handler
|
|
7
|
-
#AddHandler fcgid-script .fcgi
|
|
8
|
-
|
|
9
|
-
RewriteEngine On
|
|
10
|
-
|
|
11
|
-
RewriteRule ^$ index.html [QSA]
|
|
12
|
-
RewriteRule ^([^.]+)$ $1.html [QSA]
|
|
13
|
-
RewriteCond %{REQUEST_FILENAME} !-f
|
|
14
|
-
RewriteRule ^(.*)$ merb.fcgi [QSA,L]
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
ErrorDocument 500 "<h2>Application Error</h2>Merb could not be reached"
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
require 'rubygems'
|
|
2
|
-
|
|
3
|
-
require 'pancake'
|
|
4
|
-
require ::File.join(::File.expand_path(::File.dirname(__FILE__)), "<%= stack_name %>")
|
|
5
|
-
|
|
6
|
-
# get the application to run. The application in the Pancake.start block
|
|
7
|
-
# is the master application. It will have all requests directed to it through the
|
|
8
|
-
# pancake middleware
|
|
9
|
-
# This should be a very minimal file, but should be used when any stand alone code needs to be included
|
|
10
|
-
app = Pancake.start(:root => Pancake.get_root(__FILE__)){ <%= stack_name.camel_case %>.stackup(:master => true) }
|
|
11
|
-
|
|
12
|
-
run app
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
require File.join(File.expand_path(File.dirname(__FILE__)), "<%= stack_name %>")
|
|
File without changes
|
|
File without changes
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
- inherits_from :base
|
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
require 'rubygems'
|
|
2
|
-
require 'rake'
|
|
3
|
-
require 'pancake'
|
|
4
|
-
|
|
5
|
-
begin
|
|
6
|
-
require 'jeweler'
|
|
7
|
-
Jeweler::Tasks.new do |gem|
|
|
8
|
-
gem.name = "<%= stack_name %>"
|
|
9
|
-
gem.summary = %Q{TODO}
|
|
10
|
-
gem.email = "TODO"
|
|
11
|
-
gem.homepage = "TODO"
|
|
12
|
-
gem.authors = ["TODO"]
|
|
13
|
-
gem.add_dependency "pancake", ">=0.1.8"
|
|
14
|
-
gem.files = FileList["[A-Z]*", "pancake.init", "{lib,spec,rails}/**/*"]
|
|
15
|
-
# gem is a Gem::Specification... see http://www.rubygems.org/read/chapter/20 for additional settings
|
|
16
|
-
end
|
|
17
|
-
|
|
18
|
-
rescue LoadError
|
|
19
|
-
puts "Jeweler (or a dependency) not available. Install it with: sudo gem install jeweler"
|
|
20
|
-
end
|
|
21
|
-
|
|
22
|
-
require File.join(File.dirname(__FILE__), "lib", "<%= stack_name %>")
|
|
23
|
-
Pancake.root = Pancake.get_root(__FILE__, "lib", "<%= stack_name %>")
|
|
24
|
-
THIS_STACK = <%= stack_name.camel_case %>
|
|
25
|
-
<%= stack_name.camel_case %>.load_rake_tasks!(:master => true)
|
|
26
|
-
|
|
27
|
-
require 'spec/rake/spectask'
|
|
28
|
-
Spec::Rake::SpecTask.new(:spec) do |spec|
|
|
29
|
-
spec.libs << 'lib' << 'spec'
|
|
30
|
-
spec.spec_files = FileList['spec/**/*_spec.rb']
|
|
31
|
-
end
|
|
32
|
-
|
|
33
|
-
Spec::Rake::SpecTask.new(:rcov) do |spec|
|
|
34
|
-
spec.libs << 'lib' << 'spec'
|
|
35
|
-
spec.pattern = 'spec/**/*_spec.rb'
|
|
36
|
-
spec.rcov = true
|
|
37
|
-
end
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
task :default => :spec
|
|
41
|
-
|
|
42
|
-
require 'rake/rdoctask'
|
|
43
|
-
Rake::RDocTask.new do |rdoc|
|
|
44
|
-
if File.exist?('VERSION.yml')
|
|
45
|
-
config = YAML.load(File.read('VERSION.yml'))
|
|
46
|
-
version = "#{config[:major]}.#{config[:minor]}.#{config[:patch]}"
|
|
47
|
-
else
|
|
48
|
-
version = ""
|
|
49
|
-
end
|
|
50
|
-
|
|
51
|
-
rdoc.rdoc_dir = 'rdoc'
|
|
52
|
-
rdoc.title = "foo #{version}"
|
|
53
|
-
rdoc.rdoc_files.include('README*')
|
|
54
|
-
rdoc.rdoc_files.include('lib/**/*.rb')
|
|
55
|
-
end
|
|
56
|
-
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
0.0.0
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
require 'pancake'
|
|
2
|
-
class <%= stack_name.camel_case %> < Pancake::Stacks::Short
|
|
3
|
-
add_root(__FILE__, "<%= stack_name %>")
|
|
4
|
-
|
|
5
|
-
# Hook to use before we mount any applications
|
|
6
|
-
# before_mount_applications do
|
|
7
|
-
# end
|
|
8
|
-
|
|
9
|
-
initialize_stack
|
|
10
|
-
end
|
|
11
|
-
|
|
12
|
-
require ::File.join(Pancake.get_root(__FILE__, "<%= stack_name %>"), "<%= stack_name %>")
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
require 'pancake'
|
|
2
|
-
require ::File.join(::File.expand_path(::File.dirname(__FILE__)), "..", "<%= stack_name %>")
|
|
3
|
-
|
|
4
|
-
# get the application to run. The application in the Pancake.start block
|
|
5
|
-
# is the master application. It will have all requests directed to it through the
|
|
6
|
-
# pancake middleware
|
|
7
|
-
# This should be a very minimal file, but should be used when any stand alone code needs to be included
|
|
8
|
-
app = Pancake.start(:root => Pancake.get_root(__FILE__)){ <%= stack_name.camel_case %>.stackup(:master => true) }
|
|
9
|
-
|
|
10
|
-
run app
|
data/lib/pancake/generators/templates/short/%stack_name%/lib/%stack_name%/config/config.rb.tt
DELETED
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
# Enter any global configuration for the stack in this file.
|
|
2
|
-
|
|
3
|
-
class <%= stack_name.camel_case %>
|
|
4
|
-
# include middleware for the development stack
|
|
5
|
-
# Labels can be set in the config/environments/<env>.rb file to limit
|
|
6
|
-
# middleware loading.
|
|
7
|
-
# stack(:middleware_name, :labels => [:development, :production]).use(MiddlewareClass)
|
|
8
|
-
|
|
9
|
-
class self::Configuration
|
|
10
|
-
# Add defaults to your stack configuration.
|
|
11
|
-
# This is scoped to this stack, and is inhertied into child stacks
|
|
12
|
-
#
|
|
13
|
-
# Fixed value defaults:
|
|
14
|
-
# default :var_name, :value, "A description of the variable"
|
|
15
|
-
#
|
|
16
|
-
# Lazy Defaults:
|
|
17
|
-
# default :var_name, lambda{ configuration_method }, "Some Description"
|
|
18
|
-
|
|
19
|
-
# Declare methods on your configuraiton
|
|
20
|
-
# def configuration_method; #stuff; end
|
|
21
|
-
end
|
|
22
|
-
end
|
|
23
|
-
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
Pancake.logger.info "Loading Development Environment"
|
|
2
|
-
|
|
3
|
-
# Pancake.handle_errors!(true) # uncomment to have the stack handle any errors that occur
|
|
4
|
-
|
|
5
|
-
class <%= stack_name.camel_case %>
|
|
6
|
-
# include middleware for the development stack
|
|
7
|
-
# stack(:middleware_name).use(MiddlewareClass)
|
|
8
|
-
end
|
|
9
|
-
|
|
10
|
-
# Add code to hooks. Default available hooks:
|
|
11
|
-
# :before_build_stack, :before_mount_applications, :after_initialize_application, :after_build_stack
|
|
12
|
-
|
|
13
|
-
# <%= stack_name.camel_case %>.before_build_stack do
|
|
14
|
-
# # stuff to do
|
|
15
|
-
# end
|