fastly 8.0.0 → 8.0.1

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: 5fe91b6ebbe202b86c7088c6cbc48fbeeda5c2b4ca990e7a5375141b370c4335
4
- data.tar.gz: f5a4c07dadb9fbddee85b0aa74b16fc48c6ff8875afab138c02f55bf6ed1176c
3
+ metadata.gz: baeb444f182b9b9c796d22aaefb30c3ec27cc728bd72975c622d629a10e874a0
4
+ data.tar.gz: 8b08c29d4772f01a025eedad914d258bb8214db413d3ac68fba2e8f6192a04e0
5
5
  SHA512:
6
- metadata.gz: 75551f6c3f5eef665d3cf482b312867bd567e127929d5fff69cbf7b31f798c3a2783e19ceddaeef64f4f882ac1003bec903296759523ff1efa01eea4ca4ef3f5
7
- data.tar.gz: a87159f48a67025850c5d598b02c2e408f47024221fb0e4781f5f3f13ca5b01ff921e9431313efba46763c57b91dbf5bd58b262a87fba4943dc9d69a226c4c41
6
+ metadata.gz: 13fa8c51b1427324816653775e516f6dcf97cb0261649c64a25d4d8390b7ae9deecafa1bf6fb326c6dc58385e96f40cea0475ed8a3945a670e7c675643a62619
7
+ data.tar.gz: 534b61ad0595bae7b9e6376f86a5b6921d951654fc2be26e147957193da2fa402e2fb12c1a2e97883cf4368f0475da2be9f148ecdb0a007d8ecf228bdab3981c
data/CHANGELOG.md CHANGED
@@ -1,5 +1,12 @@
1
1
  # Changelog
2
2
 
3
+ ## [v8.0.1](https://github.com/fastly/fastly-ruby/releases/tag/release/v8.0.1) (2024-02-19)
4
+
5
+ **Bug fixes:**
6
+
7
+ - fix(response_object): strongly type response_object create_update requests
8
+ - fix(tls_configurations): fix `tls_protocols` field to be a string array type
9
+
3
10
  ## [v8.0.0](https://github.com/fastly/fastly-ruby/releases/tag/release/v8.0.0) (2023-11-29)
4
11
 
5
12
  **Breaking:**
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- fastly (8.0.0)
4
+ fastly (8.0.1)
5
5
  typhoeus (~> 1.0, >= 1.0.1)
6
6
 
7
7
  GEM
