istox 0.1.157.8 → 0.1.157.11.pre.t1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: b20a5f70bdafe311ffc02576324bed01c75d2ae6a95d93d8ced8a3ff6faf38af
4
- data.tar.gz: fae479809eb6517be5c67cfc79125059f74cfe00978fee53ee219ce31bce0edd
3
+ metadata.gz: 0c153059c45a80a2943535a6a7d117a427155c92c51788f6b1a2dc8ead1af8fa
4
+ data.tar.gz: 5fa6c306be3c8944f0c2168f1e54a0446bd84b8e838f2ffde341be38acd0b98e
5
5
  SHA512:
6
- metadata.gz: 627932e0f956f2b7bb2819ecb589606d33cdd74191df07a862ca91c78cff61c3809f2c881a906c0af19cfd8bb758a2904e66846a4bd19a88928cbb04c367fd02
7
- data.tar.gz: 89cce563fe2225b1f0aaa23e604a737ef774145f68f19c75bc04f5105bbe7afa942c3058ceed369a8242c27c5e6e50aa637975d0d35f6f4ee97c0f236f3c71ae
6
+ metadata.gz: a468734220c0bc70784c9f756f23509ab09c1982febb133ac8a879be8227a2650c9c1021c981a6ec2b1a8de9e5b5204b965ea4283069ab986164806b01f23c56
7
+ data.tar.gz: 9fa45e75bea57560e8eab88d8ebb57e3565562b6be77c97890b4372f9cf76ae55b9a0f4ccce19218b8e08397b5206bf33911527f46d5c764ec9ab6cc28d331fb
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- istox (0.1.157.5)
4
+ istox (0.1.157.9)
5
5
  amazing_print
6
6
  awesome_print
7
7
  aws-sdk-sns (~> 1)
@@ -86,14 +86,13 @@ GEM
86
86
  aws-xray-sdk (0.11.4)
87
87
  aws-sdk-xray (~> 1.4.0)
88
88
  multi_json (~> 1)
89
- bigdecimal (2.0.0)
90
89
  binding_of_caller (0.8.0)
91
90
  debug_inspector (>= 0.0.1)
92
91
  builder (3.2.4)
93
92
  bullet (5.7.6)
94
93
  activesupport (>= 3.0.0)
95
94
  uniform_notifier (~> 1.11.0)
96
- bunny (2.16.1)
95
+ bunny (2.17.0)
97
96
  amq-protocol (~> 2.3, >= 2.3.1)
98
97
  byebug (11.1.3)
99
98
  coderay (1.1.2)
@@ -127,14 +126,14 @@ GEM
127
126
  faraday (>= 1.0)
128
127
  faraday_middleware
129
128
  graphql-client
130
- graphql (1.11.3)
129
+ graphql (1.11.4)
131
130
  graphql-client (0.16.0)
132
131
  activesupport (>= 3.0)
133
132
  graphql (~> 1.8)
134
- grpc (1.31.1-universal-darwin)
135
- google-protobuf (~> 3.12)
133
+ grpc (1.32.0-universal-darwin)
134
+ google-protobuf (~> 3.13)
136
135
  googleapis-common-protos-types (~> 1.0)
137
- grpc-tools (1.31.1)
136
+ grpc-tools (1.32.0)
138
137
  gruf (2.8.1)
139
138
  activesupport (> 4)
140
139
  concurrent-ruby (> 1)
@@ -171,8 +170,7 @@ GEM
171
170
  nio4r (2.3.1)
172
171
  nokogiri (1.10.9)
173
172
  mini_portile2 (~> 2.4.0)
174
- oj (3.10.9)
175
- bigdecimal (~> 2.0)
173
+ oj (3.10.14)
176
174
  ougai (1.8.5)
177
175
  oj (~> 3.10)
178
176
  paranoia (2.4.2)
@@ -26,7 +26,12 @@ module Istox
26
26
  txhash: transaction.txn_hashes.present? ? transaction.txn_hashes.join(',') : nil)
