rigrate 0.0.1 → 0.0.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.gitignore +1 -0
- data/README.md +1 -1
- data/Rakefile +0 -0
- data/bin/rigrate +0 -0
- data/lib/rigrate.rb +0 -0
- data/lib/rigrate/data_source.rb +16 -1
- data/lib/rigrate/error.rb +0 -0
- data/lib/rigrate/interface.rb +1 -15
- data/lib/rigrate/interface/driver.rb +0 -0
- data/lib/rigrate/interface/result_set.rb +0 -0
- data/lib/rigrate/interface/sqlite.rb +0 -0
- data/lib/rigrate/migration.rb +0 -0
- data/lib/rigrate/parser.rb +0 -0
- data/rigrate.gemspec +2 -4
- data/test/test_helper.rb +4 -0
- data/test/test_rigrate.rb +0 -0
- metadata +3 -30
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4b9ff4b5fcddb2e8d8b931e24609f4d4fbc05363
|
4
|
+
data.tar.gz: f2375346f434c8c526bde390f30d89877ee3e089
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6496703a9fdd5d3da384815b5aa0497bb16e31f58b96faf97124d357397ff690c76703eec0d40ad8174cf79437404987c804d43ce18f53e922e80dc7b6a382ed
|
7
|
+
data.tar.gz: 3d821e1a14765faf7559b9a782923804cbaec776e1b56996424b84787158f39a7db3d5a8c1926b5d29ada73f3baf046c7bd09d19dab0f6458e9a35aec0d80a57
|
data/.gitignore
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
rigrate-*.gem
|
data/README.md
CHANGED
@@ -139,7 +139,7 @@ Rigrate will do not use transaction as default. Switch it on, you can do it thro
|
|
139
139
|
parser.lex(str).parsing
|
140
140
|
```
|
141
141
|
4. QuickScript. a fast way to operate data, Rigrate will load a predefined data sources file in {home}/.rigrate/ds.
|
142
|
-
you can define some frequently used data source, and run in migration throught command line. like
|
142
|
+
you can define some frequently used data source, and run in migration throught command line. like below:
|
143
143
|
|
144
144
|
```shell
|
145
145
|
$ rigrate execute -c "from hr.users to oa.accounts"
|
data/Rakefile
CHANGED
File without changes
|
data/bin/rigrate
CHANGED
File without changes
|
data/lib/rigrate.rb
CHANGED
File without changes
|
data/lib/rigrate/data_source.rb
CHANGED
@@ -8,7 +8,13 @@ module Rigrate
|
|
8
8
|
|
9
9
|
def initialize(conn_uri)
|
10
10
|
uri = URI.parse(conn_uri)
|
11
|
-
|
11
|
+
klazz = uri.scheme.capitalize
|
12
|
+
begin
|
13
|
+
Module.const_get(klazz)
|
14
|
+
rescue NameError
|
15
|
+
DataSource.load_driver(klazz.downcase)
|
16
|
+
end
|
17
|
+
@dbh = eval(klazz).new conn_uri
|
12
18
|
end
|
13
19
|
|
14
20
|
def sql(str, *args)
|
@@ -34,6 +40,15 @@ module Rigrate
|
|
34
40
|
|
35
41
|
private
|
36
42
|
|
43
|
+
def self.load_driver(driver_name)
|
44
|
+
driver_path = File.expand_path(File.dirname(__FILE__) + "./interface/#{driver_name}")
|
45
|
+
unless File.exist? "#{driver_path}.rb"
|
46
|
+
raise InterfaceError.new("Driver [#{driver_name}] not found.")
|
47
|
+
end
|
48
|
+
|
49
|
+
require driver_path
|
50
|
+
end
|
51
|
+
|
37
52
|
def build_sql(table, *columns)
|
38
53
|
columns = ['*'] if columns.size == 0
|
39
54
|
|
data/lib/rigrate/error.rb
CHANGED
File without changes
|
data/lib/rigrate/interface.rb
CHANGED
@@ -3,18 +3,4 @@
|
|
3
3
|
require 'uri'
|
4
4
|
require 'rigrate/interface/driver'
|
5
5
|
require 'rigrate/interface/result_set'
|
6
|
-
require 'rigrate/interface/row'
|
7
|
-
require 'rigrate/interface/sqlite'
|
8
|
-
require 'rigrate/interface/mysql'
|
9
|
-
require 'rigrate/interface/oracle'
|
10
|
-
|
11
|
-
module Rigrate
|
12
|
-
def self.lazy_load_driver(driver_name)
|
13
|
-
driver_path = "./interface/#{driver_name}"
|
14
|
-
if File.exists? driver_path
|
15
|
-
raise InterfaceError.new('Driver not found.')
|
16
|
-
end
|
17
|
-
|
18
|
-
require driver_path
|
19
|
-
end
|
20
|
-
end
|
6
|
+
require 'rigrate/interface/row'
|
File without changes
|
File without changes
|
File without changes
|
data/lib/rigrate/migration.rb
CHANGED
File without changes
|
data/lib/rigrate/parser.rb
CHANGED
File without changes
|
data/rigrate.gemspec
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
Gem::Specification.new do |s|
|
2
2
|
s.name = 'rigrate'
|
3
|
-
s.version = '0.0.
|
3
|
+
s.version = '0.0.3'
|
4
4
|
s.executables << 'rigrate'
|
5
5
|
s.date = '2016-04-01'
|
6
6
|
s.summary = 'Ruby Migrate! data migrate tool in ruby.'
|
@@ -15,7 +15,5 @@ Gem::Specification.new do |s|
|
|
15
15
|
s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
|
16
16
|
s.require_paths = ["lib"]
|
17
17
|
|
18
|
-
s.add_dependency 'ruby-oci8', '~> 2.2'
|
19
18
|
s.add_dependency 'sqlite3', '~> 1.3'
|
20
|
-
|
21
|
-
end
|
19
|
+
end
|
data/test/test_helper.rb
CHANGED
data/test/test_rigrate.rb
CHANGED
File without changes
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rigrate
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- jiyaping
|
@@ -10,20 +10,6 @@ bindir: bin
|
|
10
10
|
cert_chain: []
|
11
11
|
date: 2016-04-01 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
|
-
- !ruby/object:Gem::Dependency
|
14
|
-
name: ruby-oci8
|
15
|
-
requirement: !ruby/object:Gem::Requirement
|
16
|
-
requirements:
|
17
|
-
- - "~>"
|
18
|
-
- !ruby/object:Gem::Version
|
19
|
-
version: '2.2'
|
20
|
-
type: :runtime
|
21
|
-
prerelease: false
|
22
|
-
version_requirements: !ruby/object:Gem::Requirement
|
23
|
-
requirements:
|
24
|
-
- - "~>"
|
25
|
-
- !ruby/object:Gem::Version
|
26
|
-
version: '2.2'
|
27
13
|
- !ruby/object:Gem::Dependency
|
28
14
|
name: sqlite3
|
29
15
|
requirement: !ruby/object:Gem::Requirement
|
@@ -38,20 +24,6 @@ dependencies:
|
|
38
24
|
- - "~>"
|
39
25
|
- !ruby/object:Gem::Version
|
40
26
|
version: '1.3'
|
41
|
-
- !ruby/object:Gem::Dependency
|
42
|
-
name: mysql
|
43
|
-
requirement: !ruby/object:Gem::Requirement
|
44
|
-
requirements:
|
45
|
-
- - "~>"
|
46
|
-
- !ruby/object:Gem::Version
|
47
|
-
version: '2.9'
|
48
|
-
type: :runtime
|
49
|
-
prerelease: false
|
50
|
-
version_requirements: !ruby/object:Gem::Requirement
|
51
|
-
requirements:
|
52
|
-
- - "~>"
|
53
|
-
- !ruby/object:Gem::Version
|
54
|
-
version: '2.9'
|
55
27
|
description: a data migrate tool between diffenect data sources write by ruby.
|
56
28
|
email: jiyaping0802@gmail.com
|
57
29
|
executables:
|
@@ -59,6 +31,7 @@ executables:
|
|
59
31
|
extensions: []
|
60
32
|
extra_rdoc_files: []
|
61
33
|
files:
|
34
|
+
- ".gitignore"
|
62
35
|
- README.md
|
63
36
|
- Rakefile
|
64
37
|
- bin/rigrate
|
@@ -106,7 +79,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
106
79
|
version: '0'
|
107
80
|
requirements: []
|
108
81
|
rubyforge_project:
|
109
|
-
rubygems_version: 2.
|
82
|
+
rubygems_version: 2.5.1
|
110
83
|
signing_key:
|
111
84
|
specification_version: 4
|
112
85
|
summary: Ruby Migrate! data migrate tool in ruby.
|