cpee 1.5.4 → 1.5.6

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 835b66c60a3c5f973c652392a30147cd7158739b08275ce23f0dd623c56a8b05
4
- data.tar.gz: cea467eab2cc1a6489ac0485cad08afdd2b87a7024e0787e3fa115af614ba324
3
+ metadata.gz: eaad30b7640b6c68b4acb529265f577e4a53a6fd034ebd11db4dc5eae34173fe
4
+ data.tar.gz: 7a3a4862bfd543268546d1385ec8d7b5ea7311b0fa4be84075b57890ff2c4bed
5
5
  SHA512:
6
- metadata.gz: c1cc53575b713697d77aae2c90ccc1cc72b941a1cf1557f552bcff0fa59ed7582e6608b816456bdd1d19bfbcee645975df4b3fff99f066758003e56601bd0655
7
- data.tar.gz: 9a1e8849b603b7e4f59c7b5e7ddf1b0bd546f4b9dfddef1e01ac1b4e32b8c334e52e332261346483d60782544d85c252d5cc857e0602ac2976a29ddc4ba6119d
6
+ metadata.gz: b247689d4132d5ba3814197ec51dcc2e5ba8fe950610417cf0be4616a11c3dc5fa35c8804e1a533fa9749dcc5f3d37741dbc610adb4043ed52c4a40cc78e588b
7
+ data.tar.gz: fdf0ceb72d630ff34fb9cdaf26d009317b8652aea51f2fe8a7a44306cfc04b14a45e377a635dbab17cab7f834e349f9817ca10ce6b11e20d27eda168c61fd25d
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = "cpee"
3
- s.version = "1.5.4"
3
+ s.version = "1.5.6"
4
4
  s.platform = Gem::Platform::RUBY
5
5
  s.license = "LGPL-3.0"
6
6
  s.summary = "Preliminary release of cloud process execution engine (cpee). If you just need workflow execution, without a rest/xmpp service exposing it, then use WEEL"
@@ -22,7 +22,7 @@ Gem::Specification.new do |s|
22
22
  s.homepage = 'http://cpee.org/'
23
23
 
24
24
  s.add_runtime_dependency 'riddl', '~> 0.99'
25
- s.add_runtime_dependency 'weel', '~> 1.99', '>= 1.99.76'
25
+ s.add_runtime_dependency 'weel', '~> 1.99', '>= 1.99.78'
26
26
  s.add_runtime_dependency 'savon', '~> 2'
27
27
  s.add_runtime_dependency 'highline', '~> 1.6'
28
28
  s.add_runtime_dependency 'json', '~>2.1'
@@ -42,17 +42,22 @@ class DefaultHandlerWrapper < WEEL::HandlerWrapperBase
42
42
  @handler_position = position
43
43
  @handler_passthrough = nil
44
44
  @handler_returnValue = nil
45
+ @handler_returnOptions = nil
45
46
  @label = ''
46
47
  end # }}}
47
48
 
48
49
  def prepare(readonly, endpoints, parameters) #{{{
49
50
  @handler_endpoint = endpoints.is_a?(Array) ? endpoints.map{ |ep| readonly.endpoints[ep] }.compact : readonly.endpoints[endpoints]
50
- parameters[:arguments]&.each do |ele|
51
- if ele.value.is_a?(Proc)
52
- ele.value = readonly.instance_exec &ele.value
51
+ params = parameters.dup
52
+ params[:arguments] = params[:arguments].dup if params[:arguments]
53
+ params[:arguments]&.map! do |ele|
54
+ t = ele.dup
55
+ if t.value.is_a?(Proc)
56
+ t.value = readonly.instance_exec &t.value
53
57
  end
58
+ t
54
59
  end
55
- parameters
60
+ params
56
61
  end #}}}
57
62
 
58
63
  def activity_handle(passthrough, parameters) # {{{
@@ -105,9 +110,10 @@ class DefaultHandlerWrapper < WEEL::HandlerWrapperBase
105
110
 
106
111
  status, result, headers = client.request type => params
107
112
  if status < 200 || status >= 300
113
+ headers['CPEE_SALVAGE'] = true
108
114
  c = result[0]&.value
109
115
  c = c.read if c.respond_to? :read
