amazonka-lambda-1.5.0: Amazon Lambda SDK.

Copyright(c) 2013-2017 Brendan Hay
LicenseMozilla Public License, v. 2.0.
MaintainerBrendan Hay <brendan.g.hay+amazonka@gmail.com>
Stabilityauto-generated
Portabilitynon-portable (GHC extensions)
Safe HaskellNone
LanguageHaskell2010

Network.AWS.Lambda.UpdateFunctionCode

Contents

Description

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.

If you are using the versioning feature, note this API will always update the $LATEST version of your Lambda function. For information about the versioning feature, see AWS Lambda Function Versioning and Aliases .

This operation requires permission for the lambda:UpdateFunctionCode action.

Synopsis

Creating a Request

updateFunctionCode Source #

Creates a value of UpdateFunctionCode with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

  • uS3ObjectVersion - The Amazon S3 object (the deployment package) version you want to upload.
  • uS3Key - The Amazon S3 object (the deployment package) key name you want to upload.
  • uZipFile - The contents of your zip file containing your deployment package. If you are using the web API directly, the contents of the zip file must be base64-encoded. If you are using the AWS SDKs or the AWS CLI, the SDKs or CLI will do the encoding for you. For more information about creating a .zip file, see Execution Permissions in the AWS Lambda Developer Guide . -- Note: This Lens automatically encodes and decodes Base64 data. The underlying isomorphism will encode to Base64 representation during serialisation, and decode from Base64 representation during deserialisation. This Lens accepts and returns only raw unencoded data.
  • uS3Bucket - 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.
  • uDryRun - This boolean parameter can be used to test your request to AWS Lambda to update the Lambda function and publish a version as an atomic operation. It will do all necessary computation and validation of your code but will not upload it or a publish a version. Each time this operation is invoked, the CodeSha256 hash value the provided code will also be computed and returned in the response.
  • uPublish - This boolean parameter can be used to request AWS Lambda to update the Lambda function and publish a version as an atomic operation.
  • uFunctionName - The existing Lambda function name whose code you want to replace. You can specify a function name (for example, Thumbnail ) or you can specify Amazon Resource Name (ARN) of the function (for example, arn:aws:lambda:us-west-2:account-id:function:ThumbNail ). AWS Lambda also allows you to specify a partial ARN (for example, account-id:Thumbnail ). Note that the length constraint applies only to the ARN. If you specify only the function name, it is limited to 64 characters in length.

data UpdateFunctionCode Source #

See: updateFunctionCode smart constructor.

Instances

Eq UpdateFunctionCode Source # 
Data UpdateFunctionCode Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> UpdateFunctionCode -> c UpdateFunctionCode #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c UpdateFunctionCode #

toConstr :: UpdateFunctionCode -> Constr #

dataTypeOf :: UpdateFunctionCode -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c UpdateFunctionCode) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c UpdateFunctionCode) #

gmapT :: (forall b. Data b => b -> b) -> UpdateFunctionCode -> UpdateFunctionCode #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> UpdateFunctionCode -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> UpdateFunctionCode -> r #

gmapQ :: (forall d. Data d => d -> u) -> UpdateFunctionCode -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> UpdateFunctionCode -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> UpdateFunctionCode -> m UpdateFunctionCode #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> UpdateFunctionCode -> m UpdateFunctionCode #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> UpdateFunctionCode -> m UpdateFunctionCode #

Show UpdateFunctionCode Source # 
Generic UpdateFunctionCode Source # 
Hashable UpdateFunctionCode Source # 
ToJSON UpdateFunctionCode Source # 
NFData UpdateFunctionCode Source # 

Methods

rnf :: UpdateFunctionCode -> () #

AWSRequest UpdateFunctionCode Source # 
ToQuery UpdateFunctionCode Source # 
ToPath UpdateFunctionCode Source # 
ToHeaders UpdateFunctionCode Source # 
type Rep UpdateFunctionCode Source # 
type Rs UpdateFunctionCode Source # 

Request Lenses

uS3ObjectVersion :: Lens' UpdateFunctionCode (Maybe Text) Source #

The Amazon S3 object (the deployment package) version you want to upload.

uS3Key :: Lens' UpdateFunctionCode (Maybe Text) Source #

The Amazon S3 object (the deployment package) key name you want to upload.

uZipFile :: Lens' UpdateFunctionCode (Maybe ByteString) Source #

The contents of your zip file containing your deployment package. If you are using the web API directly, the contents of the zip file must be base64-encoded. If you are using the AWS SDKs or the AWS CLI, the SDKs or CLI will do the encoding for you. For more information about creating a .zip file, see Execution Permissions in the AWS Lambda Developer Guide . -- Note: This Lens automatically encodes and decodes Base64 data. The underlying isomorphism will encode to Base64 representation during serialisation, and decode from Base64 representation during deserialisation. This Lens accepts and returns only raw unencoded data.