data/README.md CHANGED
@@ -8,7 +8,7 @@ A Ruby client library for interacting with most facets of the [Fastly API](https
8
8
  To install via RubyGems, add the following to your project's `Gemfile`:
9
9
 
10
10
  ```ruby
11
- gem 'fastly', '~> 8.0.0'
11
+ gem 'fastly', '~> 8.0.1'
12
12
  ```
13
13
 
14
14
  Then run `bundle install`.
@@ -0,0 +1,16 @@
1
+ # Fastly::CreateResponseObjectRequest
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **name** | **String** | The name of the response object to create. | [optional] |
8
+ | **status** | **String** | The status code the response will have. Defaults to 200. | [optional] |
9
+ | **response** | **String** | The status text the response will have. Defaults to 'OK'. | [optional] |
10
+ | **content** | **String** | The content the response will deliver. | [optional] |
11
+ | **content_type** | **String** | The MIME type of your response content. | [optional] |
12
+ | **request_condition** | **String** | Condition which, if met, will select this configuration during a request. Optional. | [optional] |
13
+ | **cache_condition** | **String** | Name of the cache condition controlling when this configuration applies. | [optional] |
14
+
15
+ [[Back to API list]](../../README.md#endpoints) [[Back to README]](../../README.md)
16
+
@@ -32,6 +32,7 @@ api_instance = Fastly::ResponseObjectApi.new
32
32
  opts = {
33
33
  service_id: 'service_id_example', # String | Alphanumeric string identifying the service.
34
34
  version_id: 56, # Integer | Integer identifying a service version.
35
+ create_response_object_request: Fastly::CreateResponseObjectRequest.new, # CreateResponseObjectRequest |
35
36
  }
36
37
 
37
38
  begin
@@ -49,6 +50,7 @@ end
49
50
  | ---- | ---- | ----------- | ----- |
50
51
  | **service_id** | **String** | Alphanumeric string identifying the service. | |
51
52
  | **version_id** | **Integer** | Integer identifying a service version. | |
53
+ | **create_response_object_request** | [**CreateResponseObjectRequest**](CreateResponseObjectRequest.md) | | [optional] |
52
54
 
53
55
  ### Return type
54
56
 
@@ -193,6 +195,7 @@ opts = {
193
195
  service_id: 'service_id_example', # String | Alphanumeric string identifying the service.
194
196
  version_id: 56, # Integer | Integer identifying a service version.
195
197
  response_object_name: 'response_object_name_example', # String | Name for the request settings.
198
+ create_response_object_request: Fastly::CreateResponseObjectRequest.new, # CreateResponseObjectRequest |
196
199
  }
197
200
 
198
201
  begin
@@ -211,6 +214,7 @@ end
211
214
  | **service_id** | **String** | Alphanumeric string identifying the service. | |
212
215
  | **version_id** | **Integer** | Integer identifying a service version. | |
213
216
  | **response_object_name** | **String** | Name for the request settings. | |
217
+ | **create_response_object_request** | [**CreateResponseObjectRequest**](CreateResponseObjectRequest.md) | | [optional] |
214
218
 
215
219
  ### Return type
216
220
 
@@ -9,7 +9,7 @@
9
9
  | **updated_at** | **Time** | Date and time in ISO 8601 format. | [optional][readonly] |
10
10
  | **default** | **Boolean** | Signifies whether or not Fastly will use this configuration as a default when creating a new [TLS Activation](/reference/api/tls/custom-certs/activations/). | [optional][readonly] |
11
11
  | **http_protocols** | **Array<String>** | HTTP protocols available on your configuration. | [optional][readonly] |
12
- | **tls_protocols** | **Array<Float>** | TLS protocols available on your configuration. | [optional][readonly] |
12
+ | **tls_protocols** | **Array<String>** | TLS protocols available on your configuration. | [optional][readonly] |
13
13
  | **bulk** | **Boolean** | Signifies whether the configuration is used for Platform TLS or not. | [optional][readonly] |
14
14
 
15
15
  [[Back to API list]](../../README.md#endpoints) [[Back to README]](../../README.md)
@@ -6,7 +6,7 @@
6
6
  | ---- | ---- | ----------- | ----- |
7
7
  | **default** | **Boolean** | Signifies whether or not Fastly will use this configuration as a default when creating a new [TLS Activation](/reference/api/tls/custom-certs/activations/). | [optional][readonly] |
8
8
  | **http_protocols** | **Array<String>** | HTTP protocols available on your configuration. | [optional][readonly] |
9
- | **tls_protocols** | **Array<Float>** | TLS protocols available on your configuration. | [optional][readonly] |
9
+ | **tls_protocols** | **Array<String>** | TLS protocols available on your configuration. | [optional][readonly] |
10
10
  | **bulk** | **Boolean** | Signifies whether the configuration is used for Platform TLS or not. | [optional][readonly] |
11
11
 
12
12
  [[Back to API list]](../../README.md#endpoints) [[Back to README]](../../README.md)
@@ -21,6 +21,7 @@ module Fastly
21
21
  # Creates a new Response Object.
22
22
  # @option opts [String] :service_id Alphanumeric string identifying the service. (required)
23
23
  # @option opts [Integer] :version_id Integer identifying a service version. (required)
24
+ # @option opts [CreateResponseObjectRequest] :create_response_object_request
24
25
  # @return [ResponseObjectResponse]
25
26
  def create_response_object(opts = {})
26
27
  data, _status_code, _headers = create_response_object_with_http_info(opts)
@@ -31,6 +32,7 @@ module Fastly
31
32
  # Creates a new Response Object.
32
33
  # @option opts [String] :service_id Alphanumeric string identifying the service. (required)
33
34
  # @option opts [Integer] :version_id Integer identifying a service version. (required)
35
+ # @option opts [CreateResponseObjectRequest] :create_response_object_request
34
36
  # @return [Array<(ResponseObjectResponse, Integer, Hash)>] ResponseObjectResponse data, response status code and response headers
35
37
  def create_response_object_with_http_info(opts = {})
36
38
  if @api_client.config.debugging
@@ -58,7 +60,7 @@ module Fastly
58
60
  # HTTP header 'Accept' (if needed)
59
61
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
60
62
  # HTTP header 'Content-Type'
61
- content_type = @api_client.select_header_content_type(['application/x-www-form-urlencoded'])
63
+ content_type = @api_client.select_header_content_type(['application/json'])
62
64
  if !content_type.nil?
63
65
  header_params['Content-Type'] = content_type
64
66
  end
@@ -67,7 +69,7 @@ module Fastly
67
69
  form_params = opts[:form_params] || {}
68
70
 
69
71
  # http body (model)
70
- post_body = opts[:debug_body]
72
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(opts[:'create_response_object_request'])
71
73
 
72
74
  # return_type
73
75
  return_type = opts[:debug_return_type] || 'ResponseObjectResponse'
@@ -321,6 +323,7 @@ module Fastly
321
323
  # @option opts [String] :service_id Alphanumeric string identifying the service. (required)
322
324
  # @option opts [Integer] :version_id Integer identifying a service version. (required)
323
325
  # @option opts [String] :response_object_name Name for the request settings. (required)
326
+ # @option opts [CreateResponseObjectRequest] :create_response_object_request
324
327
  # @return [ResponseObjectResponse]
325
328
  def update_response_object(opts = {})
326
329
  data, _status_code, _headers = update_response_object_with_http_info(opts)
@@ -332,6 +335,7 @@ module Fastly
332
335
  # @option opts [String] :service_id Alphanumeric string identifying the service. (required)
333
336
  # @option opts [Integer] :version_id Integer identifying a service version. (required)
334
337
  # @option opts [String] :response_object_name Name for the request settings. (required)
338
+ # @option opts [CreateResponseObjectRequest] :create_response_object_request
335
339
  # @return [Array<(ResponseObjectResponse, Integer, Hash)>] ResponseObjectResponse data, response status code and response headers
336
340
  def update_response_object_with_http_info(opts = {})
337
341
  if @api_client.config.debugging
@@ -364,7 +368,7 @@ module Fastly
364
368
  # HTTP header 'Accept' (if needed)
365
369
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
366
370
  # HTTP header 'Content-Type'
367
- content_type = @api_client.select_header_content_type(['application/x-www-form-urlencoded'])
371
+ content_type = @api_client.select_header_content_type(['application/json'])
368
372
  if !content_type.nil?
369
373
  header_params['Content-Type'] = content_type
370
374
  end
@@ -373,7 +377,7 @@ module Fastly
373
377
  form_params = opts[:form_params] || {}
374
378
 
375
379
  # http body (model)
376
- post_body = opts[:debug_body]
380
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(opts[:'create_response_object_request'])
377
381
 
378
382
  # return_type
379
383
  return_type = opts[:debug_return_type] || 'ResponseObjectResponse'
@@ -0,0 +1,280 @@
1
+ =begin
2
+ #Fastly API
3
+
4
+ #Via the Fastly API you can perform any of the operations that are possible within the management console, including creating services, domains, and backends, configuring rules or uploading your own application code, as well as account operations such as user administration and billing reports. The API is organized into collections of endpoints that allow manipulation of objects related to Fastly services and accounts. For the most accurate and up-to-date API reference content, visit our [Developer Hub](https://developer.fastly.com/reference/api/)
5
+
6
+ The version of the OpenAPI document: 1.0.0
7
+ Contact: oss@fastly.com
8
+
9
+ =end
10
+
11
+ require 'date'
12
+ require 'time'
13
+
14
+ module Fastly
15
+ class CreateResponseObjectRequest
16
+ # The name of the response object to create.
17
+ attr_accessor :name
18
+
19
+ # The status code the response will have. Defaults to 200.
20
+ attr_accessor :status
21
+
22
+ # The status text the response will have. Defaults to 'OK'.
23
+ attr_accessor :response
24
+
25
+ # The content the response will deliver.
26
+ attr_accessor :content
27
+
28
+ # The MIME type of your response content.
29
+ attr_accessor :content_type
30
+
31
+ # Condition which, if met, will select this configuration during a request. Optional.
32
+ attr_accessor :request_condition
33
+
34
+ # Name of the cache condition controlling when this configuration applies.
35
+ attr_accessor :cache_condition
36
+
37
+ # Attribute mapping from ruby-style variable name to JSON key.
38
+ def self.attribute_map
39
+ {
40
+ :'name' => :'name',
41
+ :'status' => :'status',
42
+ :'response' => :'response',
43
+ :'content' => :'content',
44
+ :'content_type' => :'content_type',
45
+ :'request_condition' => :'request_condition',
46
+ :'cache_condition' => :'cache_condition'
47
+ }
48
+ end
49
+
50
+ # Returns all the JSON keys this model knows about
51
+ def self.acceptable_attributes
52
+ attribute_map.values
53
+ end
54
+
55
+ # Attribute type mapping.
56
+ def self.fastly_types
57
+ {
58
+ :'name' => :'String',
59
+ :'status' => :'String',
60
+ :'response' => :'String',
61
+ :'content' => :'String',
62
+ :'content_type' => :'String',
63
+ :'request_condition' => :'String',
64
+ :'cache_condition' => :'String'
65
+ }
66
+ end
67
+
68
+ # List of attributes with nullable: true
69
+ def self.fastly_nullable
70
+ Set.new([
71
+ :'content_type',
72
+ :'request_condition',
73
+ :'cache_condition'
74
+ ])
75
+ end
76
+
77
+ # Initializes the object
78
+ # @param [Hash] attributes Model attributes in the form of hash
79
+ def initialize(attributes = {})
80
+ if (!attributes.is_a?(Hash))
81
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Fastly::CreateResponseObjectRequest` initialize method"
82
+ end
83
+
84
+ # check to see if the attribute exists and convert string to symbol for hash key
85
+ attributes = attributes.each_with_object({}) { |(k, v), h|
86
+ if (!self.class.attribute_map.key?(k.to_sym))
87
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Fastly::CreateResponseObjectRequest`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
88
+ end
89
+ h[k.to_sym] = v
90
+ }
91
+
92
+ if attributes.key?(:'name')
93
+ self.name = attributes[:'name']
94
+ end
95
+
96
+ if attributes.key?(:'status')
97
+ self.status = attributes[:'status']
98
+ end
99
+
100
+ if attributes.key?(:'response')
101
+ self.response = attributes[:'response']
102
+ end
103
+
104
+ if attributes.key?(:'content')
105
+ self.content = attributes[:'content']
106
+ end
107
+
108
+ if attributes.key?(:'content_type')
109
+ self.content_type = attributes[:'content_type']
110
+ end
111
+
112
+ if attributes.key?(:'request_condition')
113
+ self.request_condition = attributes[:'request_condition']
114
+ end
115
+
116
+ if attributes.key?(:'cache_condition')
117
+ self.cache_condition = attributes[:'cache_condition']
118
+ end
119
+ end
120
+
121
+ # Show invalid properties with the reasons. Usually used together with valid?
122
+ # @return Array for valid properties with the reasons
123
+ def list_invalid_properties
124
+ invalid_properties = Array.new
125
+ invalid_properties
126
+ end
127
+
128
+ # Check to see if the all the properties in the model are valid
129
+ # @return true if the model is valid
130
+ def valid?
131
+ true
132
+ end
133
+
134
+ # Checks equality by comparing each attribute.
135
+ # @param [Object] Object to be compared
136
+ def ==(o)
137
+ return true if self.equal?(o)
138
+ self.class == o.class &&
139
+ name == o.name &&
140
+ status == o.status &&
141
+ response == o.response &&
142
+ content == o.content &&
143
+ content_type == o.content_type &&
144
+ request_condition == o.request_condition &&
145
+ cache_condition == o.cache_condition
146
+ end
147
+
148
+ # @see the `==` method
149
+ # @param [Object] Object to be compared
150
+ def eql?(o)
151
+ self == o
152
+ end
153
+
154
+ # Calculates hash code according to all attributes.
155
+ # @return [Integer] Hash code
156
+ def hash
157
+ [name, status, response, content, content_type, request_condition, cache_condition].hash
158
+ end
159
+
160
+ # Builds the object from hash
161
+ # @param [Hash] attributes Model attributes in the form of hash
162
+ # @return [Object] Returns the model itself
163
+ def self.build_from_hash(attributes)
164
+ new.build_from_hash(attributes)
165
+ end
166
+
167
+ # Builds the object from hash
168
+ # @param [Hash] attributes Model attributes in the form of hash
169
+ # @return [Object] Returns the model itself
170
+ def build_from_hash(attributes)
171
+ return nil unless attributes.is_a?(Hash)
172
+ self.class.fastly_types.each_pair do |key, type|
173
+ if attributes[self.class.attribute_map[key]].nil? && self.class.fastly_nullable.include?(key)
174
+ self.send("#{key}=", nil)
175
+ elsif type =~ /\AArray<(.*)>/i
176
+ # check to ensure the input is an array given that the attribute
177
+ # is documented as an array but the input is not
178
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
179
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
180
+ end
181
+ elsif !attributes[self.class.attribute_map[key]].nil?
182
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
183
+ end
184
+ end
185
+
186
+ self
187
+ end
188
+
189
+ # Deserializes the data based on type
190
+ # @param string type Data type
191
+ # @param string value Value to be deserialized
192
+ # @return [Object] Deserialized data
193
+ def _deserialize(type, value)
194
+ case type.to_sym
195
+ when :Time
196
+ Time.parse(value)
197
+ when :Date
198
+ Date.parse(value)
199
+ when :String
200
+ value.to_s
201
+ when :Integer
202
+ value.to_i
203
+ when :Float
204
+ value.to_f
205
+ when :Boolean
206
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
207
+ true
208
+ else
209
+ false
210
+ end
211
+ when :Object
212
+ # generic object (usually a Hash), return directly
213
+ value
214
+ when /\AArray<(?<inner_type>.+)>\z/
215
+ inner_type = Regexp.last_match[:inner_type]
216
+ value.map { |v| _deserialize(inner_type, v) }
217
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
218
+ k_type = Regexp.last_match[:k_type]
219
+ v_type = Regexp.last_match[:v_type]
220
+ {}.tap do |hash|
221
+ value.each do |k, v|
222
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
223
+ end
224
+ end
225
+ else # model
226
+ # models (e.g. Pet) or oneOf
227
+ klass = Fastly.const_get(type)
228
+ klass.respond_to?(:fastly_one_of) ? klass.build(value) : klass.build_from_hash(value)
229
+ end
230
+ end
231
+
232
+ # Returns the string representation of the object
233
+ # @return [String] String presentation of the object
234
+ def to_s
235
+ to_hash.to_s
236
+ end
237
+
238
+ # to_body is an alias to to_hash (backward compatibility)
239
+ # @return [Hash] Returns the object in the form of hash
240
+ def to_body
241
+ to_hash
242
+ end
243
+
244
+ # Returns the object in the form of hash
245
+ # @return [Hash] Returns the object in the form of hash
246
+ def to_hash
247
+ hash = {}
248
+ self.class.attribute_map.each_pair do |attr, param|
249
+ value = self.send(attr)
250
+ if value.nil?
251
+ is_nullable = self.class.fastly_nullable.include?(attr)
252
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
253
+ end
254
+
255
+ hash[param] = _to_hash(value)
256
+ end
257
+ hash
258
+ end
259
+
260
+ # Outputs non-array value in the form of hash
261
+ # For object, use to_hash. Otherwise, just return the value
262
+ # @param [Object] value Any valid value
263
+ # @return [Hash] Returns the value in the form of hash
264
+ def _to_hash(value)
265
+ if value.is_a?(Array)
266
+ value.compact.map { |v| _to_hash(v) }
267
+ elsif value.is_a?(Hash)
268
+ {}.tap do |hash|
269
+ value.each { |k, v| hash[k] = _to_hash(v) }
270
+ end
271
+ elsif value.respond_to? :to_hash
272
+ value.to_hash
273
+ else
274
+ value
275
+ end
276
+ end
277
+
278
+ end
279
+
280
+ end
@@ -60,7 +60,7 @@ module Fastly
60
60
  :'updated_at' => :'Time',
61
61
  :'default' => :'Boolean',
62
62
  :'http_protocols' => :'Array<String>',
63
- :'tls_protocols' => :'Array<Float>',
63
+ :'tls_protocols' => :'Array<String>',
64
64
  :'bulk' => :'Boolean'
65
65
  }
66
66
  end
@@ -45,7 +45,7 @@ module Fastly
45
45
  {
46
46
  :'default' => :'Boolean',
47
47
  :'http_protocols' => :'Array<String>',
48
- :'tls_protocols' => :'Array<Float>',
48
+ :'tls_protocols' => :'Array<String>',
49
49
  :'bulk' => :'Boolean'
50
50
  }
51
51
  end
@@ -9,5 +9,5 @@ Contact: oss@fastly.com
9
9
  =end
10
10
 
11
11
  module Fastly
12
- VERSION = '8.0.0'
12
+ VERSION = '8.0.1'
13
13
  end
data/lib/fastly.rb CHANGED
@@ -78,6 +78,7 @@ require 'fastly/models/contact'
78
78
  require 'fastly/models/contact_response'
79
79
  require 'fastly/models/contact_response_all_of'
80
80
  require 'fastly/models/content'
81
+ require 'fastly/models/create_response_object_request'
81
82
  require 'fastly/models/customer'
82
83
  require 'fastly/models/customer_response'
83
84
  require 'fastly/models/customer_response_all_of'
data/sig.json CHANGED
@@ -1 +1 @@
1
- {"G": "4ae2b660", "D": "2452c3f1"}
1
+ {"G": "40613202", "D": "01d08f3f"}
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fastly
3
3
  version: !ruby/object:Gem::Version
4
- version: 8.0.0
4
+ version: 8.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Fastly
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-11-30 00:00:00.000000000 Z
11
+ date: 2024-02-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: typhoeus
@@ -128,6 +128,7 @@ files:
128
128
  - docs/ContactResponseAllOf.md
129
129
  - docs/Content.md
130
130
  - docs/ContentApi.md
131
+ - docs/CreateResponseObjectRequest.md
131
132
  - docs/Customer.md
132
133
  - docs/CustomerApi.md
133
134
  - docs/CustomerResponse.md
@@ -1021,6 +1022,7 @@ files:
1021
1022
  - lib/fastly/models/contact_response.rb
1022
1023
  - lib/fastly/models/contact_response_all_of.rb
1023
1024
  - lib/fastly/models/content.rb
1025
+ - lib/fastly/models/create_response_object_request.rb
1024
1026
  - lib/fastly/models/customer.rb
1025
1027
  - lib/fastly/models/customer_response.rb
1026
1028
  - lib/fastly/models/customer_response_all_of.rb