api_gateway_dsl 0.1.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.
Files changed (86) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +20 -0
  3. data/.rspec +2 -0
  4. data/.rubocop.yml +20 -0
  5. data/.ruby-version +1 -0
  6. data/.simplecov +2 -0
  7. data/.travis.yml +2 -0
  8. data/Gemfile +3 -0
  9. data/LICENSE +21 -0
  10. data/README.md +40 -0
  11. data/Rakefile +4 -0
  12. data/api_gateway_dsl.gemspec +30 -0
  13. data/bin/api_gateway_dsl +32 -0
  14. data/lib/api_gateway_dsl.rb +26 -0
  15. data/lib/api_gateway_dsl/context.rb +13 -0
  16. data/lib/api_gateway_dsl/document.rb +41 -0
  17. data/lib/api_gateway_dsl/dsl/document_node.rb +46 -0
  18. data/lib/api_gateway_dsl/dsl/integration_node.rb +32 -0
  19. data/lib/api_gateway_dsl/dsl/operation_node.rb +66 -0
  20. data/lib/api_gateway_dsl/dsl/response_node.rb +24 -0
  21. data/lib/api_gateway_dsl/integration.rb +47 -0
  22. data/lib/api_gateway_dsl/integration/collection.rb +7 -0
  23. data/lib/api_gateway_dsl/integration/http.rb +26 -0
  24. data/lib/api_gateway_dsl/integration/http_proxy.rb +29 -0
  25. data/lib/api_gateway_dsl/integration/lambda.rb +38 -0
  26. data/lib/api_gateway_dsl/integration/mock.rb +33 -0
  27. data/lib/api_gateway_dsl/mapping.rb +68 -0
  28. data/lib/api_gateway_dsl/mapping/collection.rb +15 -0
  29. data/lib/api_gateway_dsl/operation.rb +70 -0
  30. data/lib/api_gateway_dsl/operation/collection.rb +62 -0
  31. data/lib/api_gateway_dsl/parameter.rb +24 -0
  32. data/lib/api_gateway_dsl/parameter/body.rb +21 -0
  33. data/lib/api_gateway_dsl/parameter/collection.rb +7 -0
  34. data/lib/api_gateway_dsl/parameter/header.rb +13 -0
  35. data/lib/api_gateway_dsl/parameter/path.rb +14 -0
  36. data/lib/api_gateway_dsl/parameter/query.rb +13 -0
  37. data/lib/api_gateway_dsl/parameter/simple.rb +23 -0
  38. data/lib/api_gateway_dsl/response.rb +53 -0
  39. data/lib/api_gateway_dsl/response/collection.rb +19 -0
  40. data/lib/api_gateway_dsl/response_header.rb +19 -0
  41. data/lib/api_gateway_dsl/response_header/collection.rb +11 -0
  42. data/lib/api_gateway_dsl/response_integration.rb +30 -0
  43. data/lib/api_gateway_dsl/response_integration/collection.rb +11 -0
  44. data/lib/api_gateway_dsl/template.rb +48 -0
  45. data/lib/api_gateway_dsl/template/collection.rb +32 -0
  46. data/lib/api_gateway_dsl/version.rb +5 -0
  47. data/spec/api_gateway_dsl/document_spec.rb +20 -0
  48. data/spec/fixtures/greedy_http_proxy/README.md +69 -0
  49. data/spec/fixtures/greedy_http_proxy/index.rb +13 -0
  50. data/spec/fixtures/greedy_http_proxy/index.yml +35 -0
  51. data/spec/fixtures/greedy_http_proxy/pets/proxy.rb +9 -0
  52. data/spec/fixtures/http_get/README.md +150 -0
  53. data/spec/fixtures/http_get/index.rb +17 -0
  54. data/spec/fixtures/http_get/index.yml +74 -0
  55. data/spec/fixtures/http_get/pets/get.rb +15 -0
  56. data/spec/fixtures/http_get/pets/response/200.vtl +1 -0
  57. data/spec/fixtures/http_get/pets/response/200.yml +4 -0
  58. data/spec/fixtures/http_get/pets/response/500.vtl +3 -0
  59. data/spec/fixtures/http_get/pets/response/500.yml +4 -0
  60. data/spec/fixtures/lambda_post/README.md +185 -0
  61. data/spec/fixtures/lambda_post/index.rb +18 -0
  62. data/spec/fixtures/lambda_post/index.yml +89 -0
  63. data/spec/fixtures/lambda_post/pets/post.rb +11 -0
  64. data/spec/fixtures/lambda_post/pets/request/body.vtl +9 -0
  65. data/spec/fixtures/lambda_post/pets/request/body.yml +7 -0
  66. data/spec/fixtures/lambda_post/pets/response/201.vtl +1 -0
  67. data/spec/fixtures/lambda_post/pets/response/201.yml +1 -0
  68. data/spec/fixtures/lambda_post/pets/response/500.vtl +3 -0
  69. data/spec/fixtures/lambda_post/pets/response/500.yml +4 -0
  70. data/spec/fixtures/lambda_post_with_cors/README.md +193 -0
  71. data/spec/fixtures/lambda_post_with_cors/index.rb +9 -0
  72. data/spec/fixtures/lambda_post_with_cors/index.yml +106 -0
  73. data/spec/fixtures/lambda_post_with_cors/pets/post.rb +11 -0
  74. data/spec/fixtures/lambda_post_with_cors/pets/request/body.vtl +9 -0
  75. data/spec/fixtures/lambda_post_with_cors/pets/request/body.yml +7 -0
  76. data/spec/fixtures/lambda_post_with_cors/pets/response/201.vtl +1 -0
  77. data/spec/fixtures/lambda_post_with_cors/pets/response/201.yml +1 -0
  78. data/spec/fixtures/lambda_post_with_cors/pets/response/500.vtl +3 -0
  79. data/spec/fixtures/lambda_post_with_cors/pets/response/500.yml +4 -0
  80. data/spec/fixtures/markdown.rb +73 -0
  81. data/spec/fixtures/mock_options/README.md +80 -0
  82. data/spec/fixtures/mock_options/index.rb +15 -0
  83. data/spec/fixtures/mock_options/index.yml +44 -0
  84. data/spec/fixtures/mock_options/pets/options.rb +9 -0
  85. data/spec/spec_helper.rb +5 -0
  86. metadata +265 -0