27
27
 
28
28
  resource = begin
29
- class_eval("::#{receipt.resource_name}", __FILE__, __LINE__).find(receipt.resource_id)
29
+ cls = class_eval("::#{receipt.resource_name}", __FILE__, __LINE__)
30
+ if cls.respond_to?('with_deleted')
31
+ cls.with_deleted.find(receipt.resource_id)
32
+ else
33
+ cls.find(receipt.resource_id)
34
+ end
30
35
  rescue NameError
31
36
  log.warn "Transaction bind to #{receipt.resource_name} with id #{receipt.resource_id} class not found, skipping..."
32
37
  return
@@ -8,8 +8,8 @@ module Istox
8
8
  @@blockchain_receipt_klass
9
9
  end
10
10
 
11
- def self.request(sid:, action:, before:, execute:)
12
- start(sid: sid, action: action, before: before, execute: execute, is_request: true)
11
+ def self.request(sid:, action:, before:, execute:, request_reason: nil)
12
+ start(sid: sid, action: action, before: before, execute: execute, is_request: true, request_reason: request_reason)
13
13
  end
14
14
 
15
15
  def self.run(sid:, action:, before:, execute:)
@@ -19,7 +19,7 @@ module Istox
19
19
  private
20
20
 
21
21
  # before is the proc that will be executed before, must return the main model blockchain receipt will bind to
22
- def start(sid:, action:, before:, execute:, is_request: false)
22
+ def start(sid:, action:, before:, execute:, is_request: false, request_reason: nil)
23
23
  # create blockchain receipt first
24
24
  klass = blockchain_receipt_class
25
25
  uuid = ::SecureRandom.uuid
@@ -27,6 +27,7 @@ module Istox
27
27
  txid: uuid,
28
28
  sid: sid,
29
29
  is_request: is_request,
30
+ request_reason: request_reason,
30
31
  resource_action: action
31
32
  )
32
33
 
@@ -82,7 +82,15 @@ module Istox
82
82
 
83
83
  log.info 'Reinitiating to grpc host at ' + host_url
84
84
  t1 = Time.now
85
- @@services[get_key(host_type, service)] = ::Gruf::Client.new(service: service, options: { hostname: host_url }, client_options: client_options)
85
+ grpc_options = { hostname: host_url }
86
+ if ENV.fetch('SSL_CHANNEL_CREDENTIALS', false)
87
+ grpc_options[:channel_credentials] = ENV['SSL_CHANNEL_CREDENTIALS']
88
+ elsif ENV.fetch('SSL_CERTIFICATE', false)
89
+ grpc_options[:ssl_certificate] = ENV['SSL_CERTIFICATE']
90
+ elsif ENV.fetch('SSL_CERTIFICATE_FILE', false)
91
+ grpc_options[:ssl_certificate_file] = ENV['SSL_CERTIFICATE_FILE']
92
+ end
93
+ @@services[get_key(host_type, service)] = ::Gruf::Client.new(service: service, options: grpc_options, client_options: client_options)
86
94
  log.info "Time taken for reinitiating grpc host: #{Time.now - t1} seconds"
87
95
  end
88
96
 
@@ -130,7 +130,25 @@ module Istox
130
130
  next unless ce.present?
131
131
 
132
132
  copy_email_data = email_data.clone
133
- copy_email_data[:email] = ce
133
+
134
+ # if it is just email to cc
135
+ if ce.is_a? String
136
+ copy_email_data[:email] = ce
137
+ else
138
+ # if it is a object hash
139
+ # {
140
+ # email: xxxx
141
+ # params: {
142
+ # istoxP1: xxxx,
143
+ # istoxP2: xxxx
144
+ # }
145
+ # }
146
+ next unless ce[:email].present?
147
+
148
+ copy_email_data[:email] = ce[:email]
149
+ copy_email_data = copy_email_data.merge(ce[:params])
150
+ end
151
+
134
152
  copy_email_data.delete(:copy_emails)
