fastly 1.2.3 → 1.3.0

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
  SHA1:
3
- metadata.gz: bc45c44da147856313fb82846c62bb8ca9cf1d2f
4
- data.tar.gz: 98da6a0bc7d0e4e38a9d7dd6c0054d9d48babfbf
3
+ metadata.gz: 41770bdcf1d13d916bbc1c33620497ced6259270
4
+ data.tar.gz: ddf4eb5b4b18d0932ddf340dffe73571ac47f68b
5
5
  SHA512:
6
- metadata.gz: 09b0da4e4adb6d77b012bc42d957fa0a4733a8c4ba5d13690a8b1f8a8195b6854bbe7651bd7fb34dd96304a5e590225c62cb0991084a91031c23f0416ac09fe3
7
- data.tar.gz: e029ee919044c1f8a8e85821970d5c72aa287a712a1f699fa670dec72e5865368589dcb727d6f9c8d358772d118f25eabb2d89f64807871e76383235d5321254
6
+ metadata.gz: 9602cf07f2d1f405f13afb0ea0aca1238722ebf5539b0c1e8079058b487027d541ce29d83f31145fcc4fb3e7c7e40c7e48976eac113265c8149dfa089c92890f
7
+ data.tar.gz: 529cc34f51929cf9dbb8b876002a79709348427ba57b1e4e698fa7f5d20549d11188b88714c9535b2a83446acf96b58446728de4ec0c99f526c5cd2aacaac9c7
@@ -0,0 +1,5 @@
1
+ # Changelog
2
+
3
+ ### 1.3.0 / 2016-04-04
4
+ * Adds missing fields for Backend, Healthcheck, S3, & Syslog (@raybejjani)
5
+ * URL escape names when used in URLs (@raybejjani)
@@ -2,7 +2,9 @@ class Fastly
2
2
  # An individual host you want to serve assets off
3
3
  class Backend < BelongsToServiceAndVersion
4
4
  attr_accessor :service_id, :name, :address, :ipv4, :ipv6, :hostname, :use_ssl, :client_cert, :port,
5
- :connect_timeout, :first_byte_timeout, :between_bytes_timeout, :error_threshold, :max_conn, :weight, :comment, :healthcheck, :auto_loadbalance, :request_condition
5
+ :connect_timeout, :first_byte_timeout, :between_bytes_timeout, :error_threshold, :max_conn, :weight, :comment, :healthcheck, :auto_loadbalance, :request_condition,
6
+ :ssl_check_cert, :ssl_hostname, :ssl_cert_hostname, :ssl_sni_hostname, :min_tls_version, :max_tls_version, :ssl_ciphers,
7
+ :shield
6
8
 
7
9
  ##
8
10
  # :attr: service_id
@@ -109,5 +111,46 @@ class Fastly
109
111
  # :attr: request_condition
110
112
  #
111
113
  # name of a request_condition to filter the backend on
114
+
115
+ ##
116
+ # :attr: ssl_check_cert
117
+ #
118
+ # be strict on checking SSL certs.
119
+
120
+ ##
121
+ # :attr: ssl_hostname
122
+ #
123
+ # used for both SNI during the TLS handshake and to validate the cert.
124
+
125
+ ##
126
+ # :attr: ssl_cert_hostname
127
+ #
128
+ # overrides ssl_hostname, but only for cert verification. Does not affect SNI at all.
129
+
130
+ ##
131
+ # :attr: ssl_sni_hostname
132
+ #
133
+ # overrides ssl_hostname, but only for SNI in the handshake. Does not affect cert validation at all.
134
+
135
+ ##
136
+ # :attr: min_tls_version
137
+ #
138
+ # minimum allowed TLS version on ssl connections to this backend
139
+
140
+ ##
141
+ # :attr: max_tls_version
142
+ #
143
+ # maximum allowed TLS version on ssl connections to this backend.
144
+
145
+ ##
146
+ # :attr: ssl_ciphers
147
+ #
148
+ # list of openssl ciphers (see https://www.openssl.org/docs/manmaster/apps/ciphers.html for details)
149
+
150
+ ##
151
+ # :attr: shield
152
+ #
153
+ # name of a datacenter to shield requests
154
+
112
155
  end
113
156
  end
@@ -1,3 +1,5 @@
1
+ require 'uri'
2
+
1
3
  class Fastly
2
4
  # Encapsulates behavior of objects requiring both service and version
3
5
  class BelongsToServiceAndVersion < Base
@@ -23,8 +25,15 @@ class Fastly
23
25
  super.delete_if { |var| %w(service_id version).include?(var) }
24
26
  end
25
27
 
28
+ # URI escape (including spaces) the path and return it
29
+ def self.path_escape(path)
30
+ @uri_parser ||= URI::Parser.new
31
+ # the leading space in the escape character set is intentional
32
+ @uri_parser.escape(path, ' !*\'();:@&=+$,/?#[]')
33
+ end
34
+
26
35
  def self.get_path(service, version, name, _opts = {})
27
- "/service/#{service}/version/#{version}/#{path}/#{name}"
36
+ "/service/#{service}/version/#{version}/#{path}/#{path_escape(name)}"
28
37
  end
29
38
 
30
39
  def self.post_path(opts)
@@ -1,4 +1,4 @@
1
1
  # The current version of the library
2
2
  class Fastly
3
- VERSION = "1.2.3"
3
+ VERSION = "1.3.0"
4
4
  end
@@ -1,7 +1,7 @@
1
1
  class Fastly
2
2
  # A way of keeping track of any of your hosts which are down
3
3
  class Healthcheck < BelongsToServiceAndVersion