110
- callback([ Riddl::Parameter::Complex.new('error','application/json',StringIO.new(JSON::generate({ 'status' => status, 'error' => c }))) ], 'CPEE_SALVAGE' => true)
116
+ callback([ Riddl::Parameter::Complex.new('error','application/json',StringIO.new(JSON::generate({ 'status' => status, 'error' => c }))) ], headers)
111
117
  else
112
118
  if headers['CPEE_INSTANTIATION']
113
119
  @controller.notify("task/instantiation", :instance => @controller.instance, :label => @label, :instance_name => @controller.info, :instance_uuid => @controller.uuid, :activity => @handler_position, :endpoint => @handler_endpoint, :received => CPEE::ValueHelper.parse(headers['CPEE_INSTANTIATION']), :timestamp => Time.now.strftime("%Y-%m-%dT%H:%M:%S.%L%:z"), :attributes => @controller.attributes_translated)
@@ -118,7 +124,7 @@ class DefaultHandlerWrapper < WEEL::HandlerWrapperBase
118
124
  elsif headers['CPEE_CALLBACK'] && headers['CPEE_CALLBACK'] == 'true' && result.empty?
119
125
  # do nothing, later on things will happend
120
126
  else
121
- callback result
127
+ callback result, headers
122
128
  end
123
129
  end
124
130
  else
@@ -133,6 +139,9 @@ class DefaultHandlerWrapper < WEEL::HandlerWrapperBase
133
139
  def activity_result_value # {{{
134
140
  @handler_returnValue
135
141
  end # }}}
142
+ def activity_result_options # {{{
143
+ @handler_returnOptions
144
+ end # }}}
136
145
 
137
146
  def activity_stop # {{{
138
147
  unless @handler_passthrough.nil?
@@ -238,15 +247,15 @@ class DefaultHandlerWrapper < WEEL::HandlerWrapperBase
238
247
  def callback(result=nil,options={})
239
248
  @controller.notify("activity/receiving", :instance => @controller.instance, :label => @label, :instance_name => @controller.info, :instance_uuid => @controller.uuid, :activity => @handler_position, :endpoint => @handler_endpoint, :received => structurize_result(result), :timestamp => Time.now.strftime("%Y-%m-%dT%H:%M:%S.%L%:z"), :attributes => @controller.attributes_translated, :sensors => @sensors, :aggregators => @aggregators, :costs => @costs)
240
249
  result = simplify_result(result)
250
+ @handler_returnValue = result
251
+ @handler_returnOptions = options
241
252
  if options['CPEE_UPDATE']
242
- @handler_returnValue = result
243
253
  if options['CPEE_UPDATE_STATUS']
244
254
  @controller.notify("activity/status", :instance => @controller.instance, :instance_uuid => @controller.uuid, :activity => @handler_position, :endpoint => @handler_endpoint, :status => options['CPEE_UPDATE_STATUS'], :timestamp => Time.now.strftime("%Y-%m-%dT%H:%M:%S.%L%:z"), :attributes => @controller.attributes_translated)
245
255
  end
246
256
  @handler_continue.continue WEEL::Signal::Again
247
257
  else
248
258
  @controller.callbacks.delete(@handler_passthrough)
249
- @handler_returnValue = result
250
259
  @handler_passthrough = nil
251
260
  if options['CPEE_SALVAGE']
252
261
  @handler_continue.continue WEEL::Signal::Salvage
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cpee
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.5.4
4
+ version: 1.5.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Juergen eTM Mangler
@@ -11,7 +11,7 @@ authors:
11
11
  autorequire:
12
12
  bindir: tools
13
13
  cert_chain: []
14
- date: 2019-10-10 00:00:00.000000000 Z
14
+ date: 2019-10-15 00:00:00.000000000 Z
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
17
17
  name: riddl
@@ -36,7 +36,7 @@ dependencies:
36
36
  version: '1.99'
37
37
  - - ">="
38
38
  - !ruby/object:Gem::Version
39
- version: 1.99.76
39
+ version: 1.99.78
40
40
  type: :runtime
41
41
  prerelease: false
42
42
  version_requirements: !ruby/object:Gem::Requirement
@@ -46,7 +46,7 @@ dependencies:
46
46
  version: '1.99'
47
47
  - - ">="
48
48
  - !ruby/object:Gem::Version
49
- version: 1.99.76
49
+ version: 1.99.78
50
50
  - !ruby/object:Gem::Dependency
51
51
  name: savon
52
52
  requirement: !ruby/object:Gem::Requirement