| Type: | Package | 
| Title: | AWS Lambda Client Package | 
| Version: | 0.2.0 | 
| Description: | A simple client package for the Amazon Web Services ('AWS') Lambda API https://aws.amazon.com/lambda/. | 
| Encoding: | UTF-8 | 
| LazyData: | true | 
| Depends: | R (≥ 3.4) | 
| License: | GPL-3 | 
| Imports: | utils, httr, jsonlite, aws.signature (≥ 0.3.4), base64enc | 
| Suggests: | testthat, aws.s3, aws.iam | 
| URL: | https://github.com/cloudyr/aws.lambda | 
| BugReports: | https://github.com/cloudyr/aws.lambda/issues | 
| RoxygenNote: | 7.1.0 | 
| NeedsCompilation: | no | 
| Packaged: | 2020-04-15 14:55:45 UTC; Jon.Harmon | 
| Author: | Thomas J. Leeper | 
| Maintainer: | Jon Harmon <jonthegeek@gmail.com> | 
| Repository: | CRAN | 
| Date/Publication: | 2020-04-15 15:40:02 UTC | 
Manage AWS Lambda Functions
Description
Create, update, and version AWS Lambda functions
Usage
create_function(
  name,
  func,
  handler,
  role,
  runtime = c("nodejs12.x", "nodejs10.x", "java11", "java8", "python3.8", "python3.7",
    "python3.6", "python2.7", "dotnetcore3.1", "dotnetcore2.1", "go1.x", "ruby2.7",
    "ruby2.5", "provided"),
  timeout = 3L,
  description,
  ...
)
update_function_code(name, func, ...)
update_function_config(
  name,
  description,
  handler,
  role,
  runtime = c("nodejs12.x", "nodejs10.x", "java11", "java8", "python3.8", "python3.7",
    "python3.6", "python2.7", "dotnetcore3.1", "dotnetcore2.1", "go1.x", "ruby2.7",
    "ruby2.5", "provided"),
  timeout = 3L,
  ...
)
update_function(
  name,
  func,
  description,
  handler,
  role,
  runtime = c("nodejs12.x", "nodejs10.x", "java11", "java8", "python3.8", "python3.7",
    "python3.6", "python2.7", "dotnetcore3.1", "dotnetcore2.1", "go1.x", "ruby2.7",
    "ruby2.5", "provided"),
  timeout = 3L,
  ...
)
publish_function_version(name, description, ...)
make_function_version(name, description, ...)
Arguments
| name | A character string specifying the function name (either a full ARN or a max 64-character string). For functions other than  | 
| func | Either (1) a character string containing a url-style AWS S3
bucket and object key (e.g.,  | 
| handler | A character string specifying the function within your code that Lambda calls to begin execution. | 
| role | A character string containing an IAM role or an object of class “iam_role”. This is the role that is used when the function is invoked, so it must have permissions over any AWS resources needed by the function. | 
| runtime | A character string specifying the runtime environment for the function. | 
| timeout | An integer specifying the timeout for the function, in seconds. | 
| description | Optionally, a max 256-character description of the function for your own use. | 
| ... | Additional arguments passed to  | 
Details
create_function creates a new function from a deployment
package. update_function_code updates the code within a function.
update_function_config updates the configuration settings of a
function. publish_function_version records a function version (see
list_function_versions; changes made between versioning are
not recorded.
Value
A list of class “aws_lambda_function”.
References
API Reference: CreateFunction API Reference: UpdateFunctionCode API Reference: PublishVersion
See Also
invoke_function, create_function_alias,
list_functions, delete_function
Examples
## Not run: 
# 'hello world!' example code
hello <- system.file("templates", "helloworld.js", package = "aws.lambda")
# get IAM role for Lambda execution
library("aws.iam")
id <- get_caller_identity()[["Account"]]
# Note: This role may not work. We recommend copying the ARN of a
# Lambda-capable role from the console once until we're able to more
# smoothly integrate with aws.iam.
role <- paste0("arn:aws:iam::", id, ":role/lambda_basic_execution")
lambda_func <- create_function("helloworld",
  func = hello,
  handler = "helloworld.handler",
  role = role
)
# invoke function
invoke_function(lambda_func)
# delete function
delete_function(lambda_func)
## End(Not run)
Alias Management
Description
List, create, update, and delete function aliases
Usage
create_function_alias(name, alias, version, description, ...)
update_function_alias(name, alias, version, description, ...)
delete_function_alias(name, alias, ...)
get_function_alias(name, alias, ...)
list_function_aliases(name, version, marker, n, ...)
Arguments
| name | A character string specifying the function name (either a full ARN or a max 64-character string). For functions other than  | 
| alias | A character string specifying a function alias | 
| version | A character string specifying a function version to associate with this alias. | 
| description | Optionally, a max 256-character description of the function for your own use. | 
| ... | Additional arguments passed to  | 
| marker | A pagination marker from a previous request. | 
| n | An integer specifying the number of results to return. | 
Details
create_function_alias creates a new function alias for a
given version of a function. update_function_alias updates the
association between a function alias and the function version.
list_function_aliases lists all function aliases.
get_function_alias retrieves a specific function alias.
delete_function_alias deletes a function alias, but not the
associated function version.
Value
An object of class “aws_lambda_function”.
References
API Reference: GetAlias API Reference: CreateAlias API Reference: UpdateAlias API Reference: DeleteAlias API Reference: ListAliases
See Also
create_function, list_functions
Function Management
Description
List functions, function versions, and function policies
Usage
get_function(name, qualifier, ...)
list_functions(marker, n, ...)
list_function_versions(name, marker, n, ...)
delete_function(name, qualifier, ...)
get_function_policy(name, qualifier, ...)
Arguments
| name | A character string specifying the function name (either a full ARN or a max 64-character string). For functions other than  | 
| qualifier | Optionally, either a function version or alias. If omitted, information about the latest version is returned. | 
| ... | Additional arguments passed to  | 
| marker | A pagination marker from a previous request. | 
| n | An integer specifying the number of results to return. | 
Details
list_functions lists all functions. get_function
retrieves a specific function and list_function_versions retrieves
all versions of that function. get_function_policy returns the
resource-based IAM policy for a function. delete_function deletes a
function, if you have permission to do so.
Value
An object of class “aws_lambda_function”.
References
API Reference: GetFunction API Reference: ListVersionsByFunction API Reference: ListFunctions API Reference: GetPolicy
See Also
create_function, update_function_code,
update_function_config
Get name of Lambda function
Description
Extracts an AWS Lambda function's name
Usage
get_function_name(x, ...)
## S3 method for class 'character'
get_function_name(x, ...)
## S3 method for class 'aws_lambda_function'
get_function_name(x, ...)
Arguments
| x | An object of class “aws_lambda_function”. | 
| ... | Additional arguments passed to methods | 
AWS Lambda Account Settings
Description
Get account settings
Usage
get_lambda_account(...)
Arguments
| ... | Additional arguments passed to  | 
Value
A list.
Examples
## Not run: 
get_lambda_account()
## End(Not run)
Invoke Lambda Function
Description
Invoke a lambda function
Usage
invoke_function(
  name,
  qualifier,
  payload = NULL,
  type = c("RequestResponse", "Event", "DryRun"),
  log = c("None", "Tail"),
  ...
)
Arguments
| name | A character string specifying the function name (either a full ARN or a max 64-character string). For functions other than  | 
| qualifier | Optionally, either a function version or alias. If omitted, information about the latest version is returned. | 
| payload | Optionally, a list of parameters to send in the JSON body to the function. | 
| type | A character string specifying one of: (1) “Event” (asynchronous execution), (2) “RequestResponse” (the default), or (3) “DryRun” to test the function without executing it. | 
| log | A character string to control log response. | 
| ... | Additional arguments passed to  | 
See Also
create_function, list_functions,
Execute AWS Lambda API Request
Description
This is the workhorse function to execute calls to the Lambda API.
Usage
lambdaHTTP(
  verb = "GET",
  action,
  query = NULL,
  headers = list(),
  body = NULL,
  verbose = getOption("verbose", FALSE),
  region = Sys.getenv("AWS_DEFAULT_REGION", "us-east-1"),
  key = NULL,
  secret = NULL,
  session_token = NULL,
  ...
)
Arguments
| verb | A character string specifying the HTTP verb to use. | 
| action | A character string specifying the API version and endpoint. | 
| query | An optional named list containing query string parameters and their character values. | 
| headers | A list of headers to pass to the HTTP request. | 
| body | The HTTP request body. | 
| verbose | A logical indicating whether to be verbose. Default is given
by  | 
| region | A character string specifying an AWS region. See
 | 
| key | A character string specifying an AWS Access Key. See
 | 
| secret | A character string specifying an AWS Secret Key. See
 | 
| session_token | Optionally, a character string specifying an AWS
temporary Session Token to use in signing a request. See
 | 
| ... | Additional arguments passed to  | 
Details
This function constructs and signs an AWS Lambda API request and returns the results thereof, or relevant debugging information in the case of error.
Value
If successful, a named list. Otherwise, a data structure of class “aws-error” containing any error message(s) from AWS and information about the request attempt.
Author(s)
Thomas J. Leeper
See Also
get_lambda_account, which works well as a hello world
for the package
Default value for 'NULL'
Description
This infix function makes it easy to replace 'NULL's with a default value. It's inspired by the way that Ruby's or operation ('||') works. Copied from the rlang package.
Usage
x %||% y
Arguments
| x,y | If 'x' is NULL, will return 'y'; otherwise returns 'x'. |