aws-sdk-lambda 1.0.0.rc2 → 1.0.0.rc3

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: 31d5898152bd1b98cc3651c56228b7a997b02e7e
4
- data.tar.gz: a2b747aab815e023bbc24f52176182f469927661
3
+ metadata.gz: dbbcd845f22d9a856c330b966b1efcc7a7f6f2f7
4
+ data.tar.gz: d86622229bbf505862f1496e15908d560265c66b
5
5
  SHA512:
6
- metadata.gz: 80bd5a0e0945a4e66b3829373e5c481c6d92627c27e872b59eea83df564dd38d73880a30eab64d972f0bca4bcd468a56c914f8b36b47a3bf472a1534a4ad9486
7
- data.tar.gz: b915ee4a8ecf6c6deb48f8812842726229ffba041ba06b030916148e19f0cc23453f1b74008638b8cd3122ae897e8a0656d014304975ed0b02d1bc200c8050b7
6
+ metadata.gz: af8401e516960148663cd78294d7c9d91371ec2dbf265af7fa3ce684fddca73138c6dbf7c40c45c28bc727208d31e396bfc14d5435ead0fe19a6d1fc4dee2710
7
+ data.tar.gz: 3748e1200cfbab16c26fbef703acb0d77f090a51d125b49067b3210ddac11e9e925000fb0352bc0a29b69be620a57dc9265eb7e7d575eb65c1ed88076a0095d7
@@ -1,6 +1,6 @@
1
1
  # WARNING ABOUT GENERATED CODE
2
2
  #
3
- # This file is generated. See the contributing for info on making contributions:
3
+ # This file is generated. See the contributing guide for more information:
4
4
  # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
5
  #
6
6
  # WARNING ABOUT GENERATED CODE
@@ -1,6 +1,6 @@
1
1
  # WARNING ABOUT GENERATED CODE
2
2
  #
3
- # This file is generated. See the contributing for info on making contributions:
3
+ # This file is generated. See the contributing guide for more information:
4
4
  # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
5
  #
6
6
  # WARNING ABOUT GENERATED CODE
@@ -23,1977 +23,2179 @@ require 'aws-sdk-core/plugins/protocols/rest_json.rb'
23
23
 
24
24
  Aws::Plugins::GlobalConfiguration.add_identifier(:lambda)
25
25
 
26
- module Aws
27
- module Lambda
28
- class Client < Seahorse::Client::Base
26
+ module Aws::Lambda
27
+ class Client < Seahorse::Client::Base
29
28
 
30
- include Aws::ClientStubs
29
+ include Aws::ClientStubs
31
30
 
32
- @identifier = :lambda
31
+ @identifier = :lambda
33
32
 
34
- set_api(ClientApi::API)
33
+ set_api(ClientApi::API)
35
34
 
36
- add_plugin(Seahorse::Client::Plugins::ContentLength)
37
- add_plugin(Aws::Plugins::CredentialsConfiguration)
38
- add_plugin(Aws::Plugins::Logging)
39
- add_plugin(Aws::Plugins::ParamConverter)
40
- add_plugin(Aws::Plugins::ParamValidator)
41
- add_plugin(Aws::Plugins::UserAgent)
42
- add_plugin(Aws::Plugins::HelpfulSocketErrors)
43
- add_plugin(Aws::Plugins::RetryErrors)
44
- add_plugin(Aws::Plugins::GlobalConfiguration)
45
- add_plugin(Aws::Plugins::RegionalEndpoint)
46
- add_plugin(Aws::Plugins::ResponsePaging)
47
- add_plugin(Aws::Plugins::StubResponses)
48
- add_plugin(Aws::Plugins::IdempotencyToken)
49
- add_plugin(Aws::Plugins::SignatureV4)
50
- add_plugin(Aws::Plugins::Protocols::RestJson)
35
+ add_plugin(Seahorse::Client::Plugins::ContentLength)
36
+ add_plugin(Aws::Plugins::CredentialsConfiguration)
37
+ add_plugin(Aws::Plugins::Logging)
38
+ add_plugin(Aws::Plugins::ParamConverter)
39
+ add_plugin(Aws::Plugins::ParamValidator)
40
+ add_plugin(Aws::Plugins::UserAgent)
41
+ add_plugin(Aws::Plugins::HelpfulSocketErrors)
42
+ add_plugin(Aws::Plugins::RetryErrors)
43
+ add_plugin(Aws::Plugins::GlobalConfiguration)
44
+ add_plugin(Aws::Plugins::RegionalEndpoint)
45
+ add_plugin(Aws::Plugins::ResponsePaging)
46
+ add_plugin(Aws::Plugins::StubResponses)
47
+ add_plugin(Aws::Plugins::IdempotencyToken)
48
+ add_plugin(Aws::Plugins::SignatureV4)
49
+ add_plugin(Aws::Plugins::Protocols::RestJson)
51
50
 
52
- # @option options [required, Aws::CredentialProvider] :credentials
53
- # Your AWS credentials. This can be an instance of any one of the
54
- # following classes:
55
- #
56
- # * `Aws::Credentials` - Used for configuring static, non-refreshing
57
- # credentials.
58
- #
59
- # * `Aws::InstanceProfileCredentials` - Used for loading credentials
60
- # from an EC2 IMDS on an EC2 instance.
61
- #
62
- # * `Aws::SharedCredentials` - Used for loading credentials from a
63
- # shared file, such as `~/.aws/config`.
64
- #
65
- # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
66
- #
67
- # When `:credentials` are not configured directly, the following
68
- # locations will be searched for credentials:
69
- #
70
- # * `Aws.config[:credentials]`
71
- # * The `:access_key_id`, `:secret_access_key`, and `:session_token` options.
72
- # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
73
- # * `~/.aws/credentials`
74
- # * `~/.aws/config`
75
- # * EC2 IMDS instance profile - When used by default, the timeouts are
76
- # very aggressive. Construct and pass an instance of
77
- # `Aws::InstanceProfileCredentails` to enable retries and extended
78
- # timeouts.
79
- # @option options [required, String] :region
80
- # The AWS region to connect to. The configured `:region` is
81
- # used to determine the service `:endpoint`. When not passed,
82
- # a default `:region` is search for in the following locations:
83
- #
84
- # * `Aws.config[:region]`
85
- # * `ENV['AWS_REGION']`
86
- # * `ENV['AMAZON_REGION']`
87
- # * `ENV['AWS_DEFAULT_REGION']`
88
- # * `~/.aws/credentials`
89
- # * `~/.aws/config`
90
- # @option options [String] :access_key_id
91
- # @option options [Boolean] :convert_params (true)
92
- # When `true`, an attempt is made to coerce request parameters into
93
- # the required types.
94
- # @option options [String] :endpoint
95
- # The client endpoint is normally constructed from the `:region`
96
- # option. You should only configure an `:endpoint` when connecting
97
- # to test endpoints. This should be avalid HTTP(S) URI.
98
- # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
99
- # The log formatter.
100
- # @option options [Symbol] :log_level (:info)
101
- # The log level to send messages to the `:logger` at.
102
- # @option options [Logger] :logger
103
- # The Logger instance to send log messages to. If this option
104
- # is not set, logging will be disabled.
105
- # @option options [String] :profile ("default")
106
- # Used when loading credentials from the shared credentials file
107
- # at HOME/.aws/credentials. When not specified, 'default' is used.
108
- # @option options [Integer] :retry_limit (3)
109
- # The maximum number of times to retry failed requests. Only
110
- # ~ 500 level server errors and certain ~ 400 level client errors
111
- # are retried. Generally, these are throttling errors, data
112
- # checksum errors, networking errors, timeout errors and auth
113
- # errors from expired credentials.
114
- # @option options [String] :secret_access_key
115
- # @option options [String] :session_token
116
- # @option options [Boolean] :stub_responses (false)
117
- # Causes the client to return stubbed responses. By default
118
- # fake responses are generated and returned. You can specify
119
- # the response data to return or errors to raise by calling
120
- # {ClientStubs#stub_responses}. See {ClientStubs} for more information.
121
- #
122
- # ** Please note ** When response stubbing is enabled, no HTTP
123
- # requests are made, and retries are disabled.
124
- # @option options [Boolean] :validate_params (true)
125
- # When `true`, request parameters are validated before
126
- # sending the request.
127
- def initialize(*args)
128
- super
129
- end
130
-
131
- # @!group API Operations
51
+ # @option options [required, Aws::CredentialProvider] :credentials
52
+ # Your AWS credentials. This can be an instance of any one of the
53
+ # following classes:
54
+ #
55
+ # * `Aws::Credentials` - Used for configuring static, non-refreshing
56
+ # credentials.
57
+ #
58
+ # * `Aws::InstanceProfileCredentials` - Used for loading credentials
59
+ # from an EC2 IMDS on an EC2 instance.
60
+ #
61
+ # * `Aws::SharedCredentials` - Used for loading credentials from a
62
+ # shared file, such as `~/.aws/config`.
63
+ #
64
+ # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
65
+ #
66
+ # When `:credentials` are not configured directly, the following
67
+ # locations will be searched for credentials:
68
+ #
69
+ # * `Aws.config[:credentials]`
70
+ # * The `:access_key_id`, `:secret_access_key`, and `:session_token` options.
71
+ # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
72
+ # * `~/.aws/credentials`
73
+ # * `~/.aws/config`
74
+ # * EC2 IMDS instance profile - When used by default, the timeouts are
75
+ # very aggressive. Construct and pass an instance of
76
+ # `Aws::InstanceProfileCredentails` to enable retries and extended
77
+ # timeouts.
78
+ #
79
+ # @option options [required, String] :region
80
+ # The AWS region to connect to. The configured `:region` is
81
+ # used to determine the service `:endpoint`. When not passed,
82
+ # a default `:region` is search for in the following locations:
83
+ #
84
+ # * `Aws.config[:region]`
85
+ # * `ENV['AWS_REGION']`
86
+ # * `ENV['AMAZON_REGION']`
87
+ # * `ENV['AWS_DEFAULT_REGION']`
88
+ # * `~/.aws/credentials`
89
+ # * `~/.aws/config`
90
+ #
91
+ # @option options [String] :access_key_id
92
+ #
93
+ # @option options [Boolean] :convert_params (true)
94
+ # When `true`, an attempt is made to coerce request parameters into
95
+ # the required types.
96
+ #
97
+ # @option options [String] :endpoint
98
+ # The client endpoint is normally constructed from the `:region`
99
+ # option. You should only configure an `:endpoint` when connecting
100
+ # to test endpoints. This should be avalid HTTP(S) URI.
101
+ #
102
+ # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
103
+ # The log formatter.
104
+ #
105
+ # @option options [Symbol] :log_level (:info)
106
+ # The log level to send messages to the `:logger` at.
107
+ #
108
+ # @option options [Logger] :logger
109
+ # The Logger instance to send log messages to. If this option
110
+ # is not set, logging will be disabled.
111
+ #
112
+ # @option options [String] :profile ("default")
113
+ # Used when loading credentials from the shared credentials file
114
+ # at HOME/.aws/credentials. When not specified, 'default' is used.
115
+ #
116
+ # @option options [Integer] :retry_limit (3)
117
+ # The maximum number of times to retry failed requests. Only
118
+ # ~ 500 level server errors and certain ~ 400 level client errors
119
+ # are retried. Generally, these are throttling errors, data
120
+ # checksum errors, networking errors, timeout errors and auth
121
+ # errors from expired credentials.
122
+ #
123
+ # @option options [String] :secret_access_key
124
+ #
125
+ # @option options [String] :session_token
126
+ #
127
+ # @option options [Boolean] :stub_responses (false)
128
+ # Causes the client to return stubbed responses. By default
129
+ # fake responses are generated and returned. You can specify
130
+ # the response data to return or errors to raise by calling
131
+ # {ClientStubs#stub_responses}. See {ClientStubs} for more information.
132
+ #
133
+ # ** Please note ** When response stubbing is enabled, no HTTP
134
+ # requests are made, and retries are disabled.
135
+ #
136
+ # @option options [Boolean] :validate_params (true)
137
+ # When `true`, request parameters are validated before
138
+ # sending the request.
139
+ #
140
+ def initialize(*args)
141
+ super
142
+ end
132
143
 
133
- # Adds a permission to the resource policy associated with the specified
134
- # AWS Lambda function. You use resource policies to grant permissions to
135
- # event sources that use *push* model. In a *push* model, event sources
136
- # (such as Amazon S3 and custom applications) invoke your Lambda
137
- # function. Each permission you add to the resource policy allows an
138
- # event source, permission to invoke the Lambda function.
139
- #
140
- # For information about the push model, see [AWS Lambda: How it
141
- # Works][1].
142
- #
143
- # If you are using versioning, the permissions you add are specific to
144
- # the Lambda function version or alias you specify in the
145
- # `AddPermission` request via the `Qualifier` parameter. For more
146
- # information about versioning, see [AWS Lambda Function Versioning and
147
- # Aliases][2].
148
- #
149
- # This operation requires permission for the `lambda:AddPermission`
150
- # action.
151
- #
152
- #
153
- #
154
- # [1]: http://docs.aws.amazon.com/lambda/latest/dg/lambda-introduction.html
155
- # [2]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
156
- # @option params [required, String] :function_name
157
- # Name of the Lambda function whose resource policy you are updating by
158
- # adding a new permission.
159
- #
160
- # You can specify a function name (for example, `Thumbnail`) or you can
161
- # specify Amazon Resource Name (ARN) of the function (for example,
162
- # `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`). AWS Lambda
163
- # also allows you to specify partial ARN (for example,
164
- # `account-id:Thumbnail`). Note that the length constraint applies only
165
- # to the ARN. If you specify only the function name, it is limited to 64
166
- # character in length.
167
- # @option params [required, String] :statement_id
168
- # A unique statement identifier.
169
- # @option params [required, String] :action
170
- # The AWS Lambda action you want to allow in this statement. Each Lambda
171
- # action is a string starting with `lambda:` followed by the API name .
172
- # For example, `lambda:CreateFunction`. You can use wildcard
173
- # (`lambda:*`) to grant permission for all AWS Lambda actions.
174
- # @option params [required, String] :principal
175
- # The principal who is getting this permission. It can be Amazon S3
176
- # service Principal (`s3.amazonaws.com`) if you want Amazon S3 to invoke
177
- # the function, an AWS account ID if you are granting cross-account
178
- # permission, or any valid AWS service principal such as
179
- # `sns.amazonaws.com`. For example, you might want to allow a custom
180
- # application in another AWS account to push events to AWS Lambda by
181
- # invoking your function.
182
- # @option params [String] :source_arn
183
- # This is optional; however, when granting Amazon S3 permission to
184
- # invoke your function, you should specify this field with the Amazon
185
- # Resource Name (ARN) as its value. This ensures that only events
186
- # generated from the specified source can invoke the function.
187
- #
188
- # If you add a permission for the Amazon S3 principal without providing
189
- # the source ARN, any AWS account that creates a mapping to your
190
- # function ARN can send events to invoke your Lambda function from
191
- # Amazon S3.
192
- # @option params [String] :source_account
193
- # This parameter is used for S3, SES, CloudWatch Logs and CloudWatch
194
- # Rules only. The AWS account ID (without a hyphen) of the source owner.
195
- # For example, if the `SourceArn` identifies a bucket, then this is the
196
- # bucket owner's account ID. You can use this additional condition to
197
- # ensure the bucket you specify is owned by a specific account (it is
198
- # possible the bucket owner deleted the bucket and some other AWS
199
- # account created the bucket). You can also use this condition to
200
- # specify all sources (that is, you don't specify the `SourceArn`)
201
- # owned by a specific account.
202
- # @option params [String] :event_source_token
203
- # A unique token that must be supplied by the principal invoking the
204
- # function. This is currently only used for Alexa Smart Home functions.
205
- # @option params [String] :qualifier
206
- # You can use this optional query parameter to describe a qualified ARN
207
- # using a function version or an alias name. The permission will then
208
- # apply to the specific qualified ARN. For example, if you specify
209
- # function version 2 as the qualifier, then permission applies only when
210
- # request is made using qualified function ARN:
211
- #
212
- # `arn:aws:lambda:aws-region:acct-id:function:function-name:2`
213
- #
214
- # If you specify an alias name, for example `PROD`, then the permission
215
- # is valid only for requests made using the alias ARN:
216
- #
217
- # `arn:aws:lambda:aws-region:acct-id:function:function-name:PROD`
218
- #
219
- # If the qualifier is not specified, the permission is valid only when
220
- # requests is made using unqualified function ARN.
221
- #
222
- # `arn:aws:lambda:aws-region:acct-id:function:function-name`
223
- # @return [Types::AddPermissionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
224
- #
225
- # * {Types::AddPermissionResponse#statement #Statement} => String
226
- #
227
- # @example Request syntax with placeholder values
228
- # resp = client.add_permission({
229
- # function_name: "FunctionName", # required
230
- # statement_id: "StatementId", # required
231
- # action: "Action", # required
232
- # principal: "Principal", # required
233
- # source_arn: "Arn",
234
- # source_account: "SourceOwner",
235
- # event_source_token: "EventSourceToken",
236
- # qualifier: "Qualifier",
237
- # })
238
- #
239
- # @example Response structure
240
- # resp.statement #=> String
241
- # @overload add_permission(params = {})
242
- # @param [Hash] params ({})
243
- def add_permission(params = {}, options = {})
244
- req = build_request(:add_permission, params)
245
- req.send_request(options)
246
- end
144
+ # @!group API Operations
247
145
 
248
- # Creates an alias that points to the specified Lambda function version.
249
- # For more information, see [Introduction to AWS Lambda Aliases][1].
250
- #
251
- # Alias names are unique for a given function. This requires permission
252
- # for the lambda:CreateAlias action.
253
- #
254
- #
255
- #
256
- # [1]: http://docs.aws.amazon.com/lambda/latest/dg/aliases-intro.html
257
- # @option params [required, String] :function_name
258
- # Name of the Lambda function for which you want to create an alias.
259
- # @option params [required, String] :name
260
- # Name for the alias you are creating.
261
- # @option params [required, String] :function_version
262
- # Lambda function version for which you are creating the alias.
263
- # @option params [String] :description
264
- # Description of the alias.
265
- # @return [Types::AliasConfiguration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
266
- #
267
- # * {Types::AliasConfiguration#alias_arn #AliasArn} => String
268
- # * {Types::AliasConfiguration#name #Name} => String
269
- # * {Types::AliasConfiguration#function_version #FunctionVersion} => String
270
- # * {Types::AliasConfiguration#description #Description} => String
271
- #
272
- # @example Request syntax with placeholder values
273
- # resp = client.create_alias({
274
- # function_name: "FunctionName", # required
275
- # name: "Alias", # required
276
- # function_version: "Version", # required
277
- # description: "Description",
278
- # })
279
- #
280
- # @example Response structure
281
- # resp.alias_arn #=> String
282
- # resp.name #=> String
283
- # resp.function_version #=> String
284
- # resp.description #=> String
285
- # @overload create_alias(params = {})
286
- # @param [Hash] params ({})
287
- def create_alias(params = {}, options = {})
288
- req = build_request(:create_alias, params)
289
- req.send_request(options)
290
- end
146
+ # Adds a permission to the resource policy associated with the specified
147
+ # AWS Lambda function. You use resource policies to grant permissions to
148
+ # event sources that use *push* model. In a *push* model, event sources
149
+ # (such as Amazon S3 and custom applications) invoke your Lambda
150
+ # function. Each permission you add to the resource policy allows an
151
+ # event source, permission to invoke the Lambda function.
152
+ #
153
+ # For information about the push model, see [AWS Lambda: How it
154
+ # Works][1].
155
+ #
156
+ # If you are using versioning, the permissions you add are specific to
157
+ # the Lambda function version or alias you specify in the
158
+ # `AddPermission` request via the `Qualifier` parameter. For more
159
+ # information about versioning, see [AWS Lambda Function Versioning and
160
+ # Aliases][2].
161
+ #
162
+ # This operation requires permission for the `lambda:AddPermission`
163
+ # action.
164
+ #
165
+ #
166
+ #
167
+ # [1]: http://docs.aws.amazon.com/lambda/latest/dg/lambda-introduction.html
168
+ # [2]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
169
+ #
170
+ # @option params [required, String] :function_name
171
+ # Name of the Lambda function whose resource policy you are updating by
172
+ # adding a new permission.
173
+ #
174
+ # You can specify a function name (for example, `Thumbnail`) or you can
175
+ # specify Amazon Resource Name (ARN) of the function (for example,
176
+ # `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`). AWS Lambda
177
+ # also allows you to specify partial ARN (for example,
178
+ # `account-id:Thumbnail`). Note that the length constraint applies only
179
+ # to the ARN. If you specify only the function name, it is limited to 64
180
+ # character in length.
181
+ #
182
+ # @option params [required, String] :statement_id
183
+ # A unique statement identifier.
184
+ #
185
+ # @option params [required, String] :action
186
+ # The AWS Lambda action you want to allow in this statement. Each Lambda
187
+ # action is a string starting with `lambda:` followed by the API name .
188
+ # For example, `lambda:CreateFunction`. You can use wildcard
189
+ # (`lambda:*`) to grant permission for all AWS Lambda actions.
190
+ #
191
+ # @option params [required, String] :principal
192
+ # The principal who is getting this permission. It can be Amazon S3
193
+ # service Principal (`s3.amazonaws.com`) if you want Amazon S3 to invoke
194
+ # the function, an AWS account ID if you are granting cross-account
195
+ # permission, or any valid AWS service principal such as
196
+ # `sns.amazonaws.com`. For example, you might want to allow a custom
197
+ # application in another AWS account to push events to AWS Lambda by
198
+ # invoking your function.
199
+ #
200
+ # @option params [String] :source_arn
201
+ # This is optional; however, when granting Amazon S3 permission to
202
+ # invoke your function, you should specify this field with the Amazon
203
+ # Resource Name (ARN) as its value. This ensures that only events
204
+ # generated from the specified source can invoke the function.
205
+ #
206
+ # If you add a permission for the Amazon S3 principal without providing
207
+ # the source ARN, any AWS account that creates a mapping to your
208
+ # function ARN can send events to invoke your Lambda function from
209
+ # Amazon S3.
210
+ #
211
+ # @option params [String] :source_account
212
+ # This parameter is used for S3, SES, CloudWatch Logs and CloudWatch
213
+ # Rules only. The AWS account ID (without a hyphen) of the source owner.
214
+ # For example, if the `SourceArn` identifies a bucket, then this is the
215
+ # bucket owner's account ID. You can use this additional condition to
216
+ # ensure the bucket you specify is owned by a specific account (it is
217
+ # possible the bucket owner deleted the bucket and some other AWS
218
+ # account created the bucket). You can also use this condition to
219
+ # specify all sources (that is, you don't specify the `SourceArn`)
220
+ # owned by a specific account.
221
+ #
222
+ # @option params [String] :event_source_token
223
+ # A unique token that must be supplied by the principal invoking the
224
+ # function. This is currently only used for Alexa Smart Home functions.
225
+ #
226
+ # @option params [String] :qualifier
227
+ # You can use this optional query parameter to describe a qualified ARN
228
+ # using a function version or an alias name. The permission will then
229
+ # apply to the specific qualified ARN. For example, if you specify
230
+ # function version 2 as the qualifier, then permission applies only when
231
+ # request is made using qualified function ARN:
232
+ #
233
+ # `arn:aws:lambda:aws-region:acct-id:function:function-name:2`
234
+ #
235
+ # If you specify an alias name, for example `PROD`, then the permission
236
+ # is valid only for requests made using the alias ARN:
237
+ #
238
+ # `arn:aws:lambda:aws-region:acct-id:function:function-name:PROD`
239
+ #
240
+ # If the qualifier is not specified, the permission is valid only when
241
+ # requests is made using unqualified function ARN.
242
+ #
243
+ # `arn:aws:lambda:aws-region:acct-id:function:function-name`
244
+ #
245
+ # @return [Types::AddPermissionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
246
+ #
247
+ # * {Types::AddPermissionResponse#statement #statement} => String
248
+ #
249
+ # @example Request syntax with placeholder values
250
+ #
251
+ # resp = client.add_permission({
252
+ # function_name: "FunctionName", # required
253
+ # statement_id: "StatementId", # required
254
+ # action: "Action", # required
255
+ # principal: "Principal", # required
256
+ # source_arn: "Arn",
257
+ # source_account: "SourceOwner",
258
+ # event_source_token: "EventSourceToken",
259
+ # qualifier: "Qualifier",
260
+ # })
261
+ #
262
+ # @example Response structure
263
+ #
264
+ # resp.statement #=> String
265
+ #
266
+ # @overload add_permission(params = {})
267
+ # @param [Hash] params ({})
268
+ def add_permission(params = {}, options = {})
269
+ req = build_request(:add_permission, params)
270
+ req.send_request(options)
271
+ end
291
272
 