uS3Bucket :: Lens' UpdateFunctionCode (Maybe Text) Source #

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.

uDryRun :: Lens' UpdateFunctionCode (Maybe Bool) Source #

This boolean parameter can be used to test your request to AWS Lambda to update the Lambda function and publish a version as an atomic operation. It will do all necessary computation and validation of your code but will not upload it or a publish a version. Each time this operation is invoked, the CodeSha256 hash value the provided code will also be computed and returned in the response.

uPublish :: Lens' UpdateFunctionCode (Maybe Bool) Source #

This boolean parameter can be used to request AWS Lambda to update the Lambda function and publish a version as an atomic operation.

uFunctionName :: Lens' UpdateFunctionCode Text Source #

The existing Lambda function name whose code you want to replace. You can specify a function name (for example, Thumbnail ) or you can specify Amazon Resource Name (ARN) of the function (for example, arn:aws:lambda:us-west-2:account-id:function:ThumbNail ). AWS Lambda also allows you to specify a partial ARN (for example, account-id:Thumbnail ). Note that the length constraint applies only to the ARN. If you specify only the function name, it is limited to 64 characters in length.

Destructuring the Response

functionConfiguration :: FunctionConfiguration Source #

Creates a value of FunctionConfiguration with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

  • fcMemorySize - The memory size, in MB, you configured for the function. Must be a multiple of 64 MB.
  • fcRuntime - The runtime environment for the Lambda function.
  • fcFunctionARN - The Amazon Resource Name (ARN) assigned to the function.
  • fcKMSKeyARN - The Amazon Resource Name (ARN) of the KMS key used to encrypt your function's environment variables. If empty, it means you are using the AWS Lambda default service key.
  • fcEnvironment - The parent object that contains your environment's configuration settings.
  • fcDeadLetterConfig - The parent object that contains the target ARN (Amazon Resource Name) of an Amazon SQS queue or Amazon SNS topic.
  • fcRole - The Amazon Resource Name (ARN) of the IAM role that Lambda assumes when it executes your function to access any other Amazon Web Services (AWS) resources.
  • fcVPCConfig - VPC configuration associated with your Lambda function.
  • fcVersion - The version of the Lambda function.
  • fcFunctionName - The name of the function. Note that the length constraint applies only to the ARN. If you specify only the function name, it is limited to 64 characters in length.
  • fcCodeSize - The size, in bytes, of the function .zip file you uploaded.
  • fcHandler - The function Lambda calls to begin executing your function.
  • fcTimeout - The function execution time at which Lambda should terminate the function. Because the execution time has cost implications, we recommend you set this value based on your expected execution time. The default is 3 seconds.
  • fcLastModified - The time stamp of the last time you updated the function. The time stamp is conveyed as a string complying with ISO-8601 in this way YYYY-MM-DDThh:mm:ssTZD (e.g., 1997-07-16T19:20:30+01:00). For more information, see Date and Time Formats .
  • fcCodeSha256 - It is the SHA256 hash of your function deployment package.
  • fcTracingConfig - The parent object that contains your function's tracing settings.
  • fcDescription - The user-provided description.
  • fcMasterARN - Returns the ARN (Amazon Resource Name) of the master function.

data FunctionConfiguration Source #

A complex type that describes function metadata.

See: functionConfiguration smart constructor.

Instances

Eq FunctionConfiguration Source # 
Data FunctionConfiguration Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> FunctionConfiguration -> c FunctionConfiguration #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c FunctionConfiguration #

toConstr :: FunctionConfiguration -> Constr #

dataTypeOf :: FunctionConfiguration -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c FunctionConfiguration) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c FunctionConfiguration) #

gmapT :: (forall b. Data b => b -> b) -> FunctionConfiguration -> FunctionConfiguration #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> FunctionConfiguration -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> FunctionConfiguration -> r #

gmapQ :: (forall d. Data d => d -> u) -> FunctionConfiguration -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> FunctionConfiguration -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> FunctionConfiguration -> m FunctionConfiguration #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> FunctionConfiguration -> m FunctionConfiguration #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> FunctionConfiguration -> m FunctionConfiguration #

Show FunctionConfiguration Source # 
Generic FunctionConfiguration Source # 
Hashable FunctionConfiguration Source # 
FromJSON FunctionConfiguration Source # 
NFData FunctionConfiguration Source # 

Methods

rnf :: FunctionConfiguration -> () #

