skellington 0.1.3 → 0.1.4
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.
- checksums.yaml +4 -4
- data/config/config.yaml +3 -3
- data/features/cli.feature +20 -2
- data/lib/skellington/cli.rb +3 -3
- data/lib/skellington/generator.rb +11 -11
- data/lib/skellington/helpers.rb +1 -3
- data/lib/skellington/template.rb +1 -1
- data/lib/skellington/version.rb +1 -1
- data/lib/templates/Gemfile.eruby +3 -3
- data/lib/templates/Procfile.eruby +1 -1
- data/lib/templates/Rakefile.eruby +1 -1
- data/lib/templates/config.ru.eruby +1 -1
- data/lib/templates/features/support/env.rb.eruby +1 -1
- data/lib/templates/post-run.eruby +3 -1
- data/spec/spec_helper.rb +3 -0
- metadata +2 -3
- data/Rakefile.ffs +0 -10
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 2739b831dcd3dd63fc0240d7f689b06ddc101fca
|
4
|
+
data.tar.gz: ea34582333e0d1b0d6b28f006ef2ad77542566f7
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 30bff07c1969faa28dd6e1f8fec11b17e5664b6625fc4eadd31cb4097643b73e4d09121257daa17e2d604c3008521e255fd6ef90c0202fa15d4a08b347e2a247
|
7
|
+
data.tar.gz: 26e428f717b10cf08da1516ca778d858ba9b190946c272aa9d1d7d7c4cbbedd09d8dc096029e4b5a81118dfe3a0cfee4b37fb500ee93d224d2c64a76b5b32d15
|
data/config/config.yaml
CHANGED
@@ -20,9 +20,9 @@ files:
|
|
20
20
|
config.ru:
|
21
21
|
# the template has this name
|
22
22
|
features/first.feature:
|
23
|
-
# but the output file substitutes it like this, where
|
23
|
+
# but the output file substitutes it like this, where wormname is an attribute
|
24
24
|
# on the Generator object
|
25
|
-
outpath: first/
|
25
|
+
outpath: first/wormname
|
26
26
|
features/support/env.rb:
|
27
27
|
lib/app.rb:
|
28
|
-
outpath: app/
|
28
|
+
outpath: app/wormname
|
data/features/cli.feature
CHANGED
@@ -4,8 +4,26 @@ Feature: Generate skellington
|
|
4
4
|
When I successfully run `skellington generate dummy_app`
|
5
5
|
Then the output should contain "Generating dummy_app/Gemfile"
|
6
6
|
And the output should contain "bundle"
|
7
|
-
And the output should contain
|
7
|
+
And the output should contain:
|
8
|
+
"""
|
9
|
+
Your new Sinatra app DummyApp has been created
|
10
|
+
|
11
|
+
Now do
|
12
|
+
|
13
|
+
cd dummy_app
|
14
|
+
bundle
|
15
|
+
rake
|
16
|
+
|
17
|
+
And presuming that passes OK
|
18
|
+
|
19
|
+
git add .
|
20
|
+
git commit -m 'First commit'
|
21
|
+
|
22
|
+
You can run the app with
|
23
|
+
|
24
|
+
rackup
|
25
|
+
"""
|
8
26
|
|
9
27
|
Scenario: get the version
|
10
28
|
When I successfully run `skellington -v`
|
11
|
-
Then the output should contain "skellington version"
|
29
|
+
Then the output should contain "skellington version"
|
data/lib/skellington/cli.rb
CHANGED
@@ -6,9 +6,9 @@ module Skellington
|
|
6
6
|
end
|
7
7
|
map %w(-v --version) => :version
|
8
8
|
|
9
|
-
desc 'generate
|
10
|
-
def generate
|
11
|
-
@g = Generator.new
|
9
|
+
desc 'generate some_path', 'Generate a skeleton Sinatra app named SomePath at some_path'
|
10
|
+
def generate wormname
|
11
|
+
@g = Generator.new wormname
|
12
12
|
@g.run
|
13
13
|
end
|
14
14
|
end
|
@@ -1,12 +1,16 @@
|
|
1
1
|
module Skellington
|
2
2
|
class Generator
|
3
|
-
|
3
|
+
attr_reader :wormname, :camelname, :files, :gems
|
4
4
|
|
5
|
-
def initialize
|
6
|
-
@
|
7
|
-
@camelname = Skellington.camelise(@
|
8
|
-
@
|
9
|
-
@files =
|
5
|
+
def initialize wormname
|
6
|
+
@wormname = wormname
|
7
|
+
@camelname = Skellington.camelise(@wormname)
|
8
|
+
@gems = config['gems']
|
9
|
+
@files = config['files']
|
10
|
+
end
|
11
|
+
|
12
|
+
def config
|
13
|
+
@config ||= YAML.load File.read File.join File.dirname(__FILE__), '..', '..', 'config/config.yaml'
|
10
14
|
end
|
11
15
|
|
12
16
|
def run
|
@@ -16,7 +20,6 @@ module Skellington
|
|
16
20
|
end
|
17
21
|
|
18
22
|
def generate
|
19
|
-
puts ''
|
20
23
|
@files.each do |k, v|
|
21
24
|
t = Template.new k, self
|
22
25
|
t.write
|
@@ -24,15 +27,12 @@ module Skellington
|
|
24
27
|
end
|
25
28
|
|
26
29
|
def git_init
|
27
|
-
Git.init @
|
30
|
+
Git.init @wormname
|
28
31
|
end
|
29
32
|
|
30
33
|
def post_run
|
31
|
-
puts ''
|
32
|
-
puts "Your new Sinatra app '#{Skellington.camelise(@path)}' has been created"
|
33
34
|
t = Template.new 'post-run', self
|
34
35
|
puts t.to_s
|
35
|
-
puts ''
|
36
36
|
end
|
37
37
|
end
|
38
38
|
end
|
data/lib/skellington/helpers.rb
CHANGED
data/lib/skellington/template.rb
CHANGED
@@ -10,7 +10,7 @@ module Skellington
|
|
10
10
|
subs = @generator.files[@name]['outpath'].split '/'
|
11
11
|
@outpath = "#{@generator.send(subs[1].to_sym)}/#{@name.sub(subs[0], @generator.send(subs[1].to_sym))}"
|
12
12
|
rescue NoMethodError
|
13
|
-
@outpath = "#{@generator.
|
13
|
+
@outpath = "#{@generator.wormname}/#{@name}"
|
14
14
|
end
|
15
15
|
end
|
16
16
|
|
data/lib/skellington/version.rb
CHANGED
data/lib/templates/Gemfile.eruby
CHANGED
@@ -2,15 +2,15 @@ source 'https://rubygems.org'
|
|
2
2
|
|
3
3
|
ruby '<%= RUBY_VERSION %>'
|
4
4
|
|
5
|
-
<% for gem in @gen.
|
5
|
+
<% for gem in @gen.gems['production'] %>
|
6
6
|
gem '<%= gem %>'
|
7
7
|
<% end %>
|
8
8
|
|
9
9
|
group :test do
|
10
|
-
<% for gem in @gen.
|
10
|
+
<% for gem in @gen.gems['test'] %>
|
11
11
|
gem '<%= gem %>'
|
12
12
|
<% end %>
|
13
|
-
<% for gem in @gen.
|
13
|
+
<% for gem in @gen.gems['test_require_false'] %>
|
14
14
|
gem '<%= gem %>', require: false
|
15
15
|
<% end %>
|
16
16
|
end
|
@@ -1 +1 @@
|
|
1
|
-
web: bundle exec ruby lib/<%= @gen.
|
1
|
+
web: bundle exec ruby lib/<%= @gen.wormname %>.rb
|
data/spec/spec_helper.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: skellington
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- pikesley
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-01-
|
11
|
+
date: 2015-01-20 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: thor
|
@@ -181,7 +181,6 @@ files:
|
|
181
181
|
- LICENSE.txt
|
182
182
|
- README.md
|
183
183
|
- Rakefile
|
184
|
-
- Rakefile.ffs
|
185
184
|
- bin/skellington
|
186
185
|
- config/config.yaml
|
187
186
|
- features/app.feature
|
data/Rakefile.ffs
DELETED
@@ -1,10 +0,0 @@
|
|
1
|
-
require 'bundler/gem_tasks'
|
2
|
-
require 'rspec/core/rake_task'
|
3
|
-
require 'cucumber/rake/task'
|
4
|
-
require 'coveralls/rake/task'
|
5
|
-
|
6
|
-
Coveralls::RakeTask.new
|
7
|
-
RSpec::Core::RakeTask.new
|
8
|
-
Cucumber::Rake::Task.new
|
9
|
-
|
10
|
-
task :default => [:spec, :cucumber, 'coveralls:push']
|