cuba-template-generator 0.0.8 → 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +5 -1
- data/Rakefile +4 -0
- data/bin/cuba +0 -4
- data/cuba-template-generator.gemspec +1 -1
- data/lib/cuba/generator/cli.rb +2 -0
- data/lib/cuba/generator/version.rb +1 -1
- data/lib/cuba/generator.rb +13 -0
- data/lib/cuba/templates/gemfile.erb +9 -4
- data/lib/cuba/templates/postgres.erb +18 -18
- data/lib/cuba/templates/sqlite.erb +28 -0
- data/spec/cuba_template_generator_spec.rb +1 -1
- metadata +4 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 35954643d0459816829c12ad1c058c65e62ea909
|
4
|
+
data.tar.gz: 4f70c3e2c88c69c729e4351afab487f16799d551
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 82c9e0432a812eb4d991d7ba50317db2e5da7f8d4bba42132387965e66c13bb9d516eb7f62afda280daa459b38b87125a3c7dc52f306e00607c598f4185badf0
|
7
|
+
data.tar.gz: ead308e1a2587e352f74c592d6944dc7a38ca151e7d1af5a732c7fc315125a6eef4a6c9ec9301a75d591dc41f43d81a6afe07e2ca5180f6d815dd105c9d2b3ef
|
data/README.md
CHANGED
@@ -17,10 +17,14 @@ Additionally you can specify the type of your app via ***--type*** . E.g to gene
|
|
17
17
|
|
18
18
|
cuba new [projectName] --type api
|
19
19
|
|
20
|
-
To generate an application with a Postgresql configuration setup use
|
20
|
+
To generate an application with a Postgresql configuration setup use ***--database*** option (via Sequel)
|
21
21
|
|
22
22
|
cuba new [projectName] --database postgresql
|
23
|
+
|
24
|
+
To generate an application with a Sqlite configuration setup use ***--database*** option (via Sequel)
|
23
25
|
|
26
|
+
cuba new [projectName] --database sqlite
|
27
|
+
|
24
28
|
By default ***--type*** is 'app'.
|
25
29
|
|
26
30
|
## Contributing
|
data/Rakefile
CHANGED
@@ -1,8 +1,12 @@
|
|
1
1
|
require 'bundler/gem_tasks'
|
2
2
|
require 'rspec/core/rake_task'
|
3
|
+
require 'fileutils'
|
3
4
|
|
4
5
|
RSpec::Core::RakeTask.new(:spec) do |task|
|
5
6
|
task.rspec_opts = ['--color', '--format progress', '--order random']
|
7
|
+
at_exit do
|
8
|
+
FileUtils.remove_entry_secure('myproject')
|
9
|
+
end
|
6
10
|
end
|
7
11
|
|
8
12
|
task :default => :spec
|
data/bin/cuba
CHANGED
@@ -10,7 +10,7 @@ Gem::Specification.new do |spec|
|
|
10
10
|
spec.email = ['ma.dmviera01@gmail.com']
|
11
11
|
spec.summary = %q{Application Generator for Cuba framework.}
|
12
12
|
spec.description = %q{Helps create cuba projects through a minimalist generator.}
|
13
|
-
spec.homepage = ''
|
13
|
+
spec.homepage = 'https://rangeroob.github.io/cuba-template-generator/'
|
14
14
|
spec.license = 'MIT'
|
15
15
|
|
16
16
|
spec.files = `git ls-files -z`.split("\x0")
|
data/lib/cuba/generator/cli.rb
CHANGED
@@ -20,9 +20,11 @@ module Cuba
|
|
20
20
|
if options.type
|
21
21
|
generator = Cuba::Generator.new(ARGV[1], options.type)
|
22
22
|
generator.create_postgres_file if options.database == 'postgresql'
|
23
|
+
generartor.create_sqlite_file if options.database == 'sqlite'
|
23
24
|
else
|
24
25
|
generator = Cuba::Generator.new(ARGV[1], :app)
|
25
26
|
generator.create_postgres_file if options.database == 'postgresql'
|
27
|
+
generator.create_sqlite_file if options.database == 'sqlite'
|
26
28
|
end
|
27
29
|
end
|
28
30
|
end
|
data/lib/cuba/generator.rb
CHANGED
@@ -40,6 +40,15 @@ module Cuba
|
|
40
40
|
file.write setup_gemfile
|
41
41
|
end
|
42
42
|
end
|
43
|
+
|
44
|
+
def create_sqlite_file
|
45
|
+
File.open("./#{@project_name}/sqlite.rb", 'w+') do |file|
|
46
|
+
file.write setup_sqlite
|
47
|
+
end
|
48
|
+
File.open("./#{@project_name}/Gemfile", 'w+') do |file|
|
49
|
+
file.write setup_gemfile
|
50
|
+
end
|
51
|
+
end
|
43
52
|
|
44
53
|
private
|
45
54
|
|
@@ -58,6 +67,10 @@ module Cuba
|
|
58
67
|
def setup_postgres
|
59
68
|
create_template 'postgres'
|
60
69
|
end
|
70
|
+
|
71
|
+
def setup_sqlite
|
72
|
+
create_template 'sqlite'
|
73
|
+
end
|
61
74
|
|
62
75
|
def setup_gemfile
|
63
76
|
create_template 'gemfile'
|
@@ -4,8 +4,13 @@
|
|
4
4
|
source "https://rubygems.org"
|
5
5
|
|
6
6
|
gem 'cuba'
|
7
|
-
|
8
|
-
|
9
|
-
|
7
|
+
# uncomment needed dependencies
|
8
|
+
# and run bundle install
|
9
|
+
# database dependencies
|
10
|
+
# gem 'sequel'
|
11
|
+
# postgresql dependencies
|
12
|
+
# gem 'pg'
|
13
|
+
# sqlite dependencies
|
14
|
+
#gem 'sqlite3'
|
10
15
|
TEMPLATE
|
11
|
-
%>
|
16
|
+
%>
|
@@ -1,22 +1,22 @@
|
|
1
1
|
<%=
|
2
2
|
<<-TEMPLATE
|
3
|
-
|
4
|
-
require '
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
#
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
#
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
3
|
+
require 'fileutils'
|
4
|
+
require 'sequel'
|
5
|
+
unless Dir.exist?('db')
|
6
|
+
FileUtils.mkdir 'db'
|
7
|
+
end
|
8
|
+
DB = Sequel.connect('postgres://user:password@host:port/database_name') # requires pg
|
9
|
+
# create an items table
|
10
|
+
DB.create_table :items do
|
11
|
+
primary_key :id
|
12
|
+
String :name
|
13
|
+
Float :price
|
14
|
+
end
|
15
|
+
# create a dataset from the items table
|
16
|
+
items = DB[:items]
|
17
|
+
# populate the table
|
18
|
+
items.insert(:name => 'abc', :price => rand * 100)
|
19
|
+
items.insert(:name => 'def', :price => rand * 100)
|
20
|
+
items.insert(:name => 'ghi', :price => rand * 100)
|
21
21
|
TEMPLATE
|
22
22
|
%>
|
@@ -0,0 +1,28 @@
|
|
1
|
+
<%=
|
2
|
+
<<-TEMPLATE
|
3
|
+
require 'fileutils'
|
4
|
+
require 'sequel'
|
5
|
+
|
6
|
+
unless Dir.exist?('db')
|
7
|
+
FileUtils.mkdir 'db'
|
8
|
+
end
|
9
|
+
DB = Sequel.connect('sqlite://db/sqlite.db') # requires sqlite3
|
10
|
+
|
11
|
+
# create an items table
|
12
|
+
DB.create_table :items do
|
13
|
+
primary_key :id
|
14
|
+
String :name
|
15
|
+
Float :price
|
16
|
+
end
|
17
|
+
|
18
|
+
# create a dataset from the items table
|
19
|
+
items = DB[:items]
|
20
|
+
|
21
|
+
# populate the table
|
22
|
+
items.insert(:name => 'abc', :price => rand * 100)
|
23
|
+
items.insert(:name => 'def', :price => rand * 100)
|
24
|
+
items.insert(:name => 'ghi', :price => rand * 100)
|
25
|
+
|
26
|
+
|
27
|
+
TEMPLATE
|
28
|
+
%>
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cuba-template-generator
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0
|
4
|
+
version: 0.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Derek Viera
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-
|
11
|
+
date: 2016-12-13 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -104,8 +104,9 @@ files:
|
|
104
104
|
- lib/cuba/templates/gemfile.erb
|
105
105
|
- lib/cuba/templates/postgres.erb
|
106
106
|
- lib/cuba/templates/rack_config.erb
|
107
|
+
- lib/cuba/templates/sqlite.erb
|
107
108
|
- spec/cuba_template_generator_spec.rb
|
108
|
-
homepage:
|
109
|
+
homepage: https://rangeroob.github.io/cuba-template-generator/
|
109
110
|
licenses:
|
110
111
|
- MIT
|
111
112
|
metadata: {}
|