292
- # Identifies a stream as an event source for a Lambda function. It can
293
- # be either an Amazon Kinesis stream or an Amazon DynamoDB stream. AWS
294
- # Lambda invokes the specified function when records are posted to the
295
- # stream.
296
- #
297
- # This association between a stream source and a Lambda function is
298
- # called the event source mapping.
299
- #
300
- # This event source mapping is relevant only in the AWS Lambda pull
301
- # model, where AWS Lambda invokes the function. For more information, go
302
- # to [AWS Lambda: How it Works][1] in the *AWS Lambda Developer Guide*.
303
- #
304
- # You provide mapping information (for example, which stream to read
305
- # from and which Lambda function to invoke) in the request body.
306
- #
307
- # Each event source, such as an Amazon Kinesis or a DynamoDB stream, can
308
- # be associated with multiple AWS Lambda function. A given Lambda
309
- # function can be associated with multiple AWS event sources.
310
- #
311
- # If you are using versioning, you can specify a specific function
312
- # version or an alias via the function name parameter. For more
313
- # information about versioning, see [AWS Lambda Function Versioning and
314
- # Aliases][2].
315
- #
316
- # This operation requires permission for the
317
- # `lambda:CreateEventSourceMapping` action.
318
- #
319
- #
320
- #
321
- # [1]: http://docs.aws.amazon.com/lambda/latest/dg/lambda-introduction.html
322
- # [2]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
323
- # @option params [required, String] :event_source_arn
324
- # The Amazon Resource Name (ARN) of the Amazon Kinesis or the Amazon
325
- # DynamoDB stream that is the event source. Any record added to this
326
- # stream could cause AWS Lambda to invoke your Lambda function, it
327
- # depends on the `BatchSize`. AWS Lambda POSTs the Amazon Kinesis event,
328
- # containing records, to your Lambda function as JSON.
329
- # @option params [required, String] :function_name
330
- # The Lambda function to invoke when AWS Lambda detects an event on the
331
- # stream.
332
- #
333
- # You can specify the function name (for example, `Thumbnail`) or you
334
- # can specify Amazon Resource Name (ARN) of the function (for example,
335
- # `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`).
336
- #
337
- # If you are using versioning, you can also provide a qualified function
338
- # ARN (ARN that is qualified with function version or alias name as
339
- # suffix). For more information about versioning, see [AWS Lambda
340
- # Function Versioning and Aliases][1]
341
- #
342
- # AWS Lambda also allows you to specify only the function name with the
343
- # account ID qualifier (for example, `account-id:Thumbnail`).
344
- #
345
- # Note that the length constraint applies only to the ARN. If you
346
- # specify only the function name, it is limited to 64 character in
347
- # length.
348
- #
349
- #
350
- #
351
- # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
352
- # @option params [Boolean] :enabled
353
- # Indicates whether AWS Lambda should begin polling the event source. By
354
- # default, `Enabled` is true.
355
- # @option params [Integer] :batch_size
356
- # The largest number of records that AWS Lambda will retrieve from your
357
- # event source at the time of invoking your function. Your function
358
- # receives an event with all the retrieved records. The default is 100
359
- # records.
360
- # @option params [required, String] :starting_position
361
- # The position in the stream where AWS Lambda should start reading.
362
- # Valid only for Kinesis streams. For more information, go to
363
- # [ShardIteratorType][1] in the *Amazon Kinesis API Reference*.
364
- #
365
- #
366
- #
367
- # [1]: http://docs.aws.amazon.com/kinesis/latest/APIReference/API_GetShardIterator.html#Kinesis-GetShardIterator-request-ShardIteratorType
368
- # @option params [Time,DateTime,Date,Integer,String] :starting_position_timestamp
369
- # The timestamp of the data record from which to start reading. Used
370
- # with [shard iterator type][1] AT\_TIMESTAMP. If a record with this
371
- # exact timestamp does not exist, the iterator returned is for the next
372
- # (later) record. If the timestamp is older than the current trim
373
- # horizon, the iterator returned is for the oldest untrimmed data record
374
- # (TRIM\_HORIZON). Valid only for Kinesis streams.
375
- #
376
- #
377
- #
378
- # [1]: http://docs.aws.amazon.com/kinesis/latest/APIReference/API_GetShardIterator.html#Kinesis-GetShardIterator-request-ShardIteratorType
379
- # @return [Types::EventSourceMappingConfiguration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
380
- #
381
- # * {Types::EventSourceMappingConfiguration#uuid #UUID} => String
382
- # * {Types::EventSourceMappingConfiguration#batch_size #BatchSize} => Integer
383
- # * {Types::EventSourceMappingConfiguration#event_source_arn #EventSourceArn} => String
384
- # * {Types::EventSourceMappingConfiguration#function_arn #FunctionArn} => String
385
- # * {Types::EventSourceMappingConfiguration#last_modified #LastModified} => Time
386
- # * {Types::EventSourceMappingConfiguration#last_processing_result #LastProcessingResult} => String
387
- # * {Types::EventSourceMappingConfiguration#state #State} => String
388
- # * {Types::EventSourceMappingConfiguration#state_transition_reason #StateTransitionReason} => String
389
- #
390
- # @example Request syntax with placeholder values
391
- # resp = client.create_event_source_mapping({
392
- # event_source_arn: "Arn", # required
393
- # function_name: "FunctionName", # required
394
- # enabled: false,
395
- # batch_size: 1,
396
- # starting_position: "TRIM_HORIZON", # required, accepts TRIM_HORIZON, LATEST, AT_TIMESTAMP
397
- # starting_position_timestamp: Time.now,
398
- # })
399
- #
400
- # @example Response structure
401
- # resp.uuid #=> String
402
- # resp.batch_size #=> Integer
403
- # resp.event_source_arn #=> String
404
- # resp.function_arn #=> String
405
- # resp.last_modified #=> Time
406
- # resp.last_processing_result #=> String
407
- # resp.state #=> String
408
- # resp.state_transition_reason #=> String
409
- # @overload create_event_source_mapping(params = {})
410
- # @param [Hash] params ({})
411
- def create_event_source_mapping(params = {}, options = {})
412
- req = build_request(:create_event_source_mapping, params)
413
- req.send_request(options)
414
- end
273
+ # Creates an alias that points to the specified Lambda function version.
274
+ # For more information, see [Introduction to AWS Lambda Aliases][1].
275
+ #
276
+ # Alias names are unique for a given function. This requires permission
277
+ # for the lambda:CreateAlias action.
278
+ #
279
+ #
280
+ #
281
+ # [1]: http://docs.aws.amazon.com/lambda/latest/dg/aliases-intro.html
282
+ #
283
+ # @option params [required, String] :function_name
284
+ # Name of the Lambda function for which you want to create an alias.
285
+ #
286
+ # @option params [required, String] :name
287
+ # Name for the alias you are creating.
288
+ #
289
+ # @option params [required, String] :function_version
290
+ # Lambda function version for which you are creating the alias.
291
+ #
292
+ # @option params [String] :description
293
+ # Description of the alias.
294
+ #
295
+ # @return [Types::AliasConfiguration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
296
+ #
297
+ # * {Types::AliasConfiguration#alias_arn #alias_arn} => String
298
+ # * {Types::AliasConfiguration#name #name} => String
299
+ # * {Types::AliasConfiguration#function_version #function_version} => String
300
+ # * {Types::AliasConfiguration#description #description} => String
301
+ #
302
+ # @example Request syntax with placeholder values
303
+ #
304
+ # resp = client.create_alias({
305
+ # function_name: "FunctionName", # required
306
+ # name: "Alias", # required
307
+ # function_version: "Version", # required
308
+ # description: "Description",
309
+ # })
310
+ #
311
+ # @example Response structure
312
+ #
313
+ # resp.alias_arn #=> String
314
+ # resp.name #=> String
315
+ # resp.function_version #=> String
316
+ # resp.description #=> String
317
+ #
318
+ # @overload create_alias(params = {})
319
+ # @param [Hash] params ({})
320
+ def create_alias(params = {}, options = {})
321
+ req = build_request(:create_alias, params)
322
+ req.send_request(options)
323
+ end
415
324
 
416
- # Creates a new Lambda function. The function metadata is created from
417
- # the request parameters, and the code for the function is provided by a
418
- # .zip file in the request body. If the function name already exists,
419
- # the operation will fail. Note that the function name is
420
- # case-sensitive.
421
- #
422
- # If you are using versioning, you can also publish a version of the
423
- # Lambda function you are creating using the `Publish` parameter. For
424
- # more information about versioning, see [AWS Lambda Function Versioning
425
- # and Aliases][1].
426
- #
427
- # This operation requires permission for the `lambda:CreateFunction`
428
- # action.
429
- #
430
- #
431
- #
432
- # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
433
- # @option params [required, String] :function_name
434
- # The name you want to assign to the function you are uploading. The
435
- # function names appear in the console and are returned in the
436
- # ListFunctions API. Function names are used to specify functions to
437
- # other AWS Lambda APIs, such as Invoke.
438
- # @option params [required, String] :runtime
439
- # The runtime environment for the Lambda function you are uploading.
440
- #
441
- # To use the Node.js runtime v4.3, set the value to "nodejs4.3". To
442
- # use earlier runtime (v0.10.42), set the value to "nodejs".
443
- #
444
- # <note markdown="1"> You can no longer create functions using the v0.10.42 runtime version
445
- # as of November, 2016. Existing functions will be supported until early
446
- # 2017 but we recommend you migrate them to nodejs4.3 runtime version as
447
- # soon as possible.
448
- #
449
- # </note>
450
- # @option params [required, String] :role
451
- # The Amazon Resource Name (ARN) of the IAM role that Lambda assumes
452
- # when it executes your function to access any other Amazon Web Services
453
- # (AWS) resources. For more information, see [AWS Lambda: How it
454
- # Works][1].
455
- #
456
- #
457
- #
458
- # [1]: http://docs.aws.amazon.com/lambda/latest/dg/lambda-introduction.html
459
- # @option params [required, String] :handler
460
- # The function within your code that Lambda calls to begin execution.
461
- # For Node.js, it is the *module-name*.*export* value in your function.
462
- # For Java, it can be `package.class-name::handler` or
463
- # `package.class-name`. For more information, see [Lambda Function
464
- # Handler (Java)][1].
465
- #
466
- #
467
- #
468
- # [1]: http://docs.aws.amazon.com/lambda/latest/dg/java-programming-model-handler-types.html
469
- # @option params [required, Types::FunctionCode] :code
470
- # The code for the Lambda function.
471
- # @option params [String] :description
472
- # A short, user-defined function description. Lambda does not use this
473
- # value. Assign a meaningful description as you see fit.
474
- # @option params [Integer] :timeout
475
- # The function execution time at which Lambda should terminate the
476
- # function. Because the execution time has cost implications, we
477
- # recommend you set this value based on your expected execution time.
478
- # The default is 3 seconds.
479
- # @option params [Integer] :memory_size
480
- # The amount of memory, in MB, your Lambda function is given. Lambda
481
- # uses this memory size to infer the amount of CPU and memory allocated
482
- # to your function. Your function use-case determines your CPU and
483
- # memory requirements. For example, a database operation might need less
484
- # memory compared to an image processing function. The default value is
485
- # 128 MB. The value must be a multiple of 64 MB.
486
- # @option params [Boolean] :publish
487
- # This boolean parameter can be used to request AWS Lambda to create the
488
- # Lambda function and publish a version as an atomic operation.
489
- # @option params [Types::VpcConfig] :vpc_config
490
- # If your Lambda function accesses resources in a VPC, you provide this
491
- # parameter identifying the list of security group IDs and subnet IDs.
492
- # These must belong to the same VPC. You must provide at least one
493
- # security group and one subnet ID.
494
- # @option params [Types::DeadLetterConfig] :dead_letter_config
495
- # The parent object that contains the target ARN (Amazon Resource Name)
496
- # of an Amazon SQS queue or Amazon SNS topic.
497
- # @option params [Types::Environment] :environment
498
- # The parent object that contains your environment's configuration
499
- # settings.
500
- # @option params [String] :kms_key_arn
501
- # The Amazon Resource Name (ARN) of the KMS key used to encrypt your
502
- # function's environment variables. If not provided, AWS Lambda will
503
- # use a default service key.
504
- # @return [Types::FunctionConfiguration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
505
- #
506
- # * {Types::FunctionConfiguration#function_name #FunctionName} => String
507
- # * {Types::FunctionConfiguration#function_arn #FunctionArn} => String
508
- # * {Types::FunctionConfiguration#runtime #Runtime} => String
509
- # * {Types::FunctionConfiguration#role #Role} => String
510
- # * {Types::FunctionConfiguration#handler #Handler} => String
511
- # * {Types::FunctionConfiguration#code_size #CodeSize} => Integer
512
- # * {Types::FunctionConfiguration#description #Description} => String
513
- # * {Types::FunctionConfiguration#timeout #Timeout} => Integer
514
- # * {Types::FunctionConfiguration#memory_size #MemorySize} => Integer
515
- # * {Types::FunctionConfiguration#last_modified #LastModified} => Time
516
- # * {Types::FunctionConfiguration#code_sha_256 #CodeSha256} => String
517
- # * {Types::FunctionConfiguration#version #Version} => String
518
- # * {Types::FunctionConfiguration#vpc_config #VpcConfig} => Types::VpcConfigResponse
519
- # * {Types::FunctionConfiguration#dead_letter_config #DeadLetterConfig} => Types::DeadLetterConfig
520
- # * {Types::FunctionConfiguration#environment #Environment} => Types::EnvironmentResponse
521
- # * {Types::FunctionConfiguration#kms_key_arn #KMSKeyArn} => String
522
- #
523
- # @example Request syntax with placeholder values
524
- # resp = client.create_function({
525
- # function_name: "FunctionName", # required
526
- # runtime: "nodejs", # required, accepts nodejs, nodejs4.3, java8, python2.7, dotnetcore1.0, nodejs4.3-edge
527
- # role: "RoleArn", # required
528
- # handler: "Handler", # required
529
- # code: { # required
530
- # zip_file: "data",
531
- # s3_bucket: "S3Bucket",
532
- # s3_key: "S3Key",
533
- # s3_object_version: "S3ObjectVersion",
534
- # },
535
- # description: "Description",
536
- # timeout: 1,
537
- # memory_size: 1,
538
- # publish: false,
539
- # vpc_config: {
540
- # subnet_ids: ["SubnetId"],
541
- # security_group_ids: ["SecurityGroupId"],
542
- # },
543
- # dead_letter_config: {
544
- # target_arn: "ResourceArn",
545
- # },
546
- # environment: {
547
- # variables: {
548
- # "EnvironmentVariableName" => "EnvironmentVariableValue",
549
- # },
550
- # },
551
- # kms_key_arn: "KMSKeyArn",
552
- # })
553
- #
554
- # @example Response structure
555
- # resp.function_name #=> String
556
- # resp.function_arn #=> String
557
- # resp.runtime #=> String, one of "nodejs", "nodejs4.3", "java8", "python2.7", "dotnetcore1.0", "nodejs4.3-edge"
558
- # resp.role #=> String
559
- # resp.handler #=> String
560
- # resp.code_size #=> Integer
561
- # resp.description #=> String
562
- # resp.timeout #=> Integer
563
- # resp.memory_size #=> Integer
564
- # resp.last_modified #=> Time
565
- # resp.code_sha_256 #=> String
566
- # resp.version #=> String
567
- # resp.vpc_config.subnet_ids #=> Array
568
- # resp.vpc_config.subnet_ids[0] #=> String
569
- # resp.vpc_config.security_group_ids #=> Array
570
- # resp.vpc_config.security_group_ids[0] #=> String
571
- # resp.vpc_config.vpc_id #=> String
572
- # resp.dead_letter_config.target_arn #=> String
573
- # resp.environment.variables #=> Hash
574
- # resp.environment.variables["EnvironmentVariableName"] #=> String
575
- # resp.environment.error.error_code #=> String
576
- # resp.environment.error.message #=> String
577
- # resp.kms_key_arn #=> String
578
- # @overload create_function(params = {})
579
- # @param [Hash] params ({})
580
- def create_function(params = {}, options = {})
581
- req = build_request(:create_function, params)
582
- req.send_request(options)
583
- end
325
+ # Identifies a stream as an event source for a Lambda function. It can
326
+ # be either an Amazon Kinesis stream or an Amazon DynamoDB stream. AWS
327
+ # Lambda invokes the specified function when records are posted to the
328
+ # stream.
329
+ #
330
+ # This association between a stream source and a Lambda function is
331
+ # called the event source mapping.
332
+ #
333
+ # This event source mapping is relevant only in the AWS Lambda pull
334
+ # model, where AWS Lambda invokes the function. For more information,
335
+ # see [AWS Lambda: How it Works][1] in the *AWS Lambda Developer Guide*.
336
+ #
337
+ # You provide mapping information (for example, which stream to read
338
+ # from and which Lambda function to invoke) in the request body.
339
+ #
340
+ # Each event source, such as an Amazon Kinesis or a DynamoDB stream, can
341
+ # be associated with multiple AWS Lambda function. A given Lambda
342
+ # function can be associated with multiple AWS event sources.
343
+ #
344
+ # If you are using versioning, you can specify a specific function
345
+ # version or an alias via the function name parameter. For more
346
+ # information about versioning, see [AWS Lambda Function Versioning and
347
+ # Aliases][2].
348
+ #
349
+ # This operation requires permission for the
350
+ # `lambda:CreateEventSourceMapping` action.
351
+ #
352
+ #
353
+ #
354
+ # [1]: http://docs.aws.amazon.com/lambda/latest/dg/lambda-introduction.html
355
+ # [2]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
356
+ #
357
+ # @option params [required, String] :event_source_arn
358
+ # The Amazon Resource Name (ARN) of the Amazon Kinesis or the Amazon
359
+ # DynamoDB stream that is the event source. Any record added to this
360
+ # stream could cause AWS Lambda to invoke your Lambda function, it
361
+ # depends on the `BatchSize`. AWS Lambda POSTs the Amazon Kinesis event,
362
+ # containing records, to your Lambda function as JSON.
363
+ #
364
+ # @option params [required, String] :function_name
365
+ # The Lambda function to invoke when AWS Lambda detects an event on the
366
+ # stream.
367
+ #
368
+ # You can specify the function name (for example, `Thumbnail`) or you
369
+ # can specify Amazon Resource Name (ARN) of the function (for example,
370
+ # `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`).
371
+ #
372
+ # If you are using versioning, you can also provide a qualified function
373
+ # ARN (ARN that is qualified with function version or alias name as
374
+ # suffix). For more information about versioning, see [AWS Lambda
375
+ # Function Versioning and Aliases][1]
376
+ #
377
+ # AWS Lambda also allows you to specify only the function name with the
378
+ # account ID qualifier (for example, `account-id:Thumbnail`).
379
+ #
380
+ # Note that the length constraint applies only to the ARN. If you
381
+ # specify only the function name, it is limited to 64 character in
382
+ # length.
383
+ #
384
+ #
385
+ #
386
+ # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
387
+ #
388
+ # @option params [Boolean] :enabled
389
+ # Indicates whether AWS Lambda should begin polling the event source. By
390
+ # default, `Enabled` is true.
391
+ #
392
+ # @option params [Integer] :batch_size
393
+ # The largest number of records that AWS Lambda will retrieve from your
394
+ # event source at the time of invoking your function. Your function
395
+ # receives an event with all the retrieved records. The default is 100
396
+ # records.
397
+ #
398
+ # @option params [required, String] :starting_position
399
+ # The position in the stream where AWS Lambda should start reading.
400
+ # Valid only for Kinesis streams. For more information, see
401
+ # [ShardIteratorType][1] in the *Amazon Kinesis API Reference*.
402
+ #
403
+ #
404
+ #
405
+ # [1]: http://docs.aws.amazon.com/kinesis/latest/APIReference/API_GetShardIterator.html#Kinesis-GetShardIterator-request-ShardIteratorType
406
+ #
407
+ # @option params [Time,DateTime,Date,Integer,String] :starting_position_timestamp
408
+ # The timestamp of the data record from which to start reading. Used
409
+ # with [shard iterator type][1] AT\_TIMESTAMP. If a record with this
410
+ # exact timestamp does not exist, the iterator returned is for the next
411
+ # (later) record. If the timestamp is older than the current trim
412
+ # horizon, the iterator returned is for the oldest untrimmed data record
413
+ # (TRIM\_HORIZON). Valid only for Kinesis streams.
414
+ #
415
+ #
416
+ #
417
+ # [1]: http://docs.aws.amazon.com/kinesis/latest/APIReference/API_GetShardIterator.html#Kinesis-GetShardIterator-request-ShardIteratorType
418
+ #
419
+ # @return [Types::EventSourceMappingConfiguration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
420
+ #
421
+ # * {Types::EventSourceMappingConfiguration#uuid #uuid} => String
422
+ # * {Types::EventSourceMappingConfiguration#batch_size #batch_size} => Integer
423
+ # * {Types::EventSourceMappingConfiguration#event_source_arn #event_source_arn} => String
424
+ # * {Types::EventSourceMappingConfiguration#function_arn #function_arn} => String
425
+ # * {Types::EventSourceMappingConfiguration#last_modified #last_modified} => Time
426
+ # * {Types::EventSourceMappingConfiguration#last_processing_result #last_processing_result} => String
427
+ # * {Types::EventSourceMappingConfiguration#state #state} => String
428
+ # * {Types::EventSourceMappingConfiguration#state_transition_reason #state_transition_reason} => String
429
+ #
430
+ # @example Request syntax with placeholder values
431
+ #
432
+ # resp = client.create_event_source_mapping({
433
+ # event_source_arn: "Arn", # required
434
+ # function_name: "FunctionName", # required
435
+ # enabled: false,
436
+ # batch_size: 1,
437
+ # starting_position: "TRIM_HORIZON", # required, accepts TRIM_HORIZON, LATEST, AT_TIMESTAMP
438
+ # starting_position_timestamp: Time.now,
439
+ # })
440
+ #
441
+ # @example Response structure
442
+ #
443
+ # resp.uuid #=> String
444
+ # resp.batch_size #=> Integer
445
+ # resp.event_source_arn #=> String
446
+ # resp.function_arn #=> String
447
+ # resp.last_modified #=> Time
448
+ # resp.last_processing_result #=> String
449
+ # resp.state #=> String
450
+ # resp.state_transition_reason #=> String
451
+ #
452
+ # @overload create_event_source_mapping(params = {})
453
+ # @param [Hash] params ({})
454
+ def create_event_source_mapping(params = {}, options = {})
455
+ req = build_request(:create_event_source_mapping, params)
456
+ req.send_request(options)
457
+ end
584
458
 
