Table Of Contents

Feedback

User Guide

First time using the AWS CLI? See the User Guide for help getting started.

[ aws . greengrass ]

create-function-definition-version

Description

Creates a version of a Lambda function definition that has already been defined.

See also: AWS API Documentation

See 'aws help' for descriptions of global parameters.

Synopsis

  create-function-definition-version
[--amzn-client-token <value>]
[--default-config <value>]
--function-definition-id <value>
[--functions <value>]
[--cli-input-json <value>]
[--generate-cli-skeleton <value>]

Options

--amzn-client-token (string) A client token used to correlate requests and responses.

--default-config (structure) The default configuration that applies to all Lambda functions in this function definition version. Individual Lambda functions can override these settings.

Shorthand Syntax:

Execution={IsolationMode=string,RunAs={Gid=integer,Uid=integer}}

JSON Syntax:

{
  "Execution": {
    "IsolationMode": "GreengrassContainer"|"NoContainer",
    "RunAs": {
      "Gid": integer,
      "Uid": integer
    }
  }
}

--function-definition-id (string) The ID of the Lambda function definition.

--functions (list) A list of Lambda functions in this function definition version.

JSON Syntax:

[
  {
    "FunctionArn": "string",
    "FunctionConfiguration": {
      "EncodingType": "binary"|"json",
      "Environment": {
        "AccessSysfs": true|false,
        "Execution": {
          "IsolationMode": "GreengrassContainer"|"NoContainer",
          "RunAs": {
            "Gid": integer,
            "Uid": integer
          }
        },
        "ResourceAccessPolicies": [
          {
            "Permission": "ro"|"rw",
            "ResourceId": "string"
          }
          ...
        ],
        "Variables": {"string": "string"
          ...}
      },
      "ExecArgs": "string",
      "Executable": "string",
      "MemorySize": integer,
      "Pinned": true|false,
      "Timeout": integer
    },
    "Id": "string"
  }
  ...
]

--cli-input-json (string) Performs service operation based on the JSON string provided. The JSON string follows the format provided by --generate-cli-skeleton. If other arguments are provided on the command line, the CLI values will override the JSON-provided values. It is not possible to pass arbitrary binary values using a JSON-provided value as the string will be taken literally.

--generate-cli-skeleton (string) Prints a JSON skeleton to standard output without sending an API request. If provided with no value or the value input, prints a sample input JSON that can be used as an argument for --cli-input-json. If provided with the value output, it validates the command inputs and returns a sample output JSON for that command.

See 'aws help' for descriptions of global parameters.

Examples

To create a version of the function defintion

The following create-function-definition-version example creates a new version of the specified function definition. This version specifies a single function whose ID is Hello-World-function, allows access to the file system, and specifies a maximum memory size and timeout period.

aws greengrass create-function-definition-version \
    --cli-input-json "{\"FunctionDefinitionId\": \"e626e8c9-3b8f-4bf3-9cdc-d26ecdeb9fa3\",\"Functions\": [{\"Id\": \"Hello-World-function\", \"FunctionArn\": \""arn:aws:lambda:us-west-2:123456789012:function:Greengrass_HelloWorld_Counter:gghw-alias"\",\"FunctionConfiguration\": {\"Environment\": {\"AccessSysfs\": true},\"Executable\": \"greengrassHelloWorldCounter.function_handler\",\"MemorySize\": 16000,\"Pinned\": false,\"Timeout\": 25}}]}"

Output:

{
    "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/functions/e626e8c9-3b8f-4bf3-9cdc-d26ecdeb9fa3/versions/74abd1cc-637e-4abe-8684-9a67890f4043",
    "CreationTimestamp": "2019-06-25T22:03:43.376Z",
    "Id": "e626e8c9-3b8f-4bf3-9cdc-d26ecdeb9fa3",
    "Version": "74abd1cc-637e-4abe-8684-9a67890f4043"
}

Output

Arn -> (string)

The ARN of the version.

CreationTimestamp -> (string)

The time, in milliseconds since the epoch, when the version was created.

Id -> (string)

The ID of the version.

Version -> (string)

The unique ID of the version.