type Rep FunctionConfiguration Source # 
type Rep FunctionConfiguration = D1 (MetaData "FunctionConfiguration" "Network.AWS.Lambda.Types.Product" "amazonka-lambda-1.5.0-L3a8zfumEyl9xoJg9e0UyS" False) (C1 (MetaCons "FunctionConfiguration'" PrefixI True) ((:*:) ((:*:) ((:*:) ((:*:) (S1 (MetaSel (Just Symbol "_fcMemorySize") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Nat))) (S1 (MetaSel (Just Symbol "_fcRuntime") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Runtime)))) ((:*:) (S1 (MetaSel (Just Symbol "_fcFunctionARN") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text))) (S1 (MetaSel (Just Symbol "_fcKMSKeyARN") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text))))) ((:*:) ((:*:) (S1 (MetaSel (Just Symbol "_fcEnvironment") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe EnvironmentResponse))) (S1 (MetaSel (Just Symbol "_fcDeadLetterConfig") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe DeadLetterConfig)))) ((:*:) (S1 (MetaSel (Just Symbol "_fcRole") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text))) ((:*:) (S1 (MetaSel (Just Symbol "_fcVPCConfig") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe VPCConfigResponse))) (S1 (MetaSel (Just Symbol "_fcVersion") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text))))))) ((:*:) ((:*:) ((:*:) (S1 (MetaSel (Just Symbol "_fcFunctionName") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text))) (S1 (MetaSel (Just Symbol "_fcCodeSize") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Integer)))) ((:*:) (S1 (MetaSel (Just Symbol "_fcHandler") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text))) (S1 (MetaSel (Just Symbol "_fcTimeout") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Nat))))) ((:*:) ((:*:) (S1 (MetaSel (Just Symbol "_fcLastModified") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text))) (S1 (MetaSel (Just Symbol "_fcCodeSha256") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text)))) ((:*:) (S1 (MetaSel (Just Symbol "_fcTracingConfig") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe TracingConfigResponse))) ((:*:) (S1 (MetaSel (Just Symbol "_fcDescription") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text))) (S1 (MetaSel (Just Symbol "_fcMasterARN") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text)))))))))

Response Lenses

fcMemorySize :: Lens' FunctionConfiguration (Maybe Natural) Source #

The memory size, in MB, you configured for the function. Must be a multiple of 64 MB.

fcRuntime :: Lens' FunctionConfiguration (Maybe Runtime) Source #

The runtime environment for the Lambda function.

fcFunctionARN :: Lens' FunctionConfiguration (Maybe Text) Source #

The Amazon Resource Name (ARN) assigned to the function.

fcKMSKeyARN :: Lens' FunctionConfiguration (Maybe Text) Source #

The Amazon Resource Name (ARN) of the KMS key used to encrypt your function's environment variables. If empty, it means you are using the AWS Lambda default service key.

fcEnvironment :: Lens' FunctionConfiguration (Maybe EnvironmentResponse) Source #

The parent object that contains your environment's configuration settings.

fcDeadLetterConfig :: Lens' FunctionConfiguration (Maybe DeadLetterConfig) Source #

The parent object that contains the target ARN (Amazon Resource Name) of an Amazon SQS queue or Amazon SNS topic.

fcRole :: Lens' FunctionConfiguration (Maybe Text) Source #

The Amazon Resource Name (ARN) of the IAM role that Lambda assumes when it executes your function to access any other Amazon Web Services (AWS) resources.

fcVPCConfig :: Lens' FunctionConfiguration (Maybe VPCConfigResponse) Source #

VPC configuration associated with your Lambda function.

fcVersion :: Lens' FunctionConfiguration (Maybe Text) Source #

The version of the Lambda function.

fcFunctionName :: Lens' FunctionConfiguration (Maybe Text) Source #

The name of the function. Note that the length constraint applies only to the ARN. If you specify only the function name, it is limited to 64 characters in length.

fcCodeSize :: Lens' FunctionConfiguration (Maybe Integer) Source #

The size, in bytes, of the function .zip file you uploaded.

fcHandler :: Lens' FunctionConfiguration (Maybe Text) Source #

The function Lambda calls to begin executing your function.

fcTimeout :: Lens' FunctionConfiguration (Maybe Natural) Source #

The function execution time at which Lambda should terminate the function. Because the execution time has cost implications, we recommend you set this value based on your expected execution time. The default is 3 seconds.

fcLastModified :: Lens' FunctionConfiguration (Maybe Text) Source #

The time stamp of the last time you updated the function. The time stamp is conveyed as a string complying with ISO-8601 in this way YYYY-MM-DDThh:mm:ssTZD (e.g., 1997-07-16T19:20:30+01:00). For more information, see Date and Time Formats .

fcCodeSha256 :: Lens' FunctionConfiguration (Maybe Text) Source #

It is the SHA256 hash of your function deployment package.

fcTracingConfig :: Lens' FunctionConfiguration (Maybe TracingConfigResponse) Source #

The parent object that contains your function's tracing settings.

fcDescription :: Lens' FunctionConfiguration (Maybe Text) Source #

The user-provided description.

fcMasterARN :: Lens' FunctionConfiguration (Maybe Text) Source #

Returns the ARN (Amazon Resource Name) of the master function.