4
- attr_accessor :service_id, :name, :comment, :path, :host, :http_version, :timeout, :window, :threshold
4
+ attr_accessor :service_id, :name, :comment, :path, :host, :http_version, :timeout, :window, :threshold, :method, :expected_response, :initial, :check_interval
5
5
 
6
6
  ##
7
7
  # :attr: service_id
@@ -61,4 +61,24 @@ class Fastly
61
61
  #
62
62
  # How many have to be ok for it work
63
63
  end
64
+
65
+ ##
66
+ # :attr: method
67
+ #
68
+ # The HTTP method to use: GET, PUT, POST etc.
69
+
70
+ ##
71
+ # :attr: expected_response
72
+ #
73
+ # The HTTP status to indicate a successful healthcheck (e.g. 200)
74
+
75
+ ##
76
+ # :attr: initial
77
+ #
78
+ # How many have to be ok for it work the first time
79
+
80
+ ##
81
+ # :attr: check_interval
82
+ #
83
+ # Time between checks in milliseconds
64
84
  end
@@ -1,7 +1,7 @@
1
1
  class Fastly
2
2
  # An s3 endpoint to stream logs to
3
3
  class S3Logging < BelongsToServiceAndVersion
4
- attr_accessor :service_id, :name, :bucket_name, :access_key, :secret_key, :path, :period, :gzip_level, :format, :response_condition
4
+ attr_accessor :service_id, :name, :bucket_name, :access_key, :secret_key, :path, :period, :gzip_level, :format, :response_condition, :timestamp_format, :domain, :redundancy
5
5
 
6
6
  ##
7
7
  # :attr: service_id
@@ -59,6 +59,26 @@ class Fastly
59
59
  #
60
60
  # When to execute the s3 logging. If empty, always execute.
61
61
 
62
+ ##
63
+ # :attr: timestamp_format
64
+ #
65
+ # strftime specified timestamp formatting (default "%Y-%m-%dT%H:%M:%S.000").
66
+
67
+ ##
68
+ # :attr: domain
69
+ #
70
+ # The region-specific endpoint for your domain if your AWS S3 bucket was not
71
+ # set up in the US Standard region. See Amazon's list of supported,
72
+ # region-specific endpoints for more info.
73
+ # http://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region
74
+
75
+ ##
76
+ # :attr: redundancy
77
+ #
78
+ # The S3 redundancy level. Defaults to Standard. See
79
+ # http://docs.aws.amazon.com/AmazonS3/latest/dev/UsingRRS.html on using reduced
80
+ # redundancy storage for more information.
81
+
62
82
  def self.path
63
83
  'logging/s3'
64
84
  end
@@ -1,7 +1,7 @@
1
1
  class Fastly
2
2
  # An endpoint to stream syslogs to
3
3
  class Syslog < BelongsToServiceAndVersion
4
- attr_accessor :service_id, :name, :comment, :ipv4, :ipv6, :hostname, :port, :format, :response_conditions
4
+ attr_accessor :service_id, :name, :comment, :ipv4, :ipv6, :hostname, :port, :token, :format, :response_conditions, :use_tls, :tls_hostname, :tls_ca_cert
5
5
 
6
6
  ##
7
7
  # :attr: service_id
@@ -53,6 +53,11 @@ class Fastly
53
53
  #
54
54
  # the port to stream logs to (defaults to 514)
55
55
 
56
+ ##
57
+ # :attr: token
58
+ #
59
+ # Whether to prepend each message with a specific token.
60
+
56
61
  ##
57
62
  # :attr: format
58
63
  #
@@ -62,5 +67,22 @@ class Fastly
62
67
  # :attr: response_condition
63
68
  #
64
69
  # name of a response_condition to filter the log on, if empty it always logs
70
+
71
+ ##
72
+ # :attr: use_tls
73
+ #
74
+ # Establish a TLS connection when connecting
75
+
76
+ ##
77
+ # :attr: tls_hostname
78
+ #
79
+ # Hostname used to verify the certificate. It can either be the CN or be in
80
+ # subAltNames. Not required.
81
+
82
+ ##
83
+ # :attr: tls_ca_cert
84
+ #
85
+ # Use this pem formatted certificate as the CA cert to verify the syslog
86
+ # server's certificate
65
87
  end
66
88
  end
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: 1.2.3
4
+ version: 1.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Fastly
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-03-15 00:00:00.000000000 Z
11
+ date: 2016-04-04 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: Client library for the Fastly acceleration system
14
14
  email:
@@ -21,9 +21,10 @@ executables:
21
21
  extensions: []
22
22
  extra_rdoc_files: []
23
23
  files:
24
- - .gitignore
25
- - .rubocop.yml
26
- - .travis.yml
24
+ - ".gitignore"
25
+ - ".rubocop.yml"
26
+ - ".travis.yml"
27
+ - CHANGELOG.md
27
28
  - Gemfile
28
29
  - HISTORY.md
29
30
  - LICENSE
@@ -80,17 +81,17 @@ require_paths:
80
81
  - lib
81
82
  required_ruby_version: !ruby/object:Gem::Requirement
82
83
  requirements:
83
- - - '>='
84
+ - - ">="
84
85
  - !ruby/object:Gem::Version
85
86
  version: '0'
86
87
  required_rubygems_version: !ruby/object:Gem::Requirement
87
88
  requirements:
88
- - - '>='
89
+ - - ">="
89
90
  - !ruby/object:Gem::Version
90
91
  version: '0'
91
92
  requirements: []
92
93
  rubyforge_project:
93
- rubygems_version: 2.0.14
94
+ rubygems_version: 2.5.1
94
95
  signing_key:
95
96
  specification_version: 4
96
97
  summary: Client library for the Fastly acceleration system