ruby_storm 0.0.9 → 0.0.10
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/application/application.rb +6 -6
- data/bin/storm +11 -2
- data/generators/console.rb +2 -15
- data/generators/db/create.rb +6 -21
- data/generators/db/db_command.rb +6 -1
- data/generators/db/drop.rb +6 -3
- data/generators/init.rb +6 -5
- data/generators/start.rb +1 -6
- data/generators/version.rb +1 -1
- data/{application → vendor}/inflector.rb +0 -0
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6e4c5622141af3b2783056a9e0d90e5973fbfc07
|
4
|
+
data.tar.gz: 0359c06c3cb32e9e0d28a83dd9324b9530882191
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6e6db8f8ca6af8c84a6efe7fca1d0e1e11763145987d83339a846749a0443ee762e520ce2559b083733174364fa8d7fbbc420a5c3c99dbe8e933810bc118de5b
|
7
|
+
data.tar.gz: 15f35ed80d0e1512bc79b112160a8d658e0c17d5096900dcda25c239f3237ed300b3bc899a8334109ea3f3476dc81bea51c162efa3d53aaff093ca54c7152c8b
|
data/application/application.rb
CHANGED
@@ -3,13 +3,13 @@ require 'fileutils'
|
|
3
3
|
require_relative '../generators/version'
|
4
4
|
|
5
5
|
module Storm
|
6
|
-
STORM_DIR
|
7
|
-
STORM_ENV
|
8
|
-
DB_VERSION
|
9
|
-
DATABASE_DIR
|
10
|
-
APP_NAME
|
6
|
+
STORM_DIR = File.expand_path("#{File.dirname(__FILE__)}/../")
|
7
|
+
STORM_ENV = ENV['DATABASE_ENV'] || 'development'
|
8
|
+
DB_VERSION = ENV['DB_VERSION'] || nil
|
9
|
+
DATABASE_DIR = ENV['DATABASE_DIR'] || './db'
|
10
|
+
APP_NAME = ENV['APP_NAME'] || Inflector::classify(File.basename(FileUtils.pwd))
|
11
11
|
MIGRATIONS_DIR = "#{DATABASE_DIR}/migrate"
|
12
|
-
APP_DIR
|
12
|
+
APP_DIR = File.expand_path("./")
|
13
13
|
|
14
14
|
def self.env
|
15
15
|
STORM_ENV
|
data/bin/storm
CHANGED
@@ -3,7 +3,7 @@ require 'thread_safe'
|
|
3
3
|
|
4
4
|
module Storm
|
5
5
|
|
6
|
-
require File.expand_path("./../../
|
6
|
+
require File.expand_path("./../../vendor/inflector", __FILE__)
|
7
7
|
require File.expand_path("./../../application/application", __FILE__)
|
8
8
|
|
9
9
|
def self.perform!(namespace, args=ARGV)
|
@@ -30,12 +30,21 @@ module Storm
|
|
30
30
|
return 0
|
31
31
|
end
|
32
32
|
|
33
|
+
def self.load_environment
|
34
|
+
require 'thread_safe'
|
35
|
+
require 'active_record'
|
36
|
+
require "awesome_print"
|
37
|
+
require 'bundler'
|
38
|
+
::Bundler.require(:default, :development)
|
39
|
+
Dir["./**/*.rb"].each{|file| next if /db\/migrate/ =~ file; require file }
|
40
|
+
end
|
41
|
+
|
33
42
|
def self.generator(names)
|
34
43
|
generators_and_paths = names.map{|name|
|
35
44
|
[name.capitalize,name.downcase]
|
36
45
|
}
|
37
46
|
|
38
|
-
klass = "
|
47
|
+
klass = ["","Storm",generators_and_paths.flat_map(&:first)].flatten.join("::")
|
39
48
|
path = File.expand_path("./../../generators/#{generators_and_paths.map(&:last).join("/")}.rb", __FILE__)
|
40
49
|
if File.exists?(path)
|
41
50
|
require path
|
data/generators/console.rb
CHANGED
@@ -7,20 +7,8 @@ module Storm
|
|
7
7
|
end
|
8
8
|
|
9
9
|
def self.start(*args)
|
10
|
-
|
11
|
-
|
12
|
-
require 'thread_safe'
|
13
|
-
require 'active_record'
|
14
|
-
require "awesome_print"
|
15
|
-
require 'bundler'
|
16
|
-
|
17
|
-
::Bundler.require(:default, :development)
|
18
|
-
Dir["./**/*.rb"].each{|file| next if /db\/migrate/ =~ file; require file }
|
19
|
-
|
20
|
-
require File.expand_path("./../../application/inflector", __FILE__)
|
21
|
-
require File.expand_path("./../../application/application", __FILE__)
|
22
|
-
|
23
|
-
ActiveRecord::Base.establish_connection YAML.load_file('./db/databases.yml')[Storm::STORM_ENV] rescue nil
|
10
|
+
Storm.load_environment
|
11
|
+
ActiveRecord::Base.establish_connection YAML.load_file('./db/database.yml')[Storm::STORM_ENV]
|
24
12
|
ARGV.clear
|
25
13
|
begin
|
26
14
|
require 'pry'
|
@@ -32,7 +20,6 @@ module Storm
|
|
32
20
|
@@reload = false
|
33
21
|
self.start(*args)
|
34
22
|
else
|
35
|
-
puts e
|
36
23
|
require 'irb'
|
37
24
|
::IRB.start
|
38
25
|
end
|
data/generators/db/create.rb
CHANGED
@@ -7,35 +7,20 @@ module Storm::Db
|
|
7
7
|
|
8
8
|
create_db = lambda do |config|
|
9
9
|
# drops and create need to be performed with a connection to the 'postgres' (system) database
|
10
|
-
|
11
|
-
::ActiveRecord::Base.establish_connection(config.merge('database' => 'postgres', 'schema_search_path' => 'public'))
|
12
|
-
end
|
10
|
+
::ActiveRecord::Base.establish_connection(config.merge('database' => 'postgres', 'schema_search_path' => 'public')) if self.postgres?
|
13
11
|
# drop the old database (if it exists)
|
14
12
|
::ActiveRecord::Base.connection.drop_database config["database"] rescue nil
|
15
13
|
# create new
|
16
|
-
::ActiveRecord::Base.connection.create_database(config["database"])
|
14
|
+
::ActiveRecord::Base.connection.create_database(config["database"])
|
17
15
|
::ActiveRecord::Base.establish_connection(config)
|
18
16
|
end
|
19
17
|
|
20
18
|
begin
|
21
19
|
create_db.call self.config
|
22
|
-
rescue Exception =>
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
grant_statement = <<-SQL
|
28
|
-
GRANT ALL PRIVILEGES ON #{config['database']}.*
|
29
|
-
TO '#{config['username']}'@'localhost'
|
30
|
-
IDENTIFIED BY '#{config['password']}' WITH GRANT OPTION;
|
31
|
-
SQL
|
32
|
-
|
33
|
-
create_db.call config.merge('database' => nil, 'username' => 'root', 'password' => root_password)
|
34
|
-
else
|
35
|
-
$stderr.puts sqlerr.error
|
36
|
-
$stderr.puts "Couldn't create database for #{config.inspect}, charset: utf8, collation: utf8_unicode_ci"
|
37
|
-
$stderr.puts "(if you set the charset manually, make sure you have a matching collation)" if config['charset']
|
38
|
-
end
|
20
|
+
rescue Exception => create_exception
|
21
|
+
$stderr.puts create_exception
|
22
|
+
$stderr.puts "Couldn't create database for #{config.inspect}, charset: utf8, collation: utf8_unicode_ci"
|
23
|
+
$stderr.puts "(if you set the charset manually, make sure you have a matching collation)" if config['charset']
|
39
24
|
end
|
40
25
|
end
|
41
26
|
end
|
data/generators/db/db_command.rb
CHANGED
@@ -1,8 +1,13 @@
|
|
1
1
|
class Storm::DBCommand
|
2
2
|
require 'active_record'
|
3
3
|
require 'yaml'
|
4
|
+
|
4
5
|
def self.config
|
5
|
-
@config ||= ::YAML.load_file('./db/
|
6
|
+
@config ||= ::YAML.load_file('./db/database.yml')[Storm::STORM_ENV]
|
7
|
+
end
|
8
|
+
|
9
|
+
def self.postgres?
|
10
|
+
config["adapter"] == 'postgresql'
|
6
11
|
end
|
7
12
|
|
8
13
|
def self.connect
|
data/generators/db/drop.rb
CHANGED
@@ -3,11 +3,14 @@ require_relative "db_command"
|
|
3
3
|
module Storm::Db
|
4
4
|
class Drop < Storm::DBCommand
|
5
5
|
def self.start(args)
|
6
|
-
|
7
|
-
|
6
|
+
case self.config['adapter']
|
7
|
+
when 'sqlite3'
|
8
8
|
db_file = File.expand_path("./"+self.config['database'])
|
9
|
-
File.delete(db_file)
|
9
|
+
return File.delete(db_file)
|
10
|
+
when 'postgresql'
|
11
|
+
::ActiveRecord::Base.establish_connection(config.merge('database' => 'postgres', 'schema_search_path' => 'public'))
|
10
12
|
end
|
13
|
+
::ActiveRecord::Base.connection.drop_database self.config['database'] rescue nil
|
11
14
|
end
|
12
15
|
end
|
13
16
|
end
|
data/generators/init.rb
CHANGED
@@ -3,10 +3,11 @@ require 'fileutils'
|
|
3
3
|
module Storm
|
4
4
|
class Init
|
5
5
|
def self.start(args)
|
6
|
-
app_name
|
6
|
+
app_name = args[0]
|
7
7
|
class_name = Inflector::classify(app_name)
|
8
|
-
|
9
|
-
|
8
|
+
dir_name = Inflector::underscore(app_name)
|
9
|
+
file_name = "#{Inflector::underscore(app_name)}.rb"
|
10
|
+
|
10
11
|
FileUtils.mkdir_p(dir_name)
|
11
12
|
FileUtils.mkdir_p("./#{dir_name}/#{MIGRATIONS_DIR}") rescue nil
|
12
13
|
gemfile(dir_name)
|
@@ -41,10 +42,10 @@ end
|
|
41
42
|
end
|
42
43
|
|
43
44
|
#
|
44
|
-
# Write
|
45
|
+
# Write database.yml
|
45
46
|
#
|
46
47
|
def self.dbfile(dir_name)
|
47
|
-
File.open("./#{dir_name}/db/
|
48
|
+
File.open("./#{dir_name}/db/database.yml", "w+") do |f|
|
48
49
|
f.puts "\
|
49
50
|
default: &default
|
50
51
|
adapter: sqlite3
|
data/generators/start.rb
CHANGED
@@ -3,12 +3,7 @@ require 'fileutils'
|
|
3
3
|
module Storm
|
4
4
|
class Start
|
5
5
|
def self.start(args)
|
6
|
-
|
7
|
-
require 'active_record'
|
8
|
-
require "awesome_print"
|
9
|
-
require 'bundler'
|
10
|
-
::Bundler.require(:default, :development)
|
11
|
-
Dir["./**/*.rb"].each{|file| next if /db\/migrate/ =~ file; require file }
|
6
|
+
Storm.load_environment
|
12
7
|
project_name = File.basename(Dir.pwd)
|
13
8
|
class_name = Inflector::classify(project_name)
|
14
9
|
Inflector::constantize(class_name).main(STORM_ENV, ARGV[1..-1])
|
data/generators/version.rb
CHANGED
File without changes
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ruby_storm
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.10
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Wouter Coppieters
|
@@ -106,7 +106,6 @@ files:
|
|
106
106
|
- Gemfile.lock
|
107
107
|
- README.md
|
108
108
|
- application/application.rb
|
109
|
-
- application/inflector.rb
|
110
109
|
- bin/storm
|
111
110
|
- generators/app.rb
|
112
111
|
- generators/console.rb
|
@@ -124,6 +123,7 @@ files:
|
|
124
123
|
- generators/version.rb
|
125
124
|
- ruby_storm.gemspec
|
126
125
|
- rubystorm.todo
|
126
|
+
- vendor/inflector.rb
|
127
127
|
homepage: http://rubygems.org/gems/ruby_storm
|
128
128
|
licenses:
|
129
129
|
- MIT
|