use_salesforce_dataloader 0.0.3 → 0.0.4
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/lib/use_salesforce_dataloader.rb +21 -10
- 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: b030d2dbd0ad470282e399110b98487e29dd07b2
|
4
|
+
data.tar.gz: c178e50b6355ba59ca2edef105b3294f5276494e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2c28d308f793576530b16ca90156d532cfc442528008ea9b74b2b01832adf46cb1ce2ab45283de365838fa435496ab4d2d0d4dde361b15f6286f39be7ff28d52
|
7
|
+
data.tar.gz: af62b73ddf21ab6776c28fe3ef7a08b5e9a86be097dcb6a59f5a6f3d8e895ad6d3a180438c393b4a2ce3c68e612912c2f0cb1aad5ccc098c27417e6077e49820
|
@@ -1,9 +1,10 @@
|
|
1
1
|
# -*- coding: utf-8 -*-
|
2
|
+
require 'open3'
|
2
3
|
|
3
4
|
# see https://developer.salesforce.com/docs/atlas.en-us.dataLoader.meta/dataLoader/loader_params.htm
|
4
5
|
class UseSalesforceDataLoader
|
5
6
|
|
6
|
-
#
|
7
|
+
# File layout:
|
7
8
|
# conf_dir/key.txt
|
8
9
|
# conf_dir/process-conf.xml
|
9
10
|
# conf_dir/map.sdl
|
@@ -18,21 +19,22 @@ class UseSalesforceDataLoader
|
|
18
19
|
@conf_map_file = @conf_dir + '/map.sdl'
|
19
20
|
end
|
20
21
|
|
21
|
-
#
|
22
|
+
# process-conf.xml
|
22
23
|
attr_accessor :bean_id
|
23
24
|
attr_accessor :bean_description
|
24
25
|
attr_accessor :property_name
|
25
26
|
attr_accessor :overwrite_entries
|
26
27
|
|
27
|
-
#
|
28
|
-
attr_accessor :endpoint
|
29
|
-
attr_accessor :username
|
30
|
-
attr_accessor :password
|
28
|
+
# Salesforce.com authentication data
|
29
|
+
attr_accessor :endpoint # ex. https://test.salesforce.com
|
30
|
+
attr_accessor :username # ex. foo@example.com
|
31
|
+
attr_accessor :password # ex. 0123456789
|
31
32
|
|
33
|
+
# jar: path of dataloader-NN.N.N-uber.jar, ex. "/usr/lib/dataloader-41.0.0-uber.jar"
|
32
34
|
# java: command line of java runtime, ex. "/usr/bin/java"
|
33
35
|
# java_opt: ex. "-Dfile.encoding=UTF-8"
|
34
|
-
|
35
|
-
|
36
|
+
def initialize(jar, java = nil, java_opt = nil)
|
37
|
+
java = exec_command('which java') unless java
|
36
38
|
path_check(java)
|
37
39
|
path_check(jar)
|
38
40
|
j = [java, java_opt, '-cp', jar].compact.join(' ')
|
@@ -50,7 +52,7 @@ class UseSalesforceDataLoader
|
|
50
52
|
#
|
51
53
|
def encrypt(args)
|
52
54
|
cmd = "#{@encrypt} #{args} | sed 's/^.*) \- //g'"
|
53
|
-
|
55
|
+
exec_command(cmd)
|
54
56
|
end
|
55
57
|
|
56
58
|
# Original: dataloader/bin/process.sh
|
@@ -58,7 +60,6 @@ class UseSalesforceDataLoader
|
|
58
60
|
#
|
59
61
|
def process_cmd(name)
|
60
62
|
path_check(@conf_dir)
|
61
|
-
path_check(@conf_key_file)
|
62
63
|
path_check(@conf_process_xml_file)
|
63
64
|
@process % [@conf_dir, name]
|
64
65
|
end
|
@@ -95,8 +96,11 @@ class UseSalesforceDataLoader
|
|
95
96
|
entries_xml]
|
96
97
|
end
|
97
98
|
|
99
|
+
private
|
100
|
+
|
98
101
|
# internal use
|
99
102
|
def default_overwrite_entries
|
103
|
+
path_check(@conf_key_file)
|
100
104
|
encrypt_password = encrypt("-e '#{@password}' '#{@conf_key_file}'")
|
101
105
|
{
|
102
106
|
'sfdc.endpoint' => @endpoint,
|
@@ -119,6 +123,13 @@ class UseSalesforceDataLoader
|
|
119
123
|
raise "Path not found: #{f}" unless File.exist?(f)
|
120
124
|
end
|
121
125
|
|
126
|
+
# internal use
|
127
|
+
def exec_command(cmd)
|
128
|
+
o, e, s = Open3.capture3(cmd)
|
129
|
+
raise "Something wrong" unless e.empty? and s.success?
|
130
|
+
o.chomp
|
131
|
+
end
|
132
|
+
|
122
133
|
PROCESS_XML_TEMPLATE = <<'PROCESS_XML'
|
123
134
|
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
|
124
135
|
<beans>
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: use_salesforce_dataloader
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Hiroaki Nagoya
|
@@ -11,7 +11,7 @@ cert_chain: []
|
|
11
11
|
date: 2017-12-30 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description:
|
14
|
-
email: hnagoya@
|
14
|
+
email: hnagoya@gmail.com
|
15
15
|
executables: []
|
16
16
|
extensions: []
|
17
17
|
extra_rdoc_files: []
|