db-migrate 0.0.4 → 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (5) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +1 -1
  3. data/bin/migrate +60 -56
  4. data/db-migrate.gemspec +1 -1
  5. metadata +1 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: eab419426da9f80e43140f1f4b25f5f56b7970e6
4
- data.tar.gz: e2840d27dc6129e8aa4176100e87d60c1f3fa62b
3
+ metadata.gz: ac44f2774f5bba1b5c0dd8dfc04e423361e92d70
4
+ data.tar.gz: 48aadd589116df00d4e840a827fa0a94e98f26e1
5
5
  SHA512:
6
- metadata.gz: 45ad601cb4e91159d8574972ad8db33f69f2d0690d9074b279228b1ce551aa47a61f50ca283b6ac5bde84e9d7f96b1cc5868c31720001b2828f1ea7a1e1117e6
7
- data.tar.gz: cccb1098e5f70782fe3e471a82869245c08d294065337a3cc56f5e45b50bce6b69f9227a31ff59214ab9ab1994f9e4817e9bfc986e54063994107cd4766934db
6
+ metadata.gz: 4174f718724905b41d451e9ac0a3d1fea778f657bb04e590b62053b011e4a7eec3283d9140f9472f9854bea07bad425b93a8df5d64dd94b8bafe490857c107bf
7
+ data.tar.gz: 24d4d0239d8b23262b6daa86b89d8f8e37ba43e6c7f853cb43915d669b47f916011f37adbca9a2e3916d56ca7b751a1c69415fa8982fe3c9e40c5f20563c113e
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- db-migrate (0.0.4)
4
+ db-migrate (0.1.0)
5
5
  colorize (= 0.7.7)
6
6
  highline (= 1.7.8)
7
7
  json (= 1.8.3)
data/bin/migrate CHANGED
@@ -26,9 +26,9 @@ class CLI < Thor
26
26
  def initialize(*args)
27
27
  super
28
28
  @config = Conf.new(options["root"], options["config"])
29
-
30
29
  init_invoked = ARGV.length > 0 && ARGV[0] == "init"
31
- if not init_invoked and @config.exists?
30
+
31
+ if @config.exists?
32
32
  @config.load!
33
33
  @migrator = Migrator.new(@config)
34
34
  elsif not init_invoked
@@ -41,72 +41,76 @@ class CLI < Thor
41
41
 
42
42
  desc "init", "make configuration file"
43
43
  def init
44
- Log.info("Creating configuration...")
44
+ if @migrator == nil
45
+ Log.info("Creating configuration...")
45
46
 
46
- storage = nil
47
- $asker.choose do |menu|
48
- menu.prompt = "Which database do you prefer?"
47
+ storage = nil
48
+ $asker.choose do |menu|
49
+ menu.prompt = "Which database do you prefer?"
49
50
 
50
- menu.choice(:mysql) { storage = "mysql" }
51
- menu.choices(:pg) { storage = "pg" }
52
- end
51
+ menu.choice(:mysql) { storage = "mysql" }
52
+ menu.choices(:pg) { storage = "pg" }
53
+ end
53
54
 
54
- install_dep = ""
55
- case storage
56
- when "pg"
57
- if `gem list -i pg`.to_b != true
58
- install_dep = "sudo gem install pg -v #{@@pg_version}"
59
- Log.info "pg package not installed. Will install it."
55
+ install_dep = ""
56
+ case storage
57
+ when "pg"
58
+ if `gem list -i pg`.to_b != true
59
+ install_dep = "sudo gem install pg -v #{@@pg_version}"
60
+ Log.info "pg package not installed. Will install it."
61
+ end
62
+ when "mysql"
63
+ if `gem list -i mysql2`.to_b != "true"
64
+ install_dep = "sudo gem install mysql2 -v #{@@mysql_version}"
65
+ Log.info "mysql2 package not installed. Will install it."
66
+ end
60
67
  end
61
- when "mysql"
62
- if `gem list -i mysql2`.to_b != "true"
63
- install_dep = "sudo gem install mysql2 -v #{@@mysql_version}"
64
- Log.info "mysql2 package not installed. Will install it."
68
+
69
+ unless install_dep.empty?
70
+ Log.info "Running '#{install_dep}'"
71
+ unless system(install_dep)
72
+ raise "Wrror while install dependencies. Please try to run '#{install_dep}' manually and try running 'init' again."
73
+ else
74
+ Log.info "Missing dependencies installed"
75
+ end
65
76
  end
