lorj 1.0.12 → 1.0.13
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/bin/lorj_account_import.rb +128 -0
- data/build/build_with_proxy.sh +1 -1
- data/lib/core/core.rb +36 -1
- data/lib/core/core_import_export.rb +168 -0
- data/lib/core/core_setup_encrypt.rb +52 -25
- data/lib/core/lorj_basecontroller.rb +154 -0
- data/lib/core/lorj_baseprocess.rb +16 -0
- data/lib/lorj/version.rb +2 -2
- data/lib/lorj.rb +1 -0
- data/lib/lorj_account.rb +17 -1
- data/lorj-spec/cache/.key +2 -0
- data/lorj-spec/data/accounts/test.yaml +21 -0
- data/lorj-spec/data/config.yaml +15 -0
- data/lorj-spec/process/mock/data.yaml +39 -0
- data/lorj-spec/process/mock/defaults.yaml +0 -20
- data/lorj.gemspec +1 -1
- data/spec/05_lorj_keypath_spec.rb +19 -5
- data/spec/06_lorj_object_data_spec.rb +19 -5
- data/spec/09_prc_spec.rb +31 -6
- data/spec/10_lorj_log_spec.rb +21 -7
- data/spec/11_lorj_defaults_spec.rb +18 -6
- data/spec/12_lorj_config_spec.rb +18 -6
- data/spec/13_lorj_account_spec.rb +25 -6
- data/spec/20_lorj_meta_spec.rb +24 -8
- data/spec/21_lorj_processes_spec.rb +18 -6
- data/spec/22_lorj_core_spec.rb +19 -6
- data/spec/30_lorj_basedefinition_spec.rb +125 -0
- data/spec/31_lorj_importexport_spec.rb +182 -0
- data/spec/spec_helper.rb +54 -0
- metadata +43 -33
@@ -0,0 +1,125 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
# encoding: UTF-8
|
3
|
+
|
4
|
+
# (c) Copyright 2014 Hewlett-Packard Development Company, L.P.
|
5
|
+
#
|
6
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
7
|
+
# you may not use this file except in compliance with the License.
|
8
|
+
# You may obtain a copy of the License at
|
9
|
+
#
|
10
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
11
|
+
#
|
12
|
+
# Unless required by applicable law or agreed to in writing, software
|
13
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
14
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
15
|
+
# See the License for the specific language governing permissions and
|
16
|
+
# limitations under the License.
|
17
|
+
|
18
|
+
# To debug spec, depending on Ruby version, you may need to install
|
19
|
+
# 1.8 => ruby-debug
|
20
|
+
# 1.9 => debugger
|
21
|
+
# 2.0+ => byebug
|
22
|
+
# The right debugger should be installed by default by bundle
|
23
|
+
# So, just call:
|
24
|
+
#
|
25
|
+
# bundle
|
26
|
+
#
|
27
|
+
# Then set RSPEC_DEBUG=true, put a 'stop' where you want in the spec code
|
28
|
+
# and start rspec or even rake spec.
|
29
|
+
#
|
30
|
+
# RSPEC_DEBUG=true rake spec_local (or spec which includes docker spec)
|
31
|
+
# OR
|
32
|
+
# RSPEC_DEBUG=true rspec -f doc --color spec/<file>_spec.rb
|
33
|
+
#
|
34
|
+
|
35
|
+
app_path = File.dirname(__FILE__)
|
36
|
+
$LOAD_PATH << app_path unless $LOAD_PATH.include?(app_path)
|
37
|
+
require 'spec_helper'
|
38
|
+
|
39
|
+
describe 'Internal BaseDefinition features' do
|
40
|
+
context 'From a derived class' do
|
41
|
+
before(:all) do
|
42
|
+
# Spec class for BaseDefinition
|
43
|
+
class BaseDefinitionSpec < Lorj::BaseDefinition
|
44
|
+
def initialize
|
45
|
+
end
|
46
|
+
|
47
|
+
def self.def_internal(name)
|
48
|
+
spec_name = 'spec' + name
|
49
|
+
|
50
|
+
# To call the function identified internally with 'spec' prefix
|
51
|
+
define_method(spec_name) do |*p|
|
52
|
+
send(name, *p)
|
53
|
+
end
|
54
|
+
end
|
55
|
+
|
56
|
+
# Internal function to test.
|
57
|
+
def_internal '_new_encrypt_key'
|
58
|
+
def_internal '_get_encrypt_key'
|
59
|
+
def_internal '_get_encrypted_value_hidden'
|
60
|
+
def_internal '_get_encrypted_value'
|
61
|
+
def_internal '_encrypt_value'
|
62
|
+
def_internal '_account_map'
|
63
|
+
end
|
64
|
+
|
65
|
+
@spec_obj = BaseDefinitionSpec.new
|
66
|
+
|
67
|
+
PrcLib.pdata_path = File.join(app_path, 'lorj-spec')
|
68
|
+
@key_file = File.join(PrcLib.pdata_path, '.key')
|
69
|
+
File.delete(@key_file) if File.exist?(@key_file)
|
70
|
+
end
|
71
|
+
|
72
|
+
after(:all) do
|
73
|
+
File.delete(@key_file) if File.exist?(@key_file)
|
74
|
+
end
|
75
|
+
|
76
|
+
it '_new_encrypt_key return a new entr hash' do
|
77
|
+
ret = @spec_obj.spec_new_encrypt_key
|
78
|
+
expect(ret.class).to equal(Hash)
|
79
|
+
expect(ret.keys.sort).to eq([:key, :salt, :iv].sort)
|
80
|
+
expect(ret[:key].class).to equal(String)
|
81
|
+
expect(ret[:salt].class).to equal(String)
|
82
|
+
expect(ret[:iv].class).to equal(String)
|
83
|
+
end
|
84
|
+
|
85
|
+
it '_get_encrypt_key return entr, .key file created' do
|
86
|
+
ret = @spec_obj.spec_get_encrypt_key
|
87
|
+
expect(ret.class).to equal(Hash)
|
88
|
+
expect(ret.keys.sort).to eq([:key, :salt, :iv].sort)
|
89
|
+
expect(ret[:key].class).to equal(String)
|
90
|
+
expect(ret[:salt].class).to equal(String)
|
91
|
+
expect(ret[:iv].class).to equal(String)
|
92
|
+
expect(File.exist?(@key_file)).to equal(true)
|
93
|
+
expect(@spec_obj.spec_get_encrypt_key).to eq(ret)
|
94
|
+
end
|
95
|
+
|
96
|
+
it '_encrypt_value return a strict base64 data' do
|
97
|
+
to_enc = 'Data to encrypt'
|
98
|
+
entr = @spec_obj.spec_get_encrypt_key
|
99
|
+
ret = @spec_obj.spec_encrypt_value(to_enc, entr)
|
100
|
+
|
101
|
+
expect(Base64.strict_decode64(ret).class).to eq(String)
|
102
|
+
expect(ret).to eq(@spec_obj.spec_encrypt_value(to_enc, entr))
|
103
|
+
end
|
104
|
+
|
105
|
+
it '_get_encrypted_value return is decryptable' do
|
106
|
+
to_enc = 'Data to encrypt'
|
107
|
+
entr = @spec_obj.spec_get_encrypt_key
|
108
|
+
ret = @spec_obj.spec_encrypt_value(to_enc, entr)
|
109
|
+
|
110
|
+
expect(@spec_obj.spec_get_encrypted_value(ret, entr,
|
111
|
+
'value')).to eq(to_enc)
|
112
|
+
end
|
113
|
+
|
114
|
+
it '_get_encrypted_value_hidden string contains count of * equal to '\
|
115
|
+
'original value' do
|
116
|
+
to_enc = 'Data to encrypt'
|
117
|
+
entr = @spec_obj.spec_get_encrypt_key
|
118
|
+
ret = @spec_obj.spec_encrypt_value(to_enc, entr)
|
119
|
+
hidden = @spec_obj.spec_get_encrypted_value_hidden('value', ret, entr)
|
120
|
+
|
121
|
+
expect(hidden.include?('*')).to equal(true)
|
122
|
+
expect('*' * to_enc.length).to eq(hidden)
|
123
|
+
end
|
124
|
+
end
|
125
|
+
end
|
@@ -0,0 +1,182 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
# encoding: UTF-8
|
3
|
+
|
4
|
+
# (c) Copyright 2014 Hewlett-Packard Development Company, L.P.
|
5
|
+
#
|
6
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
7
|
+
# you may not use this file except in compliance with the License.
|
8
|
+
# You may obtain a copy of the License at
|
9
|
+
#
|
10
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
11
|
+
#
|
12
|
+
# Unless required by applicable law or agreed to in writing, software
|
13
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
14
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
15
|
+
# See the License for the specific language governing permissions and
|
16
|
+
# limitations under the License.
|
17
|
+
|
18
|
+
# To debug spec, depending on Ruby version, you may need to install
|
19
|
+
# 1.8 => ruby-debug
|
20
|
+
# 1.9 => debugger
|
21
|
+
# 2.0+ => byebug
|
22
|
+
# The right debugger should be installed by default by bundle
|
23
|
+
# So, just call:
|
24
|
+
#
|
25
|
+
# bundle
|
26
|
+
#
|
27
|
+
# Then set RSPEC_DEBUG=true, put a 'stop' where you want in the spec code
|
28
|
+
# and start rspec or even rake spec.
|
29
|
+
#
|
30
|
+
# RSPEC_DEBUG=true rake spec_local (or spec which includes docker spec)
|
31
|
+
# OR
|
32
|
+
# RSPEC_DEBUG=true rspec -f doc --color spec/<file>_spec.rb
|
33
|
+
#
|
34
|
+
|
35
|
+
app_path = File.dirname(__FILE__)
|
36
|
+
$LOAD_PATH << app_path unless $LOAD_PATH.include?(app_path)
|
37
|
+
require 'spec_helper'
|
38
|
+
|
39
|
+
describe 'Internal BaseDefinition features' do
|
40
|
+
context 'From a derived class' do
|
41
|
+
before(:all) do
|
42
|
+
# Used to help en/decrypting
|
43
|
+
class BaseDefinitionSpec < Lorj::BaseDefinition
|
44
|
+
def initialize
|
45
|
+
end
|
46
|
+
|
47
|
+
def self.def_internal(name)
|
48
|
+
spec_name = 's' + name
|
49
|
+
|
50
|
+
# To call the function identified internally with 'spec' prefix
|
51
|
+
define_method(spec_name) do |*p|
|
52
|
+
send(name, *p)
|
53
|
+
end
|
54
|
+
end
|
55
|
+
|
56
|
+
# Internal function to test.
|
57
|
+
def_internal '_get_encrypt_key'
|
58
|
+
def_internal '_get_encrypted_value'
|
59
|
+
def_internal '_encrypt_value'
|
60
|
+
end
|
61
|
+
|
62
|
+
# Spec class for ImportExport feature spec
|
63
|
+
class ImportExportSpec < Lorj::BaseDefinition
|
64
|
+
# Simplified BaseDefinition class for spec only
|
65
|
+
def initialize(config)
|
66
|
+
@config = config
|
67
|
+
end
|
68
|
+
|
69
|
+
def self.def_internal(name)
|
70
|
+
spec_name = 'spec' + name
|
71
|
+
|
72
|
+
# To call the function identified internally with 'spec' prefix
|
73
|
+
define_method(spec_name) do |*p|
|
74
|
+
send(name, *p)
|
75
|
+
end
|
76
|
+
end
|
77
|
+
|
78
|
+
# Internal function to test.
|
79
|
+
def_internal '_account_map'
|
80
|
+
end
|
81
|
+
|
82
|
+
PrcLib.spec_cleanup
|
83
|
+
Lorj.spec_cleanup
|
84
|
+
PrcLib.app_name = 'lorj-rspec'
|
85
|
+
PrcLib.pdata_path = File.join(app_path, '..', 'lorj-spec', 'cache')
|
86
|
+
PrcLib.data_path = File.join(app_path, '..', 'lorj-spec', 'data')
|
87
|
+
|
88
|
+
@config = Lorj::Account.new
|
89
|
+
@spec_obj = ImportExportSpec.new(@config)
|
90
|
+
|
91
|
+
process_path = File.expand_path(File.join(app_path, '..', 'lorj-spec'))
|
92
|
+
Lorj.declare_process('mock', process_path)
|
93
|
+
|
94
|
+
@core = Lorj::Core.new(@config, [{ :process_module => :mock }])
|
95
|
+
|
96
|
+
@key_file = File.join(PrcLib.pdata_path, '.key')
|
97
|
+
@crypt = BaseDefinitionSpec.new
|
98
|
+
@config[:keypair_name] = 'another_key'
|
99
|
+
end
|
100
|
+
|
101
|
+
it '_account_map return {} as no account loaded.' do
|
102
|
+
expect(@spec_obj.spec_account_map).to eq({})
|
103
|
+
end
|
104
|
+
|
105
|
+
it 'Load test account and _account_map return valid data.' do
|
106
|
+
# Load lorj-spec/data/accounts/test.yaml
|
107
|
+
expect(@config.ac_load 'test.yaml').to equal(true)
|
108
|
+
res = %w(credentials#key credentials#keypair_name)
|
109
|
+
expect(@spec_obj.spec_account_map.keys.sort).to eq(res)
|
110
|
+
expect(@spec_obj.spec_account_map['credentials#key']).to eq({})
|
111
|
+
end
|
112
|
+
|
113
|
+
it 'account_export() returns valid [entr, data_enc]' do
|
114
|
+
export = @spec_obj.account_export
|
115
|
+
expect(export.class).to equal(Array)
|
116
|
+
entr, data_encrypted = export
|
117
|
+
data_decrypted = @crypt.s_get_encrypted_value(data_encrypted,
|
118
|
+
entr, 'data encrypted')
|
119
|
+
expect(data_decrypted.class).to equal(String)
|
120
|
+
data = YAML.load(data_decrypted)
|
121
|
+
expect(data.rh_exist?(:account, :name)).to equal(true)
|
122
|
+
expect(data.rh_get(:account, :name)).to eq('test')
|
123
|
+
expect(data.rh_exist?(:credentials, :keypair_name)).to equal(true)
|
124
|
+
expect(data.rh_get(:credentials, :keypair_name)).to eq('mykey')
|
125
|
+
expect(data.rh_exist?(:credentials, :key)).to equal(true)
|
126
|
+
expect(data.rh_get(:credentials, :key)).to eq('DataEncrypted')
|
127
|
+
end
|
128
|
+
|
129
|
+
it 'account_export(nil, false) returns account@name and credentials#key' do
|
130
|
+
entr, data_encrypted = @spec_obj.account_export(nil, false)
|
131
|
+
data_decrypted = @crypt.s_get_encrypted_value(data_encrypted,
|
132
|
+
entr, 'data encrypted')
|
133
|
+
data = YAML.load(data_decrypted)
|
134
|
+
expect(data.rh_exist?(:account, :name)).to equal(false)
|
135
|
+
expect(data.rh_exist?(:credentials, :key)).to equal(true)
|
136
|
+
end
|
137
|
+
|
138
|
+
it 'account_export(nil, false, false) returns "runtime" keypair_name'\
|
139
|
+
' value' do
|
140
|
+
entr, data_encrypted = @spec_obj.account_export(nil, false, false)
|
141
|
+
data_decrypted = @crypt.s_get_encrypted_value(data_encrypted,
|
142
|
+
entr, 'data encrypted')
|
143
|
+
data = YAML.load(data_decrypted)
|
144
|
+
expect(data.rh_exist?(:credentials, :keypair_name)).to equal(true)
|
145
|
+
expect(data.rh_get(:credentials, :keypair_name)).to eq('another_key')
|
146
|
+
end
|
147
|
+
|
148
|
+
it 'account_export({"credentials#key" => {}}) returns key, '\
|
149
|
+
'name & provider' do
|
150
|
+
entr, data_encrypted = @spec_obj.account_export('credentials#key' => {})
|
151
|
+
data_decrypted = @crypt.s_get_encrypted_value(data_encrypted,
|
152
|
+
entr, 'data encrypted')
|
153
|
+
data = YAML.load(data_decrypted)
|
154
|
+
expect(data.rh_exist?(:credentials, :keypair_name)).to equal(false)
|
155
|
+
expect(data.rh_exist?(:credentials, :key)).to equal(true)
|
156
|
+
expect(data.rh_exist?(:account, :name)).to equal(true)
|
157
|
+
end
|
158
|
+
|
159
|
+
it 'account_export({"credentials#key" => {:keys => [:server, :key]}})'\
|
160
|
+
' returns ' do
|
161
|
+
map = { 'credentials#key' => { :keys => [:server, :key] } }
|
162
|
+
entr, data_encrypted = @spec_obj.account_export(map)
|
163
|
+
data_decrypted = @crypt.s_get_encrypted_value(data_encrypted,
|
164
|
+
entr, 'data encrypted')
|
165
|
+
data = YAML.load(data_decrypted)
|
166
|
+
expect(data.rh_exist?(:credentials, :key)).to equal(false)
|
167
|
+
expect(data.rh_exist?(:server, :key)).to equal(true)
|
168
|
+
expect(data.rh_exist?(:account, :name)).to equal(true)
|
169
|
+
end
|
170
|
+
|
171
|
+
it 'account_import(entr, enc_hash) update the "account layer"' do
|
172
|
+
entr, data_encrypted = @spec_obj.account_export
|
173
|
+
@config.ac_erase
|
174
|
+
data = @spec_obj.account_import(entr, data_encrypted)
|
175
|
+
expect(data.class).to equal(Hash)
|
176
|
+
expect(@config['account#name']).to eq('test')
|
177
|
+
expect(@config[:keypair_name]).to eq('another_key')
|
178
|
+
expect(@config.get(:keypair_name, nil,
|
179
|
+
:name => 'account')).to eq('mykey')
|
180
|
+
end
|
181
|
+
end
|
182
|
+
end
|
data/spec/spec_helper.rb
CHANGED
@@ -32,3 +32,57 @@ else
|
|
32
32
|
def stop
|
33
33
|
end
|
34
34
|
end
|
35
|
+
|
36
|
+
require 'lorj'
|
37
|
+
|
38
|
+
# Define some spec addon
|
39
|
+
module PrcLib
|
40
|
+
module_function
|
41
|
+
|
42
|
+
# Attribute app_name
|
43
|
+
#
|
44
|
+
# app_name is set to 'lorj' if not set.
|
45
|
+
#
|
46
|
+
def spec_cleanup
|
47
|
+
instance_variables.each do |v|
|
48
|
+
# @lib_path is set by require 'lorj'. We should never update it.
|
49
|
+
# @core_level is set by require 'lorj'. We should never update it.
|
50
|
+
next if [:'@lib_path', :'@core_level'].include?(v)
|
51
|
+
instance_variable_set(v, nil)
|
52
|
+
end
|
53
|
+
end
|
54
|
+
|
55
|
+
def to_s
|
56
|
+
a = {}
|
57
|
+
instance_variables.each do |v|
|
58
|
+
a[v] = instance_variable_get(v)
|
59
|
+
end
|
60
|
+
a
|
61
|
+
end
|
62
|
+
end
|
63
|
+
|
64
|
+
# Define some spec addon
|
65
|
+
module Lorj
|
66
|
+
module_function
|
67
|
+
|
68
|
+
# Attribute app_name
|
69
|
+
#
|
70
|
+
# app_name is set to 'lorj' if not set.
|
71
|
+
#
|
72
|
+
def spec_cleanup
|
73
|
+
instance_variables.each do |v|
|
74
|
+
# @lib_path is set by require 'lorj'. We should never update it.
|
75
|
+
# @core_level is set by require 'lorj'. We should never update it.
|
76
|
+
next if [:'@lib_path', :'@core_level'].include?(v)
|
77
|
+
instance_variable_set(v, nil)
|
78
|
+
end
|
79
|
+
end
|
80
|
+
|
81
|
+
def to_s
|
82
|
+
a = {}
|
83
|
+
instance_variables.each do |v|
|
84
|
+
a[v] = instance_variable_get(v)
|
85
|
+
end
|
86
|
+
a
|
87
|
+
end
|
88
|
+
end
|
metadata
CHANGED
@@ -1,111 +1,111 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: lorj
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.13
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- forj team
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-06-
|
11
|
+
date: 2015-06-22 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- -
|
17
|
+
- - ">="
|
18
18
|
- !ruby/object:Gem::Version
|
19
19
|
version: '0'
|
20
20
|
type: :development
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
|
-
- -
|
24
|
+
- - ">="
|
25
25
|
- !ruby/object:Gem::Version
|
26
26
|
version: '0'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: rake
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
|
-
- - ~>
|
31
|
+
- - "~>"
|
32
32
|
- !ruby/object:Gem::Version
|
33
33
|
version: '10.0'
|
34
34
|
type: :development
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
|
-
- - ~>
|
38
|
+
- - "~>"
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: '10.0'
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: rspec
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
|
-
- - ~>
|
45
|
+
- - "~>"
|
46
46
|
- !ruby/object:Gem::Version
|
47
47
|
version: 3.1.0
|
48
48
|
type: :development
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
|
-
- - ~>
|
52
|
+
- - "~>"
|
53
53
|
- !ruby/object:Gem::Version
|
54
54
|
version: 3.1.0
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: rdoc
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
|
-
- -
|
59
|
+
- - ">="
|
60
60
|
- !ruby/object:Gem::Version
|
61
61
|
version: '0'
|
62
62
|
type: :development
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
|
-
- -
|
66
|
+
- - ">="
|
67
67
|
- !ruby/object:Gem::Version
|
68
68
|
version: '0'
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: config_layers
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
72
72
|
requirements:
|
73
|
-
- - ~>
|
73
|
+
- - "~>"
|
74
74
|
- !ruby/object:Gem::Version
|
75
|
-
version: 0.1.
|
75
|
+
version: 0.1.5
|
76
76
|
type: :runtime
|
77
77
|
prerelease: false
|
78
78
|
version_requirements: !ruby/object:Gem::Requirement
|
79
79
|
requirements:
|
80
|
-
- - ~>
|
80
|
+
- - "~>"
|
81
81
|
- !ruby/object:Gem::Version
|
82
|
-
version: 0.1.
|
82
|
+
version: 0.1.5
|
83
83
|
- !ruby/object:Gem::Dependency
|
84
84
|
name: highline
|
85
85
|
requirement: !ruby/object:Gem::Requirement
|
86
86
|
requirements:
|
87
|
-
- - ~>
|
87
|
+
- - "~>"
|
88
88
|
- !ruby/object:Gem::Version
|
89
89
|
version: 1.6.21
|
90
90
|
type: :runtime
|
91
91
|
prerelease: false
|
92
92
|
version_requirements: !ruby/object:Gem::Requirement
|
93
93
|
requirements:
|
94
|
-
- - ~>
|
94
|
+
- - "~>"
|
95
95
|
- !ruby/object:Gem::Version
|
96
96
|
version: 1.6.21
|
97
97
|
- !ruby/object:Gem::Dependency
|
98
98
|
name: ansi
|
99
99
|
requirement: !ruby/object:Gem::Requirement
|
100
100
|
requirements:
|
101
|
-
- -
|
101
|
+
- - ">="
|
102
102
|
- !ruby/object:Gem::Version
|
103
103
|
version: 1.4.3
|
104
104
|
type: :runtime
|
105
105
|
prerelease: false
|
106
106
|
version_requirements: !ruby/object:Gem::Requirement
|
107
107
|
requirements:
|
108
|
-
- -
|
108
|
+
- - ">="
|
109
109
|
- !ruby/object:Gem::Version
|
110
110
|
version: 1.4.3
|
111
111
|
- !ruby/object:Gem::Dependency
|
@@ -126,42 +126,42 @@ dependencies:
|
|
126
126
|
name: json
|
127
127
|
requirement: !ruby/object:Gem::Requirement
|
128
128
|
requirements:
|
129
|
-
- -
|
129
|
+
- - ">="
|
130
130
|
- !ruby/object:Gem::Version
|
131
131
|
version: '0'
|
132
132
|
type: :runtime
|
133
133
|
prerelease: false
|
134
134
|
version_requirements: !ruby/object:Gem::Requirement
|
135
135
|
requirements:
|
136
|
-
- -
|
136
|
+
- - ">="
|
137
137
|
- !ruby/object:Gem::Version
|
138
138
|
version: '0'
|
139
139
|
- !ruby/object:Gem::Dependency
|
140
140
|
name: byebug
|
141
141
|
requirement: !ruby/object:Gem::Requirement
|
142
142
|
requirements:
|
143
|
-
- -
|
143
|
+
- - ">="
|
144
144
|
- !ruby/object:Gem::Version
|
145
145
|
version: '0'
|
146
146
|
type: :development
|
147
147
|
prerelease: false
|
148
148
|
version_requirements: !ruby/object:Gem::Requirement
|
149
149
|
requirements:
|
150
|
-
- -
|
150
|
+
- - ">="
|
151
151
|
- !ruby/object:Gem::Version
|
152
152
|
version: '0'
|
153
153
|
- !ruby/object:Gem::Dependency
|
154
154
|
name: rubocop
|
155
155
|
requirement: !ruby/object:Gem::Requirement
|
156
156
|
requirements:
|
157
|
-
- - ~>
|
157
|
+
- - "~>"
|
158
158
|
- !ruby/object:Gem::Version
|
159
159
|
version: 0.30.0
|
160
160
|
type: :development
|
161
161
|
prerelease: false
|
162
162
|
version_requirements: !ruby/object:Gem::Requirement
|
163
163
|
requirements:
|
164
|
-
- - ~>
|
164
|
+
- - "~>"
|
165
165
|
- !ruby/object:Gem::Version
|
166
166
|
version: 0.30.0
|
167
167
|
description: |2
|
@@ -171,19 +171,21 @@ email:
|
|
171
171
|
- forj@forj.io
|
172
172
|
executables:
|
173
173
|
- cloud_test.rb
|
174
|
+
- lorj_account_import.rb
|
174
175
|
extensions: []
|
175
176
|
extra_rdoc_files: []
|
176
177
|
files:
|
177
|
-
- .gitignore
|
178
|
-
- .gitreview
|
179
|
-
- .rspec
|
180
|
-
- .rubocop.yml
|
178
|
+
- ".gitignore"
|
179
|
+
- ".gitreview"
|
180
|
+
- ".rspec"
|
181
|
+
- ".rubocop.yml"
|
181
182
|
- Dockerfile
|
182
183
|
- Gemfile
|
183
184
|
- LICENSE.txt
|
184
185
|
- README.md
|
185
186
|
- Rakefile
|
186
187
|
- bin/cloud_test.rb
|
188
|
+
- bin/lorj_account_import.rb
|
187
189
|
- build/build_with_proxy.sh
|
188
190
|
- example/students_1/process/students.rb
|
189
191
|
- example/students_1/student_v1.md
|
@@ -223,6 +225,7 @@ files:
|
|
223
225
|
- lib/core/compat/lorj_data.rb
|
224
226
|
- lib/core/core.rb
|
225
227
|
- lib/core/core_controller.rb
|
228
|
+
- lib/core/core_import_export.rb
|
226
229
|
- lib/core/core_internal.rb
|
227
230
|
- lib/core/core_model.rb
|
228
231
|
- lib/core/core_object_data.rb
|
@@ -259,6 +262,9 @@ files:
|
|
259
262
|
- lib/providers/templates/compute.rb
|
260
263
|
- lib/providers/templates/mycloud.rb
|
261
264
|
- lib/providers/templates/network.rb
|
265
|
+
- lorj-spec/cache/.key
|
266
|
+
- lorj-spec/data/accounts/test.yaml
|
267
|
+
- lorj-spec/data/config.yaml
|
262
268
|
- lorj-spec/defaults.yaml
|
263
269
|
- lorj-spec/process/mock/controllers/mock/mock.rb
|
264
270
|
- lorj-spec/process/mock/data.yaml
|
@@ -278,6 +284,8 @@ files:
|
|
278
284
|
- spec/20_lorj_meta_spec.rb
|
279
285
|
- spec/21_lorj_processes_spec.rb
|
280
286
|
- spec/22_lorj_core_spec.rb
|
287
|
+
- spec/30_lorj_basedefinition_spec.rb
|
288
|
+
- spec/31_lorj_importexport_spec.rb
|
281
289
|
- spec/spec_helper.rb
|
282
290
|
homepage: https://github.com/forj-oss/lorj
|
283
291
|
licenses:
|
@@ -285,23 +293,23 @@ licenses:
|
|
285
293
|
metadata: {}
|
286
294
|
post_install_message:
|
287
295
|
rdoc_options:
|
288
|
-
- --title Lorj - The Process Controllers framework system
|
289
|
-
- --main README.md
|
296
|
+
- "--title Lorj - The Process Controllers framework system"
|
297
|
+
- "--main README.md"
|
290
298
|
require_paths:
|
291
299
|
- lib
|
292
300
|
required_ruby_version: !ruby/object:Gem::Requirement
|
293
301
|
requirements:
|
294
|
-
- -
|
302
|
+
- - ">="
|
295
303
|
- !ruby/object:Gem::Version
|
296
304
|
version: '0'
|
297
305
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
298
306
|
requirements:
|
299
|
-
- -
|
307
|
+
- - ">="
|
300
308
|
- !ruby/object:Gem::Version
|
301
309
|
version: '0'
|
302
310
|
requirements: []
|
303
311
|
rubyforge_project:
|
304
|
-
rubygems_version: 2.
|
312
|
+
rubygems_version: 2.2.3
|
305
313
|
signing_key:
|
306
314
|
specification_version: 4
|
307
315
|
summary: Process Controllers framework system
|
@@ -316,4 +324,6 @@ test_files:
|
|
316
324
|
- spec/20_lorj_meta_spec.rb
|
317
325
|
- spec/21_lorj_processes_spec.rb
|
318
326
|
- spec/22_lorj_core_spec.rb
|
327
|
+
- spec/30_lorj_basedefinition_spec.rb
|
328
|
+
- spec/31_lorj_importexport_spec.rb
|
319
329
|
- spec/spec_helper.rb
|