rigrate 0.0.1 → 0.0.3
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/.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.
|