585
- # Deletes the specified Lambda function alias. For more information, see
586
- # [Introduction to AWS Lambda Aliases][1].
587
- #
588
- # This requires permission for the lambda:DeleteAlias action.
589
- #
590
- #
591
- #
592
- # [1]: http://docs.aws.amazon.com/lambda/latest/dg/aliases-intro.html
593
- # @option params [required, String] :function_name
594
- # The Lambda function name for which the alias is created. Deleting an
595
- # alias does not delete the function version to which it is pointing.
596
- # @option params [required, String] :name
597
- # Name of the alias to delete.
598
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
599
- #
600
- # @example Request syntax with placeholder values
601
- # resp = client.delete_alias({
602
- # function_name: "FunctionName", # required
603
- # name: "Alias", # required
604
- # })
605
- # @overload delete_alias(params = {})
606
- # @param [Hash] params ({})
607
- def delete_alias(params = {}, options = {})
608
- req = build_request(:delete_alias, params)
609
- req.send_request(options)
610
- end
459
+ # Creates a new Lambda function. The function metadata is created from
460
+ # the request parameters, and the code for the function is provided by a
461
+ # .zip file in the request body. If the function name already exists,
462
+ # the operation will fail. Note that the function name is
463
+ # case-sensitive.
464
+ #
465
+ # If you are using versioning, you can also publish a version of the
466
+ # Lambda function you are creating using the `Publish` parameter. For
467
+ # more information about versioning, see [AWS Lambda Function Versioning
468
+ # and Aliases][1].
469
+ #
470
+ # This operation requires permission for the `lambda:CreateFunction`
471
+ # action.
472
+ #
473
+ #
474
+ #
475
+ # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
476
+ #
477
+ # @option params [required, String] :function_name
478
+ # The name you want to assign to the function you are uploading. The
479
+ # function names appear in the console and are returned in the
480
+ # ListFunctions API. Function names are used to specify functions to
481
+ # other AWS Lambda API operations, such as Invoke.
482
+ #
483
+ # @option params [required, String] :runtime
484
+ # The runtime environment for the Lambda function you are uploading.
485
+ #
486
+ # To use the Node.js runtime v4.3, set the value to "nodejs4.3". To
487
+ # use earlier runtime (v0.10.42), set the value to "nodejs".
488
+ #
489
+ # <note markdown="1"> You can no longer create functions using the v0.10.42 runtime version
490
+ # as of November, 2016. Existing functions will be supported until early
491
+ # 2017, but we recommend you migrate them to nodejs4.3 runtime version
492
+ # as soon as possible.
493
+ #
494
+ # </note>
495
+ #
496
+ # @option params [required, String] :role
497
+ # The Amazon Resource Name (ARN) of the IAM role that Lambda assumes
498
+ # when it executes your function to access any other Amazon Web Services
499
+ # (AWS) resources. For more information, see [AWS Lambda: How it
500
+ # Works][1].
501
+ #
502
+ #
503
+ #
504
+ # [1]: http://docs.aws.amazon.com/lambda/latest/dg/lambda-introduction.html
505
+ #
506
+ # @option params [required, String] :handler
507
+ # The function within your code that Lambda calls to begin execution.
508
+ # For Node.js, it is the *module-name*.*export* value in your function.
509
+ # For Java, it can be `package.class-name::handler` or
510
+ # `package.class-name`. For more information, see [Lambda Function
511
+ # Handler (Java)][1].
512
+ #
513
+ #
514
+ #
515
+ # [1]: http://docs.aws.amazon.com/lambda/latest/dg/java-programming-model-handler-types.html
516
+ #
517
+ # @option params [required, Types::FunctionCode] :code
518
+ # The code for the Lambda function.
519
+ #
520
+ # @option params [String] :description
521
+ # A short, user-defined function description. Lambda does not use this
522
+ # value. Assign a meaningful description as you see fit.
523
+ #
524
+ # @option params [Integer] :timeout
525
+ # The function execution time at which Lambda should terminate the
526
+ # function. Because the execution time has cost implications, we
527
+ # recommend you set this value based on your expected execution time.
528
+ # The default is 3 seconds.
529
+ #
530
+ # @option params [Integer] :memory_size
531
+ # The amount of memory, in MB, your Lambda function is given. Lambda
532
+ # uses this memory size to infer the amount of CPU and memory allocated
533
+ # to your function. Your function use-case determines your CPU and
534
+ # memory requirements. For example, a database operation might need less
535
+ # memory compared to an image processing function. The default value is
536
+ # 128 MB. The value must be a multiple of 64 MB.
537
+ #
538
+ # @option params [Boolean] :publish
539
+ # This boolean parameter can be used to request AWS Lambda to create the
540
+ # Lambda function and publish a version as an atomic operation.
541
+ #
542
+ # @option params [Types::VpcConfig] :vpc_config
543
+ # If your Lambda function accesses resources in a VPC, you provide this
544
+ # parameter identifying the list of security group IDs and subnet IDs.
545
+ # These must belong to the same VPC. You must provide at least one
546
+ # security group and one subnet ID.
547
+ #
548
+ # @option params [Types::DeadLetterConfig] :dead_letter_config
549
+ # The parent object that contains the target Amazon Resource Name (ARN)
550
+ # of an Amazon SQS queue or Amazon SNS topic.
551
+ #
552
+ # @option params [Types::Environment] :environment
553
+ # The parent object that contains your environment's configuration
554
+ # settings.
555
+ #
556
+ # @option params [String] :kms_key_arn
557
+ # The Amazon Resource Name (ARN) of the KMS key used to encrypt your
558
+ # function's environment variables. If not provided, AWS Lambda will
559
+ # use a default service key.
560
+ #
561
+ # @return [Types::FunctionConfiguration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
562
+ #
563
+ # * {Types::FunctionConfiguration#function_name #function_name} => String
564
+ # * {Types::FunctionConfiguration#function_arn #function_arn} => String
565
+ # * {Types::FunctionConfiguration#runtime #runtime} => String
566
+ # * {Types::FunctionConfiguration#role #role} => String
567
+ # * {Types::FunctionConfiguration#handler #handler} => String
568
+ # * {Types::FunctionConfiguration#code_size #code_size} => Integer
569
+ # * {Types::FunctionConfiguration#description #description} => String
570
+ # * {Types::FunctionConfiguration#timeout #timeout} => Integer
571
+ # * {Types::FunctionConfiguration#memory_size #memory_size} => Integer
572
+ # * {Types::FunctionConfiguration#last_modified #last_modified} => Time
573
+ # * {Types::FunctionConfiguration#code_sha_256 #code_sha_256} => String
574
+ # * {Types::FunctionConfiguration#version #version} => String
575
+ # * {Types::FunctionConfiguration#vpc_config #vpc_config} => Types::VpcConfigResponse
576
+ # * {Types::FunctionConfiguration#dead_letter_config #dead_letter_config} => Types::DeadLetterConfig
577
+ # * {Types::FunctionConfiguration#environment #environment} => Types::EnvironmentResponse
578
+ # * {Types::FunctionConfiguration#kms_key_arn #kms_key_arn} => String
579
+ #
580
+ # @example Request syntax with placeholder values
581
+ #
582
+ # resp = client.create_function({
583
+ # function_name: "FunctionName", # required
584
+ # runtime: "nodejs", # required, accepts nodejs, nodejs4.3, java8, python2.7, dotnetcore1.0, nodejs4.3-edge
585
+ # role: "RoleArn", # required
586
+ # handler: "Handler", # required
587
+ # code: { # required
588
+ # zip_file: "data",
589
+ # s3_bucket: "S3Bucket",
590
+ # s3_key: "S3Key",
591
+ # s3_object_version: "S3ObjectVersion",
592
+ # },
593
+ # description: "Description",
594
+ # timeout: 1,
595
+ # memory_size: 1,
596
+ # publish: false,
597
+ # vpc_config: {
598
+ # subnet_ids: ["SubnetId"],
599
+ # security_group_ids: ["SecurityGroupId"],
600
+ # },
601
+ # dead_letter_config: {
602
+ # target_arn: "ResourceArn",
603
+ # },
604
+ # environment: {
605
+ # variables: {
606
+ # "EnvironmentVariableName" => "EnvironmentVariableValue",
607
+ # },
608
+ # },
609
+ # kms_key_arn: "KMSKeyArn",
610
+ # })
611
+ #
612
+ # @example Response structure
613
+ #
614
+ # resp.function_name #=> String
615
+ # resp.function_arn #=> String
616
+ # resp.runtime #=> String, one of "nodejs", "nodejs4.3", "java8", "python2.7", "dotnetcore1.0", "nodejs4.3-edge"
617
+ # resp.role #=> String
618
+ # resp.handler #=> String
619
+ # resp.code_size #=> Integer
620
+ # resp.description #=> String
621
+ # resp.timeout #=> Integer
622
+ # resp.memory_size #=> Integer
623
+ # resp.last_modified #=> Time
624
+ # resp.code_sha_256 #=> String
625
+ # resp.version #=> String
626
+ # resp.vpc_config.subnet_ids #=> Array
627
+ # resp.vpc_config.subnet_ids[0] #=> String
628
+ # resp.vpc_config.security_group_ids #=> Array
629
+ # resp.vpc_config.security_group_ids[0] #=> String
630
+ # resp.vpc_config.vpc_id #=> String
631
+ # resp.dead_letter_config.target_arn #=> String
632
+ # resp.environment.variables #=> Hash
633
+ # resp.environment.variables["EnvironmentVariableName"] #=> String
634
+ # resp.environment.error.error_code #=> String
635
+ # resp.environment.error.message #=> String
636
+ # resp.kms_key_arn #=> String
637
+ #
638
+ # @overload create_function(params = {})
639
+ # @param [Hash] params ({})
640
+ def create_function(params = {}, options = {})
641
+ req = build_request(:create_function, params)
642
+ req.send_request(options)
643
+ end
611
644
 
612
- # Removes an event source mapping. This means AWS Lambda will no longer
613
- # invoke the function for events in the associated source.
614
- #
615
- # This operation requires permission for the
616
- # `lambda:DeleteEventSourceMapping` action.
617
- # @option params [required, String] :uuid
618
- # The event source mapping ID.
619
- # @return [Types::EventSourceMappingConfiguration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
620
- #
621
- # * {Types::EventSourceMappingConfiguration#uuid #UUID} => String
622
- # * {Types::EventSourceMappingConfiguration#batch_size #BatchSize} => Integer
623
- # * {Types::EventSourceMappingConfiguration#event_source_arn #EventSourceArn} => String
624
- # * {Types::EventSourceMappingConfiguration#function_arn #FunctionArn} => String
625
- # * {Types::EventSourceMappingConfiguration#last_modified #LastModified} => Time
626
- # * {Types::EventSourceMappingConfiguration#last_processing_result #LastProcessingResult} => String
627
- # * {Types::EventSourceMappingConfiguration#state #State} => String
628
- # * {Types::EventSourceMappingConfiguration#state_transition_reason #StateTransitionReason} => String
629
- #
630
- # @example Request syntax with placeholder values
631
- # resp = client.delete_event_source_mapping({
632
- # uuid: "String", # required
633
- # })
634
- #
635
- # @example Response structure
636
- # resp.uuid #=> String
637
- # resp.batch_size #=> Integer
638
- # resp.event_source_arn #=> String
639
- # resp.function_arn #=> String
640
- # resp.last_modified #=> Time
641
- # resp.last_processing_result #=> String
642
- # resp.state #=> String
643
- # resp.state_transition_reason #=> String
644
- # @overload delete_event_source_mapping(params = {})
645
- # @param [Hash] params ({})
646
- def delete_event_source_mapping(params = {}, options = {})
647
- req = build_request(:delete_event_source_mapping, params)
648
- req.send_request(options)
649
- end
645
+ # Deletes the specified Lambda function alias. For more information, see
646
+ # [Introduction to AWS Lambda Aliases][1].
647
+ #
648
+ # This requires permission for the lambda:DeleteAlias action.
649
+ #
650
+ #
651
+ #
652
+ # [1]: http://docs.aws.amazon.com/lambda/latest/dg/aliases-intro.html
653
+ #
654
+ # @option params [required, String] :function_name
655
+ # The Lambda function name for which the alias is created. Deleting an
656
+ # alias does not delete the function version to which it is pointing.
657
+ #
658
+ # @option params [required, String] :name
659
+ # Name of the alias to delete.
660
+ #
661
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
662
+ #
663
+ # @example Request syntax with placeholder values
664
+ #
665
+ # resp = client.delete_alias({
666
+ # function_name: "FunctionName", # required
667
+ # name: "Alias", # required
668
+ # })
669
+ #
670
+ # @overload delete_alias(params = {})
671
+ # @param [Hash] params ({})
672
+ def delete_alias(params = {}, options = {})
673
+ req = build_request(:delete_alias, params)
674
+ req.send_request(options)
675
+ end
650
676
 
651
- # Deletes the specified Lambda function code and configuration.
652
- #
653
- # If you are using the versioning feature and you don't specify a
654
- # function version in your `DeleteFunction` request, AWS Lambda will
655
- # delete the function, including all its versions, and any aliases
656
- # pointing to the function versions. To delete a specific function
657
- # version, you must provide the function version via the `Qualifier`
658
- # parameter. For information about function versioning, see [AWS Lambda
659
- # Function Versioning and Aliases][1].
660
- #
661
- # When you delete a function the associated resource policy is also
662
- # deleted. You will need to delete the event source mappings explicitly.
663
- #
664
- # This operation requires permission for the `lambda:DeleteFunction`
665
- # action.
666
- #
667
- #
668
- #
669
- # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
670
- # @option params [required, String] :function_name
671
- # The Lambda function to delete.
672
- #
673
- # You can specify the function name (for example, `Thumbnail`) or you
674
- # can specify Amazon Resource Name (ARN) of the function (for example,
675
- # `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`). If you are
676
- # using versioning, you can also provide a qualified function ARN (ARN
677
- # that is qualified with function version or alias name as suffix). AWS
678
- # Lambda also allows you to specify only the function name with the
679
- # account ID qualifier (for example, `account-id:Thumbnail`). Note that
680
- # the length constraint applies only to the ARN. If you specify only the
681
- # function name, it is limited to 64 character in length.
682
- # @option params [String] :qualifier
683
- # Using this optional parameter you can specify a function version (but
684
- # not the `$LATEST` version) to direct AWS Lambda to delete a specific
685
- # function version. If the function version has one or more aliases
686
- # pointing to it, you will get an error because you cannot have aliases
687
- # pointing to it. You can delete any function version but not the
688
- # `$LATEST`, that is, you cannot specify `$LATEST` as the value of this
689
- # parameter. The `$LATEST` version can be deleted only when you want to
690
- # delete all the function versions and aliases.
691
- #
692
- # You can only specify a function version, not an alias name, using this
693
- # parameter. You cannot delete a function version using its alias.
694
- #
695
- # If you don't specify this parameter, AWS Lambda will delete the
696
- # function, including all of its versions and aliases.
697
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
698
- #
699
- # @example Request syntax with placeholder values
700
- # resp = client.delete_function({
701
- # function_name: "FunctionName", # required
702
- # qualifier: "Qualifier",
703
- # })
704
- # @overload delete_function(params = {})
705
- # @param [Hash] params ({})
706
- def delete_function(params = {}, options = {})
707
- req = build_request(:delete_function, params)
708
- req.send_request(options)
709
- end
677
+ # Removes an event source mapping. This means AWS Lambda will no longer
678
+ # invoke the function for events in the associated source.
679
+ #
680
+ # This operation requires permission for the
681
+ # `lambda:DeleteEventSourceMapping` action.
682
+ #
683
+ # @option params [required, String] :uuid
684
+ # The event source mapping ID.
685
+ #
686
+ # @return [Types::EventSourceMappingConfiguration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
687
+ #
688
+ # * {Types::EventSourceMappingConfiguration#uuid #uuid} => String
689
+ # * {Types::EventSourceMappingConfiguration#batch_size #batch_size} => Integer
690
+ # * {Types::EventSourceMappingConfiguration#event_source_arn #event_source_arn} => String
691
+ # * {Types::EventSourceMappingConfiguration#function_arn #function_arn} => String
692
+ # * {Types::EventSourceMappingConfiguration#last_modified #last_modified} => Time
693
+ # * {Types::EventSourceMappingConfiguration#last_processing_result #last_processing_result} => String
694
+ # * {Types::EventSourceMappingConfiguration#state #state} => String
695
+ # * {Types::EventSourceMappingConfiguration#state_transition_reason #state_transition_reason} => String
696
+ #
697
+ # @example Request syntax with placeholder values
698
+ #
699
+ # resp = client.delete_event_source_mapping({
700
+ # uuid: "String", # required
701
+ # })
702
+ #
703
+ # @example Response structure
704
+ #
705
+ # resp.uuid #=> String
706
+ # resp.batch_size #=> Integer
707
+ # resp.event_source_arn #=> String
708
+ # resp.function_arn #=> String
709
+ # resp.last_modified #=> Time
710
+ # resp.last_processing_result #=> String
711
+ # resp.state #=> String
712
+ # resp.state_transition_reason #=> String
713
+ #
714
+ # @overload delete_event_source_mapping(params = {})
715
+ # @param [Hash] params ({})
716
+ def delete_event_source_mapping(params = {}, options = {})
717
+ req = build_request(:delete_event_source_mapping, params)
718
+ req.send_request(options)
719
+ end
710
720
 
711
- # Returns a customer's account settings.
712
- #
713
- # You can use this operation to retrieve Lambda limit information such
714
- # as code size and concurrency limits. For more information on limits,
715
- # see [AWS Lambda Limits][1]. You can also retrieve resource usage
716
- # statistics such as code storage usage and function count.
717
- #
718
- #
719
- #
720
- # [1]: http://docs.aws.amazon.com/lambda/latest/dg/limits.html
721
- # @return [Types::GetAccountSettingsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
722
- #
723
- # * {Types::GetAccountSettingsResponse#account_limit #AccountLimit} => Types::AccountLimit
724
- # * {Types::GetAccountSettingsResponse#account_usage #AccountUsage} => Types::AccountUsage
725
- #
726
- # @example Request syntax with placeholder values
727
- # resp = client.get_account_settings()
728
- #
729
- # @example Response structure
730
- # resp.account_limit.total_code_size #=> Integer
731
- # resp.account_limit.code_size_unzipped #=> Integer
732
- # resp.account_limit.code_size_zipped #=> Integer
733
- # resp.account_limit.concurrent_executions #=> Integer
734
- # resp.account_usage.total_code_size #=> Integer
735
- # resp.account_usage.function_count #=> Integer
736
- # @overload get_account_settings(params = {})
737
- # @param [Hash] params ({})
738
- def get_account_settings(params = {}, options = {})
739
- req = build_request(:get_account_settings, params)
740
- req.send_request(options)
741
- end
721
+ # Deletes the specified Lambda function code and configuration.
722
+ #
723
+ # If you are using the versioning feature and you don't specify a
724
+ # function version in your `DeleteFunction` request, AWS Lambda will
725
+ # delete the function, including all its versions, and any aliases
726
+ # pointing to the function versions. To delete a specific function
727
+ # version, you must provide the function version via the `Qualifier`
728
+ # parameter. For information about function versioning, see [AWS Lambda
729
+ # Function Versioning and Aliases][1].
730
+ #
731
+ # When you delete a function the associated resource policy is also
732
+ # deleted. You will need to delete the event source mappings explicitly.
733
+ #
734
+ # This operation requires permission for the `lambda:DeleteFunction`
735
+ # action.
736
+ #
737
+ #
738
+ #
739
+ # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
740
+ #
741
+ # @option params [required, String] :function_name
742
+ # The Lambda function to delete.
743
+ #
744
+ # You can specify the function name (for example, `Thumbnail`) or you
745
+ # can specify Amazon Resource Name (ARN) of the function (for example,
746
+ # `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`). If you are
747
+ # using versioning, you can also provide a qualified function ARN (ARN
748
+ # that is qualified with function version or alias name as suffix). AWS
749
+ # Lambda also allows you to specify only the function name with the
750
+ # account ID qualifier (for example, `account-id:Thumbnail`). Note that
751
+ # the length constraint applies only to the ARN. If you specify only the
752
+ # function name, it is limited to 64 character in length.
753
+ #
754
+ # @option params [String] :qualifier
755
+ # Using this optional parameter you can specify a function version (but
756
+ # not the `$LATEST` version) to direct AWS Lambda to delete a specific
757
+ # function version. If the function version has one or more aliases
758
+ # pointing to it, you will get an error because you cannot have aliases
759
+ # pointing to it. You can delete any function version but not the
760
+ # `$LATEST`, that is, you cannot specify `$LATEST` as the value of this
761
+ # parameter. The `$LATEST` version can be deleted only when you want to
762
+ # delete all the function versions and aliases.
763
+ #
764
+ # You can only specify a function version, not an alias name, using this
765
+ # parameter. You cannot delete a function version using its alias.
766
+ #
767
+ # If you don't specify this parameter, AWS Lambda will delete the
768
+ # function, including all of its versions and aliases.
769
+ #
770
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
771
+ #
772
+ # @example Request syntax with placeholder values
773
+ #
774
+ # resp = client.delete_function({
775
+ # function_name: "FunctionName", # required
776
+ # qualifier: "Qualifier",
777
+ # })
778
+ #
779
+ # @overload delete_function(params = {})
780
+ # @param [Hash] params ({})
781
+ def delete_function(params = {}, options = {})
782
+ req = build_request(:delete_function, params)
783
+ req.send_request(options)
784
+ end
742
785
 
743
- # Returns the specified alias information such as the alias ARN,
744
- # description, and function version it is pointing to. For more
745
- # information, see [Introduction to AWS Lambda Aliases][1].
746
- #
747
- # This requires permission for the `lambda:GetAlias` action.
748
- #
749
- #
750
- #
751
- # [1]: http://docs.aws.amazon.com/lambda/latest/dg/aliases-intro.html
752
- # @option params [required, String] :function_name
753
- # Function name for which the alias is created. An alias is a
754
- # subresource that exists only in the context of an existing Lambda
755
- # function so you must specify the function name.
756
- # @option params [required, String] :name
757
- # Name of the alias for which you want to retrieve information.
758
- # @return [Types::AliasConfiguration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
759
- #
760
- # * {Types::AliasConfiguration#alias_arn #AliasArn} => String
761
- # * {Types::AliasConfiguration#name #Name} => String
762
- # * {Types::AliasConfiguration#function_version #FunctionVersion} => String
763
- # * {Types::AliasConfiguration#description #Description} => String
764
- #
765
- # @example Request syntax with placeholder values
766
- # resp = client.get_alias({
767
- # function_name: "FunctionName", # required
768
- # name: "Alias", # required
769
- # })
770
- #
771
- # @example Response structure
772
- # resp.alias_arn #=> String
773
- # resp.name #=> String
774
- # resp.function_version #=> String
775
- # resp.description #=> String
776
- # @overload get_alias(params = {})
777
- # @param [Hash] params ({})
778
- def get_alias(params = {}, options = {})
779
- req = build_request(:get_alias, params)
780
- req.send_request(options)
781
- end
786
+ # Returns a customer's account settings.
787
+ #
788
+ # You can use this operation to retrieve Lambda limits information, such
789
+ # as code size and concurrency limits. For more information about
790
+ # limits, see [AWS Lambda Limits][1]. You can also retrieve resource
791
+ # usage statistics, such as code storage usage and function count.
792
+ #
793
+ #
794
+ #
795
+ # [1]: http://docs.aws.amazon.com/lambda/latest/dg/limits.html
796
+ #
797
+ # @return [Types::GetAccountSettingsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
798
+ #
799
+ # * {Types::GetAccountSettingsResponse#account_limit #account_limit} => Types::AccountLimit
800
+ # * {Types::GetAccountSettingsResponse#account_usage #account_usage} => Types::AccountUsage
801
+ #
802
+ # @example Response structure
803
+ #
804
+ # resp.account_limit.total_code_size #=> Integer
805
+ # resp.account_limit.code_size_unzipped #=> Integer
806
+ # resp.account_limit.code_size_zipped #=> Integer
807
+ # resp.account_limit.concurrent_executions #=> Integer
808
+ # resp.account_usage.total_code_size #=> Integer
809
+ # resp.account_usage.function_count #=> Integer
810
+ #
811
+ # @overload get_account_settings(params = {})
812
+ # @param [Hash] params ({})
813
+ def get_account_settings(params = {}, options = {})
814
+ req = build_request(:get_account_settings, params)
815
+ req.send_request(options)
816
+ end
782
817
 
