Skip to content

Commit

Permalink
API Update for Aws::Lambda
Browse files Browse the repository at this point in the history
Lambda now supports specifying an Amazon S3 object as the function zip
when creating and updating Lambda functions.
  • Loading branch information
awood45 committed May 28, 2015
1 parent fb721a3 commit 43225ed
Show file tree
Hide file tree
Showing 3 changed files with 82 additions and 17 deletions.
3 changes: 3 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,9 @@
Unreleased Changes
------------------

* Feature - Aws::Lambda - Lambda now supports specifying an Amazon S3 object as
the function zip when creating and updating Lambda functions.

2.0.46 (2015-05-26)
------------------

Expand Down
60 changes: 47 additions & 13 deletions aws-sdk-core/apis/lambda/2015-03-31/api-2.json
Original file line number Diff line number Diff line change
Expand Up @@ -116,6 +116,11 @@
"shape":"TooManyRequestsException",
"error":{"httpStatusCode":429},
"exception":true
},
{
"shape":"CodeStorageExceededException",
"error":{"httpStatusCode":400},
"exception":true
}
]
},
Expand Down Expand Up @@ -506,6 +511,11 @@
"shape":"TooManyRequestsException",
"error":{"httpStatusCode":429},
"exception":true
},
{
"shape":"CodeStorageExceededException",
"error":{"httpStatusCode":400},
"exception":true
}
]
},
Expand Down Expand Up @@ -588,6 +598,15 @@
"type":"blob",
"streaming":true
},
"CodeStorageExceededException":{
"type":"structure",
"members":{
"Type":{"shape":"String"},
"message":{"shape":"String"}
},
"error":{"httpStatusCode":400},
"exception":true
},
"CreateEventSourceMappingRequest":{
"type":"structure",
"required":[
Expand Down Expand Up @@ -683,7 +702,10 @@
"FunctionCode":{
"type":"structure",
"members":{
"ZipFile":{"shape":"Blob"}
"ZipFile":{"shape":"Blob"},
"S3Bucket":{"shape":"S3Bucket"},
"S3Key":{"shape":"S3Key"},
"S3ObjectVersion":{"shape":"S3ObjectVersion"}
}
},
"FunctionCodeLocation":{
Expand Down Expand Up @@ -778,7 +800,7 @@
"Handler":{
"type":"string",
"max":128,
"pattern":"[a-zA-Z0-9./\\-_]+"
"pattern":"[^\\s]+"
},
"HttpStatus":{"type":"integer"},
"Integer":{"type":"integer"},
Expand Down Expand Up @@ -954,7 +976,7 @@
"MemorySize":{
"type":"integer",
"min":128,
"max":1024
"max":1536
},
"PolicyLengthExceededException":{
"type":"structure",
Expand Down Expand Up @@ -1021,11 +1043,23 @@
},
"Runtime":{
"type":"string",
"enum":[
"nodejs",
"jvm",
"python"
]
"enum":["nodejs"]
},
"S3Bucket":{
"type":"string",
"min":3,
"max":63,
"pattern":"^[0-9A-Za-z\\.\\-_]*(?<!\\.)$"
},
"S3Key":{
"type":"string",
"min":1,
"max":1024
},
"S3ObjectVersion":{
"type":"string",
"min":1,
"max":1024
},
"ServiceException":{
"type":"structure",
Expand Down Expand Up @@ -1092,17 +1126,17 @@
},
"UpdateFunctionCodeRequest":{
"type":"structure",
"required":[
"FunctionName",
"ZipFile"
],
"required":["FunctionName"],
"members":{
"FunctionName":{
"shape":"FunctionName",
"location":"uri",
"locationName":"FunctionName"
},
"ZipFile":{"shape":"Blob"}
"ZipFile":{"shape":"Blob"},
"S3Bucket":{"shape":"S3Bucket"},
"S3Key":{"shape":"S3Key"},
"S3ObjectVersion":{"shape":"S3ObjectVersion"}
}
},
"UpdateFunctionConfigurationRequest":{
Expand Down
36 changes: 32 additions & 4 deletions aws-sdk-core/apis/lambda/2015-03-31/docs-2.json
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@
"UpdateFunctionCode": "<p> Updates the code for the specified Lambda function. This operation must only be used on an existing Lambda function and cannot be used to update the function configuration. </p> <p>This operation requires permission for the <code>lambda:UpdateFunctionCode</code> action.</p>",
"UpdateFunctionConfiguration": "<p>Updates the configuration parameters for the specified Lambda function by using the values provided in the request. You provide only the parameters you want to change. This operation must only be used on an existing Lambda function and cannot be used to update the function's code. </p> <p>This operation requires permission for the <code>lambda:UpdateFunctionConfiguration</code> action.</p>"
},
"service": "<fullname>AWS Lambda</fullname>S <p><b>Overview</b></p> <p>This is the <i>AWS Lambda API Reference</i>. The AWS Lambda Developer Guide provides additional information. For the service overview, go to <a href=\"http://docs.aws.amazon.com/lambda/latest/dg/welcome.html\">What is AWS Lambda</a>, and for information about how the service works, go to <a href=\"http://docs.aws.amazon.com/lambda/latest/dg/lambda-introduction.html\">AWS LambdaL How it Works</a> in the <i>AWS Lambda Developer Guide</i>.</p>",
"service": "<fullname>AWS Lambda</fullname> <p><b>Overview</b></p> <p>This is the <i>AWS Lambda API Reference</i>. The AWS Lambda Developer Guide provides additional information. For the service overview, go to <a href=\"http://docs.aws.amazon.com/lambda/latest/dg/welcome.html\">What is AWS Lambda</a>, and for information about how the service works, go to <a href=\"http://docs.aws.amazon.com/lambda/latest/dg/lambda-introduction.html\">AWS Lambda: How it Works</a> in the <i>AWS Lambda Developer Guide</i>.</p>",
"shapes": {
"Action": {
"base": null,
Expand All @@ -41,7 +41,7 @@
"base": null,
"refs": {
"AddPermissionRequest$SourceArn": "<p>This is optional; however, when granting Amazon S3 permission to invoke your function, you should specify this field with the bucket Amazon Resource Name (ARN) as its value. This ensures that only events generated from the specified bucket can invoke the function. </p> <important>If you add a permission for the Amazon S3 principal without providing the source ARN, any AWS account that creates a mapping to your function ARN can send events to invoke your Lambda function from Amazon S3.</important>",
"CreateEventSourceMappingRequest$EventSourceArn": "<p>The Amazon Resource Name (ARN) of the Amazon Kinesis stream that is the event source. Any record added to this stream could cause AWS Lambda to invoke your Lambda function, it depends on the <code>BatchSize</code>. AWS Lambda POSTs the Amazon Kinesis event, containing records, to your Lambda function as JSON.</p>",
"CreateEventSourceMappingRequest$EventSourceArn": "<p>The Amazon Resource Name (ARN) of the Amazon Kinesis or the Amazon DynamoDB stream that is the event source. Any record added to this stream could cause AWS Lambda to invoke your Lambda function, it depends on the <code>BatchSize</code>. AWS Lambda POSTs the Amazon Kinesis event, containing records, to your Lambda function as JSON.</p>",
"EventSourceMappingConfiguration$EventSourceArn": "<p>The Amazon Resource Name (ARN) of the Amazon Kinesis stream that is the source of events.</p>",
"ListEventSourceMappingsRequest$EventSourceArn": "<p>The Amazon Resource Name (ARN) of the Amazon Kinesis stream.</p>"
}
Expand All @@ -57,7 +57,7 @@
"Blob": {
"base": null,
"refs": {
"FunctionCode$ZipFile": "<p>A base64-encoded .zip file containing your packaged source code. For more information about creating a .zip file, go to <a href=\"http://docs.aws.amazon.com/lambda/latest/dg/intro-permission-model.html#lambda-intro-execution-role.html\">Execution Permissions</a> in the <i>AWS Lambda Developer Guide</i>. </p>",
"FunctionCode$ZipFile": "<p>A base64-encoded .zip file containing your deployment package. For more information about creating a .zip file, go to <a href=\"http://docs.aws.amazon.com/lambda/latest/dg/intro-permission-model.html#lambda-intro-execution-role.html\">Execution Permissions</a> in the <i>AWS Lambda Developer Guide</i>. </p>",
"InvocationRequest$Payload": "<p>JSON that you want to provide to your Lambda function as input.</p>",
"InvocationResponse$Payload": "<p> It is the JSON representation of the object returned by the Lambda function. In This is present only if the invocation type is \"RequestResponse\". </p> <p>In the event of a function error this field contains a message describing the error. For the <code>Handled</code> errors the Lambda function will report this message. For <code>Unhandled</code> errors AWS Lambda reports the message. </p>",
"UpdateFunctionCodeRequest$ZipFile": "<p>Based64-encoded .zip file containing your packaged source code.</p>"
Expand All @@ -69,6 +69,11 @@
"InvokeAsyncRequest$InvokeArgs": "<p>JSON that you want to provide to your Lambda function as input.</p>"
}
},
"CodeStorageExceededException": {
"base": null,
"refs": {
}
},
"CreateEventSourceMappingRequest": {
"base": null,
"refs": {
Expand Down Expand Up @@ -138,7 +143,7 @@
"FunctionCode": {
"base": "<p>The code for the Lambda function.</p>",
"refs": {
"CreateFunctionRequest$Code": "<p>A structure that includes ZipFile. </p>"
"CreateFunctionRequest$Code": "<p>The code for the Lambda function. </p>"
}
},
"FunctionCodeLocation": {
Expand Down Expand Up @@ -359,6 +364,27 @@
"FunctionConfiguration$Runtime": "<p>The runtime environment for the Lambda function.</p>"
}
},
"S3Bucket": {
"base": null,
"refs": {
"FunctionCode$S3Bucket": "<p>Amazon S3 bucket name where the .zip file containing your deployment package is stored. This bucket must reside in the same AWS region where you are creating the Lambda function. </p>",
"UpdateFunctionCodeRequest$S3Bucket": "<p>Amazon S3 bucket name where the .zip file containing your deployment package is stored. This bucket must reside in the same AWS region where you are creating the Lambda function.</p>"
}
},
"S3Key": {
"base": null,
"refs": {
"FunctionCode$S3Key": "<p>The Amazon S3 object (the deployment package) key name you want to upload. </p>",
"UpdateFunctionCodeRequest$S3Key": "<p>The Amazon S3 object (the deployment package) key name you want to upload. </p>"
}
},
"S3ObjectVersion": {
"base": null,
"refs": {
"FunctionCode$S3ObjectVersion": "<p>The Amazon S3 object (the deployment package) version you want to upload.</p>",
"UpdateFunctionCodeRequest$S3ObjectVersion": "<p>The Amazon S3 object (the deployment package) version you want to upload.</p>"
}
},
"ServiceException": {
"base": "<p>The AWS Lambda service encountered an internal error.</p>",
"refs": {
Expand All @@ -381,6 +407,8 @@
"base": null,
"refs": {
"AddPermissionResponse$Statement": "<p>The permission statement you specified in the request. The response returns the same as a string using \"\\\" as an escape character in the JSON. </p>",
"CodeStorageExceededException$Type": null,
"CodeStorageExceededException$message": null,
"DeleteEventSourceMappingRequest$UUID": "<p>The event source mapping ID.</p>",
"EventSourceMappingConfiguration$UUID": "<p>The AWS Lambda assigned opaque identifier for the mapping.</p>",
"EventSourceMappingConfiguration$LastProcessingResult": "<p>The result of the last AWS Lambda invocation of your Lambda function.</p>",
Expand Down

0 comments on commit 43225ed

Please sign in to comment.