@@ -0,0 +1,11 @@
1
+ POST '/pets', cors: true do
2
+ header 'Accept-Language'
3
+
4
+ LAMBDA 'arn:aws:lambda:eu-west-1:123456789012:function:create_pet'
5
+
6
+ RESPONSE 201 do
7
+ header 'Location', integration: { response: { body: 'location' } }
8
+ end
9
+
10
+ RESPONSE 500, /\n|.*/
11
+ end
@@ -0,0 +1,9 @@
1
+ #set( $inputRoot = $input.path('$') )
2
+ {
3
+ "pet": {
4
+ "name": $input.json('$.pet.name')
5
+ }
6
+ "meta": {
7
+ "accept_language": "${util.escapeJavaScript($input.params('Accept-Language')).replaceAll("\\'","'")}"
8
+ }
9
+ }
@@ -0,0 +1,7 @@
1
+ type: "object"
2
+ properties:
3
+ pet:
4
+ type: "object"
5
+ properties:
6
+ name:
7
+ type: "string"
@@ -0,0 +1,3 @@
1
+ {
2
+ "message": "Something went wrong!"
3
+ }
@@ -0,0 +1,4 @@
1
+ type: "object"
2
+ properties:
3
+ message:
4
+ type: "string"
@@ -0,0 +1,73 @@
1
+ require 'pathname'
2
+ require 'yaml'
3
+
4
+ module APIGatewayDSL
5
+ class Generator
6
+
7
+ def initialize(dir)
8
+ @dir = Pathname.new(dir)
9
+
10
+ File.open(dir.join('README.md'), 'w') do |fd|
11
+ @fd = fd
12
+ fixture
13
+ end
14
+ end
15
+
16
+ private
17
+
18
+ def fixture # rubocop:disable Metrics/AbcSize, Metrics/MethodLength
19
+ puts "# #{result['info']['title']}"
20
+ puts
21
+ if result['info']['description']
22
+ puts result['info']['description']
23
+ puts
24
+ end
25
+ puts '## Given'
26
+ puts
27
+ Dir.glob(@dir.join('*.rb')).map { |f| Pathname.new(f) }.each do |file|
28
+ file(file, false)
29
+ end
30
+ Dir.glob(@dir.join('*', '*.rb')).map { |f| Pathname.new(f) }.each do |file|
31
+ file(file)
32
+ end
33
+ Dir.glob(@dir.join('*', '*', '*')).map { |f| Pathname.new(f) }.each do |file|
34
+ file(file)
35
+ end
36
+ puts '## Generates'
37
+ puts
38
+ file(result_file)
39
+ end
40
+
41
+ def result_file
42
+ @result_file ||= Pathname.new(@dir.join('index.yml'))
43
+ end
44
+
45
+ def result
46
+ @result ||= YAML.safe_load(result_file.read)
47
+ end
48
+
49
+ def file(file, content = true) # rubocop:disable Metrics/MethodLength
50
+ relative_file = file.relative_path_from(@dir)
51
+
52
+ if content
53
+ puts "* [`#{relative_file}`](#{relative_file})"
54
+ puts
55
+ puts " ```#{file.extname[1..-1]}"
56
+ puts file.read.gsub(/^/, ' ')
57
+ puts ' ```'
58
+ else
59
+ puts "* [`#{relative_file}`](#{relative_file}) (skipped for readability)"
60
+ end
61
+ puts
62
+ end
63
+
64
+ def puts(*args)
65
+ @fd.puts(*args)
66
+ end
67
+
68
+ end
69
+ end
70
+
71
+ Dir.glob('spec/fixtures/*').map { |f| Pathname.new(f) }.select(&:directory?).each do |fixture|
72
+ APIGatewayDSL::Generator.new(fixture)
73
+ end
@@ -0,0 +1,80 @@
1
+ # OPTIONS Endpoint with Mock Integration
2
+
3
+ This example demonstrates how to specify an OPTIONS endpoint for the path `/pets` which uses a mock integration in
4
+ order to return constant values to add CORS support for the `/pets` path.
5
+
6
+ ## Configuration
7
+
8
+ * The mock integration returns a `200`.
9
+ * The mock integration passes returns constant values for the `Access-Control-Allow-Headers`,
10
+ `Access-Control-Allow-Methods`, and `Access-Control-Allow-Origin` headers which enable the CORS support.
11
+
12
+ ## Given
13
+
14
+ * [`index.rb`](index.rb) (skipped for readability)
15
+
16
+ * [`pets/options.rb`](pets/options.rb)
17
+
18
+ ```rb
19
+ OPTIONS '/pets' do
20
+ MOCK 200
21
+
22
+ RESPONSE 200 do
23
+ header 'Access-Control-Allow-Headers', 'Content-Type,Authorization,X-Amz-Date,X-Api-Key,X-Amz-Security-Token'
24
+ header 'Access-Control-Allow-Methods', 'DELETE,GET,HEAD,OPTIONS,PATCH,POST,PUT'
25
+ header 'Access-Control-Allow-Origin', '*'
26
+ end
27
+ end
28
+ ```
29
+
30
+ ## Generates
31
+
32
+ * [`index.yml`](index.yml)
33
+
34
+ ```yml
35
+ swagger: "2.0"
36
+ info:
37
+ version: "1.2.3"
38
+ title: "OPTIONS Endpoint with Mock Integration"
39
+ description: |
40
+ This example demonstrates how to specify an OPTIONS endpoint for the path `/pets` which uses a mock integration in
41
+ order to return constant values to add CORS support for the `/pets` path.
42
+
43
+ ## Configuration
44
+
45
+ * The mock integration returns a `200`.
46
+ * The mock integration passes returns constant values for the `Access-Control-Allow-Headers`,
47
+ `Access-Control-Allow-Methods`, and `Access-Control-Allow-Origin` headers which enable the CORS support.
48
+ host: "api.example.com"
49
+ schemes:
50
+ - "https"
51
+ paths:
52
+ /pets:
53
+ options:
54
+ responses:
55
+ '200':
56
+ description: "200 response"
57
+ headers:
58
+ Access-Control-Allow-Origin:
59
+ type: "string"
60
+ Access-Control-Allow-Methods:
61
+ type: "string"
62
+ Access-Control-Allow-Headers:
63
+ type: "string"
64
+ x-amazon-apigateway-integration:
65
+ responses:
66
+ default:
67
+ statusCode: "200"
68
+ responseParameters:
69
+ method.response.header.Access-Control-Allow-Methods: "'DELETE,GET,HEAD,OPTIONS,PATCH,POST,PUT'"
70
+ method.response.header.Access-Control-Allow-Headers: "'Content-Type,Authorization,X-Amz-Date,X-Api-Key,X-Amz-Security-Token'"
71
+ method.response.header.Access-Control-Allow-Origin: "'*'"
72
+ requestTemplates:
73
+ application/json: |
74
+ {
75
+ "statusCode": 200
76
+ }
77
+ passthroughBehavior: "WHEN_NO_TEMPLATES"
78
+ type: "mock"
79
+ ```
80
+
@@ -0,0 +1,15 @@
1
+ title 'OPTIONS Endpoint with Mock Integration'
2
+ version '1.2.3'
3
+ description <<-EOS
4
+ This example demonstrates how to specify an OPTIONS endpoint for the path `/pets` which uses a mock integration in
5
+ order to return constant values to add CORS support for the `/pets` path.
6
+
7
+ ## Configuration
8
+
9
+ * The mock integration returns a `200`.
10
+ * The mock integration passes returns constant values for the `Access-Control-Allow-Headers`,
11
+ `Access-Control-Allow-Methods`, and `Access-Control-Allow-Origin` headers which enable the CORS support.
12
+ EOS
13
+
14
+ host 'api.example.com'
15
+ schemes 'https'
@@ -0,0 +1,44 @@
1
+ swagger: "2.0"
2
+ info:
3
+ version: "1.2.3"
4
+ title: "OPTIONS Endpoint with Mock Integration"
5
+ description: |
6
+ This example demonstrates how to specify an OPTIONS endpoint for the path `/pets` which uses a mock integration in
7
+ order to return constant values to add CORS support for the `/pets` path.
8
+
9
+ ## Configuration
10
+
11
+ * The mock integration returns a `200`.
12
+ * The mock integration passes returns constant values for the `Access-Control-Allow-Headers`,
13
+ `Access-Control-Allow-Methods`, and `Access-Control-Allow-Origin` headers which enable the CORS support.
14
+ host: "api.example.com"
15
+ schemes:
16
+ - "https"
17
+ paths:
18
+ /pets:
19
+ options:
20
+ responses:
21
+ '200':
22
+ description: "200 response"
23
+ headers:
24
+ Access-Control-Allow-Origin:
25
+ type: "string"
26
+ Access-Control-Allow-Methods:
27
+ type: "string"
28
+ Access-Control-Allow-Headers:
29
+ type: "string"
30
+ x-amazon-apigateway-integration:
31
+ responses:
32
+ default:
33
+ statusCode: "200"
34
+ responseParameters:
35
+ method.response.header.Access-Control-Allow-Methods: "'DELETE,GET,HEAD,OPTIONS,PATCH,POST,PUT'"
36
+ method.response.header.Access-Control-Allow-Headers: "'Content-Type,Authorization,X-Amz-Date,X-Api-Key,X-Amz-Security-Token'"
37
+ method.response.header.Access-Control-Allow-Origin: "'*'"
38
+ requestTemplates:
39
+ application/json: |
40
+ {
41
+ "statusCode": 200
42
+ }
43
+ passthroughBehavior: "WHEN_NO_TEMPLATES"
44
+ type: "mock"
@@ -0,0 +1,9 @@
1
+ OPTIONS '/pets' do
2
+ MOCK 200
3
+
4
+ RESPONSE 200 do
5
+ header 'Access-Control-Allow-Headers', 'Content-Type,Authorization,X-Amz-Date,X-Api-Key,X-Amz-Security-Token'
6
+ header 'Access-Control-Allow-Methods', 'DELETE,GET,HEAD,OPTIONS,PATCH,POST,PUT'
7
+ header 'Access-Control-Allow-Origin', '*'
8
+ end
9
+ end
@@ -0,0 +1,5 @@
1
+ require 'simplecov'
2
+
3
+ require 'rspec/json_expectations'
4
+
5
+ require 'api_gateway_dsl'
metadata ADDED
@@ -0,0 +1,265 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: api_gateway_dsl
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - Jan Sebastian Siwy
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2017-03-29 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: activesupport
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '5.0'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '5.0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: thor
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '0.19'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '0.19'
41
+ - !ruby/object:Gem::Dependency
42
+ name: rake
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: '12.0'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: '12.0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: rspec
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: '3.5'
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: '3.5'
69
+ - !ruby/object:Gem::Dependency
70
+ name: rspec-json_expectations
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - "~>"
74
+ - !ruby/object:Gem::Version
75
+ version: '2.1'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - "~>"
81
+ - !ruby/object:Gem::Version
82
+ version: '2.1'
83
+ - !ruby/object:Gem::Dependency
84
+ name: codeclimate-test-reporter
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - "~>"
88
+ - !ruby/object:Gem::Version
89
+ version: '1.0'
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - "~>"
95
+ - !ruby/object:Gem::Version
96
+ version: '1.0'
97
+ - !ruby/object:Gem::Dependency
98
+ name: simplecov
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - "~>"
102
+ - !ruby/object:Gem::Version
103
+ version: '0.14'
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - "~>"
109
+ - !ruby/object:Gem::Version
110
+ version: '0.14'
111
+ description:
112
+ email: api_gateway_dsl@jansiwy.de
113
+ executables:
114
+ - api_gateway_dsl
115
+ extensions: []
116
+ extra_rdoc_files: []
117
+ files:
118
+ - ".gitignore"
119
+ - ".rspec"
120
+ - ".rubocop.yml"
121
+ - ".ruby-version"
122
+ - ".simplecov"
123
+ - ".travis.yml"
124
+ - Gemfile
125
+ - LICENSE
126
+ - README.md
127
+ - Rakefile
128
+ - api_gateway_dsl.gemspec
129
+ - bin/api_gateway_dsl
130
+ - lib/api_gateway_dsl.rb
131
+ - lib/api_gateway_dsl/context.rb
132
+ - lib/api_gateway_dsl/document.rb
133
+ - lib/api_gateway_dsl/dsl/document_node.rb
134
+ - lib/api_gateway_dsl/dsl/integration_node.rb
135
+ - lib/api_gateway_dsl/dsl/operation_node.rb
136
+ - lib/api_gateway_dsl/dsl/response_node.rb
137
+ - lib/api_gateway_dsl/integration.rb
138
+ - lib/api_gateway_dsl/integration/collection.rb
139
+ - lib/api_gateway_dsl/integration/http.rb
140
+ - lib/api_gateway_dsl/integration/http_proxy.rb
141
+ - lib/api_gateway_dsl/integration/lambda.rb
142
+ - lib/api_gateway_dsl/integration/mock.rb
143
+ - lib/api_gateway_dsl/mapping.rb
144
+ - lib/api_gateway_dsl/mapping/collection.rb
145
+ - lib/api_gateway_dsl/operation.rb
146
+ - lib/api_gateway_dsl/operation/collection.rb
147
+ - lib/api_gateway_dsl/parameter.rb
148
+ - lib/api_gateway_dsl/parameter/body.rb
149
+ - lib/api_gateway_dsl/parameter/collection.rb
150
+ - lib/api_gateway_dsl/parameter/header.rb
151
+ - lib/api_gateway_dsl/parameter/path.rb
152
+ - lib/api_gateway_dsl/parameter/query.rb
153
+ - lib/api_gateway_dsl/parameter/simple.rb
154
+ - lib/api_gateway_dsl/response.rb
155
+ - lib/api_gateway_dsl/response/collection.rb
156
+ - lib/api_gateway_dsl/response_header.rb
157
+ - lib/api_gateway_dsl/response_header/collection.rb
158
+ - lib/api_gateway_dsl/response_integration.rb
159
+ - lib/api_gateway_dsl/response_integration/collection.rb
160
+ - lib/api_gateway_dsl/template.rb
161
+ - lib/api_gateway_dsl/template/collection.rb
162
+ - lib/api_gateway_dsl/version.rb
163
+ - spec/api_gateway_dsl/document_spec.rb
164
+ - spec/fixtures/greedy_http_proxy/README.md
165
+ - spec/fixtures/greedy_http_proxy/index.rb
166
+ - spec/fixtures/greedy_http_proxy/index.yml
167
+ - spec/fixtures/greedy_http_proxy/pets/proxy.rb
168
+ - spec/fixtures/http_get/README.md
169
+ - spec/fixtures/http_get/index.rb
170
+ - spec/fixtures/http_get/index.yml
171
+ - spec/fixtures/http_get/pets/get.rb
172
+ - spec/fixtures/http_get/pets/response/200.vtl
173
+ - spec/fixtures/http_get/pets/response/200.yml
174
+ - spec/fixtures/http_get/pets/response/500.vtl
175
+ - spec/fixtures/http_get/pets/response/500.yml
176
+ - spec/fixtures/lambda_post/README.md
177
+ - spec/fixtures/lambda_post/index.rb
178
+ - spec/fixtures/lambda_post/index.yml
179
+ - spec/fixtures/lambda_post/pets/post.rb
180
+ - spec/fixtures/lambda_post/pets/request/body.vtl
181
+ - spec/fixtures/lambda_post/pets/request/body.yml
182
+ - spec/fixtures/lambda_post/pets/response/201.vtl
183
+ - spec/fixtures/lambda_post/pets/response/201.yml
184
+ - spec/fixtures/lambda_post/pets/response/500.vtl
185
+ - spec/fixtures/lambda_post/pets/response/500.yml
186
+ - spec/fixtures/lambda_post_with_cors/README.md
187
+ - spec/fixtures/lambda_post_with_cors/index.rb
188
+ - spec/fixtures/lambda_post_with_cors/index.yml
189
+ - spec/fixtures/lambda_post_with_cors/pets/post.rb
190
+ - spec/fixtures/lambda_post_with_cors/pets/request/body.vtl
191
+ - spec/fixtures/lambda_post_with_cors/pets/request/body.yml
192
+ - spec/fixtures/lambda_post_with_cors/pets/response/201.vtl
193
+ - spec/fixtures/lambda_post_with_cors/pets/response/201.yml
194
+ - spec/fixtures/lambda_post_with_cors/pets/response/500.vtl
195
+ - spec/fixtures/lambda_post_with_cors/pets/response/500.yml
196
+ - spec/fixtures/markdown.rb
197
+ - spec/fixtures/mock_options/README.md
198
+ - spec/fixtures/mock_options/index.rb
199
+ - spec/fixtures/mock_options/index.yml
200
+ - spec/fixtures/mock_options/pets/options.rb
201
+ - spec/spec_helper.rb
202
+ homepage: https://github.com/jansiwy/api_gateway_dsl
203
+ licenses:
204
+ - MIT
205
+ metadata: {}
206
+ post_install_message:
207
+ rdoc_options: []
208
+ require_paths:
209
+ - lib
210
+ required_ruby_version: !ruby/object:Gem::Requirement
211
+ requirements:
212
+ - - ">="
213
+ - !ruby/object:Gem::Version
214
+ version: '0'
215
+ required_rubygems_version: !ruby/object:Gem::Requirement
216
+ requirements:
217
+ - - ">="
218
+ - !ruby/object:Gem::Version
219
+ version: '0'
220
+ requirements: []
221
+ rubyforge_project:
222
+ rubygems_version: 2.6.11
223
+ signing_key:
224
+ specification_version: 4
225
+ summary: Ruby DSL to generate an Amazon API Gateway definition
226
+ test_files:
227
+ - spec/api_gateway_dsl/document_spec.rb
228
+ - spec/fixtures/greedy_http_proxy/README.md
229
+ - spec/fixtures/greedy_http_proxy/index.rb
230
+ - spec/fixtures/greedy_http_proxy/index.yml
231
+ - spec/fixtures/greedy_http_proxy/pets/proxy.rb
232
+ - spec/fixtures/http_get/README.md
233
+ - spec/fixtures/http_get/index.rb
234
+ - spec/fixtures/http_get/index.yml
235
+ - spec/fixtures/http_get/pets/get.rb
236
+ - spec/fixtures/http_get/pets/response/200.vtl
237
+ - spec/fixtures/http_get/pets/response/200.yml
238
+ - spec/fixtures/http_get/pets/response/500.vtl
239
+ - spec/fixtures/http_get/pets/response/500.yml
240
+ - spec/fixtures/lambda_post/README.md
241
+ - spec/fixtures/lambda_post/index.rb
242
+ - spec/fixtures/lambda_post/index.yml
243
+ - spec/fixtures/lambda_post/pets/post.rb
244
+ - spec/fixtures/lambda_post/pets/request/body.vtl
245
+ - spec/fixtures/lambda_post/pets/request/body.yml
246
+ - spec/fixtures/lambda_post/pets/response/201.vtl
247
+ - spec/fixtures/lambda_post/pets/response/201.yml
248
+ - spec/fixtures/lambda_post/pets/response/500.vtl
249
+ - spec/fixtures/lambda_post/pets/response/500.yml
250
+ - spec/fixtures/lambda_post_with_cors/README.md
251
+ - spec/fixtures/lambda_post_with_cors/index.rb
252
+ - spec/fixtures/lambda_post_with_cors/index.yml
253
+ - spec/fixtures/lambda_post_with_cors/pets/post.rb
254
+ - spec/fixtures/lambda_post_with_cors/pets/request/body.vtl
255
+ - spec/fixtures/lambda_post_with_cors/pets/request/body.yml
256
+ - spec/fixtures/lambda_post_with_cors/pets/response/201.vtl
257
+ - spec/fixtures/lambda_post_with_cors/pets/response/201.yml
258
+ - spec/fixtures/lambda_post_with_cors/pets/response/500.vtl
259
+ - spec/fixtures/lambda_post_with_cors/pets/response/500.yml
260
+ - spec/fixtures/markdown.rb
261
+ - spec/fixtures/mock_options/README.md
262
+ - spec/fixtures/mock_options/index.rb
263
+ - spec/fixtures/mock_options/index.yml
264
+ - spec/fixtures/mock_options/pets/options.rb
265
+ - spec/spec_helper.rb