783
- # Returns configuration information for the specified event source
784
- # mapping (see CreateEventSourceMapping).
785
- #
786
- # This operation requires permission for the
787
- # `lambda:GetEventSourceMapping` action.
788
- # @option params [required, String] :uuid
789
- # The AWS Lambda assigned ID of the event source mapping.
790
- # @return [Types::EventSourceMappingConfiguration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
791
- #
792
- # * {Types::EventSourceMappingConfiguration#uuid #UUID} => String
793
- # * {Types::EventSourceMappingConfiguration#batch_size #BatchSize} => Integer
794
- # * {Types::EventSourceMappingConfiguration#event_source_arn #EventSourceArn} => String
795
- # * {Types::EventSourceMappingConfiguration#function_arn #FunctionArn} => String
796
- # * {Types::EventSourceMappingConfiguration#last_modified #LastModified} => Time
797
- # * {Types::EventSourceMappingConfiguration#last_processing_result #LastProcessingResult} => String
798
- # * {Types::EventSourceMappingConfiguration#state #State} => String
799
- # * {Types::EventSourceMappingConfiguration#state_transition_reason #StateTransitionReason} => String
800
- #
801
- # @example Request syntax with placeholder values
802
- # resp = client.get_event_source_mapping({
803
- # uuid: "String", # required
804
- # })
805
- #
806
- # @example Response structure
807
- # resp.uuid #=> String
808
- # resp.batch_size #=> Integer
809
- # resp.event_source_arn #=> String
810
- # resp.function_arn #=> String
811
- # resp.last_modified #=> Time
812
- # resp.last_processing_result #=> String
813
- # resp.state #=> String
814
- # resp.state_transition_reason #=> String
815
- # @overload get_event_source_mapping(params = {})
816
- # @param [Hash] params ({})
817
- def get_event_source_mapping(params = {}, options = {})
818
- req = build_request(:get_event_source_mapping, params)
819
- req.send_request(options)
820
- end
818
+ # Returns the specified alias information such as the alias ARN,
819
+ # description, and function version it is pointing to. For more
820
+ # information, see [Introduction to AWS Lambda Aliases][1].
821
+ #
822
+ # This requires permission for the `lambda:GetAlias` action.
823
+ #
824
+ #
825
+ #
826
+ # [1]: http://docs.aws.amazon.com/lambda/latest/dg/aliases-intro.html
827
+ #
828
+ # @option params [required, String] :function_name
829
+ # Function name for which the alias is created. An alias is a
830
+ # subresource that exists only in the context of an existing Lambda
831
+ # function so you must specify the function name.
832
+ #
833
+ # @option params [required, String] :name
834
+ # Name of the alias for which you want to retrieve information.
835
+ #
836
+ # @return [Types::AliasConfiguration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
837
+ #
838
+ # * {Types::AliasConfiguration#alias_arn #alias_arn} => String
839
+ # * {Types::AliasConfiguration#name #name} => String
840
+ # * {Types::AliasConfiguration#function_version #function_version} => String
841
+ # * {Types::AliasConfiguration#description #description} => String
842
+ #
843
+ # @example Request syntax with placeholder values
844
+ #
845
+ # resp = client.get_alias({
846
+ # function_name: "FunctionName", # required
847
+ # name: "Alias", # required
848
+ # })
849
+ #
850
+ # @example Response structure
851
+ #
852
+ # resp.alias_arn #=> String
853
+ # resp.name #=> String
854
+ # resp.function_version #=> String
855
+ # resp.description #=> String
856
+ #
857
+ # @overload get_alias(params = {})
858
+ # @param [Hash] params ({})
859
+ def get_alias(params = {}, options = {})
860
+ req = build_request(:get_alias, params)
861
+ req.send_request(options)
862
+ end
821
863
 
822
- # Returns the configuration information of the Lambda function and a
823
- # presigned URL link to the .zip file you uploaded with CreateFunction
824
- # so you can download the .zip file. Note that the URL is valid for up
825
- # to 10 minutes. The configuration information is the same information
826
- # you provided as parameters when uploading the function.
827
- #
828
- # Using the optional `Qualifier` parameter, you can specify a specific
829
- # function version for which you want this information. If you don't
830
- # specify this parameter, the API uses unqualified function ARN which
831
- # return information about the `$LATEST` version of the Lambda function.
832
- # For more information, see [AWS Lambda Function Versioning and
833
- # Aliases][1].
834
- #
835
- # This operation requires permission for the `lambda:GetFunction`
836
- # action.
837
- #
838
- #
839
- #
840
- # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
841
- # @option params [required, String] :function_name
842
- # The Lambda function name.
843
- #
844
- # You can specify a function name (for example, `Thumbnail`) or you can
845
- # specify Amazon Resource Name (ARN) of the function (for example,
846
- # `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`). AWS Lambda
847
- # also allows you to specify a partial ARN (for example,
848
- # `account-id:Thumbnail`). Note that the length constraint applies only
849
- # to the ARN. If you specify only the function name, it is limited to 64
850
- # character in length.
851
- # @option params [String] :qualifier
852
- # Using this optional parameter to specify a function version or an
853
- # alias name. If you specify function version, the API uses qualified
854
- # function ARN for the request and returns information about the
855
- # specific Lambda function version. If you specify an alias name, the
856
- # API uses the alias ARN and returns information about the function
857
- # version to which the alias points. If you don't provide this
858
- # parameter, the API uses unqualified function ARN and returns
859
- # information about the `$LATEST` version of the Lambda function.
860
- # @return [Types::GetFunctionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
861
- #
862
- # * {Types::GetFunctionResponse#configuration #Configuration} => Types::FunctionConfiguration
863
- # * {Types::GetFunctionResponse#code #Code} => Types::FunctionCodeLocation
864
- #
865
- # @example Request syntax with placeholder values
866
- # resp = client.get_function({
867
- # function_name: "FunctionName", # required
868
- # qualifier: "Qualifier",
869
- # })
870
- #
871
- # @example Response structure
872
- # resp.configuration.function_name #=> String
873
- # resp.configuration.function_arn #=> String
874
- # resp.configuration.runtime #=> String, one of "nodejs", "nodejs4.3", "java8", "python2.7", "dotnetcore1.0", "nodejs4.3-edge"
875
- # resp.configuration.role #=> String
876
- # resp.configuration.handler #=> String
877
- # resp.configuration.code_size #=> Integer
878
- # resp.configuration.description #=> String
879
- # resp.configuration.timeout #=> Integer
880
- # resp.configuration.memory_size #=> Integer
881
- # resp.configuration.last_modified #=> Time
882
- # resp.configuration.code_sha_256 #=> String
883
- # resp.configuration.version #=> String
884
- # resp.configuration.vpc_config.subnet_ids #=> Array
885
- # resp.configuration.vpc_config.subnet_ids[0] #=> String
886
- # resp.configuration.vpc_config.security_group_ids #=> Array
887
- # resp.configuration.vpc_config.security_group_ids[0] #=> String
888
- # resp.configuration.vpc_config.vpc_id #=> String
889
- # resp.configuration.dead_letter_config.target_arn #=> String
890
- # resp.configuration.environment.variables #=> Hash
891
- # resp.configuration.environment.variables["EnvironmentVariableName"] #=> String
892
- # resp.configuration.environment.error.error_code #=> String
893
- # resp.configuration.environment.error.message #=> String
894
- # resp.configuration.kms_key_arn #=> String
895
- # resp.code.repository_type #=> String
896
- # resp.code.location #=> String
897
- # @overload get_function(params = {})
898
- # @param [Hash] params ({})
899
- def get_function(params = {}, options = {})
900
- req = build_request(:get_function, params)
901
- req.send_request(options)
902
- end
864
+ # Returns configuration information for the specified event source
865
+ # mapping (see CreateEventSourceMapping).
866
+ #
867
+ # This operation requires permission for the
868
+ # `lambda:GetEventSourceMapping` action.
869
+ #
870
+ # @option params [required, String] :uuid
871
+ # The AWS Lambda assigned ID of the event source mapping.
872
+ #
873
+ # @return [Types::EventSourceMappingConfiguration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
874
+ #
875
+ # * {Types::EventSourceMappingConfiguration#uuid #uuid} => String
876
+ # * {Types::EventSourceMappingConfiguration#batch_size #batch_size} => Integer
877
+ # * {Types::EventSourceMappingConfiguration#event_source_arn #event_source_arn} => String
878
+ # * {Types::EventSourceMappingConfiguration#function_arn #function_arn} => String
879
+ # * {Types::EventSourceMappingConfiguration#last_modified #last_modified} => Time
880
+ # * {Types::EventSourceMappingConfiguration#last_processing_result #last_processing_result} => String
881
+ # * {Types::EventSourceMappingConfiguration#state #state} => String
882
+ # * {Types::EventSourceMappingConfiguration#state_transition_reason #state_transition_reason} => String
883
+ #
884
+ # @example Request syntax with placeholder values
885
+ #
886
+ # resp = client.get_event_source_mapping({
887
+ # uuid: "String", # required
888
+ # })
889
+ #
890
+ # @example Response structure
891
+ #
892
+ # resp.uuid #=> String
893
+ # resp.batch_size #=> Integer
894
+ # resp.event_source_arn #=> String
895
+ # resp.function_arn #=> String
896
+ # resp.last_modified #=> Time
897
+ # resp.last_processing_result #=> String
898
+ # resp.state #=> String
899
+ # resp.state_transition_reason #=> String
900
+ #
901
+ # @overload get_event_source_mapping(params = {})
902
+ # @param [Hash] params ({})
903
+ def get_event_source_mapping(params = {}, options = {})
904
+ req = build_request(:get_event_source_mapping, params)
905
+ req.send_request(options)
906
+ end
903
907
 
904
- # Returns the configuration information of the Lambda function. This the
905
- # same information you provided as parameters when uploading the
906
- # function by using CreateFunction.
907
- #
908
- # If you are using the versioning feature, you can retrieve this
909
- # information for a specific function version by using the optional
910
- # `Qualifier` parameter and specifying the function version or alias
911
- # that points to it. If you don't provide it, the API returns
912
- # information about the $LATEST version of the function. For more
913
- # information about versioning, see [AWS Lambda Function Versioning and
914
- # Aliases][1].
915
- #
916
- # This operation requires permission for the
917
- # `lambda:GetFunctionConfiguration` operation.
918
- #
919
- #
920
- #
921
- # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
922
- # @option params [required, String] :function_name
923
- # The name of the Lambda function for which you want to retrieve the
924
- # configuration information.
925
- #
926
- # You can specify a function name (for example, `Thumbnail`) or you can
927
- # specify Amazon Resource Name (ARN) of the function (for example,
928
- # `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`). AWS Lambda
929
- # also allows you to specify a partial ARN (for example,
930
- # `account-id:Thumbnail`). Note that the length constraint applies only
931
- # to the ARN. If you specify only the function name, it is limited to 64
932
- # character in length.
933
- # @option params [String] :qualifier
934
- # Using this optional parameter you can specify a function version or an
935
- # alias name. If you specify function version, the API uses qualified
936
- # function ARN and returns information about the specific function
937
- # version. If you specify an alias name, the API uses the alias ARN and
938
- # returns information about the function version to which the alias
939
- # points.
940
- #
941
- # If you don't specify this parameter, the API uses unqualified
942
- # function ARN, and returns information about the `$LATEST` function
943
- # version.
944
- # @return [Types::FunctionConfiguration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
945
- #
946
- # * {Types::FunctionConfiguration#function_name #FunctionName} => String
947
- # * {Types::FunctionConfiguration#function_arn #FunctionArn} => String
948
- # * {Types::FunctionConfiguration#runtime #Runtime} => String
949
- # * {Types::FunctionConfiguration#role #Role} => String
950
- # * {Types::FunctionConfiguration#handler #Handler} => String
951
- # * {Types::FunctionConfiguration#code_size #CodeSize} => Integer
952
- # * {Types::FunctionConfiguration#description #Description} => String
953
- # * {Types::FunctionConfiguration#timeout #Timeout} => Integer
954
- # * {Types::FunctionConfiguration#memory_size #MemorySize} => Integer
955
- # * {Types::FunctionConfiguration#last_modified #LastModified} => Time
956
- # * {Types::FunctionConfiguration#code_sha_256 #CodeSha256} => String
957
- # * {Types::FunctionConfiguration#version #Version} => String
958
- # * {Types::FunctionConfiguration#vpc_config #VpcConfig} => Types::VpcConfigResponse
959
- # * {Types::FunctionConfiguration#dead_letter_config #DeadLetterConfig} => Types::DeadLetterConfig
960
- # * {Types::FunctionConfiguration#environment #Environment} => Types::EnvironmentResponse
961
- # * {Types::FunctionConfiguration#kms_key_arn #KMSKeyArn} => String
962
- #
963
- # @example Request syntax with placeholder values
964
- # resp = client.get_function_configuration({
965
- # function_name: "FunctionName", # required
966
- # qualifier: "Qualifier",
967
- # })
968
- #
969
- # @example Response structure
970
- # resp.function_name #=> String
971
- # resp.function_arn #=> String
972
- # resp.runtime #=> String, one of "nodejs", "nodejs4.3", "java8", "python2.7", "dotnetcore1.0", "nodejs4.3-edge"
973
- # resp.role #=> String
974
- # resp.handler #=> String
975
- # resp.code_size #=> Integer
976
- # resp.description #=> String
977
- # resp.timeout #=> Integer
978
- # resp.memory_size #=> Integer
979
- # resp.last_modified #=> Time
980
- # resp.code_sha_256 #=> String
981
- # resp.version #=> String
982
- # resp.vpc_config.subnet_ids #=> Array
983
- # resp.vpc_config.subnet_ids[0] #=> String
984
- # resp.vpc_config.security_group_ids #=> Array
985
- # resp.vpc_config.security_group_ids[0] #=> String
986
- # resp.vpc_config.vpc_id #=> String
987
- # resp.dead_letter_config.target_arn #=> String
988
- # resp.environment.variables #=> Hash
989
- # resp.environment.variables["EnvironmentVariableName"] #=> String
990
- # resp.environment.error.error_code #=> String
991
- # resp.environment.error.message #=> String
992
- # resp.kms_key_arn #=> String
993
- # @overload get_function_configuration(params = {})
994
- # @param [Hash] params ({})
995
- def get_function_configuration(params = {}, options = {})
996
- req = build_request(:get_function_configuration, params)
997
- req.send_request(options)
998
- end
908
+ # Returns the configuration information of the Lambda function and a
909
+ # presigned URL link to the .zip file you uploaded with CreateFunction
910
+ # so you can download the .zip file. Note that the URL is valid for up
911
+ # to 10 minutes. The configuration information is the same information
912
+ # you provided as parameters when uploading the function.
913
+ #
914
+ # Using the optional `Qualifier` parameter, you can specify a specific
915
+ # function version for which you want this information. If you don't
916
+ # specify this parameter, the API uses unqualified function ARN which
917
+ # return information about the `$LATEST` version of the Lambda function.
918
+ # For more information, see [AWS Lambda Function Versioning and
919
+ # Aliases][1].
920
+ #
921
+ # This operation requires permission for the `lambda:GetFunction`
922
+ # action.
923
+ #
924
+ #
925
+ #
926
+ # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
927
+ #
928
+ # @option params [required, String] :function_name
929
+ # The Lambda function name.
930
+ #
931
+ # You can specify a function name (for example, `Thumbnail`) or you can
932
+ # specify Amazon Resource Name (ARN) of the function (for example,
933
+ # `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`). AWS Lambda
934
+ # also allows you to specify a partial ARN (for example,
935
+ # `account-id:Thumbnail`). Note that the length constraint applies only
936
+ # to the ARN. If you specify only the function name, it is limited to 64
937
+ # character in length.
938
+ #
939
+ # @option params [String] :qualifier
940
+ # Using this optional parameter to specify a function version or an
941
+ # alias name. If you specify function version, the API uses qualified
942
+ # function ARN for the request and returns information about the
943
+ # specific Lambda function version. If you specify an alias name, the
944
+ # API uses the alias ARN and returns information about the function
945
+ # version to which the alias points. If you don't provide this
946
+ # parameter, the API uses unqualified function ARN and returns
947
+ # information about the `$LATEST` version of the Lambda function.
948
+ #
949
+ # @return [Types::GetFunctionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
950
+ #
951
+ # * {Types::GetFunctionResponse#configuration #configuration} => Types::FunctionConfiguration
952
+ # * {Types::GetFunctionResponse#code #code} => Types::FunctionCodeLocation
953
+ #
954
+ # @example Request syntax with placeholder values
955
+ #
956
+ # resp = client.get_function({
957
+ # function_name: "FunctionName", # required
958
+ # qualifier: "Qualifier",
959
+ # })
960
+ #
961
+ # @example Response structure
962
+ #
963
+ # resp.configuration.function_name #=> String
964
+ # resp.configuration.function_arn #=> String
965
+ # resp.configuration.runtime #=> String, one of "nodejs", "nodejs4.3", "java8", "python2.7", "dotnetcore1.0", "nodejs4.3-edge"
966
+ # resp.configuration.role #=> String
967
+ # resp.configuration.handler #=> String
968
+ # resp.configuration.code_size #=> Integer
969
+ # resp.configuration.description #=> String
970
+ # resp.configuration.timeout #=> Integer
971
+ # resp.configuration.memory_size #=> Integer
972
+ # resp.configuration.last_modified #=> Time
973
+ # resp.configuration.code_sha_256 #=> String
974
+ # resp.configuration.version #=> String
975
+ # resp.configuration.vpc_config.subnet_ids #=> Array
976
+ # resp.configuration.vpc_config.subnet_ids[0] #=> String
977
+ # resp.configuration.vpc_config.security_group_ids #=> Array
978
+ # resp.configuration.vpc_config.security_group_ids[0] #=> String
979
+ # resp.configuration.vpc_config.vpc_id #=> String
980
+ # resp.configuration.dead_letter_config.target_arn #=> String
981
+ # resp.configuration.environment.variables #=> Hash
982
+ # resp.configuration.environment.variables["EnvironmentVariableName"] #=> String
983
+ # resp.configuration.environment.error.error_code #=> String
984
+ # resp.configuration.environment.error.message #=> String
985
+ # resp.configuration.kms_key_arn #=> String
986
+ # resp.code.repository_type #=> String
987
+ # resp.code.location #=> String
988
+ #
989
+ # @overload get_function(params = {})
990
+ # @param [Hash] params ({})
991
+ def get_function(params = {}, options = {})
992
+ req = build_request(:get_function, params)
993
+ req.send_request(options)
994
+ end
999
995
 
1000
- # Returns the resource policy associated with the specified Lambda
1001
- # function.
1002
- #
1003
- # If you are using the versioning feature, you can get the resource
1004
- # policy associated with the specific Lambda function version or alias
1005
- # by specifying the version or alias name using the `Qualifier`
1006
- # parameter. For more information about versioning, see [AWS Lambda
1007
- # Function Versioning and Aliases][1].
1008
- #
1009
- # For information about adding permissions, see AddPermission.
1010
- #
1011
- # You need permission for the `lambda:GetPolicy action.`
1012
- #
1013
- #
1014
- #
1015
- # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
1016
- # @option params [required, String] :function_name
1017
- # Function name whose resource policy you want to retrieve.
1018
- #
1019
- # You can specify the function name (for example, `Thumbnail`) or you
1020
- # can specify Amazon Resource Name (ARN) of the function (for example,
1021
- # `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`). If you are
1022
- # using versioning, you can also provide a qualified function ARN (ARN
1023
- # that is qualified with function version or alias name as suffix). AWS
1024
- # Lambda also allows you to specify only the function name with the
1025
- # account ID qualifier (for example, `account-id:Thumbnail`). Note that
1026
- # the length constraint applies only to the ARN. If you specify only the
1027
- # function name, it is limited to 64 character in length.
1028
- # @option params [String] :qualifier
1029
- # You can specify this optional query parameter to specify a function
1030
- # version or an alias name in which case this API will return all
1031
- # permissions associated with the specific qualified ARN. If you don't
1032
- # provide this parameter, the API will return permissions that apply to
1033
- # the unqualified function ARN.
1034
- # @return [Types::GetPolicyResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1035
- #
1036
- # * {Types::GetPolicyResponse#policy #Policy} => String
1037
- #
1038
- # @example Request syntax with placeholder values
1039
- # resp = client.get_policy({
1040
- # function_name: "FunctionName", # required
1041
- # qualifier: "Qualifier",
1042
- # })
1043
- #
1044
- # @example Response structure
1045
- # resp.policy #=> String
1046
- # @overload get_policy(params = {})
1047
- # @param [Hash] params ({})
1048
- def get_policy(params = {}, options = {})
1049
- req = build_request(:get_policy, params)
1050
- req.send_request(options)
1051
- end
996
+ # Returns the configuration information of the Lambda function. This the
997
+ # same information you provided as parameters when uploading the
998
+ # function by using CreateFunction.
999
+ #
1000
+ # If you are using the versioning feature, you can retrieve this
1001
+ # information for a specific function version by using the optional
1002
+ # `Qualifier` parameter and specifying the function version or alias
1003
+ # that points to it. If you don't provide it, the API returns
1004
+ # information about the $LATEST version of the function. For more
1005
+ # information about versioning, see [AWS Lambda Function Versioning and
1006
+ # Aliases][1].
1007
+ #
1008
+ # This operation requires permission for the
1009
+ # `lambda:GetFunctionConfiguration` operation.
1010
+ #
1011
+ #
1012
+ #
1013
+ # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
1014
+ #
1015
+ # @option params [required, String] :function_name
1016
+ # The name of the Lambda function for which you want to retrieve the
1017
+ # configuration information.
1018
+ #
1019
+ # You can specify a function name (for example, `Thumbnail`) or you can
1020
+ # specify Amazon Resource Name (ARN) of the function (for example,
1021
+ # `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`). AWS Lambda
1022
+ # also allows you to specify a partial ARN (for example,
1023
+ # `account-id:Thumbnail`). Note that the length constraint applies only
1024
+ # to the ARN. If you specify only the function name, it is limited to 64
1025
+ # character in length.
1026
+ #
1027
+ # @option params [String] :qualifier
1028
+ # Using this optional parameter you can specify a function version or an
1029
+ # alias name. If you specify function version, the API uses qualified
1030
+ # function ARN and returns information about the specific function
1031
+ # version. If you specify an alias name, the API uses the alias ARN and
1032
+ # returns information about the function version to which the alias
1033
+ # points.
1034
+ #
1035
+ # If you don't specify this parameter, the API uses unqualified
1036
+ # function ARN, and returns information about the `$LATEST` function
1037
+ # version.
1038
+ #
1039
+ # @return [Types::FunctionConfiguration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1040
+ #
1041
+ # * {Types::FunctionConfiguration#function_name #function_name} => String
1042
+ # * {Types::FunctionConfiguration#function_arn #function_arn} => String
1043
+ # * {Types::FunctionConfiguration#runtime #runtime} => String
1044
+ # * {Types::FunctionConfiguration#role #role} => String
1045
+ # * {Types::FunctionConfiguration#handler #handler} => String
1046
+ # * {Types::FunctionConfiguration#code_size #code_size} => Integer
1047
+ # * {Types::FunctionConfiguration#description #description} => String
1048
+ # * {Types::FunctionConfiguration#timeout #timeout} => Integer
1049
+ # * {Types::FunctionConfiguration#memory_size #memory_size} => Integer
1050
+ # * {Types::FunctionConfiguration#last_modified #last_modified} => Time
1051
+ # * {Types::FunctionConfiguration#code_sha_256 #code_sha_256} => String
1052
+ # * {Types::FunctionConfiguration#version #version} => String
1053
+ # * {Types::FunctionConfiguration#vpc_config #vpc_config} => Types::VpcConfigResponse
1054
+ # * {Types::FunctionConfiguration#dead_letter_config #dead_letter_config} => Types::DeadLetterConfig
1055
+ # * {Types::FunctionConfiguration#environment #environment} => Types::EnvironmentResponse
1056
+ # * {Types::FunctionConfiguration#kms_key_arn #kms_key_arn} => String
1057
+ #
1058
+ # @example Request syntax with placeholder values
1059
+ #
1060
+ # resp = client.get_function_configuration({
1061
+ # function_name: "FunctionName", # required
1062
+ # qualifier: "Qualifier",
1063
+ # })
1064
+ #
1065
+ # @example Response structure
1066
+ #
1067
+ # resp.function_name #=> String
1068
+ # resp.function_arn #=> String
1069
+ # resp.runtime #=> String, one of "nodejs", "nodejs4.3", "java8", "python2.7", "dotnetcore1.0", "nodejs4.3-edge"
1070
+ # resp.role #=> String
1071
+ # resp.handler #=> String
1072
+ # resp.code_size #=> Integer
1073
+ # resp.description #=> String
1074
+ # resp.timeout #=> Integer
1075
+ # resp.memory_size #=> Integer
1076
+ # resp.last_modified #=> Time
1077
+ # resp.code_sha_256 #=> String
1078
+ # resp.version #=> String
1079
+ # resp.vpc_config.subnet_ids #=> Array
1080
+ # resp.vpc_config.subnet_ids[0] #=> String
1081
+ # resp.vpc_config.security_group_ids #=> Array
1082
+ # resp.vpc_config.security_group_ids[0] #=> String
1083
+ # resp.vpc_config.vpc_id #=> String
1084
+ # resp.dead_letter_config.target_arn #=> String
1085
+ # resp.environment.variables #=> Hash
1086
+ # resp.environment.variables["EnvironmentVariableName"] #=> String
1087
+ # resp.environment.error.error_code #=> String
1088
+ # resp.environment.error.message #=> String
1089
+ # resp.kms_key_arn #=> String
1090
+ #
1091
+ # @overload get_function_configuration(params = {})
1092
+ # @param [Hash] params ({})
1093
+ def get_function_configuration(params = {}, options = {})
1094
+ req = build_request(:get_function_configuration, params)
1095
+ req.send_request(options)
1096
+ end
1052
1097
 