135
153
  copy_email_data_arr << copy_email_data
136
154
  end
@@ -14,7 +14,7 @@ module Istox
14
14
 
15
15
  message = JSON.generate(message) unless message.is_a? String
16
16
 
17
- sns_client.publish({ topic_arn: topic_arn || ENV.fetch('PUSHER_TOPIC_ARN', ''), message: message })
17
+ sns_client.publish(topic_arn: topic_arn || ENV.fetch('SNS_CLIENT_TOPIC', ''), message: message)
18
18
 
19
19
  log.info('Publish to SNS successfully.')
20
20
  rescue StandardError => e
@@ -28,8 +28,8 @@ module Istox
28
28
  def sns_client
29
29
  return @sns_client if @sns_client.present?
30
30
 
31
- Aws.config.update({ region: ENV.fetch('AWS_REGION', 'ap-southeast-1'),
32
- credentials: Aws::Credentials.new(ENV.fetch('AWS_STS_ACCESS_KEY_ID'), ENV.fetch('AWS_STS_SECRET_ACCESS_KEY')) })
31
+ Aws.config.update(region: ENV.fetch('AWS_REGION', 'ap-southeast-1'),
32
+ credentials: Aws::Credentials.new(ENV.fetch('AWS_STS_ACCESS_KEY_ID'), ENV.fetch('AWS_STS_SECRET_ACCESS_KEY')))
33
33
 
34
34
  @sns_client = Aws::SNS::Client.new(region: ENV.fetch('AWS_REGION', 'ap-southeast-1'))
35
35
  end
@@ -22,6 +22,7 @@ module Istox
22
22
 
23
23
  request_context.metadata[:xray_trace_id] = XRay.recorder.current_segment.trace_id
24
24
  request_context.metadata[:xray_parent_id] = XRay.recorder.current_segment.id
25
+ Thread.current[:tracer_id] = XRay.recorder.current_segment.trace_id
25
26
 
26
27
  result = yield
27
28
 
@@ -7,6 +7,7 @@ module Istox
7
7
  meta = request.active_call.metadata
8
8
  trace_id = (meta['xray_trace_id'] if meta.present? && meta.key?('xray_trace_id'))
9
9
  parent_id = (meta['xray_parent_id'] if meta.present? && meta.key?('xray_parent_id'))
10
+ Thread.current[:tracer_id] = trace_id
10
11
 
11
12
  XRay.recorder.begin_segment("#{::Istox::Xray::XrayInitializer.service_name}.grpc.#{request.method_key}",
12
13
  trace_id: trace_id, parent_id: parent_id)
@@ -8,6 +8,7 @@ module Istox
8
8
 
9
9
  trace_id = (payload_hash[:xray_trace_id] if payload_hash.key?(:xray_trace_id))
10
10
  parent_id = (payload_hash[:xray_parent_id] if payload_hash.key?(:xray_parent_id))
11
+ Thread.current[:tracer_id] = trace_id
11
12
 
12
13
  arr = [delivery_info[:exchange]&.downcase, delivery_info[:routing_key]&.downcase, payload_hash[:type]&.downcase].compact
13
14
 
@@ -22,6 +22,7 @@ module Istox
22
22
 
23
23
  message[:xray_trace_id] = XRay.recorder.current_segment.trace_id
24
24
  message[:xray_parent_id] = XRay.recorder.current_segment.id
25
+ Thread.current[:tracer_id] = XRay.recorder.current_segment.trace_id
25
26
 
26
27
  XRay.recorder.end_subsegment
27
28
 
@@ -1,3 +1,3 @@
1
1
  module Istox
2
- VERSION = '0.1.157.8'.freeze
2
+ VERSION = '0.1.157.11-t1'.freeze
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: istox
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.157.8
4
+ version: 0.1.157.11.pre.t1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Siong Leng
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-09-17 00:00:00.000000000 Z
11
+ date: 2021-01-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: amazing_print
@@ -480,14 +480,6 @@ extensions: []
480
480
  extra_rdoc_files: []