66
- end
67
77
 
68
- unless install_dep.empty?
69
- Log.info "Running '#{install_dep}'"
70
- unless system(install_dep)
71
- raise "Wrror while install dependencies. Please try to run '#{install_dep}' manually and try running 'init' again."
72
- else
73
- Log.info "Missing dependencies installed"
78
+ db_defaults = case storage
79
+ when "mysql"
80
+ { :port => "3306", :user => "root" }
81
+ when "pg"
82
+ { :port => "5432", :user => "postgres" }
74
83
  end
75
- end
76
84
 
77
- db_defaults = case storage
78
- when "mysql"
79
- { :port => "3306", :user => "root" }
80
- when "pg"
81
- { :port => "5432", :user => "postgres" }
82
- end
85
+ lang = nil
86
+ $asker.choose do |menu|
87
+ menu.prompt = "What language would you like use for your migration scripts?"
83
88
 
84
- lang = nil
85
- $asker.choose do |menu|
86
- menu.prompt = "What language would you like use for your migration scripts?"
89
+ menu.choice(:sql) { lang = "sql" }
90
+ menu.choices(:ruby) { lang = "ruby" }
91
+ menu.choice(:javascript) { lang = "javascript" }
92
+ menu.choice(:go) { lang = "go" }
93
+ menu.choice(:python) { lang = "python" }
94
+ end
87
95
 
88
- menu.choice(:sql) { lang = "sql" }
89
- menu.choices(:ruby) { lang = "ruby" }
90
- menu.choice(:javascript) { lang = "javascript" }
91
- menu.choice(:go) { lang = "go" }
92
- menu.choice(:python) { lang = "python" }
96
+ config = {
97
+ storage: storage,
98
+ lang: lang,
99
+ host: $asker.ask("Host: ") {|q| q.default = "localhost"},
100
+ port: ($asker.ask("Port: ") {|q| q.default = db_defaults[:port]}).to_i,
101
+ database: $asker.ask("Database Name: ") {|q| q.default = "mydb"},
102
+ user: $asker.ask("User: ") {|q| q.default = db_defaults[:user]},
103
+ password: $asker.ask("Password: ") {|q| q.echo = "x"},
104
+ version_info: $asker.ask("Version info table: ") {|q| q.default = "version_info"},
105
+ version_number: $asker.ask("Version number table: ") {|q| q.default = "version_number"}
106
+ }
107
+
108
+ @config.init(config)
109
+ @config.load!
110
+ @migrator = Migrator.new(@config)
93
111
  end
94
112
 
95
- config = {
96
- storage: storage,
97
- lang: lang,
98
- host: $asker.ask("Host: ") {|q| q.default = "localhost"},
99
- port: ($asker.ask("Port: ") {|q| q.default = db_defaults[:port]}).to_i,
100
- database: $asker.ask("Database Name: ") {|q| q.default = "mydb"},
101
- user: $asker.ask("User: ") {|q| q.default = db_defaults[:user]},
102
- password: $asker.ask("Password: ") {|q| q.echo = "x"},
103
- version_info: $asker.ask("Version info table: ") {|q| q.default = "version_info"},
104
- version_number: $asker.ask("Version number table: ") {|q| q.default = "version_number"}
105
- }
106
-
107
- @config.init(config)
108
- @config.load!
109
- Migrator.new(@config).init
113
+ @migrator.init
110
114
  rescue Exception => e
111
115
  Log.error("Error while initialization.", e)
112
116
  @config.delete
data/db-migrate.gemspec CHANGED
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = 'db-migrate'
3
- s.version = '0.0.4'
3
+ s.version = '0.1.0'
4
4
  s.licenses = ['MIT']
5
5
  s.summary = "Tool for managing and executing your database migrations."
6
6
  s.description = "#{s.summary} It supports multiple databases and multiple languages for writing migration scripts."
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: db-migrate
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.4
4
+ version: 0.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ivan Pusic