1053
- # Invokes a specific Lambda function. For an example, see [Create the
1054
- # Lambda Function and Test It Manually][1].
1055
- #
1056
- # If you are using the versioning feature, you can invoke the specific
1057
- # function version by providing function version or alias name that is
1058
- # pointing to the function version using the `Qualifier` parameter in
1059
- # the request. If you don't provide the `Qualifier` parameter, the
1060
- # `$LATEST` version of the Lambda function is invoked. Invocations occur
1061
- # at least once in response to an event and functions must be idempotent
1062
- # to handle this. For information about the versioning feature, see [AWS
1063
- # Lambda Function Versioning and Aliases][2].
1064
- #
1065
- # This operation requires permission for the `lambda:InvokeFunction`
1066
- # action.
1067
- #
1068
- #
1069
- #
1070
- # [1]: http://docs.aws.amazon.com/lambda/latest/dg/with-dynamodb-create-function.html#with-dbb-invoke-manually
1071
- # [2]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
1072
- # @option params [required, String] :function_name
1073
- # The Lambda function name.
1074
- #
1075
- # You can specify a function name (for example, `Thumbnail`) or you can
1076
- # specify Amazon Resource Name (ARN) of the function (for example,
1077
- # `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`). AWS Lambda
1078
- # also allows you to specify a partial ARN (for example,
1079
- # `account-id:Thumbnail`). Note that the length constraint applies only
1080
- # to the ARN. If you specify only the function name, it is limited to 64
1081
- # character in length.
1082
- # @option params [String] :invocation_type
1083
- # By default, the `Invoke` API assumes `RequestResponse` invocation
1084
- # type. You can optionally request asynchronous execution by specifying
1085
- # `Event` as the `InvocationType`. You can also use this parameter to
1086
- # request AWS Lambda to not execute the function but do some
1087
- # verification, such as if the caller is authorized to invoke the
1088
- # function and if the inputs are valid. You request this by specifying
1089
- # `DryRun` as the `InvocationType`. This is useful in a cross-account
1090
- # scenario when you want to verify access to a function without running
1091
- # it.
1092
- # @option params [String] :log_type
1093
- # You can set this optional parameter to `Tail` in the request only if
1094
- # you specify the `InvocationType` parameter with value
1095
- # `RequestResponse`. In this case, AWS Lambda returns the base64-encoded
1096
- # last 4 KB of log data produced by your Lambda function in the
1097
- # `x-amz-log-result` header.
1098
- # @option params [String] :client_context
1099
- # Using the `ClientContext` you can pass client-specific information to
1100
- # the Lambda function you are invoking. You can then process the client
1101
- # information in your Lambda function as you choose through the context
1102
- # variable. For an example of a `ClientContext` JSON, see [PutEvents][1]
1103
- # in the *Amazon Mobile Analytics API Reference and User Guide*.
1104
- #
1105
- # The ClientContext JSON must be base64-encoded.
1106
- #
1107
- #
1108
- #
1109
- # [1]: http://docs.aws.amazon.com/mobileanalytics/latest/ug/PutEvents.html
1110
- # @option params [String, IO] :payload
1111
- # JSON that you want to provide to your Lambda function as input.
1112
- # @option params [String] :qualifier
1113
- # You can use this optional parameter to specify a Lambda function
1114
- # version or alias name. If you specify a function version, the API uses
1115
- # the qualified function ARN to invoke a specific Lambda function. If
1116
- # you specify an alias name, the API uses the alias ARN to invoke the
1117
- # Lambda function version to which the alias points.
1118
- #
1119
- # If you don't provide this parameter, then the API uses unqualified
1120
- # function ARN which results in invocation of the `$LATEST` version.
1121
- # @return [Types::InvocationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1122
- #
1123
- # * {Types::InvocationResponse#status_code #StatusCode} => Integer
1124
- # * {Types::InvocationResponse#function_error #FunctionError} => String
1125
- # * {Types::InvocationResponse#log_result #LogResult} => String
1126
- # * {Types::InvocationResponse#payload #Payload} => String
1127
- #
1128
- # @example Request syntax with placeholder values
1129
- # resp = client.invoke({
1130
- # function_name: "FunctionName", # required
1131
- # invocation_type: "Event", # accepts Event, RequestResponse, DryRun
1132
- # log_type: "None", # accepts None, Tail
1133
- # client_context: "String",
1134
- # payload: "data",
1135
- # qualifier: "Qualifier",
1136
- # })
1137
- #
1138
- # @example Response structure
1139
- # resp.status_code #=> Integer
1140
- # resp.function_error #=> String
1141
- # resp.log_result #=> String
1142
- # resp.payload #=> String
1143
- # @overload invoke(params = {})
1144
- # @param [Hash] params ({})
1145
- def invoke(params = {}, options = {})
1146
- req = build_request(:invoke, params)
1147
- req.send_request(options)
1148
- end
1098
+ # Returns the resource policy associated with the specified Lambda
1099
+ # function.
1100
+ #
1101
+ # If you are using the versioning feature, you can get the resource
1102
+ # policy associated with the specific Lambda function version or alias
1103
+ # by specifying the version or alias name using the `Qualifier`
1104
+ # parameter. For more information about versioning, see [AWS Lambda
1105
+ # Function Versioning and Aliases][1].
1106
+ #
1107
+ # For information about adding permissions, see AddPermission.
1108
+ #
1109
+ # You need permission for the `lambda:GetPolicy action.`
1110
+ #
1111
+ #
1112
+ #
1113
+ # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
1114
+ #
1115
+ # @option params [required, String] :function_name
1116
+ # Function name whose resource policy you want to retrieve.
1117
+ #
1118
+ # You can specify the function name (for example, `Thumbnail`) or you
1119
+ # can specify Amazon Resource Name (ARN) of the function (for example,
1120
+ # `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`). If you are
1121
+ # using versioning, you can also provide a qualified function ARN (ARN
1122
+ # that is qualified with function version or alias name as suffix). AWS
1123
+ # Lambda also allows you to specify only the function name with the
1124
+ # account ID qualifier (for example, `account-id:Thumbnail`). Note that
1125
+ # the length constraint applies only to the ARN. If you specify only the
1126
+ # function name, it is limited to 64 character in length.
1127
+ #
1128
+ # @option params [String] :qualifier
1129
+ # You can specify this optional query parameter to specify a function
1130
+ # version or an alias name in which case this API will return all
1131
+ # permissions associated with the specific qualified ARN. If you don't
1132
+ # provide this parameter, the API will return permissions that apply to
1133
+ # the unqualified function ARN.
1134
+ #
1135
+ # @return [Types::GetPolicyResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1136
+ #
1137
+ # * {Types::GetPolicyResponse#policy #policy} => String
1138
+ #
1139
+ # @example Request syntax with placeholder values
1140
+ #
1141
+ # resp = client.get_policy({
1142
+ # function_name: "FunctionName", # required
1143
+ # qualifier: "Qualifier",
1144
+ # })
1145
+ #
1146
+ # @example Response structure
1147
+ #
1148
+ # resp.policy #=> String
1149
+ #
1150
+ # @overload get_policy(params = {})
1151
+ # @param [Hash] params ({})
1152
+ def get_policy(params = {}, options = {})
1153
+ req = build_request(:get_policy, params)
1154
+ req.send_request(options)
1155
+ end
1149
1156
 
1150
- # This API is deprecated. We recommend you use `Invoke` API (see
1151
- # Invoke).
1152
- #
1153
- # Submits an invocation request to AWS Lambda. Upon receiving the
1154
- # request, Lambda executes the specified function asynchronously. To see
1155
- # the logs generated by the Lambda function execution, see the
1156
- # CloudWatch Logs console.
1157
- #
1158
- # This operation requires permission for the `lambda:InvokeFunction`
1159
- # action.
1160
- # @option params [required, String] :function_name
1161
- # The Lambda function name.
1162
- # @option params [required, String, IO] :invoke_args
1163
- # JSON that you want to provide to your Lambda function as input.
1164
- # @return [Types::InvokeAsyncResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1165
- #
1166
- # * {Types::InvokeAsyncResponse#status #Status} => Integer
1167
- #
1168
- # @example Request syntax with placeholder values
1169
- # resp = client.invoke_async({
1170
- # function_name: "FunctionName", # required
1171
- # invoke_args: "data", # required
1172
- # })
1173
- #
1174
- # @example Response structure
1175
- # resp.status #=> Integer
1176
- # @overload invoke_async(params = {})
1177
- # @param [Hash] params ({})
1178
- def invoke_async(params = {}, options = {})
1179
- req = build_request(:invoke_async, params)
1180
- req.send_request(options)
1181
- end
1157
+ # Invokes a specific Lambda function. For an example, see [Create the
1158
+ # Lambda Function and Test It Manually][1].
1159
+ #
1160
+ # If you are using the versioning feature, you can invoke the specific
1161
+ # function version by providing function version or alias name that is
1162
+ # pointing to the function version using the `Qualifier` parameter in
1163
+ # the request. If you don't provide the `Qualifier` parameter, the
1164
+ # `$LATEST` version of the Lambda function is invoked. Invocations occur
1165
+ # at least once in response to an event and functions must be idempotent
1166
+ # to handle this. For information about the versioning feature, see [AWS
1167
+ # Lambda Function Versioning and Aliases][2].
1168
+ #
1169
+ # This operation requires permission for the `lambda:InvokeFunction`
1170
+ # action.
1171
+ #
1172
+ #
1173
+ #
1174
+ # [1]: http://docs.aws.amazon.com/lambda/latest/dg/with-dynamodb-create-function.html#with-dbb-invoke-manually
1175
+ # [2]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
1176
+ #
1177
+ # @option params [required, String] :function_name
1178
+ # The Lambda function name.
1179
+ #
1180
+ # You can specify a function name (for example, `Thumbnail`) or you can
1181
+ # specify Amazon Resource Name (ARN) of the function (for example,
1182
+ # `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`). AWS Lambda
1183
+ # also allows you to specify a partial ARN (for example,
1184
+ # `account-id:Thumbnail`). Note that the length constraint applies only
1185
+ # to the ARN. If you specify only the function name, it is limited to 64
1186
+ # character in length.
1187
+ #
1188
+ # @option params [String] :invocation_type
1189
+ # By default, the `Invoke` API assumes `RequestResponse` invocation
1190
+ # type. You can optionally request asynchronous execution by specifying
1191
+ # `Event` as the `InvocationType`. You can also use this parameter to
1192
+ # request AWS Lambda to not execute the function but do some
1193
+ # verification, such as if the caller is authorized to invoke the
1194
+ # function and if the inputs are valid. You request this by specifying
1195
+ # `DryRun` as the `InvocationType`. This is useful in a cross-account
1196
+ # scenario when you want to verify access to a function without running
1197
+ # it.
1198
+ #
1199
+ # @option params [String] :log_type
1200
+ # You can set this optional parameter to `Tail` in the request only if
1201
+ # you specify the `InvocationType` parameter with value
1202
+ # `RequestResponse`. In this case, AWS Lambda returns the base64-encoded
1203
+ # last 4 KB of log data produced by your Lambda function in the
1204
+ # `x-amz-log-result` header.
1205
+ #
1206
+ # @option params [String] :client_context
1207
+ # Using the `ClientContext` you can pass client-specific information to
1208
+ # the Lambda function you are invoking. You can then process the client
1209
+ # information in your Lambda function as you choose through the context
1210
+ # variable. For an example of a `ClientContext` JSON, see [PutEvents][1]
1211
+ # in the *Amazon Mobile Analytics API Reference and User Guide*.
1212
+ #
1213
+ # The ClientContext JSON must be base64-encoded.
1214
+ #
1215
+ #
1216
+ #
1217
+ # [1]: http://docs.aws.amazon.com/mobileanalytics/latest/ug/PutEvents.html
1218
+ #
1219
+ # @option params [String, IO] :payload
1220
+ # JSON that you want to provide to your Lambda function as input.
1221
+ #
1222
+ # @option params [String] :qualifier
1223
+ # You can use this optional parameter to specify a Lambda function
1224
+ # version or alias name. If you specify a function version, the API uses
1225
+ # the qualified function ARN to invoke a specific Lambda function. If
1226
+ # you specify an alias name, the API uses the alias ARN to invoke the
1227
+ # Lambda function version to which the alias points.
1228
+ #
1229
+ # If you don't provide this parameter, then the API uses unqualified
1230
+ # function ARN which results in invocation of the `$LATEST` version.
1231
+ #
1232
+ # @return [Types::InvocationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1233
+ #
1234
+ # * {Types::InvocationResponse#status_code #status_code} => Integer
1235
+ # * {Types::InvocationResponse#function_error #function_error} => String
1236
+ # * {Types::InvocationResponse#log_result #log_result} => String
1237
+ # * {Types::InvocationResponse#payload #payload} => String
1238
+ #
1239
+ # @example Request syntax with placeholder values
1240
+ #
1241
+ # resp = client.invoke({
1242
+ # function_name: "FunctionName", # required
1243
+ # invocation_type: "Event", # accepts Event, RequestResponse, DryRun
1244
+ # log_type: "None", # accepts None, Tail
1245
+ # client_context: "String",
1246
+ # payload: "data",
1247
+ # qualifier: "Qualifier",
1248
+ # })
1249
+ #
1250
+ # @example Response structure
1251
+ #
1252
+ # resp.status_code #=> Integer
1253
+ # resp.function_error #=> String
1254
+ # resp.log_result #=> String
1255
+ # resp.payload #=> String
1256
+ #
1257
+ # @overload invoke(params = {})
1258
+ # @param [Hash] params ({})
1259
+ def invoke(params = {}, options = {})
1260
+ req = build_request(:invoke, params)
1261
+ req.send_request(options)
1262
+ end
1182
1263
 
1183
- # Returns list of aliases created for a Lambda function. For each alias,
1184
- # the response includes information such as the alias ARN, description,
1185
- # alias name, and the function version to which it points. For more
1186
- # information, see [Introduction to AWS Lambda Aliases][1].
1187
- #
1188
- # This requires permission for the lambda:ListAliases action.
1189
- #
1190
- #
1191
- #
1192
- # [1]: http://docs.aws.amazon.com/lambda/latest/dg/aliases-intro.html
1193
- # @option params [required, String] :function_name
1194
- # Lambda function name for which the alias is created.
1195
- # @option params [String] :function_version
1196
- # If you specify this optional parameter, the API returns only the
1197
- # aliases that are pointing to the specific Lambda function version,
1198
- # otherwise the API returns all of the aliases created for the Lambda
1199
- # function.
1200
- # @option params [String] :marker
1201
- # Optional string. An opaque pagination token returned from a previous
1202
- # `ListAliases` operation. If present, indicates where to continue the
1203
- # listing.
1204
- # @option params [Integer] :max_items
1205
- # Optional integer. Specifies the maximum number of aliases to return in
1206
- # response. This parameter value must be greater than 0.
1207
- # @return [Types::ListAliasesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1208
- #
1209
- # * {Types::ListAliasesResponse#next_marker #NextMarker} => String
1210
- # * {Types::ListAliasesResponse#aliases #Aliases} => Array&lt;Types::AliasConfiguration&gt;
1211
- #
1212
- # @example Request syntax with placeholder values
1213
- # resp = client.list_aliases({
1214
- # function_name: "FunctionName", # required
1215
- # function_version: "Version",
1216
- # marker: "String",
1217
- # max_items: 1,
1218
- # })
1219
- #
1220
- # @example Response structure
1221
- # resp.next_marker #=> String
1222
- # resp.aliases #=> Array
1223
- # resp.aliases[0].alias_arn #=> String
1224
- # resp.aliases[0].name #=> String
1225
- # resp.aliases[0].function_version #=> String
1226
- # resp.aliases[0].description #=> String
1227
- # @overload list_aliases(params = {})
1228
- # @param [Hash] params ({})
1229
- def list_aliases(params = {}, options = {})
1230
- req = build_request(:list_aliases, params)
1231
- req.send_request(options)
1232
- end
1264
+ # This API is deprecated. We recommend you use `Invoke` API (see
1265
+ # Invoke).
1266
+ #
1267
+ # Submits an invocation request to AWS Lambda. Upon receiving the
1268
+ # request, Lambda executes the specified function asynchronously. To see
1269
+ # the logs generated by the Lambda function execution, see the
1270
+ # CloudWatch Logs console.
1271
+ #
1272
+ # This operation requires permission for the `lambda:InvokeFunction`
1273
+ # action.
1274
+ #
1275
+ # @option params [required, String] :function_name
1276
+ # The Lambda function name.
1277
+ #
1278
+ # @option params [required, String, IO] :invoke_args
1279
+ # JSON that you want to provide to your Lambda function as input.
1280
+ #
1281
+ # @return [Types::InvokeAsyncResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1282
+ #
1283
+ # * {Types::InvokeAsyncResponse#status #status} => Integer
1284
+ #
1285
+ # @example Request syntax with placeholder values
1286
+ #
1287
+ # resp = client.invoke_async({
1288
+ # function_name: "FunctionName", # required
1289
+ # invoke_args: "data", # required
1290
+ # })
1291
+ #
1292
+ # @example Response structure
1293
+ #
1294
+ # resp.status #=> Integer
1295
+ #
1296
+ # @overload invoke_async(params = {})
1297
+ # @param [Hash] params ({})
1298
+ def invoke_async(params = {}, options = {})
1299
+ req = build_request(:invoke_async, params)
1300
+ req.send_request(options)
1301
+ end
1233
1302
 
1234
- # Returns a list of event source mappings you created using the
1235
- # `CreateEventSourceMapping` (see CreateEventSourceMapping).
1236
- #
1237
- # For each mapping, the API returns configuration information. You can
1238
- # optionally specify filters to retrieve specific event source mappings.
1239
- #
1240
- # If you are using the versioning feature, you can get list of event
1241
- # source mappings for a specific Lambda function version or an alias as
1242
- # described in the `FunctionName` parameter. For information about the
1243
- # versioning feature, see [AWS Lambda Function Versioning and
1244
- # Aliases][1].
1245
- #
1246
- # This operation requires permission for the
1247
- # `lambda:ListEventSourceMappings` action.
1248
- #
1249
- #
1250
- #
1251
- # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
1252
- # @option params [String] :event_source_arn
1253
- # The Amazon Resource Name (ARN) of the Amazon Kinesis stream. (This
1254
- # parameter is optional.)
1255
- # @option params [String] :function_name
1256
- # The name of the Lambda function.
1257
- #
1258
- # You can specify the function name (for example, `Thumbnail`) or you
1259
- # can specify Amazon Resource Name (ARN) of the function (for example,
1260
- # `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`). If you are
1261
- # using versioning, you can also provide a qualified function ARN (ARN
1262
- # that is qualified with function version or alias name as suffix). AWS
1263
- # Lambda also allows you to specify only the function name with the
1264
- # account ID qualifier (for example, `account-id:Thumbnail`). Note that
1265
- # the length constraint applies only to the ARN. If you specify only the
1266
- # function name, it is limited to 64 character in length.
1267
- # @option params [String] :marker
1268
- # Optional string. An opaque pagination token returned from a previous
1269
- # `ListEventSourceMappings` operation. If present, specifies to continue
1270
- # the list from where the returning call left off.
1271
- # @option params [Integer] :max_items
1272
- # Optional integer. Specifies the maximum number of event sources to
1273
- # return in response. This value must be greater than 0.
1274
- # @return [Types::ListEventSourceMappingsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1275
- #
1276
- # * {Types::ListEventSourceMappingsResponse#next_marker #NextMarker} => String
1277
- # * {Types::ListEventSourceMappingsResponse#event_source_mappings #EventSourceMappings} => Array&lt;Types::EventSourceMappingConfiguration&gt;
1278
- #
1279
- # @example Request syntax with placeholder values
1280
- # resp = client.list_event_source_mappings({
1281
- # event_source_arn: "Arn",
1282
- # function_name: "FunctionName",
1283
- # marker: "String",
1284
- # max_items: 1,
1285
- # })
1286
- #
1287
- # @example Response structure
1288
- # resp.next_marker #=> String
1289
- # resp.event_source_mappings #=> Array
1290
- # resp.event_source_mappings[0].uuid #=> String
1291
- # resp.event_source_mappings[0].batch_size #=> Integer
1292
- # resp.event_source_mappings[0].event_source_arn #=> String
1293
- # resp.event_source_mappings[0].function_arn #=> String
1294
- # resp.event_source_mappings[0].last_modified #=> Time
1295
- # resp.event_source_mappings[0].last_processing_result #=> String
1296
- # resp.event_source_mappings[0].state #=> String
1297
- # resp.event_source_mappings[0].state_transition_reason #=> String
1298
- # @overload list_event_source_mappings(params = {})
1299
- # @param [Hash] params ({})
1300
- def list_event_source_mappings(params = {}, options = {})
1301
- req = build_request(:list_event_source_mappings, params)
1302
- req.send_request(options)
1303
- end
1303
+ # Returns list of aliases created for a Lambda function. For each alias,
1304
+ # the response includes information such as the alias ARN, description,
1305
+ # alias name, and the function version to which it points. For more
1306
+ # information, see [Introduction to AWS Lambda Aliases][1].
1307
+ #
1308
+ # This requires permission for the lambda:ListAliases action.
1309
+ #
1310
+ #
1311
+ #
1312
+ # [1]: http://docs.aws.amazon.com/lambda/latest/dg/aliases-intro.html
1313
+ #
1314
+ # @option params [required, String] :function_name
1315
+ # Lambda function name for which the alias is created.
1316
+ #
1317
+ # @option params [String] :function_version
1318
+ # If you specify this optional parameter, the API returns only the
1319
+ # aliases that are pointing to the specific Lambda function version,
1320
+ # otherwise the API returns all of the aliases created for the Lambda
1321
+ # function.
1322
+ #
1323
+ # @option params [String] :marker
1324
+ # Optional string. An opaque pagination token returned from a previous
1325
+ # `ListAliases` operation. If present, indicates where to continue the
1326
+ # listing.
1327
+ #
1328
+ # @option params [Integer] :max_items
1329
+ # Optional integer. Specifies the maximum number of aliases to return in
1330
+ # response. This parameter value must be greater than 0.
1331
+ #
1332
+ # @return [Types::ListAliasesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1333
+ #
1334
+ # * {Types::ListAliasesResponse#next_marker #next_marker} => String
1335
+ # * {Types::ListAliasesResponse#aliases #aliases} => Array&lt;Types::AliasConfiguration&gt;
1336
+ #
1337
+ # @example Request syntax with placeholder values
1338
+ #
1339
+ # resp = client.list_aliases({
1340
+ # function_name: "FunctionName", # required
1341
+ # function_version: "Version",
1342
+ # marker: "String",
1343
+ # max_items: 1,
1344
+ # })
1345
+ #
1346
+ # @example Response structure
1347
+ #
1348
+ # resp.next_marker #=> String
1349
+ # resp.aliases #=> Array
1350
+ # resp.aliases[0].alias_arn #=> String
1351
+ # resp.aliases[0].name #=> String
1352
+ # resp.aliases[0].function_version #=> String
1353
+ # resp.aliases[0].description #=> String
1354
+ #
1355
+ # @overload list_aliases(params = {})
1356
+ # @param [Hash] params ({})
1357
+ def list_aliases(params = {}, options = {})
1358
+ req = build_request(:list_aliases, params)
1359
+ req.send_request(options)
1360
+ end
1304
1361
 