481
481
  files:
482
482
  - ".gitignore"
483
- - ".idea/.rakeTasks"
484
- - ".idea/encodings.xml"
485
- - ".idea/inspectionProfiles/Project_Default.xml"
486
- - ".idea/istox-gem.iml"
487
- - ".idea/misc.xml"
488
- - ".idea/modules.xml"
489
- - ".idea/vcs.xml"
490
- - ".idea/workspace.xml"
491
483
  - ".rubocop.yml"
492
484
  - ".solargraph.yml"
493
485
  - CODE_OF_CONDUCT.md
@@ -539,7 +531,7 @@ files:
539
531
  homepage: http://www.abc.com
540
532
  licenses: []
541
533
  metadata: {}
542
- post_install_message:
534
+ post_install_message:
543
535
  rdoc_options: []
544
536
  require_paths:
545
537
  - lib
@@ -550,13 +542,12 @@ required_ruby_version: !ruby/object:Gem::Requirement
550
542
  version: '0'
551
543
  required_rubygems_version: !ruby/object:Gem::Requirement
552
544
  requirements:
553
- - - ">="
545
+ - - ">"
554
546
  - !ruby/object:Gem::Version
555
- version: '0'
547
+ version: 1.3.1
556
548
  requirements: []
557
- rubyforge_project:
558
- rubygems_version: 2.7.10
559
- signing_key:
549
+ rubygems_version: 3.0.6
550
+ signing_key:
560
551
  specification_version: 4
561
552
  summary: istox backend shared gem
562
553
  test_files: []
@@ -1,7 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <Settings><!--This file was automatically generated by Ruby plugin.
3
- You are allowed to:
4
- 1. Remove rake task
5
- 2. Add existing rake tasks
6
- To add existing rake tasks automatically delete this file and reload the project.
7
- --><RakeGroup description="" fullCmd="" taksId="rake" /></Settings>
@@ -1,4 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <project version="4">
3
- <component name="Encoding" addBOMForNewFiles="with NO BOM" />
4
- </project>
@@ -1,6 +0,0 @@
1
- <component name="InspectionProjectProfileManager">
2
- <profile version="1.0">
3
- <option name="myName" value="Project Default" />
4
- <inspection_tool class="Rubocop" enabled="false" level="WARNING" enabled_by_default="false" />
5
- </profile>
6
- </component>
@@ -1,12 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <module type="RUBY_MODULE" version="4">
3
- <component name="ModuleRunConfigurationManager">
4
- <shared />
5
- </component>
6
- <component name="NewModuleRootManager">
7
- <content url="file://$MODULE_DIR$" />
8
- <orderEntry type="inheritedJdk" />
9
- <orderEntry type="sourceFolder" forTests="false" />
10
- <orderEntry type="library" scope="PROVIDED" name="bundler (v1.16.6, RVM: ruby-2.5.3 [global]) [gem]" level="application" />
11
- </component>
12
- </module>
@@ -1,7 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <project version="4">
3
- <component name="JavaScriptSettings">
4
- <option name="languageLevel" value="ES6" />
5
- </component>
6
- <component name="ProjectRootManager" version="2" project-jdk-name="RVM: ruby-2.5.3 [global]" project-jdk-type="RUBY_SDK" />
7
- </project>
@@ -1,8 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <project version="4">
3
- <component name="ProjectModuleManager">
4
- <modules>
5
- <module fileurl="file://$PROJECT_DIR$/.idea/istox-gem.iml" filepath="$PROJECT_DIR$/.idea/istox-gem.iml" />
6
- </modules>
7
- </component>
8
- </project>
@@ -1,6 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <project version="4">
3
- <component name="VcsDirectoryMappings">
4
- <mapping directory="$PROJECT_DIR$" vcs="Git" />
5
- </component>
6
- </project>