volcano-sdk 0.9.4 → 0.10.0
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/README.md +69 -0
- data/lib/volcano/client.rb +2 -1
- data/lib/volcano/durable.rb +136 -0
- data/lib/volcano/durable_models.rb +143 -0
- data/lib/volcano/generated/lib/volcano-generated/api/databases_api.rb +2 -2
- data/lib/volcano/generated/lib/volcano-generated/api/durable_functions_api.rb +1239 -0
- data/lib/volcano/generated/lib/volcano-generated/api/frontends_api.rb +2 -2
- data/lib/volcano/generated/lib/volcano-generated/api/functions_api.rb +18 -6
- data/lib/volcano/generated/lib/volcano-generated/api/o_auth_authentication_api.rb +2 -2
- data/lib/volcano/generated/lib/volcano-generated/api/projects_api.rb +76 -2
- data/lib/volcano/generated/lib/volcano-generated/models/create_database_request.rb +6 -8
- data/lib/volcano/generated/lib/volcano-generated/models/create_variable_request.rb +11 -1
- data/lib/volcano/generated/lib/volcano-generated/models/durable_execution.rb +358 -0
- data/lib/volcano/generated/lib/volcano-generated/models/durable_execution_error.rb +157 -0
- data/lib/volcano/generated/lib/volcano-generated/models/durable_execution_status.rb +45 -0
- data/lib/volcano/generated/lib/volcano-generated/models/durable_function.rb +479 -0
- data/lib/volcano/generated/lib/volcano-generated/models/durable_function_config.rb +193 -0
- data/lib/volcano/generated/lib/volcano-generated/models/function_kind.rb +40 -0
- data/lib/volcano/generated/lib/volcano-generated/models/function_runtime_option.rb +28 -1
- data/lib/volcano/generated/lib/volcano-generated/models/function_scheduler.rb +11 -1
- data/lib/volcano/generated/lib/volcano-generated/models/list_database_regions200_response_inner.rb +1 -1
- data/lib/volcano/generated/lib/volcano-generated/models/metric_usage_data.rb +1 -1
- data/lib/volcano/generated/lib/volcano-generated/models/paginated_durable_executions.rb +274 -0
- data/lib/volcano/generated/lib/volcano-generated/models/paginated_durable_functions.rb +274 -0
- data/lib/volcano/generated/lib/volcano-generated/models/project_config.rb +23 -1
- data/lib/volcano/generated/lib/volcano-generated/models/project_config_function.rb +47 -2
- data/lib/volcano/generated/lib/volcano-generated/models/project_config_variable.rb +11 -1
- data/lib/volcano/generated/lib/volcano-generated/models/project_deployment_resource.rb +14 -4
- data/lib/volcano/generated/lib/volcano-generated/models/project_health_resource.rb +14 -4
- data/lib/volcano/generated/lib/volcano-generated/models/replace_shared_variables_request.rb +237 -0
- data/lib/volcano/generated/lib/volcano-generated/models/update_variable_request.rb +11 -1
- data/lib/volcano/generated/lib/volcano-generated/models/variable.rb +11 -1
- data/lib/volcano/generated/lib/volcano-generated.rb +10 -0
- data/lib/volcano/generated_transport.rb +2 -1
- data/lib/volcano/generated_transport_durable.rb +50 -0
- data/lib/volcano/generated_transport_support.rb +1 -0
- data/lib/volcano/version.rb +1 -1
- data/lib/volcano.rb +2 -0
- metadata +14 -1
|
@@ -0,0 +1,274 @@
|
|
|
1
|
+
=begin
|
|
2
|
+
#Volcano Hosting API
|
|
3
|
+
|
|
4
|
+
#Public API for Volcano Hosting clients, SDKs, and CLI tooling (Port 8000). This specification intentionally excludes first-party/internal APIs. See api/openapi-internal.yaml for non-public internal and Builder operations.
|
|
5
|
+
|
|
6
|
+
The version of the OpenAPI document: 3.0.0
|
|
7
|
+
Contact: support@volcano.dev
|
|
8
|
+
Generated by: https://openapi-generator.tech
|
|
9
|
+
Generator version: 7.17.0
|
|
10
|
+
|
|
11
|
+
=end
|
|
12
|
+
|
|
13
|
+
require 'date'
|
|
14
|
+
require 'time'
|
|
15
|
+
|
|
16
|
+
module Volcano::Generated
|
|
17
|
+
class PaginatedDurableFunctions < ApiModelBase
|
|
18
|
+
attr_accessor :data
|
|
19
|
+
|
|
20
|
+
# Current page number (1-indexed)
|
|
21
|
+
attr_accessor :page
|
|
22
|
+
|
|
23
|
+
# Number of items per page
|
|
24
|
+
attr_accessor :limit
|
|
25
|
+
|
|
26
|
+
# Total number of items across all pages
|
|
27
|
+
attr_accessor :total
|
|
28
|
+
|
|
29
|
+
# Whether there are more pages available
|
|
30
|
+
attr_accessor :has_more
|
|
31
|
+
|
|
32
|
+
# Attribute mapping from ruby-style variable name to JSON key.
|
|
33
|
+
def self.attribute_map
|
|
34
|
+
{
|
|
35
|
+
:'data' => :'data',
|
|
36
|
+
:'page' => :'page',
|
|
37
|
+
:'limit' => :'limit',
|
|
38
|
+
:'total' => :'total',
|
|
39
|
+
:'has_more' => :'has_more'
|
|
40
|
+
}
|
|
41
|
+
end
|
|
42
|
+
|
|
43
|
+
# Returns attribute mapping this model knows about
|
|
44
|
+
def self.acceptable_attribute_map
|
|
45
|
+
attribute_map
|
|
46
|
+
end
|
|
47
|
+
|
|
48
|
+
# Returns all the JSON keys this model knows about
|
|
49
|
+
def self.acceptable_attributes
|
|
50
|
+
acceptable_attribute_map.values
|
|
51
|
+
end
|
|
52
|
+
|
|
53
|
+
# Attribute type mapping.
|
|
54
|
+
def self.openapi_types
|
|
55
|
+
{
|
|
56
|
+
:'data' => :'Array<DurableFunction>',
|
|
57
|
+
:'page' => :'Integer',
|
|
58
|
+
:'limit' => :'Integer',
|
|
59
|
+
:'total' => :'Integer',
|
|
60
|
+
:'has_more' => :'Boolean'
|
|
61
|
+
}
|
|
62
|
+
end
|
|
63
|
+
|
|
64
|
+
# List of attributes with nullable: true
|
|
65
|
+
def self.openapi_nullable
|
|
66
|
+
Set.new([
|
|
67
|
+
])
|
|
68
|
+
end
|
|
69
|
+
|
|
70
|
+
# Initializes the object
|
|
71
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
|
72
|
+
def initialize(attributes = {})
|
|
73
|
+
if (!attributes.is_a?(Hash))
|
|
74
|
+
fail ArgumentError, "The input argument (attributes) must be a hash in `Volcano::Generated::PaginatedDurableFunctions` initialize method"
|
|
75
|
+
end
|
|
76
|
+
|
|
77
|
+
# check to see if the attribute exists and convert string to symbol for hash key
|
|
78
|
+
acceptable_attribute_map = self.class.acceptable_attribute_map
|
|
79
|
+
attributes = attributes.each_with_object({}) { |(k, v), h|
|
|
80
|
+
if (!acceptable_attribute_map.key?(k.to_sym))
|
|
81
|
+
fail ArgumentError, "`#{k}` is not a valid attribute in `Volcano::Generated::PaginatedDurableFunctions`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
|
|
82
|
+
end
|
|
83
|
+
h[k.to_sym] = v
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
if attributes.key?(:'data')
|
|
87
|
+
if (value = attributes[:'data']).is_a?(Array)
|
|
88
|
+
self.data = value
|
|
89
|
+
end
|
|
90
|
+
else
|
|
91
|
+
self.data = nil
|
|
92
|
+
end
|
|
93
|
+
|
|
94
|
+
if attributes.key?(:'page')
|
|
95
|
+
self.page = attributes[:'page']
|
|
96
|
+
else
|
|
97
|
+
self.page = nil
|
|
98
|
+
end
|
|
99
|
+
|
|
100
|
+
if attributes.key?(:'limit')
|
|
101
|
+
self.limit = attributes[:'limit']
|
|
102
|
+
else
|
|
103
|
+
self.limit = nil
|
|
104
|
+
end
|
|
105
|
+
|
|
106
|
+
if attributes.key?(:'total')
|
|
107
|
+
self.total = attributes[:'total']
|
|
108
|
+
else
|
|
109
|
+
self.total = nil
|
|
110
|
+
end
|
|
111
|
+
|
|
112
|
+
if attributes.key?(:'has_more')
|
|
113
|
+
self.has_more = attributes[:'has_more']
|
|
114
|
+
else
|
|
115
|
+
self.has_more = nil
|
|
116
|
+
end
|
|
117
|
+
end
|
|
118
|
+
|
|
119
|
+
# Show invalid properties with the reasons. Usually used together with valid?
|
|
120
|
+
# @return Array for valid properties with the reasons
|
|
121
|
+
def list_invalid_properties
|
|
122
|
+
warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
|
|
123
|
+
invalid_properties = Array.new
|
|
124
|
+
if @data.nil?
|
|
125
|
+
invalid_properties.push('invalid value for "data", data cannot be nil.')
|
|
126
|
+
end
|
|
127
|
+
|
|
128
|
+
if @page.nil?
|
|
129
|
+
invalid_properties.push('invalid value for "page", page cannot be nil.')
|
|
130
|
+
end
|
|
131
|
+
|
|
132
|
+
if @limit.nil?
|
|
133
|
+
invalid_properties.push('invalid value for "limit", limit cannot be nil.')
|
|
134
|
+
end
|
|
135
|
+
|
|
136
|
+
if @total.nil?
|
|
137
|
+
invalid_properties.push('invalid value for "total", total cannot be nil.')
|
|
138
|
+
end
|
|
139
|
+
|
|
140
|
+
if @has_more.nil?
|
|
141
|
+
invalid_properties.push('invalid value for "has_more", has_more cannot be nil.')
|
|
142
|
+
end
|
|
143
|
+
|
|
144
|
+
invalid_properties
|
|
145
|
+
end
|
|
146
|
+
|
|
147
|
+
# Check to see if the all the properties in the model are valid
|
|
148
|
+
# @return true if the model is valid
|
|
149
|
+
def valid?
|
|
150
|
+
warn '[DEPRECATED] the `valid?` method is obsolete'
|
|
151
|
+
return false if @data.nil?
|
|
152
|
+
return false if @page.nil?
|
|
153
|
+
return false if @limit.nil?
|
|
154
|
+
return false if @total.nil?
|
|
155
|
+
return false if @has_more.nil?
|
|
156
|
+
true
|
|
157
|
+
end
|
|
158
|
+
|
|
159
|
+
# Custom attribute writer method with validation
|
|
160
|
+
# @param [Object] data Value to be assigned
|
|
161
|
+
def data=(data)
|
|
162
|
+
if data.nil?
|
|
163
|
+
fail ArgumentError, 'data cannot be nil'
|
|
164
|
+
end
|
|
165
|
+
|
|
166
|
+
@data = data
|
|
167
|
+
end
|
|
168
|
+
|
|
169
|
+
# Custom attribute writer method with validation
|
|
170
|
+
# @param [Object] page Value to be assigned
|
|
171
|
+
def page=(page)
|
|
172
|
+
if page.nil?
|
|
173
|
+
fail ArgumentError, 'page cannot be nil'
|
|
174
|
+
end
|
|
175
|
+
|
|
176
|
+
@page = page
|
|
177
|
+
end
|
|
178
|
+
|
|
179
|
+
# Custom attribute writer method with validation
|
|
180
|
+
# @param [Object] limit Value to be assigned
|
|
181
|
+
def limit=(limit)
|
|
182
|
+
if limit.nil?
|
|
183
|
+
fail ArgumentError, 'limit cannot be nil'
|
|
184
|
+
end
|
|
185
|
+
|
|
186
|
+
@limit = limit
|
|
187
|
+
end
|
|
188
|
+
|
|
189
|
+
# Custom attribute writer method with validation
|
|
190
|
+
# @param [Object] total Value to be assigned
|
|
191
|
+
def total=(total)
|
|
192
|
+
if total.nil?
|
|
193
|
+
fail ArgumentError, 'total cannot be nil'
|
|
194
|
+
end
|
|
195
|
+
|
|
196
|
+
@total = total
|
|
197
|
+
end
|
|
198
|
+
|
|
199
|
+
# Custom attribute writer method with validation
|
|
200
|
+
# @param [Object] has_more Value to be assigned
|
|
201
|
+
def has_more=(has_more)
|
|
202
|
+
if has_more.nil?
|
|
203
|
+
fail ArgumentError, 'has_more cannot be nil'
|
|
204
|
+
end
|
|
205
|
+
|
|
206
|
+
@has_more = has_more
|
|
207
|
+
end
|
|
208
|
+
|
|
209
|
+
# Checks equality by comparing each attribute.
|
|
210
|
+
# @param [Object] Object to be compared
|
|
211
|
+
def ==(o)
|
|
212
|
+
return true if self.equal?(o)
|
|
213
|
+
self.class == o.class &&
|
|
214
|
+
data == o.data &&
|
|
215
|
+
page == o.page &&
|
|
216
|
+
limit == o.limit &&
|
|
217
|
+
total == o.total &&
|
|
218
|
+
has_more == o.has_more
|
|
219
|
+
end
|
|
220
|
+
|
|
221
|
+
# @see the `==` method
|
|
222
|
+
# @param [Object] Object to be compared
|
|
223
|
+
def eql?(o)
|
|
224
|
+
self == o
|
|
225
|
+
end
|
|
226
|
+
|
|
227
|
+
# Calculates hash code according to all attributes.
|
|
228
|
+
# @return [Integer] Hash code
|
|
229
|
+
def hash
|
|
230
|
+
[data, page, limit, total, has_more].hash
|
|
231
|
+
end
|
|
232
|
+
|
|
233
|
+
# Builds the object from hash
|
|
234
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
|
235
|
+
# @return [Object] Returns the model itself
|
|
236
|
+
def self.build_from_hash(attributes)
|
|
237
|
+
return nil unless attributes.is_a?(Hash)
|
|
238
|
+
attributes = attributes.transform_keys(&:to_sym)
|
|
239
|
+
transformed_hash = {}
|
|
240
|
+
openapi_types.each_pair do |key, type|
|
|
241
|
+
if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
|
|
242
|
+
transformed_hash["#{key}"] = nil
|
|
243
|
+
elsif type =~ /\AArray<(.*)>/i
|
|
244
|
+
# check to ensure the input is an array given that the attribute
|
|
245
|
+
# is documented as an array but the input is not
|
|
246
|
+
if attributes[attribute_map[key]].is_a?(Array)
|
|
247
|
+
transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
|
|
248
|
+
end
|
|
249
|
+
elsif !attributes[attribute_map[key]].nil?
|
|
250
|
+
transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
|
|
251
|
+
end
|
|
252
|
+
end
|
|
253
|
+
new(transformed_hash)
|
|
254
|
+
end
|
|
255
|
+
|
|
256
|
+
# Returns the object in the form of hash
|
|
257
|
+
# @return [Hash] Returns the object in the form of hash
|
|
258
|
+
def to_hash
|
|
259
|
+
hash = {}
|
|
260
|
+
self.class.attribute_map.each_pair do |attr, param|
|
|
261
|
+
value = self.send(attr)
|
|
262
|
+
if value.nil?
|
|
263
|
+
is_nullable = self.class.openapi_nullable.include?(attr)
|
|
264
|
+
next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
|
|
265
|
+
end
|
|
266
|
+
|
|
267
|
+
hash[param] = _to_hash(value)
|
|
268
|
+
end
|
|
269
|
+
hash
|
|
270
|
+
end
|
|
271
|
+
|
|
272
|
+
end
|
|
273
|
+
|
|
274
|
+
end
|
|
@@ -23,6 +23,9 @@ module Volcano::Generated
|
|
|
23
23
|
|
|
24
24
|
attr_accessor :databases
|
|
25
25
|
|
|
26
|
+
# Replace the complete shared function-variable list with existing names, without changing variable values. Omission keeps membership unchanged; an empty list clears it.
|
|
27
|
+
attr_accessor :shared_variables
|
|
28
|
+
|
|
26
29
|
# Fully synced when declared - variables absent from this list are deleted.
|
|
27
30
|
attr_accessor :variables
|
|
28
31
|
|
|
@@ -64,6 +67,7 @@ module Volcano::Generated
|
|
|
64
67
|
:'version' => :'version',
|
|
65
68
|
:'project' => :'project',
|
|
66
69
|
:'databases' => :'databases',
|
|
70
|
+
:'shared_variables' => :'shared_variables',
|
|
67
71
|
:'variables' => :'variables',
|
|
68
72
|
:'buckets' => :'buckets',
|
|
69
73
|
:'realtime' => :'realtime',
|
|
@@ -89,6 +93,7 @@ module Volcano::Generated
|
|
|
89
93
|
:'version' => :'Integer',
|
|
90
94
|
:'project' => :'ProjectConfigProject',
|
|
91
95
|
:'databases' => :'Array<ProjectConfigDatabase>',
|
|
96
|
+
:'shared_variables' => :'Array<String>',
|
|
92
97
|
:'variables' => :'Array<ProjectConfigVariable>',
|
|
93
98
|
:'buckets' => :'Array<ProjectConfigBucket>',
|
|
94
99
|
:'realtime' => :'ProjectConfigRealtime',
|
|
@@ -136,6 +141,12 @@ module Volcano::Generated
|
|
|
136
141
|
end
|
|
137
142
|
end
|
|
138
143
|
|
|
144
|
+
if attributes.key?(:'shared_variables')
|
|
145
|
+
if (value = attributes[:'shared_variables']).is_a?(Array)
|
|
146
|
+
self.shared_variables = value
|
|
147
|
+
end
|
|
148
|
+
end
|
|
149
|
+
|
|
139
150
|
if attributes.key?(:'variables')
|
|
140
151
|
if (value = attributes[:'variables']).is_a?(Array)
|
|
141
152
|
self.variables = value
|
|
@@ -201,6 +212,16 @@ module Volcano::Generated
|
|
|
201
212
|
@version = version
|
|
202
213
|
end
|
|
203
214
|
|
|
215
|
+
# Custom attribute writer method with validation
|
|
216
|
+
# @param [Object] shared_variables Value to be assigned
|
|
217
|
+
def shared_variables=(shared_variables)
|
|
218
|
+
if shared_variables.nil?
|
|
219
|
+
fail ArgumentError, 'shared_variables cannot be nil'
|
|
220
|
+
end
|
|
221
|
+
|
|
222
|
+
@shared_variables = shared_variables
|
|
223
|
+
end
|
|
224
|
+
|
|
204
225
|
# Checks equality by comparing each attribute.
|
|
205
226
|
# @param [Object] Object to be compared
|
|
206
227
|
def ==(o)
|
|
@@ -209,6 +230,7 @@ module Volcano::Generated
|
|
|
209
230
|
version == o.version &&
|
|
210
231
|
project == o.project &&
|
|
211
232
|
databases == o.databases &&
|
|
233
|
+
shared_variables == o.shared_variables &&
|
|
212
234
|
variables == o.variables &&
|
|
213
235
|
buckets == o.buckets &&
|
|
214
236
|
realtime == o.realtime &&
|
|
@@ -226,7 +248,7 @@ module Volcano::Generated
|
|
|
226
248
|
# Calculates hash code according to all attributes.
|
|
227
249
|
# @return [Integer] Hash code
|
|
228
250
|
def hash
|
|
229
|
-
[version, project, databases, variables, buckets, realtime, auth, functions, frontends].hash
|
|
251
|
+
[version, project, databases, shared_variables, variables, buckets, realtime, auth, functions, frontends].hash
|
|
230
252
|
end
|
|
231
253
|
|
|
232
254
|
# Builds the object from hash
|
|
@@ -14,13 +14,21 @@ require 'date'
|
|
|
14
14
|
require 'time'
|
|
15
15
|
|
|
16
16
|
module Volcano::Generated
|
|
17
|
-
# Configuration for an existing (deployed) function. Functions are never created or deleted through the manifest. When `schedulers` is declared it is fully synced (schedulers absent from the list are deleted); omitting `schedulers` leaves the function's schedulers untouched.
|
|
17
|
+
# Configuration for an existing (deployed) function. Functions are never created or deleted through the manifest. When `schedulers` is declared it is fully synced (schedulers absent from the list are deleted); omitting `schedulers` leaves the function's schedulers untouched. The same applies to `variables`: declaring it replaces the function's declared variable names, and omitting it leaves them untouched.
|
|
18
18
|
class ProjectConfigFunction < ApiModelBase
|
|
19
19
|
attr_accessor :name
|
|
20
20
|
|
|
21
|
+
attr_accessor :kind
|
|
22
|
+
|
|
21
23
|
# Function visibility for anon-key invocation
|
|
22
24
|
attr_accessor :public
|
|
23
25
|
|
|
26
|
+
# Which project variables this function receives. `all` (the default) gives it the project variables marked `shared: true`. `scoped` gives it only the variables it selects: every name declared in `variables`, plus the names Volcano detects in its source that the project defines.
|
|
27
|
+
attr_accessor :variable_scope
|
|
28
|
+
|
|
29
|
+
# Project variable names this function requires, on top of the ones detected in its source. Declare a name here when the function reads it through a computed key, which detection cannot see, or when the function must not deploy without it: a declared name the project does not define fails the apply, while a detected name it does not define is ignored. Only used when `variable_scope` is `scoped`.
|
|
30
|
+
attr_accessor :variables
|
|
31
|
+
|
|
24
32
|
attr_accessor :invocation_mode
|
|
25
33
|
|
|
26
34
|
attr_accessor :http_auth_mode
|
|
@@ -56,7 +64,10 @@ module Volcano::Generated
|
|
|
56
64
|
def self.attribute_map
|
|
57
65
|
{
|
|
58
66
|
:'name' => :'name',
|
|
67
|
+
:'kind' => :'kind',
|
|
59
68
|
:'public' => :'public',
|
|
69
|
+
:'variable_scope' => :'variable_scope',
|
|
70
|
+
:'variables' => :'variables',
|
|
60
71
|
:'invocation_mode' => :'invocation_mode',
|
|
61
72
|
:'http_auth_mode' => :'http_auth_mode',
|
|
62
73
|
:'openapi_spec' => :'openapi_spec',
|
|
@@ -78,7 +89,10 @@ module Volcano::Generated
|
|
|
78
89
|
def self.openapi_types
|
|
79
90
|
{
|
|
80
91
|
:'name' => :'String',
|
|
92
|
+
:'kind' => :'FunctionKind',
|
|
81
93
|
:'public' => :'Boolean',
|
|
94
|
+
:'variable_scope' => :'String',
|
|
95
|
+
:'variables' => :'Array<String>',
|
|
82
96
|
:'invocation_mode' => :'FunctionInvocationMode',
|
|
83
97
|
:'http_auth_mode' => :'FunctionHTTPAuthMode',
|
|
84
98
|
:'openapi_spec' => :'Hash<String, Object>',
|
|
@@ -115,10 +129,26 @@ module Volcano::Generated
|
|
|
115
129
|
self.name = nil
|
|
116
130
|
end
|
|
117
131
|
|
|
132
|
+
if attributes.key?(:'kind')
|
|
133
|
+
self.kind = attributes[:'kind']
|
|
134
|
+
else
|
|
135
|
+
self.kind = 'standard'
|
|
136
|
+
end
|
|
137
|
+
|
|
118
138
|
if attributes.key?(:'public')
|
|
119
139
|
self.public = attributes[:'public']
|
|
120
140
|
end
|
|
121
141
|
|
|
142
|
+
if attributes.key?(:'variable_scope')
|
|
143
|
+
self.variable_scope = attributes[:'variable_scope']
|
|
144
|
+
end
|
|
145
|
+
|
|
146
|
+
if attributes.key?(:'variables')
|
|
147
|
+
if (value = attributes[:'variables']).is_a?(Array)
|
|
148
|
+
self.variables = value
|
|
149
|
+
end
|
|
150
|
+
end
|
|
151
|
+
|
|
122
152
|
if attributes.key?(:'invocation_mode')
|
|
123
153
|
self.invocation_mode = attributes[:'invocation_mode']
|
|
124
154
|
end
|
|
@@ -162,6 +192,8 @@ module Volcano::Generated
|
|
|
162
192
|
warn '[DEPRECATED] the `valid?` method is obsolete'
|
|
163
193
|
return false if @name.nil?
|
|
164
194
|
return false if @name.to_s.length < 1
|
|
195
|
+
variable_scope_validator = EnumAttributeValidator.new('String', ["all", "scoped"])
|
|
196
|
+
return false unless variable_scope_validator.valid?(@variable_scope)
|
|
165
197
|
true
|
|
166
198
|
end
|
|
167
199
|
|
|
@@ -179,13 +211,26 @@ module Volcano::Generated
|
|
|
179
211
|
@name = name
|
|
180
212
|
end
|
|
181
213
|
|
|
214
|
+
# Custom attribute writer method checking allowed values (enum).
|
|
215
|
+
# @param [Object] variable_scope Object to be assigned
|
|
216
|
+
def variable_scope=(variable_scope)
|
|
217
|
+
validator = EnumAttributeValidator.new('String', ["all", "scoped"])
|
|
218
|
+
unless validator.valid?(variable_scope)
|
|
219
|
+
fail ArgumentError, "invalid value for \"variable_scope\", must be one of #{validator.allowable_values}."
|
|
220
|
+
end
|
|
221
|
+
@variable_scope = variable_scope
|
|
222
|
+
end
|
|
223
|
+
|
|
182
224
|
# Checks equality by comparing each attribute.
|
|
183
225
|
# @param [Object] Object to be compared
|
|
184
226
|
def ==(o)
|
|
185
227
|
return true if self.equal?(o)
|
|
186
228
|
self.class == o.class &&
|
|
187
229
|
name == o.name &&
|
|
230
|
+
kind == o.kind &&
|
|
188
231
|
public == o.public &&
|
|
232
|
+
variable_scope == o.variable_scope &&
|
|
233
|
+
variables == o.variables &&
|
|
189
234
|
invocation_mode == o.invocation_mode &&
|
|
190
235
|
http_auth_mode == o.http_auth_mode &&
|
|
191
236
|
openapi_spec == o.openapi_spec &&
|
|
@@ -201,7 +246,7 @@ module Volcano::Generated
|
|
|
201
246
|
# Calculates hash code according to all attributes.
|
|
202
247
|
# @return [Integer] Hash code
|
|
203
248
|
def hash
|
|
204
|
-
[name, public, invocation_mode, http_auth_mode, openapi_spec, schedulers].hash
|
|
249
|
+
[name, kind, public, variable_scope, variables, invocation_mode, http_auth_mode, openapi_spec, schedulers].hash
|
|
205
250
|
end
|
|
206
251
|
|
|
207
252
|
# Builds the object from hash
|
|
@@ -15,6 +15,9 @@ require 'time'
|
|
|
15
15
|
|
|
16
16
|
module Volcano::Generated
|
|
17
17
|
class ProjectConfigVariable < ApiModelBase
|
|
18
|
+
# Include this name in the project's shared function variables. Omission preserves existing membership; new variables default to true for legacy clients. Send false explicitly to create a non-shared variable.
|
|
19
|
+
attr_accessor :shared
|
|
20
|
+
|
|
18
21
|
attr_accessor :name
|
|
19
22
|
|
|
20
23
|
attr_accessor :value
|
|
@@ -22,6 +25,7 @@ module Volcano::Generated
|
|
|
22
25
|
# Attribute mapping from ruby-style variable name to JSON key.
|
|
23
26
|
def self.attribute_map
|
|
24
27
|
{
|
|
28
|
+
:'shared' => :'shared',
|
|
25
29
|
:'name' => :'name',
|
|
26
30
|
:'value' => :'value'
|
|
27
31
|
}
|
|
@@ -40,6 +44,7 @@ module Volcano::Generated
|
|
|
40
44
|
# Attribute type mapping.
|
|
41
45
|
def self.openapi_types
|
|
42
46
|
{
|
|
47
|
+
:'shared' => :'Boolean',
|
|
43
48
|
:'name' => :'String',
|
|
44
49
|
:'value' => :'String'
|
|
45
50
|
}
|
|
@@ -67,6 +72,10 @@ module Volcano::Generated
|
|
|
67
72
|
h[k.to_sym] = v
|
|
68
73
|
}
|
|
69
74
|
|
|
75
|
+
if attributes.key?(:'shared')
|
|
76
|
+
self.shared = attributes[:'shared']
|
|
77
|
+
end
|
|
78
|
+
|
|
70
79
|
if attributes.key?(:'name')
|
|
71
80
|
self.name = attributes[:'name']
|
|
72
81
|
else
|
|
@@ -139,6 +148,7 @@ module Volcano::Generated
|
|
|
139
148
|
def ==(o)
|
|
140
149
|
return true if self.equal?(o)
|
|
141
150
|
self.class == o.class &&
|
|
151
|
+
shared == o.shared &&
|
|
142
152
|
name == o.name &&
|
|
143
153
|
value == o.value
|
|
144
154
|
end
|
|
@@ -152,7 +162,7 @@ module Volcano::Generated
|
|
|
152
162
|
# Calculates hash code according to all attributes.
|
|
153
163
|
# @return [Integer] Hash code
|
|
154
164
|
def hash
|
|
155
|
-
[name, value].hash
|
|
165
|
+
[shared, name, value].hash
|
|
156
166
|
end
|
|
157
167
|
|
|
158
168
|
# Builds the object from hash
|
|
@@ -22,6 +22,9 @@ module Volcano::Generated
|
|
|
22
22
|
|
|
23
23
|
attr_accessor :name
|
|
24
24
|
|
|
25
|
+
# Which kind of function this deployment belongs to. Both kinds appear in this feed under `type: function`, because a deployment means the same thing for either, so this is what tells them apart. Absent when `type` is `frontend`.
|
|
26
|
+
attr_accessor :kind
|
|
27
|
+
|
|
25
28
|
class EnumAttributeValidator
|
|
26
29
|
attr_reader :datatype
|
|
27
30
|
attr_reader :allowable_values
|
|
@@ -49,7 +52,8 @@ module Volcano::Generated
|
|
|
49
52
|
{
|
|
50
53
|
:'type' => :'type',
|
|
51
54
|
:'id' => :'id',
|
|
52
|
-
:'name' => :'name'
|
|
55
|
+
:'name' => :'name',
|
|
56
|
+
:'kind' => :'kind'
|
|
53
57
|
}
|
|
54
58
|
end
|
|
55
59
|
|
|
@@ -68,7 +72,8 @@ module Volcano::Generated
|
|
|
68
72
|
{
|
|
69
73
|
:'type' => :'String',
|
|
70
74
|
:'id' => :'String',
|
|
71
|
-
:'name' => :'String'
|
|
75
|
+
:'name' => :'String',
|
|
76
|
+
:'kind' => :'FunctionKind'
|
|
72
77
|
}
|
|
73
78
|
end
|
|
74
79
|
|
|
@@ -111,6 +116,10 @@ module Volcano::Generated
|
|
|
111
116
|
else
|
|
112
117
|
self.name = nil
|
|
113
118
|
end
|
|
119
|
+
|
|
120
|
+
if attributes.key?(:'kind')
|
|
121
|
+
self.kind = attributes[:'kind']
|
|
122
|
+
end
|
|
114
123
|
end
|
|
115
124
|
|
|
116
125
|
# Show invalid properties with the reasons. Usually used together with valid?
|
|
@@ -182,7 +191,8 @@ module Volcano::Generated
|
|
|
182
191
|
self.class == o.class &&
|
|
183
192
|
type == o.type &&
|
|
184
193
|
id == o.id &&
|
|
185
|
-
name == o.name
|
|
194
|
+
name == o.name &&
|
|
195
|
+
kind == o.kind
|
|
186
196
|
end
|
|
187
197
|
|
|
188
198
|
# @see the `==` method
|
|
@@ -194,7 +204,7 @@ module Volcano::Generated
|
|
|
194
204
|
# Calculates hash code according to all attributes.
|
|
195
205
|
# @return [Integer] Hash code
|
|
196
206
|
def hash
|
|
197
|
-
[type, id, name].hash
|
|
207
|
+
[type, id, name, kind].hash
|
|
198
208
|
end
|
|
199
209
|
|
|
200
210
|
# Builds the object from hash
|
|
@@ -21,6 +21,9 @@ module Volcano::Generated
|
|
|
21
21
|
|
|
22
22
|
attr_accessor :name
|
|
23
23
|
|
|
24
|
+
# Which kind of function this check is about. Present only when `type` is `function`, where both kinds share the name space and this is what tells them apart.
|
|
25
|
+
attr_accessor :kind
|
|
26
|
+
|
|
24
27
|
class EnumAttributeValidator
|
|
25
28
|
attr_reader :datatype
|
|
26
29
|
attr_reader :allowable_values
|
|
@@ -48,7 +51,8 @@ module Volcano::Generated
|
|
|
48
51
|
{
|
|
49
52
|
:'type' => :'type',
|
|
50
53
|
:'id' => :'id',
|
|
51
|
-
:'name' => :'name'
|
|
54
|
+
:'name' => :'name',
|
|
55
|
+
:'kind' => :'kind'
|
|
52
56
|
}
|
|
53
57
|
end
|
|
54
58
|
|
|
@@ -67,7 +71,8 @@ module Volcano::Generated
|
|
|
67
71
|
{
|
|
68
72
|
:'type' => :'String',
|
|
69
73
|
:'id' => :'String',
|
|
70
|
-
:'name' => :'String'
|
|
74
|
+
:'name' => :'String',
|
|
75
|
+
:'kind' => :'FunctionKind'
|
|
71
76
|
}
|
|
72
77
|
end
|
|
73
78
|
|
|
@@ -110,6 +115,10 @@ module Volcano::Generated
|
|
|
110
115
|
else
|
|
111
116
|
self.name = nil
|
|
112
117
|
end
|
|
118
|
+
|
|
119
|
+
if attributes.key?(:'kind')
|
|
120
|
+
self.kind = attributes[:'kind']
|
|
121
|
+
end
|
|
113
122
|
end
|
|
114
123
|
|
|
115
124
|
# Show invalid properties with the reasons. Usually used together with valid?
|
|
@@ -181,7 +190,8 @@ module Volcano::Generated
|
|
|
181
190
|
self.class == o.class &&
|
|
182
191
|
type == o.type &&
|
|
183
192
|
id == o.id &&
|
|
184
|
-
name == o.name
|
|
193
|
+
name == o.name &&
|
|
194
|
+
kind == o.kind
|
|
185
195
|
end
|
|
186
196
|
|
|
187
197
|
# @see the `==` method
|
|
@@ -193,7 +203,7 @@ module Volcano::Generated
|
|
|
193
203
|
# Calculates hash code according to all attributes.
|
|
194
204
|
# @return [Integer] Hash code
|
|
195
205
|
def hash
|
|
196
|
-
[type, id, name].hash
|
|
206
|
+
[type, id, name, kind].hash
|
|
197
207
|
end
|
|
198
208
|
|
|
199
209
|
# Builds the object from hash
|