1305
- # Returns a list of your Lambda functions. For each function, the
1306
- # response includes the function configuration information. You must use
1307
- # GetFunction to retrieve the code for your function.
1308
- #
1309
- # This operation requires permission for the `lambda:ListFunctions`
1310
- # action.
1311
- #
1312
- # If you are using versioning feature, the response returns list of
1313
- # $LATEST versions of your functions. For information about the
1314
- # versioning feature, see [AWS Lambda Function Versioning and
1315
- # Aliases][1].
1316
- #
1317
- #
1318
- #
1319
- # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
1320
- # @option params [String] :marker
1321
- # Optional string. An opaque pagination token returned from a previous
1322
- # `ListFunctions` operation. If present, indicates where to continue the
1323
- # listing.
1324
- # @option params [Integer] :max_items
1325
- # Optional integer. Specifies the maximum number of AWS Lambda functions
1326
- # to return in response. This parameter value must be greater than 0.
1327
- # @return [Types::ListFunctionsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1328
- #
1329
- # * {Types::ListFunctionsResponse#next_marker #NextMarker} => String
1330
- # * {Types::ListFunctionsResponse#functions #Functions} => Array&lt;Types::FunctionConfiguration&gt;
1331
- #
1332
- # @example Request syntax with placeholder values
1333
- # resp = client.list_functions({
1334
- # marker: "String",
1335
- # max_items: 1,
1336
- # })
1337
- #
1338
- # @example Response structure
1339
- # resp.next_marker #=> String
1340
- # resp.functions #=> Array
1341
- # resp.functions[0].function_name #=> String
1342
- # resp.functions[0].function_arn #=> String
1343
- # resp.functions[0].runtime #=> String, one of "nodejs", "nodejs4.3", "java8", "python2.7", "dotnetcore1.0", "nodejs4.3-edge"
1344
- # resp.functions[0].role #=> String
1345
- # resp.functions[0].handler #=> String
1346
- # resp.functions[0].code_size #=> Integer
1347
- # resp.functions[0].description #=> String
1348
- # resp.functions[0].timeout #=> Integer
1349
- # resp.functions[0].memory_size #=> Integer
1350
- # resp.functions[0].last_modified #=> Time
1351
- # resp.functions[0].code_sha_256 #=> String
1352
- # resp.functions[0].version #=> String
1353
- # resp.functions[0].vpc_config.subnet_ids #=> Array
1354
- # resp.functions[0].vpc_config.subnet_ids[0] #=> String
1355
- # resp.functions[0].vpc_config.security_group_ids #=> Array
1356
- # resp.functions[0].vpc_config.security_group_ids[0] #=> String
1357
- # resp.functions[0].vpc_config.vpc_id #=> String
1358
- # resp.functions[0].dead_letter_config.target_arn #=> String
1359
- # resp.functions[0].environment.variables #=> Hash
1360
- # resp.functions[0].environment.variables["EnvironmentVariableName"] #=> String
1361
- # resp.functions[0].environment.error.error_code #=> String
1362
- # resp.functions[0].environment.error.message #=> String
1363
- # resp.functions[0].kms_key_arn #=> String
1364
- # @overload list_functions(params = {})
1365
- # @param [Hash] params ({})
1366
- def list_functions(params = {}, options = {})
1367
- req = build_request(:list_functions, params)
1368
- req.send_request(options)
1369
- end
1362
+ # Returns a list of event source mappings you created using the
1363
+ # `CreateEventSourceMapping` (see CreateEventSourceMapping).
1364
+ #
1365
+ # For each mapping, the API returns configuration information. You can
1366
+ # optionally specify filters to retrieve specific event source mappings.
1367
+ #
1368
+ # If you are using the versioning feature, you can get list of event
1369
+ # source mappings for a specific Lambda function version or an alias as
1370
+ # described in the `FunctionName` parameter. For information about the
1371
+ # versioning feature, see [AWS Lambda Function Versioning and
1372
+ # Aliases][1].
1373
+ #
1374
+ # This operation requires permission for the
1375
+ # `lambda:ListEventSourceMappings` action.
1376
+ #
1377
+ #
1378
+ #
1379
+ # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
1380
+ #
1381
+ # @option params [String] :event_source_arn
1382
+ # The Amazon Resource Name (ARN) of the Amazon Kinesis stream. (This
1383
+ # parameter is optional.)
1384
+ #
1385
+ # @option params [String] :function_name
1386
+ # The name of the Lambda function.
1387
+ #
1388
+ # You can specify the function name (for example, `Thumbnail`) or you
1389
+ # can specify Amazon Resource Name (ARN) of the function (for example,
1390
+ # `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`). If you are
1391
+ # using versioning, you can also provide a qualified function ARN (ARN
1392
+ # that is qualified with function version or alias name as suffix). AWS
1393
+ # Lambda also allows you to specify only the function name with the
1394
+ # account ID qualifier (for example, `account-id:Thumbnail`). Note that
1395
+ # the length constraint applies only to the ARN. If you specify only the
1396
+ # function name, it is limited to 64 character in length.
1397
+ #
1398
+ # @option params [String] :marker
1399
+ # Optional string. An opaque pagination token returned from a previous
1400
+ # `ListEventSourceMappings` operation. If present, specifies to continue
1401
+ # the list from where the returning call left off.
1402
+ #
1403
+ # @option params [Integer] :max_items
1404
+ # Optional integer. Specifies the maximum number of event sources to
1405
+ # return in response. This value must be greater than 0.
1406
+ #
1407
+ # @return [Types::ListEventSourceMappingsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1408
+ #
1409
+ # * {Types::ListEventSourceMappingsResponse#next_marker #next_marker} => String
1410
+ # * {Types::ListEventSourceMappingsResponse#event_source_mappings #event_source_mappings} => Array&lt;Types::EventSourceMappingConfiguration&gt;
1411
+ #
1412
+ # @example Request syntax with placeholder values
1413
+ #
1414
+ # resp = client.list_event_source_mappings({
1415
+ # event_source_arn: "Arn",
1416
+ # function_name: "FunctionName",
1417
+ # marker: "String",
1418
+ # max_items: 1,
1419
+ # })
1420
+ #
1421
+ # @example Response structure
1422
+ #
1423
+ # resp.next_marker #=> String
1424
+ # resp.event_source_mappings #=> Array
1425
+ # resp.event_source_mappings[0].uuid #=> String
1426
+ # resp.event_source_mappings[0].batch_size #=> Integer
1427
+ # resp.event_source_mappings[0].event_source_arn #=> String
1428
+ # resp.event_source_mappings[0].function_arn #=> String
1429
+ # resp.event_source_mappings[0].last_modified #=> Time
1430
+ # resp.event_source_mappings[0].last_processing_result #=> String
1431
+ # resp.event_source_mappings[0].state #=> String
1432
+ # resp.event_source_mappings[0].state_transition_reason #=> String
1433
+ #
1434
+ # @overload list_event_source_mappings(params = {})
1435
+ # @param [Hash] params ({})
1436
+ def list_event_source_mappings(params = {}, options = {})
1437
+ req = build_request(:list_event_source_mappings, params)
1438
+ req.send_request(options)
1439
+ end
1370
1440
 
1371
- # List all versions of a function. For information about the versioning
1372
- # feature, see [AWS Lambda Function Versioning and Aliases][1].
1373
- #
1374
- #
1375
- #
1376
- # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
1377
- # @option params [required, String] :function_name
1378
- # Function name whose versions to list. You can specify a function name
1379
- # (for example, `Thumbnail`) or you can specify Amazon Resource Name
1380
- # (ARN) of the function (for example,
1381
- # `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`). AWS Lambda
1382
- # also allows you to specify a partial ARN (for example,
1383
- # `account-id:Thumbnail`). Note that the length constraint applies only
1384
- # to the ARN. If you specify only the function name, it is limited to 64
1385
- # character in length.
1386
- # @option params [String] :marker
1387
- # Optional string. An opaque pagination token returned from a previous
1388
- # `ListVersionsByFunction` operation. If present, indicates where to
1389
- # continue the listing.
1390
- # @option params [Integer] :max_items
1391
- # Optional integer. Specifies the maximum number of AWS Lambda function
1392
- # versions to return in response. This parameter value must be greater
1393
- # than 0.
1394
- # @return [Types::ListVersionsByFunctionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1395
- #
1396
- # * {Types::ListVersionsByFunctionResponse#next_marker #NextMarker} => String
1397
- # * {Types::ListVersionsByFunctionResponse#versions #Versions} => Array&lt;Types::FunctionConfiguration&gt;
1398
- #
1399
- # @example Request syntax with placeholder values
1400
- # resp = client.list_versions_by_function({
1401
- # function_name: "FunctionName", # required
1402
- # marker: "String",
1403
- # max_items: 1,
1404
- # })
1405
- #
1406
- # @example Response structure
1407
- # resp.next_marker #=> String
1408
- # resp.versions #=> Array
1409
- # resp.versions[0].function_name #=> String
1410
- # resp.versions[0].function_arn #=> String
1411
- # resp.versions[0].runtime #=> String, one of "nodejs", "nodejs4.3", "java8", "python2.7", "dotnetcore1.0", "nodejs4.3-edge"
1412
- # resp.versions[0].role #=> String
1413
- # resp.versions[0].handler #=> String
1414
- # resp.versions[0].code_size #=> Integer
1415
- # resp.versions[0].description #=> String
1416
- # resp.versions[0].timeout #=> Integer
1417
- # resp.versions[0].memory_size #=> Integer
1418
- # resp.versions[0].last_modified #=> Time
1419
- # resp.versions[0].code_sha_256 #=> String
1420
- # resp.versions[0].version #=> String
1421
- # resp.versions[0].vpc_config.subnet_ids #=> Array
1422
- # resp.versions[0].vpc_config.subnet_ids[0] #=> String
1423
- # resp.versions[0].vpc_config.security_group_ids #=> Array
1424
- # resp.versions[0].vpc_config.security_group_ids[0] #=> String
1425
- # resp.versions[0].vpc_config.vpc_id #=> String
1426
- # resp.versions[0].dead_letter_config.target_arn #=> String
1427
- # resp.versions[0].environment.variables #=> Hash
1428
- # resp.versions[0].environment.variables["EnvironmentVariableName"] #=> String
1429
- # resp.versions[0].environment.error.error_code #=> String
1430
- # resp.versions[0].environment.error.message #=> String
1431
- # resp.versions[0].kms_key_arn #=> String
1432
- # @overload list_versions_by_function(params = {})
1433
- # @param [Hash] params ({})
1434
- def list_versions_by_function(params = {}, options = {})
1435
- req = build_request(:list_versions_by_function, params)
1436
- req.send_request(options)
1437
- end
1441
+ # Returns a list of your Lambda functions. For each function, the
1442
+ # response includes the function configuration information. You must use
1443
+ # GetFunction to retrieve the code for your function.
1444
+ #
1445
+ # This operation requires permission for the `lambda:ListFunctions`
1446
+ # action.
1447
+ #
1448
+ # If you are using versioning feature, the response returns list of
1449
+ # $LATEST versions of your functions. For information about the
1450
+ # versioning feature, see [AWS Lambda Function Versioning and
1451
+ # Aliases][1].
1452
+ #
1453
+ #
1454
+ #
1455
+ # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
1456
+ #
1457
+ # @option params [String] :marker
1458
+ # Optional string. An opaque pagination token returned from a previous
1459
+ # `ListFunctions` operation. If present, indicates where to continue the
1460
+ # listing.
1461
+ #
1462
+ # @option params [Integer] :max_items
1463
+ # Optional integer. Specifies the maximum number of AWS Lambda functions
1464
+ # to return in response. This parameter value must be greater than 0.
1465
+ #
1466
+ # @return [Types::ListFunctionsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1467
+ #
1468
+ # * {Types::ListFunctionsResponse#next_marker #next_marker} => String
1469
+ # * {Types::ListFunctionsResponse#functions #functions} => Array&lt;Types::FunctionConfiguration&gt;
1470
+ #
1471
+ # @example Request syntax with placeholder values
1472
+ #
1473
+ # resp = client.list_functions({
1474
+ # marker: "String",
1475
+ # max_items: 1,
1476
+ # })
1477
+ #
1478
+ # @example Response structure
1479
+ #
1480
+ # resp.next_marker #=> String
1481
+ # resp.functions #=> Array
1482
+ # resp.functions[0].function_name #=> String
1483
+ # resp.functions[0].function_arn #=> String
1484
+ # resp.functions[0].runtime #=> String, one of "nodejs", "nodejs4.3", "java8", "python2.7", "dotnetcore1.0", "nodejs4.3-edge"
1485
+ # resp.functions[0].role #=> String
1486
+ # resp.functions[0].handler #=> String
1487
+ # resp.functions[0].code_size #=> Integer
1488
+ # resp.functions[0].description #=> String
1489
+ # resp.functions[0].timeout #=> Integer
1490
+ # resp.functions[0].memory_size #=> Integer
1491
+ # resp.functions[0].last_modified #=> Time
1492
+ # resp.functions[0].code_sha_256 #=> String
1493
+ # resp.functions[0].version #=> String
1494
+ # resp.functions[0].vpc_config.subnet_ids #=> Array
1495
+ # resp.functions[0].vpc_config.subnet_ids[0] #=> String
1496
+ # resp.functions[0].vpc_config.security_group_ids #=> Array
1497
+ # resp.functions[0].vpc_config.security_group_ids[0] #=> String
1498
+ # resp.functions[0].vpc_config.vpc_id #=> String
1499
+ # resp.functions[0].dead_letter_config.target_arn #=> String
1500
+ # resp.functions[0].environment.variables #=> Hash
1501
+ # resp.functions[0].environment.variables["EnvironmentVariableName"] #=> String
1502
+ # resp.functions[0].environment.error.error_code #=> String
1503
+ # resp.functions[0].environment.error.message #=> String
1504
+ # resp.functions[0].kms_key_arn #=> String
1505
+ #
1506
+ # @overload list_functions(params = {})
1507
+ # @param [Hash] params ({})
1508
+ def list_functions(params = {}, options = {})
1509
+ req = build_request(:list_functions, params)
1510
+ req.send_request(options)
1511
+ end
1438
1512
 
1439
- # Publishes a version of your function from the current snapshot of
1440
- # $LATEST. That is, AWS Lambda takes a snapshot of the function code and
1441
- # configuration information from $LATEST and publishes a new version.
1442
- # The code and configuration cannot be modified after publication. For
1443
- # information about the versioning feature, see [AWS Lambda Function
1444
- # Versioning and Aliases][1].
1445
- #
1446
- #
1447
- #
1448
- # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
1449
- # @option params [required, String] :function_name
1450
- # The Lambda function name. You can specify a function name (for
1451
- # example, `Thumbnail`) or you can specify Amazon Resource Name (ARN) of
1452
- # the function (for example,
1453
- # `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`). AWS Lambda
1454
- # also allows you to specify a partial ARN (for example,
1455
- # `account-id:Thumbnail`). Note that the length constraint applies only
1456
- # to the ARN. If you specify only the function name, it is limited to 64
1457
- # character in length.
1458
- # @option params [String] :code_sha_256
1459
- # The SHA256 hash of the deployment package you want to publish. This
1460
- # provides validation on the code you are publishing. If you provide
1461
- # this parameter value must match the SHA256 of the $LATEST version for
1462
- # the publication to succeed.
1463
- # @option params [String] :description
1464
- # The description for the version you are publishing. If not provided,
1465
- # AWS Lambda copies the description from the $LATEST version.
1466
- # @return [Types::FunctionConfiguration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1467
- #
1468
- # * {Types::FunctionConfiguration#function_name #FunctionName} => String
1469
- # * {Types::FunctionConfiguration#function_arn #FunctionArn} => String
1470
- # * {Types::FunctionConfiguration#runtime #Runtime} => String
1471
- # * {Types::FunctionConfiguration#role #Role} => String
1472
- # * {Types::FunctionConfiguration#handler #Handler} => String
1473
- # * {Types::FunctionConfiguration#code_size #CodeSize} => Integer
1474
- # * {Types::FunctionConfiguration#description #Description} => String
1475
- # * {Types::FunctionConfiguration#timeout #Timeout} => Integer
1476
- # * {Types::FunctionConfiguration#memory_size #MemorySize} => Integer
1477
- # * {Types::FunctionConfiguration#last_modified #LastModified} => Time
1478
- # * {Types::FunctionConfiguration#code_sha_256 #CodeSha256} => String
1479
- # * {Types::FunctionConfiguration#version #Version} => String
1480
- # * {Types::FunctionConfiguration#vpc_config #VpcConfig} => Types::VpcConfigResponse
1481
- # * {Types::FunctionConfiguration#dead_letter_config #DeadLetterConfig} => Types::DeadLetterConfig
1482
- # * {Types::FunctionConfiguration#environment #Environment} => Types::EnvironmentResponse
1483
- # * {Types::FunctionConfiguration#kms_key_arn #KMSKeyArn} => String
1484
- #
1485
- # @example Request syntax with placeholder values
1486
- # resp = client.publish_version({
1487
- # function_name: "FunctionName", # required
1488
- # code_sha_256: "String",
1489
- # description: "Description",
1490
- # })
1491
- #
1492
- # @example Response structure
1493
- # resp.function_name #=> String
1494
- # resp.function_arn #=> String
1495
- # resp.runtime #=> String, one of "nodejs", "nodejs4.3", "java8", "python2.7", "dotnetcore1.0", "nodejs4.3-edge"
1496
- # resp.role #=> String
1497
- # resp.handler #=> String
1498
- # resp.code_size #=> Integer
1499
- # resp.description #=> String
1500
- # resp.timeout #=> Integer
1501
- # resp.memory_size #=> Integer
1502
- # resp.last_modified #=> Time
1503
- # resp.code_sha_256 #=> String
1504
- # resp.version #=> String
1505
- # resp.vpc_config.subnet_ids #=> Array
1506
- # resp.vpc_config.subnet_ids[0] #=> String
1507
- # resp.vpc_config.security_group_ids #=> Array
1508
- # resp.vpc_config.security_group_ids[0] #=> String
1509
- # resp.vpc_config.vpc_id #=> String
1510
- # resp.dead_letter_config.target_arn #=> String
1511
- # resp.environment.variables #=> Hash
1512
- # resp.environment.variables["EnvironmentVariableName"] #=> String
1513
- # resp.environment.error.error_code #=> String
1514
- # resp.environment.error.message #=> String
1515
- # resp.kms_key_arn #=> String
1516
- # @overload publish_version(params = {})
1517
- # @param [Hash] params ({})
1518
- def publish_version(params = {}, options = {})
1519
- req = build_request(:publish_version, params)
1520
- req.send_request(options)
1521
- end
1513
+ # List all versions of a function. For information about the versioning
1514
+ # feature, see [AWS Lambda Function Versioning and Aliases][1].
1515
+ #
1516
+ #
1517
+ #
1518
+ # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
1519
+ #
1520
+ # @option params [required, String] :function_name
1521
+ # Function name whose versions to list. You can specify a function name
1522
+ # (for example, `Thumbnail`) or you can specify Amazon Resource Name
1523
+ # (ARN) of the function (for example,
1524
+ # `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`). AWS Lambda
1525
+ # also allows you to specify a partial ARN (for example,
1526
+ # `account-id:Thumbnail`). Note that the length constraint applies only
1527
+ # to the ARN. If you specify only the function name, it is limited to 64
1528
+ # character in length.
1529
+ #
1530
+ # @option params [String] :marker
1531
+ # Optional string. An opaque pagination token returned from a previous
1532
+ # `ListVersionsByFunction` operation. If present, indicates where to
1533
+ # continue the listing.
1534
+ #
1535
+ # @option params [Integer] :max_items
1536
+ # Optional integer. Specifies the maximum number of AWS Lambda function
1537
+ # versions to return in response. This parameter value must be greater
1538
+ # than 0.
1539
+ #
1540
+ # @return [Types::ListVersionsByFunctionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1541
+ #
1542
+ # * {Types::ListVersionsByFunctionResponse#next_marker #next_marker} => String
1543
+ # * {Types::ListVersionsByFunctionResponse#versions #versions} => Array&lt;Types::FunctionConfiguration&gt;
1544
+ #
1545
+ # @example Request syntax with placeholder values
1546
+ #
1547
+ # resp = client.list_versions_by_function({
1548
+ # function_name: "FunctionName", # required
1549
+ # marker: "String",
1550
+ # max_items: 1,
1551
+ # })
1552
+ #
1553
+ # @example Response structure
1554
+ #
1555
+ # resp.next_marker #=> String
1556
+ # resp.versions #=> Array
1557
+ # resp.versions[0].function_name #=> String
1558
+ # resp.versions[0].function_arn #=> String
1559
+ # resp.versions[0].runtime #=> String, one of "nodejs", "nodejs4.3", "java8", "python2.7", "dotnetcore1.0", "nodejs4.3-edge"
1560
+ # resp.versions[0].role #=> String
1561
+ # resp.versions[0].handler #=> String
1562
+ # resp.versions[0].code_size #=> Integer
1563
+ # resp.versions[0].description #=> String
1564
+ # resp.versions[0].timeout #=> Integer
1565
+ # resp.versions[0].memory_size #=> Integer
1566
+ # resp.versions[0].last_modified #=> Time
1567
+ # resp.versions[0].code_sha_256 #=> String
1568
+ # resp.versions[0].version #=> String
1569
+ # resp.versions[0].vpc_config.subnet_ids #=> Array
1570
+ # resp.versions[0].vpc_config.subnet_ids[0] #=> String
1571
+ # resp.versions[0].vpc_config.security_group_ids #=> Array
1572
+ # resp.versions[0].vpc_config.security_group_ids[0] #=> String
1573
+ # resp.versions[0].vpc_config.vpc_id #=> String
1574
+ # resp.versions[0].dead_letter_config.target_arn #=> String
1575
+ # resp.versions[0].environment.variables #=> Hash
1576
+ # resp.versions[0].environment.variables["EnvironmentVariableName"] #=> String
1577
+ # resp.versions[0].environment.error.error_code #=> String
1578
+ # resp.versions[0].environment.error.message #=> String
1579
+ # resp.versions[0].kms_key_arn #=> String
1580
+ #
1581
+ # @overload list_versions_by_function(params = {})
1582
+ # @param [Hash] params ({})
1583
+ def list_versions_by_function(params = {}, options = {})
1584
+ req = build_request(:list_versions_by_function, params)
1585
+ req.send_request(options)
1586
+ end
1522
1587
 
