lib/fastly/models/backend.rb in fastly-8.1.0 vs lib/fastly/models/backend.rb in fastly-8.2.0
- old
+ new
@@ -98,10 +98,22 @@
attr_accessor :ssl_hostname
# Overrides `ssl_hostname`, but only for SNI in the handshake. Does not affect cert validation at all.
attr_accessor :ssl_sni_hostname
+ # Whether to enable TCP keepalives for backend connections. Varnish defaults to using keepalives if this is unspecified.
+ attr_accessor :tcp_keepalive_enable
+
+ # Interval in seconds between subsequent keepalive probes.
+ attr_accessor :tcp_keepalive_interval
+
+ # Number of unacknowledged probes to send before considering the connection dead.
+ attr_accessor :tcp_keepalive_probes
+
+ # Interval in seconds between the last data packet sent and the first keepalive probe.
+ attr_accessor :tcp_keepalive_time
+
# Whether or not to require TLS for connections to this backend.
attr_accessor :use_ssl
# Weight used to load balance this backend against others. May be any positive integer. If `auto_loadbalance` is true, the chance of this backend being selected is equal to its own weight over the sum of all weights for backends that have `auto_loadbalance` set to true.
attr_accessor :weight
@@ -136,10 +148,14 @@
:'ssl_ciphers' => :'ssl_ciphers',
:'ssl_client_cert' => :'ssl_client_cert',
:'ssl_client_key' => :'ssl_client_key',
:'ssl_hostname' => :'ssl_hostname',
:'ssl_sni_hostname' => :'ssl_sni_hostname',
+ :'tcp_keepalive_enable' => :'tcp_keepalive_enable',
+ :'tcp_keepalive_interval' => :'tcp_keepalive_interval',
+ :'tcp_keepalive_probes' => :'tcp_keepalive_probes',
+ :'tcp_keepalive_time' => :'tcp_keepalive_time',
:'use_ssl' => :'use_ssl',
:'weight' => :'weight'
}
end
@@ -178,10 +194,14 @@
:'ssl_ciphers' => :'String',
:'ssl_client_cert' => :'String',
:'ssl_client_key' => :'String',
:'ssl_hostname' => :'String',
:'ssl_sni_hostname' => :'String',
+ :'tcp_keepalive_enable' => :'Boolean',
+ :'tcp_keepalive_interval' => :'Integer',
+ :'tcp_keepalive_probes' => :'Integer',
+ :'tcp_keepalive_time' => :'Integer',
:'use_ssl' => :'Boolean',
:'weight' => :'Integer'
}
end
@@ -206,10 +226,13 @@
:'ssl_ciphers',
:'ssl_client_cert',
:'ssl_client_key',
:'ssl_hostname',
:'ssl_sni_hostname',
+ :'tcp_keepalive_interval',
+ :'tcp_keepalive_probes',
+ :'tcp_keepalive_time',
])
end
# Initializes the object
# @param [Hash] attributes Model attributes in the form of hash
@@ -342,10 +365,26 @@
if attributes.key?(:'ssl_sni_hostname')
self.ssl_sni_hostname = attributes[:'ssl_sni_hostname']
end
+ if attributes.key?(:'tcp_keepalive_enable')
+ self.tcp_keepalive_enable = attributes[:'tcp_keepalive_enable']
+ end
+
+ if attributes.key?(:'tcp_keepalive_interval')
+ self.tcp_keepalive_interval = attributes[:'tcp_keepalive_interval']
+ end
+
+ if attributes.key?(:'tcp_keepalive_probes')
+ self.tcp_keepalive_probes = attributes[:'tcp_keepalive_probes']
+ end
+
+ if attributes.key?(:'tcp_keepalive_time')
+ self.tcp_keepalive_time = attributes[:'tcp_keepalive_time']
+ end
+
if attributes.key?(:'use_ssl')
self.use_ssl = attributes[:'use_ssl']
end
if attributes.key?(:'weight')
@@ -415,10 +454,14 @@
ssl_ciphers == o.ssl_ciphers &&
ssl_client_cert == o.ssl_client_cert &&
ssl_client_key == o.ssl_client_key &&
ssl_hostname == o.ssl_hostname &&
ssl_sni_hostname == o.ssl_sni_hostname &&
+ tcp_keepalive_enable == o.tcp_keepalive_enable &&
+ tcp_keepalive_interval == o.tcp_keepalive_interval &&
+ tcp_keepalive_probes == o.tcp_keepalive_probes &&
+ tcp_keepalive_time == o.tcp_keepalive_time &&
use_ssl == o.use_ssl &&
weight == o.weight
end
# @see the `==` method
@@ -428,10 +471,10 @@
end
# Calculates hash code according to all attributes.
# @return [Integer] Hash code
def hash
- [address, auto_loadbalance, between_bytes_timeout, client_cert, comment, connect_timeout, first_byte_timeout, healthcheck, hostname, ipv4, ipv6, keepalive_time, max_conn, max_tls_version, min_tls_version, name, override_host, port, request_condition, share_key, shield, ssl_ca_cert, ssl_cert_hostname, ssl_check_cert, ssl_ciphers, ssl_client_cert, ssl_client_key, ssl_hostname, ssl_sni_hostname, use_ssl, weight].hash
+ [address, auto_loadbalance, between_bytes_timeout, client_cert, comment, connect_timeout, first_byte_timeout, healthcheck, hostname, ipv4, ipv6, keepalive_time, max_conn, max_tls_version, min_tls_version, name, override_host, port, request_condition, share_key, shield, ssl_ca_cert, ssl_cert_hostname, ssl_check_cert, ssl_ciphers, ssl_client_cert, ssl_client_key, ssl_hostname, ssl_sni_hostname, tcp_keepalive_enable, tcp_keepalive_interval, tcp_keepalive_probes, tcp_keepalive_time, use_ssl, weight].hash
end
# Builds the object from hash
# @param [Hash] attributes Model attributes in the form of hash
# @return [Object] Returns the model itself