1523
- # You can remove individual permissions from an resource policy
1524
- # associated with a Lambda function by providing a statement ID that you
1525
- # provided when you added the permission.
1526
- #
1527
- # If you are using versioning, the permissions you remove are specific
1528
- # to the Lambda function version or alias you specify in the
1529
- # `AddPermission` request via the `Qualifier` parameter. For more
1530
- # information about versioning, see [AWS Lambda Function Versioning and
1531
- # Aliases][1].
1532
- #
1533
- # Note that removal of a permission will cause an active event source to
1534
- # lose permission to the function.
1535
- #
1536
- # You need permission for the `lambda:RemovePermission` action.
1537
- #
1538
- #
1539
- #
1540
- # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
1541
- # @option params [required, String] :function_name
1542
- # Lambda function whose resource policy you want to remove a permission
1543
- # from.
1544
- #
1545
- # You can specify a function name (for example, `Thumbnail`) or you can
1546
- # specify Amazon Resource Name (ARN) of the function (for example,
1547
- # `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`). AWS Lambda
1548
- # also allows you to specify a partial ARN (for example,
1549
- # `account-id:Thumbnail`). Note that the length constraint applies only
1550
- # to the ARN. If you specify only the function name, it is limited to 64
1551
- # character in length.
1552
- # @option params [required, String] :statement_id
1553
- # Statement ID of the permission to remove.
1554
- # @option params [String] :qualifier
1555
- # You can specify this optional parameter to remove permission
1556
- # associated with a specific function version or function alias. If you
1557
- # don't specify this parameter, the API removes permission associated
1558
- # with the unqualified function ARN.
1559
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1560
- #
1561
- # @example Request syntax with placeholder values
1562
- # resp = client.remove_permission({
1563
- # function_name: "FunctionName", # required
1564
- # statement_id: "StatementId", # required
1565
- # qualifier: "Qualifier",
1566
- # })
1567
- # @overload remove_permission(params = {})
1568
- # @param [Hash] params ({})
1569
- def remove_permission(params = {}, options = {})
1570
- req = build_request(:remove_permission, params)
1571
- req.send_request(options)
1572
- end
1588
+ # Publishes a version of your function from the current snapshot of
1589
+ # $LATEST. That is, AWS Lambda takes a snapshot of the function code and
1590
+ # configuration information from $LATEST and publishes a new version.
1591
+ # The code and configuration cannot be modified after publication. For
1592
+ # information about the versioning feature, see [AWS Lambda Function
1593
+ # Versioning and Aliases][1].
1594
+ #
1595
+ #
1596
+ #
1597
+ # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
1598
+ #
1599
+ # @option params [required, String] :function_name
1600
+ # The Lambda function name. You can specify a function name (for
1601
+ # example, `Thumbnail`) or you can specify Amazon Resource Name (ARN) of
1602
+ # the function (for example,
1603
+ # `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`). AWS Lambda
1604
+ # also allows you to specify a partial ARN (for example,
1605
+ # `account-id:Thumbnail`). Note that the length constraint applies only
1606
+ # to the ARN. If you specify only the function name, it is limited to 64
1607
+ # character in length.
1608
+ #
1609
+ # @option params [String] :code_sha_256
1610
+ # The SHA256 hash of the deployment package you want to publish. This
1611
+ # provides validation on the code you are publishing. If you provide
1612
+ # this parameter value must match the SHA256 of the $LATEST version for
1613
+ # the publication to succeed.
1614
+ #
1615
+ # @option params [String] :description
1616
+ # The description for the version you are publishing. If not provided,
1617
+ # AWS Lambda copies the description from the $LATEST version.
1618
+ #
1619
+ # @return [Types::FunctionConfiguration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1620
+ #
1621
+ # * {Types::FunctionConfiguration#function_name #function_name} => String
1622
+ # * {Types::FunctionConfiguration#function_arn #function_arn} => String
1623
+ # * {Types::FunctionConfiguration#runtime #runtime} => String
1624
+ # * {Types::FunctionConfiguration#role #role} => String
1625
+ # * {Types::FunctionConfiguration#handler #handler} => String
1626
+ # * {Types::FunctionConfiguration#code_size #code_size} => Integer
1627
+ # * {Types::FunctionConfiguration#description #description} => String
1628
+ # * {Types::FunctionConfiguration#timeout #timeout} => Integer
1629
+ # * {Types::FunctionConfiguration#memory_size #memory_size} => Integer
1630
+ # * {Types::FunctionConfiguration#last_modified #last_modified} => Time
1631
+ # * {Types::FunctionConfiguration#code_sha_256 #code_sha_256} => String
1632
+ # * {Types::FunctionConfiguration#version #version} => String
1633
+ # * {Types::FunctionConfiguration#vpc_config #vpc_config} => Types::VpcConfigResponse
1634
+ # * {Types::FunctionConfiguration#dead_letter_config #dead_letter_config} => Types::DeadLetterConfig
1635
+ # * {Types::FunctionConfiguration#environment #environment} => Types::EnvironmentResponse
1636
+ # * {Types::FunctionConfiguration#kms_key_arn #kms_key_arn} => String
1637
+ #
1638
+ # @example Request syntax with placeholder values
1639
+ #
1640
+ # resp = client.publish_version({
1641
+ # function_name: "FunctionName", # required
1642
+ # code_sha_256: "String",
1643
+ # description: "Description",
1644
+ # })
1645
+ #
1646
+ # @example Response structure
1647
+ #
1648
+ # resp.function_name #=> String
1649
+ # resp.function_arn #=> String
1650
+ # resp.runtime #=> String, one of "nodejs", "nodejs4.3", "java8", "python2.7", "dotnetcore1.0", "nodejs4.3-edge"
1651
+ # resp.role #=> String
1652
+ # resp.handler #=> String
1653
+ # resp.code_size #=> Integer
1654
+ # resp.description #=> String
1655
+ # resp.timeout #=> Integer
1656
+ # resp.memory_size #=> Integer
1657
+ # resp.last_modified #=> Time
1658
+ # resp.code_sha_256 #=> String
1659
+ # resp.version #=> String
1660
+ # resp.vpc_config.subnet_ids #=> Array
1661
+ # resp.vpc_config.subnet_ids[0] #=> String
1662
+ # resp.vpc_config.security_group_ids #=> Array
1663
+ # resp.vpc_config.security_group_ids[0] #=> String
1664
+ # resp.vpc_config.vpc_id #=> String
1665
+ # resp.dead_letter_config.target_arn #=> String
1666
+ # resp.environment.variables #=> Hash
1667
+ # resp.environment.variables["EnvironmentVariableName"] #=> String
1668
+ # resp.environment.error.error_code #=> String
1669
+ # resp.environment.error.message #=> String
1670
+ # resp.kms_key_arn #=> String
1671
+ #
1672
+ # @overload publish_version(params = {})
1673
+ # @param [Hash] params ({})
1674
+ def publish_version(params = {}, options = {})
1675
+ req = build_request(:publish_version, params)
1676
+ req.send_request(options)
1677
+ end
1573
1678
 
1574
- # Using this API you can update the function version to which the alias
1575
- # points and the alias description. For more information, see
1576
- # [Introduction to AWS Lambda Aliases][1].
1577
- #
1578
- # This requires permission for the lambda:UpdateAlias action.
1579
- #
1580
- #
1581
- #
1582
- # [1]: http://docs.aws.amazon.com/lambda/latest/dg/aliases-intro.html
1583
- # @option params [required, String] :function_name
1584
- # The function name for which the alias is created.
1585
- # @option params [required, String] :name
1586
- # The alias name.
1587
- # @option params [String] :function_version
1588
- # Using this parameter you can change the Lambda function version to
1589
- # which the alias points.
1590
- # @option params [String] :description
1591
- # You can change the description of the alias using this parameter.
1592
- # @return [Types::AliasConfiguration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1593
- #
1594
- # * {Types::AliasConfiguration#alias_arn #AliasArn} => String
1595
- # * {Types::AliasConfiguration#name #Name} => String
1596
- # * {Types::AliasConfiguration#function_version #FunctionVersion} => String
1597
- # * {Types::AliasConfiguration#description #Description} => String
1598
- #
1599
- # @example Request syntax with placeholder values
1600
- # resp = client.update_alias({
1601
- # function_name: "FunctionName", # required
1602
- # name: "Alias", # required
1603
- # function_version: "Version",
1604
- # description: "Description",
1605
- # })
1606
- #
1607
- # @example Response structure
1608
- # resp.alias_arn #=> String
1609
- # resp.name #=> String
1610
- # resp.function_version #=> String
1611
- # resp.description #=> String
1612
- # @overload update_alias(params = {})
1613
- # @param [Hash] params ({})
1614
- def update_alias(params = {}, options = {})
1615
- req = build_request(:update_alias, params)
1616
- req.send_request(options)
1617
- end
1679
+ # You can remove individual permissions from an resource policy
1680
+ # associated with a Lambda function by providing a statement ID that you
1681
+ # provided when you added the permission.
1682
+ #
1683
+ # If you are using versioning, the permissions you remove are specific
1684
+ # to the Lambda function version or alias you specify in the
1685
+ # `AddPermission` request via the `Qualifier` parameter. For more
1686
+ # information about versioning, see [AWS Lambda Function Versioning and
1687
+ # Aliases][1].
1688
+ #
1689
+ # Note that removal of a permission will cause an active event source to
1690
+ # lose permission to the function.
1691
+ #
1692
+ # You need permission for the `lambda:RemovePermission` action.
1693
+ #
1694
+ #
1695
+ #
1696
+ # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
1697
+ #
1698
+ # @option params [required, String] :function_name
1699
+ # Lambda function whose resource policy you want to remove a permission
1700
+ # from.
1701
+ #
1702
+ # You can specify a function name (for example, `Thumbnail`) or you can
1703
+ # specify Amazon Resource Name (ARN) of the function (for example,
1704
+ # `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`). AWS Lambda
1705
+ # also allows you to specify a partial ARN (for example,
1706
+ # `account-id:Thumbnail`). Note that the length constraint applies only
1707
+ # to the ARN. If you specify only the function name, it is limited to 64
1708
+ # character in length.
1709
+ #
1710
+ # @option params [required, String] :statement_id
1711
+ # Statement ID of the permission to remove.
1712
+ #
1713
+ # @option params [String] :qualifier
1714
+ # You can specify this optional parameter to remove permission
1715
+ # associated with a specific function version or function alias. If you
1716
+ # don't specify this parameter, the API removes permission associated
1717
+ # with the unqualified function ARN.
1718
+ #
1719
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1720
+ #
1721
+ # @example Request syntax with placeholder values
1722
+ #
1723
+ # resp = client.remove_permission({
1724
+ # function_name: "FunctionName", # required
1725
+ # statement_id: "StatementId", # required
1726
+ # qualifier: "Qualifier",
1727
+ # })
1728
+ #
1729
+ # @overload remove_permission(params = {})
1730
+ # @param [Hash] params ({})
1731
+ def remove_permission(params = {}, options = {})
1732
+ req = build_request(:remove_permission, params)
1733
+ req.send_request(options)
1734
+ end
1618
1735
 
1619
- # You can update an event source mapping. This is useful if you want to
1620
- # change the parameters of the existing mapping without losing your
1621
- # position in the stream. You can change which function will receive the
1622
- # stream records, but to change the stream itself, you must create a new
1623
- # mapping.
1624
- #
1625
- # If you are using the versioning feature, you can update the event
1626
- # source mapping to map to a specific Lambda function version or alias
1627
- # as described in the `FunctionName` parameter. For information about
1628
- # the versioning feature, see [AWS Lambda Function Versioning and
1629
- # Aliases][1].
1630
- #
1631
- # If you disable the event source mapping, AWS Lambda stops polling. If
1632
- # you enable again, it will resume polling from the time it had stopped
1633
- # polling, so you don't lose processing of any records. However, if you
1634
- # delete event source mapping and create it again, it will reset.
1635
- #
1636
- # This operation requires permission for the
1637
- # `lambda:UpdateEventSourceMapping` action.
1638
- #
1639
- #
1640
- #
1641
- # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
1642
- # @option params [required, String] :uuid
1643
- # The event source mapping identifier.
1644
- # @option params [String] :function_name
1645
- # The Lambda function to which you want the stream records sent.
1646
- #
1647
- # You can specify a function name (for example, `Thumbnail`) or you can
1648
- # specify Amazon Resource Name (ARN) of the function (for example,
1649
- # `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`). AWS Lambda
1650
- # also allows you to specify a partial ARN (for example,
1651
- # `account-id:Thumbnail`).
1652
- #
1653
- # If you are using versioning, you can also provide a qualified function
1654
- # ARN (ARN that is qualified with function version or alias name as
1655
- # suffix). For more information about versioning, see [AWS Lambda
1656
- # Function Versioning and Aliases][1]
1657
- #
1658
- # Note that the length constraint applies only to the ARN. If you
1659
- # specify only the function name, it is limited to 64 character in
1660
- # length.
1661
- #
1662
- #
1663
- #
1664
- # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
1665
- # @option params [Boolean] :enabled
1666
- # Specifies whether AWS Lambda should actively poll the stream or not.
1667
- # If disabled, AWS Lambda will not poll the stream.
1668
- # @option params [Integer] :batch_size
1669
- # The maximum number of stream records that can be sent to your Lambda
1670
- # function for a single invocation.
1671
- # @return [Types::EventSourceMappingConfiguration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1672
- #
1673
- # * {Types::EventSourceMappingConfiguration#uuid #UUID} => String
1674
- # * {Types::EventSourceMappingConfiguration#batch_size #BatchSize} => Integer
1675
- # * {Types::EventSourceMappingConfiguration#event_source_arn #EventSourceArn} => String
1676
- # * {Types::EventSourceMappingConfiguration#function_arn #FunctionArn} => String
1677
- # * {Types::EventSourceMappingConfiguration#last_modified #LastModified} => Time
1678
- # * {Types::EventSourceMappingConfiguration#last_processing_result #LastProcessingResult} => String
1679
- # * {Types::EventSourceMappingConfiguration#state #State} => String
1680
- # * {Types::EventSourceMappingConfiguration#state_transition_reason #StateTransitionReason} => String
1681
- #
1682
- # @example Request syntax with placeholder values
1683
- # resp = client.update_event_source_mapping({
1684
- # uuid: "String", # required
1685
- # function_name: "FunctionName",
1686
- # enabled: false,
1687
- # batch_size: 1,
1688
- # })
1689
- #
1690
- # @example Response structure
1691
- # resp.uuid #=> String
1692
- # resp.batch_size #=> Integer
1693
- # resp.event_source_arn #=> String
1694
- # resp.function_arn #=> String
1695
- # resp.last_modified #=> Time
1696
- # resp.last_processing_result #=> String
1697
- # resp.state #=> String
1698
- # resp.state_transition_reason #=> String
1699
- # @overload update_event_source_mapping(params = {})
1700
- # @param [Hash] params ({})
1701
- def update_event_source_mapping(params = {}, options = {})
1702
- req = build_request(:update_event_source_mapping, params)
1703
- req.send_request(options)
1704
- end
1736
+ # Using this API you can update the function version to which the alias
1737
+ # points and the alias description. For more information, see
1738
+ # [Introduction to AWS Lambda Aliases][1].
1739
+ #
1740
+ # This requires permission for the lambda:UpdateAlias action.
1741
+ #
1742
+ #
1743
+ #
1744
+ # [1]: http://docs.aws.amazon.com/lambda/latest/dg/aliases-intro.html
1745
+ #
1746
+ # @option params [required, String] :function_name
1747
+ # The function name for which the alias is created.
1748
+ #
1749
+ # @option params [required, String] :name
1750
+ # The alias name.
1751
+ #
1752
+ # @option params [String] :function_version
1753
+ # Using this parameter you can change the Lambda function version to
1754
+ # which the alias points.
1755
+ #
1756
+ # @option params [String] :description
1757
+ # You can change the description of the alias using this parameter.
1758
+ #
1759
+ # @return [Types::AliasConfiguration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1760
+ #
1761
+ # * {Types::AliasConfiguration#alias_arn #alias_arn} => String
1762
+ # * {Types::AliasConfiguration#name #name} => String
1763
+ # * {Types::AliasConfiguration#function_version #function_version} => String
1764
+ # * {Types::AliasConfiguration#description #description} => String
1765
+ #
1766
+ # @example Request syntax with placeholder values
1767
+ #
1768
+ # resp = client.update_alias({
1769
+ # function_name: "FunctionName", # required
1770
+ # name: "Alias", # required
1771
+ # function_version: "Version",
1772
+ # description: "Description",
1773
+ # })
1774
+ #
1775
+ # @example Response structure
1776
+ #
1777
+ # resp.alias_arn #=> String
1778
+ # resp.name #=> String
1779
+ # resp.function_version #=> String
1780
+ # resp.description #=> String
1781
+ #
1782
+ # @overload update_alias(params = {})
1783
+ # @param [Hash] params ({})
1784
+ def update_alias(params = {}, options = {})
1785
+ req = build_request(:update_alias, params)
1786
+ req.send_request(options)
1787
+ end
1705
1788
 
1706
- # Updates the code for the specified Lambda function. This operation
1707
- # must only be used on an existing Lambda function and cannot be used to
1708
- # update the function configuration.
1709
- #
1710
- # If you are using the versioning feature, note this API will always
1711
- # update the $LATEST version of your Lambda function. For information
1712
- # about the versioning feature, see [AWS Lambda Function Versioning and
1713
- # Aliases][1].
1714
- #
1715
- # This operation requires permission for the `lambda:UpdateFunctionCode`
1716
- # action.
1717
- #
1718
- #
1719
- #
1720
- # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
1721
- # @option params [required, String] :function_name
1722
- # The existing Lambda function name whose code you want to replace.
1723
- #
1724
- # You can specify a function name (for example, `Thumbnail`) or you can
1725
- # specify Amazon Resource Name (ARN) of the function (for example,
1726
- # `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`). AWS Lambda
1727
- # also allows you to specify a partial ARN (for example,
1728
- # `account-id:Thumbnail`). Note that the length constraint applies only
1729
- # to the ARN. If you specify only the function name, it is limited to 64
1730
- # character in length.
1731
- # @option params [String, IO] :zip_file
1732
- # The contents of your zip file containing your deployment package. If
1733
- # you are using the web API directly, the contents of the zip file must
1734
- # be base64-encoded. If you are using the AWS SDKs or the AWS CLI, the
1735
- # SDKs or CLI will do the encoding for you. For more information about
1736
- # creating a .zip file, go to [Execution Permissions][1] in the *AWS
1737
- # Lambda Developer Guide*.
1738
- #
1739
- #
1740
- #
1741
- # [1]: http://docs.aws.amazon.com/lambda/latest/dg/intro-permission-model.html#lambda-intro-execution-role.html
1742
- # @option params [String] :s3_bucket
1743
- # Amazon S3 bucket name where the .zip file containing your deployment
1744
- # package is stored. This bucket must reside in the same AWS region
1745
- # where you are creating the Lambda function.
1746
- # @option params [String] :s3_key
1747
- # The Amazon S3 object (the deployment package) key name you want to
1748
- # upload.
1749
- # @option params [String] :s3_object_version
1750
- # The Amazon S3 object (the deployment package) version you want to
1751
- # upload.
1752
- # @option params [Boolean] :publish
1753
- # This boolean parameter can be used to request AWS Lambda to update the
1754
- # Lambda function and publish a version as an atomic operation.
1755
- # @return [Types::FunctionConfiguration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1756
- #
1757
- # * {Types::FunctionConfiguration#function_name #FunctionName} => String
1758
- # * {Types::FunctionConfiguration#function_arn #FunctionArn} => String
1759
- # * {Types::FunctionConfiguration#runtime #Runtime} => String
1760
- # * {Types::FunctionConfiguration#role #Role} => String
1761
- # * {Types::FunctionConfiguration#handler #Handler} => String
1762
- # * {Types::FunctionConfiguration#code_size #CodeSize} => Integer
1763
- # * {Types::FunctionConfiguration#description #Description} => String
1764
- # * {Types::FunctionConfiguration#timeout #Timeout} => Integer
1765
- # * {Types::FunctionConfiguration#memory_size #MemorySize} => Integer
1766
- # * {Types::FunctionConfiguration#last_modified #LastModified} => Time
1767
- # * {Types::FunctionConfiguration#code_sha_256 #CodeSha256} => String
1768
- # * {Types::FunctionConfiguration#version #Version} => String
1769
- # * {Types::FunctionConfiguration#vpc_config #VpcConfig} => Types::VpcConfigResponse
1770
- # * {Types::FunctionConfiguration#dead_letter_config #DeadLetterConfig} => Types::DeadLetterConfig
1771
- # * {Types::FunctionConfiguration#environment #Environment} => Types::EnvironmentResponse
1772
- # * {Types::FunctionConfiguration#kms_key_arn #KMSKeyArn} => String
1773
- #
1774
- # @example Request syntax with placeholder values
1775
- # resp = client.update_function_code({
1776
- # function_name: "FunctionName", # required
1777
- # zip_file: "data",
1778
- # s3_bucket: "S3Bucket",
1779
- # s3_key: "S3Key",
1780
- # s3_object_version: "S3ObjectVersion",
1781
- # publish: false,
1782
- # })
1783
- #
1784
- # @example Response structure
1785
- # resp.function_name #=> String
1786
- # resp.function_arn #=> String
1787
- # resp.runtime #=> String, one of "nodejs", "nodejs4.3", "java8", "python2.7", "dotnetcore1.0", "nodejs4.3-edge"
1788
- # resp.role #=> String
1789
- # resp.handler #=> String
1790
- # resp.code_size #=> Integer
1791
- # resp.description #=> String
1792
- # resp.timeout #=> Integer
1793
- # resp.memory_size #=> Integer
1794
- # resp.last_modified #=> Time
1795
- # resp.code_sha_256 #=> String
1796
- # resp.version #=> String
1797
- # resp.vpc_config.subnet_ids #=> Array
1798
- # resp.vpc_config.subnet_ids[0] #=> String
1799
- # resp.vpc_config.security_group_ids #=> Array
1800
- # resp.vpc_config.security_group_ids[0] #=> String
1801
- # resp.vpc_config.vpc_id #=> String
1802
- # resp.dead_letter_config.target_arn #=> String
1803
- # resp.environment.variables #=> Hash
1804
- # resp.environment.variables["EnvironmentVariableName"] #=> String
1805
- # resp.environment.error.error_code #=> String
1806
- # resp.environment.error.message #=> String
1807
- # resp.kms_key_arn #=> String
1808
- # @overload update_function_code(params = {})
1809
- # @param [Hash] params ({})
1810
- def update_function_code(params = {}, options = {})
1811
- req = build_request(:update_function_code, params)
1812
- req.send_request(options)
1813
- end
1789
+ # You can update an event source mapping. This is useful if you want to
1790
+ # change the parameters of the existing mapping without losing your
1791
+ # position in the stream. You can change which function will receive the
1792
+ # stream records, but to change the stream itself, you must create a new
1793
+ # mapping.
1794
+ #
1795
+ # If you are using the versioning feature, you can update the event
1796
+ # source mapping to map to a specific Lambda function version or alias
1797
+ # as described in the `FunctionName` parameter. For information about
1798
+ # the versioning feature, see [AWS Lambda Function Versioning and
1799
+ # Aliases][1].
1800
+ #
1801
+ # If you disable the event source mapping, AWS Lambda stops polling. If
1802
+ # you enable again, it will resume polling from the time it had stopped
1803
+ # polling, so you don't lose processing of any records. However, if you
1804
+ # delete event source mapping and create it again, it will reset.
1805
+ #
1806
+ # This operation requires permission for the
1807
+ # `lambda:UpdateEventSourceMapping` action.
1808
+ #
1809
+ #
1810
+ #
1811
+ # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
1812
+ #
1813
+ # @option params [required, String] :uuid
1814
+ # The event source mapping identifier.
1815
+ #
1816
+ # @option params [String] :function_name
1817
+ # The Lambda function to which you want the stream records sent.
1818
+ #
1819
+ # You can specify a function name (for example, `Thumbnail`) or you can
1820
+ # specify Amazon Resource Name (ARN) of the function (for example,
1821
+ # `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`). AWS Lambda
1822
+ # also allows you to specify a partial ARN (for example,
1823
+ # `account-id:Thumbnail`).
1824
+ #
1825
+ # If you are using versioning, you can also provide a qualified function
1826
+ # ARN (ARN that is qualified with function version or alias name as
1827
+ # suffix). For more information about versioning, see [AWS Lambda
1828
+ # Function Versioning and Aliases][1]
1829
+ #
1830
+ # Note that the length constraint applies only to the ARN. If you
1831
+ # specify only the function name, it is limited to 64 character in
1832
+ # length.
1833
+ #
1834
+ #
1835
+ #
1836
+ # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
1837
+ #
1838
+ # @option params [Boolean] :enabled
1839
+ # Specifies whether AWS Lambda should actively poll the stream or not.
1840
+ # If disabled, AWS Lambda will not poll the stream.
1841
+ #
1842
+ # @option params [Integer] :batch_size
1843
+ # The maximum number of stream records that can be sent to your Lambda
1844
+ # function for a single invocation.
1845
+ #
1846
+ # @return [Types::EventSourceMappingConfiguration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1847
+ #
1848
+ # * {Types::EventSourceMappingConfiguration#uuid #uuid} => String
1849
+ # * {Types::EventSourceMappingConfiguration#batch_size #batch_size} => Integer
1850
+ # * {Types::EventSourceMappingConfiguration#event_source_arn #event_source_arn} => String
1851
+ # * {Types::EventSourceMappingConfiguration#function_arn #function_arn} => String
1852
+ # * {Types::EventSourceMappingConfiguration#last_modified #last_modified} => Time
1853
+ # * {Types::EventSourceMappingConfiguration#last_processing_result #last_processing_result} => String
1854
+ # * {Types::EventSourceMappingConfiguration#state #state} => String
1855
+ # * {Types::EventSourceMappingConfiguration#state_transition_reason #state_transition_reason} => String
1856
+ #
1857
+ # @example Request syntax with placeholder values
1858
+ #
1859
+ # resp = client.update_event_source_mapping({
1860
+ # uuid: "String", # required
1861
+ # function_name: "FunctionName",
1862
+ # enabled: false,
1863
+ # batch_size: 1,
1864
+ # })
1865
+ #
1866
+ # @example Response structure
1867
+ #
1868
+ # resp.uuid #=> String
1869
+ # resp.batch_size #=> Integer
1870
+ # resp.event_source_arn #=> String
1871
+ # resp.function_arn #=> String
1872
+ # resp.last_modified #=> Time
1873
+ # resp.last_processing_result #=> String
1874
+ # resp.state #=> String
1875
+ # resp.state_transition_reason #=> String
1876
+ #
1877
+ # @overload update_event_source_mapping(params = {})
1878
+ # @param [Hash] params ({})
1879
+ def update_event_source_mapping(params = {}, options = {})
1880
+ req = build_request(:update_event_source_mapping, params)
1881
+ req.send_request(options)
1882
+ end
1814
1883
 
1815
- # Updates the configuration parameters for the specified Lambda function
1816
- # by using the values provided in the request. You provide only the
1817
- # parameters you want to change. This operation must only be used on an
1818
- # existing Lambda function and cannot be used to update the function's
1819
- # code.
1820
- #
1821
- # If you are using the versioning feature, note this API will always
1822
- # update the $LATEST version of your Lambda function. For information
1823
- # about the versioning feature, see [AWS Lambda Function Versioning and
1824
- # Aliases][1].
1825
- #
1826
- # This operation requires permission for the
1827
- # `lambda:UpdateFunctionConfiguration` action.
1828
- #
1829
- #
1830
- #
1831
- # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
1832
- # @option params [required, String] :function_name
1833
- # The name of the Lambda function.
1834
- #
1835
- # You can specify a function name (for example, `Thumbnail`) or you can
1836
- # specify Amazon Resource Name (ARN) of the function (for example,
1837
- # `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`). AWS Lambda
1838
- # also allows you to specify a partial ARN (for example,
1839
- # `account-id:Thumbnail`). Note that the length constraint applies only
1840
- # to the ARN. If you specify only the function name, it is limited to 64
1841
- # character in length.
1842
- # @option params [String] :role
1843
- # The Amazon Resource Name (ARN) of the IAM role that Lambda will assume
1844
- # when it executes your function.
1845
- # @option params [String] :handler
1846
- # The function that Lambda calls to begin executing your function. For
1847
- # Node.js, it is the `module-name.export` value in your function.
1848
- # @option params [String] :description
1849
- # A short user-defined function description. AWS Lambda does not use
1850
- # this value. Assign a meaningful description as you see fit.
1851
- # @option params [Integer] :timeout
1852
- # The function execution time at which AWS Lambda should terminate the
1853
- # function. Because the execution time has cost implications, we
1854
- # recommend you set this value based on your expected execution time.
1855
- # The default is 3 seconds.
1856
- # @option params [Integer] :memory_size
1857
- # The amount of memory, in MB, your Lambda function is given. AWS Lambda
1858
- # uses this memory size to infer the amount of CPU allocated to your
1859
- # function. Your function use-case determines your CPU and memory
1860
- # requirements. For example, a database operation might need less memory
1861
- # compared to an image processing function. The default value is 128 MB.
1862
- # The value must be a multiple of 64 MB.
1863
- # @option params [Types::VpcConfig] :vpc_config
1864
- # If your Lambda function accesses resources in a VPC, you provide this
1865
- # parameter identifying the list of security group IDs and subnet IDs.
1866
- # These must belong to the same VPC. You must provide at least one
1867
- # security group and one subnet ID.
1868
- # @option params [Types::Environment] :environment
1869
- # The parent object that contains your environment's configuration
1870
- # settings.
1871
- # @option params [String] :runtime
1872
- # The runtime environment for the Lambda function.
1873
- #
1874
- # To use the Node.js runtime v4.3, set the value to "nodejs4.3". To
1875
- # use earlier runtime (v0.10.42), set the value to "nodejs".
1876
- #
1877
- # <note markdown="1"> You can no longer downgrade to the v0.10.42 runtime version. This
1878
- # version will no longer be supported as of early 2017.
1879
- #
1880
- # </note>
1881
- # @option params [Types::DeadLetterConfig] :dead_letter_config
1882
- # The parent object that contains the target ARN (Amazon Resource Name)
1883
- # of an Amazon SQS queue or Amazon SNS topic.
1884
- # @option params [String] :kms_key_arn
1885
- # The Amazon Resource Name (ARN) of the KMS key used to encrypt your
1886
- # function's environment variables. If you elect to use the AWS Lambda
1887
- # default service key, pass in an empty string ("") for this
1888
- # parameter.
1889
- # @return [Types::FunctionConfiguration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1890
- #
1891
- # * {Types::FunctionConfiguration#function_name #FunctionName} => String
1892
- # * {Types::FunctionConfiguration#function_arn #FunctionArn} => String
1893
- # * {Types::FunctionConfiguration#runtime #Runtime} => String
1894
- # * {Types::FunctionConfiguration#role #Role} => String
1895
- # * {Types::FunctionConfiguration#handler #Handler} => String
1896
- # * {Types::FunctionConfiguration#code_size #CodeSize} => Integer
1897
- # * {Types::FunctionConfiguration#description #Description} => String
1898
- # * {Types::FunctionConfiguration#timeout #Timeout} => Integer
1899
- # * {Types::FunctionConfiguration#memory_size #MemorySize} => Integer
1900
- # * {Types::FunctionConfiguration#last_modified #LastModified} => Time
1901
- # * {Types::FunctionConfiguration#code_sha_256 #CodeSha256} => String
1902
- # * {Types::FunctionConfiguration#version #Version} => String
1903
- # * {Types::FunctionConfiguration#vpc_config #VpcConfig} => Types::VpcConfigResponse
1904
- # * {Types::FunctionConfiguration#dead_letter_config #DeadLetterConfig} => Types::DeadLetterConfig
1905
- # * {Types::FunctionConfiguration#environment #Environment} => Types::EnvironmentResponse
1906
- # * {Types::FunctionConfiguration#kms_key_arn #KMSKeyArn} => String
1907
- #
1908
- # @example Request syntax with placeholder values
1909
- # resp = client.update_function_configuration({
1910
- # function_name: "FunctionName", # required
1911
- # role: "RoleArn",
1912
- # handler: "Handler",
1913
- # description: "Description",
1914
- # timeout: 1,
1915
- # memory_size: 1,
1916
- # vpc_config: {
1917
- # subnet_ids: ["SubnetId"],
1918
- # security_group_ids: ["SecurityGroupId"],
1919
- # },
1920
- # environment: {
1921
- # variables: {
1922
- # "EnvironmentVariableName" => "EnvironmentVariableValue",
1923
- # },
1924
- # },
1925
- # runtime: "nodejs", # accepts nodejs, nodejs4.3, java8, python2.7, dotnetcore1.0, nodejs4.3-edge
1926
- # dead_letter_config: {
1927
- # target_arn: "ResourceArn",
1928
- # },
1929
- # kms_key_arn: "KMSKeyArn",
1930
- # })
1931
- #
1932
- # @example Response structure
1933
- # resp.function_name #=> String
1934
- # resp.function_arn #=> String
1935
- # resp.runtime #=> String, one of "nodejs", "nodejs4.3", "java8", "python2.7", "dotnetcore1.0", "nodejs4.3-edge"
1936
- # resp.role #=> String
1937
- # resp.handler #=> String
1938
- # resp.code_size #=> Integer
1939
- # resp.description #=> String
1940
- # resp.timeout #=> Integer
1941
- # resp.memory_size #=> Integer
1942
- # resp.last_modified #=> Time
1943
- # resp.code_sha_256 #=> String
1944
- # resp.version #=> String
1945
- # resp.vpc_config.subnet_ids #=> Array
1946
- # resp.vpc_config.subnet_ids[0] #=> String
1947
- # resp.vpc_config.security_group_ids #=> Array
1948
- # resp.vpc_config.security_group_ids[0] #=> String
1949
- # resp.vpc_config.vpc_id #=> String
1950
- # resp.dead_letter_config.target_arn #=> String
1951
- # resp.environment.variables #=> Hash
1952
- # resp.environment.variables["EnvironmentVariableName"] #=> String
1953
- # resp.environment.error.error_code #=> String
1954
- # resp.environment.error.message #=> String
1955
- # resp.kms_key_arn #=> String
1956
- # @overload update_function_configuration(params = {})
1957
- # @param [Hash] params ({})
1958
- def update_function_configuration(params = {}, options = {})
1959
- req = build_request(:update_function_configuration, params)
1960
- req.send_request(options)
1961
- end
1884
+ # Updates the code for the specified Lambda function. This operation
1885
+ # must only be used on an existing Lambda function and cannot be used to
1886
+ # update the function configuration.
1887
+ #
1888
+ # If you are using the versioning feature, note this API will always
1889
+ # update the $LATEST version of your Lambda function. For information
1890
+ # about the versioning feature, see [AWS Lambda Function Versioning and
1891
+ # Aliases][1].
1892
+ #
1893
+ # This operation requires permission for the `lambda:UpdateFunctionCode`
1894
+ # action.
1895
+ #
1896
+ #
1897
+ #
1898
+ # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
1899
+ #
1900
+ # @option params [required, String] :function_name
1901
+ # The existing Lambda function name whose code you want to replace.
1902
+ #
1903
+ # You can specify a function name (for example, `Thumbnail`) or you can
1904
+ # specify Amazon Resource Name (ARN) of the function (for example,
1905
+ # `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`). AWS Lambda
1906
+ # also allows you to specify a partial ARN (for example,
1907
+ # `account-id:Thumbnail`). Note that the length constraint applies only
1908
+ # to the ARN. If you specify only the function name, it is limited to 64
1909
+ # character in length.
1910
+ #
1911
+ # @option params [String, IO] :zip_file
1912
+ # The contents of your zip file containing your deployment package. If
1913
+ # you are using the web API directly, the contents of the zip file must
1914
+ # be base64-encoded. If you are using the AWS SDKs or the AWS CLI, the
1915
+ # SDKs or CLI will do the encoding for you. For more information about
1916
+ # creating a .zip file, see [Execution Permissions][1] in the *AWS
1917
+ # Lambda Developer Guide*.
1918
+ #
1919
+ #
1920
+ #
1921
+ # [1]: http://docs.aws.amazon.com/lambda/latest/dg/intro-permission-model.html#lambda-intro-execution-role.html
1922
+ #
1923
+ # @option params [String] :s3_bucket
1924
+ # Amazon S3 bucket name where the .zip file containing your deployment
1925
+ # package is stored. This bucket must reside in the same AWS Region
1926
+ # where you are creating the Lambda function.
1927
+ #
1928
+ # @option params [String] :s3_key
1929
+ # The Amazon S3 object (the deployment package) key name you want to
1930
+ # upload.
1931
+ #
1932
+ # @option params [String] :s3_object_version
1933
+ # The Amazon S3 object (the deployment package) version you want to
1934
+ # upload.
1935
+ #
1936
+ # @option params [Boolean] :publish
1937
+ # This boolean parameter can be used to request AWS Lambda to update the
1938
+ # Lambda function and publish a version as an atomic operation.
1939
+ #
1940
+ # @return [Types::FunctionConfiguration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1941
+ #
1942
+ # * {Types::FunctionConfiguration#function_name #function_name} => String
1943
+ # * {Types::FunctionConfiguration#function_arn #function_arn} => String
1944
+ # * {Types::FunctionConfiguration#runtime #runtime} => String
1945
+ # * {Types::FunctionConfiguration#role #role} => String
1946
+ # * {Types::FunctionConfiguration#handler #handler} => String
1947
+ # * {Types::FunctionConfiguration#code_size #code_size} => Integer
1948
+ # * {Types::FunctionConfiguration#description #description} => String
1949
+ # * {Types::FunctionConfiguration#timeout #timeout} => Integer
1950
+ # * {Types::FunctionConfiguration#memory_size #memory_size} => Integer
1951
+ # * {Types::FunctionConfiguration#last_modified #last_modified} => Time
1952
+ # * {Types::FunctionConfiguration#code_sha_256 #code_sha_256} => String
1953
+ # * {Types::FunctionConfiguration#version #version} => String
1954
+ # * {Types::FunctionConfiguration#vpc_config #vpc_config} => Types::VpcConfigResponse
1955
+ # * {Types::FunctionConfiguration#dead_letter_config #dead_letter_config} => Types::DeadLetterConfig
1956
+ # * {Types::FunctionConfiguration#environment #environment} => Types::EnvironmentResponse
1957
+ # * {Types::FunctionConfiguration#kms_key_arn #kms_key_arn} => String
1958
+ #
1959
+ # @example Request syntax with placeholder values
1960
+ #
1961
+ # resp = client.update_function_code({
1962
+ # function_name: "FunctionName", # required
1963
+ # zip_file: "data",
1964
+ # s3_bucket: "S3Bucket",
1965
+ # s3_key: "S3Key",
1966
+ # s3_object_version: "S3ObjectVersion",
1967
+ # publish: false,
1968
+ # })
1969
+ #
1970
+ # @example Response structure
1971
+ #
1972
+ # resp.function_name #=> String
1973
+ # resp.function_arn #=> String
1974
+ # resp.runtime #=> String, one of "nodejs", "nodejs4.3", "java8", "python2.7", "dotnetcore1.0", "nodejs4.3-edge"
1975
+ # resp.role #=> String
1976
+ # resp.handler #=> String
1977
+ # resp.code_size #=> Integer
1978
+ # resp.description #=> String
1979
+ # resp.timeout #=> Integer
1980
+ # resp.memory_size #=> Integer
1981
+ # resp.last_modified #=> Time
1982
+ # resp.code_sha_256 #=> String
1983
+ # resp.version #=> String
1984
+ # resp.vpc_config.subnet_ids #=> Array
1985
+ # resp.vpc_config.subnet_ids[0] #=> String
1986
+ # resp.vpc_config.security_group_ids #=> Array
1987
+ # resp.vpc_config.security_group_ids[0] #=> String
1988
+ # resp.vpc_config.vpc_id #=> String
1989
+ # resp.dead_letter_config.target_arn #=> String
1990
+ # resp.environment.variables #=> Hash
1991
+ # resp.environment.variables["EnvironmentVariableName"] #=> String
1992
+ # resp.environment.error.error_code #=> String
1993
+ # resp.environment.error.message #=> String
1994
+ # resp.kms_key_arn #=> String
1995
+ #
1996
+ # @overload update_function_code(params = {})
1997
+ # @param [Hash] params ({})
1998
+ def update_function_code(params = {}, options = {})
1999
+ req = build_request(:update_function_code, params)
2000
+ req.send_request(options)
2001
+ end
1962
2002
 
1963
- # @!endgroup
2003
+ # Updates the configuration parameters for the specified Lambda function
2004
+ # by using the values provided in the request. You provide only the
2005
+ # parameters you want to change. This operation must only be used on an
2006
+ # existing Lambda function and cannot be used to update the function's
2007
+ # code.
2008
+ #
2009
+ # If you are using the versioning feature, note this API will always
2010
+ # update the $LATEST version of your Lambda function. For information
2011
+ # about the versioning feature, see [AWS Lambda Function Versioning and
2012
+ # Aliases][1].
2013
+ #
2014
+ # This operation requires permission for the
2015
+ # `lambda:UpdateFunctionConfiguration` action.
2016
+ #
2017
+ #
2018
+ #
2019
+ # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
2020
+ #
2021
+ # @option params [required, String] :function_name
2022
+ # The name of the Lambda function.
2023
+ #
2024
+ # You can specify a function name (for example, `Thumbnail`) or you can
2025
+ # specify Amazon Resource Name (ARN) of the function (for example,
2026
+ # `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`). AWS Lambda
2027
+ # also allows you to specify a partial ARN (for example,
2028
+ # `account-id:Thumbnail`). Note that the length constraint applies only
2029
+ # to the ARN. If you specify only the function name, it is limited to 64
2030
+ # character in length.
2031
+ #
2032
+ # @option params [String] :role
2033
+ # The Amazon Resource Name (ARN) of the IAM role that Lambda will assume
2034
+ # when it executes your function.
2035
+ #
2036
+ # @option params [String] :handler
2037
+ # The function that Lambda calls to begin executing your function. For
2038
+ # Node.js, it is the `module-name.export` value in your function.
2039
+ #
2040
+ # @option params [String] :description
2041
+ # A short user-defined function description. AWS Lambda does not use
2042
+ # this value. Assign a meaningful description as you see fit.
2043
+ #
2044
+ # @option params [Integer] :timeout
2045
+ # The function execution time at which AWS Lambda should terminate the
2046
+ # function. Because the execution time has cost implications, we
2047
+ # recommend you set this value based on your expected execution time.
2048
+ # The default is 3 seconds.
2049
+ #
2050
+ # @option params [Integer] :memory_size
2051
+ # The amount of memory, in MB, your Lambda function is given. AWS Lambda
2052
+ # uses this memory size to infer the amount of CPU allocated to your
2053
+ # function. Your function use-case determines your CPU and memory
2054
+ # requirements. For example, a database operation might need less memory
2055
+ # compared to an image processing function. The default value is 128 MB.
2056
+ # The value must be a multiple of 64 MB.
2057
+ #
2058
+ # @option params [Types::VpcConfig] :vpc_config
2059
+ # If your Lambda function accesses resources in a VPC, you provide this
2060
+ # parameter identifying the list of security group IDs and subnet IDs.
2061
+ # These must belong to the same VPC. You must provide at least one
2062
+ # security group and one subnet ID.
2063
+ #
2064
+ # @option params [Types::Environment] :environment
2065
+ # The parent object that contains your environment's configuration
2066
+ # settings.
2067
+ #
2068
+ # @option params [String] :runtime
2069
+ # The runtime environment for the Lambda function.
2070
+ #
2071
+ # To use the Node.js runtime v4.3, set the value to "nodejs4.3". To
2072
+ # use earlier runtime (v0.10.42), set the value to "nodejs".
2073
+ #
2074
+ # <note markdown="1"> You can no longer downgrade to the v0.10.42 runtime version. This
2075
+ # version will no longer be supported as of early 2017.
2076
+ #
2077
+ # </note>
2078
+ #
2079
+ # @option params [Types::DeadLetterConfig] :dead_letter_config
2080
+ # The parent object that contains the target Amazon Resource Name (ARN)
2081
+ # of an Amazon SQS queue or Amazon SNS topic.
2082
+ #
2083
+ # @option params [String] :kms_key_arn
2084
+ # The Amazon Resource Name (ARN) of the KMS key used to encrypt your
2085
+ # function's environment variables. If you elect to use the AWS Lambda
2086
+ # default service key, pass in an empty string ("") for this
2087
+ # parameter.
2088
+ #
2089
+ # @return [Types::FunctionConfiguration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2090
+ #
2091
+ # * {Types::FunctionConfiguration#function_name #function_name} => String
2092
+ # * {Types::FunctionConfiguration#function_arn #function_arn} => String
2093
+ # * {Types::FunctionConfiguration#runtime #runtime} => String
2094
+ # * {Types::FunctionConfiguration#role #role} => String
2095
+ # * {Types::FunctionConfiguration#handler #handler} => String
2096
+ # * {Types::FunctionConfiguration#code_size #code_size} => Integer
2097
+ # * {Types::FunctionConfiguration#description #description} => String
2098
+ # * {Types::FunctionConfiguration#timeout #timeout} => Integer
2099
+ # * {Types::FunctionConfiguration#memory_size #memory_size} => Integer
2100
+ # * {Types::FunctionConfiguration#last_modified #last_modified} => Time
2101
+ # * {Types::FunctionConfiguration#code_sha_256 #code_sha_256} => String
2102
+ # * {Types::FunctionConfiguration#version #version} => String
2103
+ # * {Types::FunctionConfiguration#vpc_config #vpc_config} => Types::VpcConfigResponse
2104
+ # * {Types::FunctionConfiguration#dead_letter_config #dead_letter_config} => Types::DeadLetterConfig
2105
+ # * {Types::FunctionConfiguration#environment #environment} => Types::EnvironmentResponse
2106
+ # * {Types::FunctionConfiguration#kms_key_arn #kms_key_arn} => String
2107
+ #
2108
+ # @example Request syntax with placeholder values
2109
+ #
2110
+ # resp = client.update_function_configuration({
2111
+ # function_name: "FunctionName", # required
2112
+ # role: "RoleArn",
2113
+ # handler: "Handler",
2114
+ # description: "Description",
2115
+ # timeout: 1,
2116
+ # memory_size: 1,
2117
+ # vpc_config: {
2118
+ # subnet_ids: ["SubnetId"],
2119
+ # security_group_ids: ["SecurityGroupId"],
2120
+ # },
2121
+ # environment: {
2122
+ # variables: {
2123
+ # "EnvironmentVariableName" => "EnvironmentVariableValue",
2124
+ # },
2125
+ # },
2126
+ # runtime: "nodejs", # accepts nodejs, nodejs4.3, java8, python2.7, dotnetcore1.0, nodejs4.3-edge
2127
+ # dead_letter_config: {
2128
+ # target_arn: "ResourceArn",
2129
+ # },
2130
+ # kms_key_arn: "KMSKeyArn",
2131
+ # })
2132
+ #
2133
+ # @example Response structure
2134
+ #
2135
+ # resp.function_name #=> String
2136
+ # resp.function_arn #=> String
2137
+ # resp.runtime #=> String, one of "nodejs", "nodejs4.3", "java8", "python2.7", "dotnetcore1.0", "nodejs4.3-edge"
2138
+ # resp.role #=> String
2139
+ # resp.handler #=> String
2140
+ # resp.code_size #=> Integer
2141
+ # resp.description #=> String
2142
+ # resp.timeout #=> Integer
2143
+ # resp.memory_size #=> Integer
2144
+ # resp.last_modified #=> Time
2145
+ # resp.code_sha_256 #=> String
2146
+ # resp.version #=> String
2147
+ # resp.vpc_config.subnet_ids #=> Array
2148
+ # resp.vpc_config.subnet_ids[0] #=> String
2149
+ # resp.vpc_config.security_group_ids #=> Array
2150
+ # resp.vpc_config.security_group_ids[0] #=> String
2151
+ # resp.vpc_config.vpc_id #=> String
2152
+ # resp.dead_letter_config.target_arn #=> String
2153
+ # resp.environment.variables #=> Hash
2154
+ # resp.environment.variables["EnvironmentVariableName"] #=> String
2155
+ # resp.environment.error.error_code #=> String
2156
+ # resp.environment.error.message #=> String
2157
+ # resp.kms_key_arn #=> String
2158
+ #
2159
+ # @overload update_function_configuration(params = {})
2160
+ # @param [Hash] params ({})
2161
+ def update_function_configuration(params = {}, options = {})
2162
+ req = build_request(:update_function_configuration, params)
2163
+ req.send_request(options)
2164
+ end
1964
2165
 
1965
- # @param params ({})
1966
- # @api private
1967
- def build_request(operation_name, params = {})
1968
- handlers = @handlers.for(operation_name)
1969
- context = Seahorse::Client::RequestContext.new(
1970
- operation_name: operation_name,
1971
- operation: config.api.operation(operation_name),
1972
- client: self,
1973
- params: params,
1974
- config: config)
1975
- context[:gem_name] = 'aws-sdk-lambda'
1976
- context[:gem_version] = '1.0.0.rc2'
1977
- Seahorse::Client::Request.new(handlers, context)
1978
- end
2166
+ # @!endgroup
1979
2167
 
1980
- # @api private
1981
- # @deprecated
1982
- def waiter_names
1983
- []
1984
- end
2168
+ # @param params ({})
2169
+ # @api private
2170
+ def build_request(operation_name, params = {})
2171
+ handlers = @handlers.for(operation_name)
2172
+ context = Seahorse::Client::RequestContext.new(
2173
+ operation_name: operation_name,
2174
+ operation: config.api.operation(operation_name),
2175
+ client: self,
2176
+ params: params,
2177
+ config: config)
2178
+ context[:gem_name] = 'aws-sdk-lambda'
2179
+ context[:gem_version] = '1.0.0.rc2'
2180
+ Seahorse::Client::Request.new(handlers, context)
2181
+ end
1985
2182
 
1986
- class << self
2183
+ # @api private
2184
+ # @deprecated
2185
+ def waiter_names
2186
+ []
2187
+ end
1987
2188
 
1988
- # @api private
1989
- attr_reader :identifier
2189
+ class << self
1990
2190
 
1991
- # @api private
1992
- def errors_module
1993
- Errors
1994
- end
2191
+ # @api private
2192
+ attr_reader :identifier
1995
2193
 
2194
+ # @api private
2195
+ def errors_module
2196
+ Errors
1996
2197
  end
2198
+
1997
2199
  end
1998
2200
  end
1999
2201
  end