

# User interface reference for the AWS Toolkit for JetBrains
<a name="ui-reference"></a>

For help working with the AWS Toolkit for JetBrains user interface, see the following topics.

**Topics**
+ [AWS Explorer](aws-explorer.md)
+ [Create Function dialog box](create-function-dialog.md)
+ [Deploy Serverless Application dialog box](deploy-serverless-application-dialog.md)
+ [New Project dialog box](new-project-dialog.md)
+ [Run/Debug Configurations dialog box](run-debug-configurations-dialog.md)
+ [Update Code dialog box](update-code-dialog.md)
+ [Update Configuration dialog box](update-configuration-dialog.md)

# AWS Explorer
<a name="aws-explorer"></a>

AWS Explorer provides convenient access to several features in the AWS Toolkit for JetBrains. These include managing connections from the toolkit to AWS accounts, switching AWS Regions, working with AWS Lambda functions and AWS CloudFormation stacks in accounts, and more.

To open AWS Explorer, with the AWS Toolkit for JetBrains installed and with IntelliJ IDEA, PyCharm, WebStorm, or JetBrains Rider running, do one of the following:
+ On the tool window bar, choose **AWS Explorer**.  
![\[AWS Explorer tool window button.\]](http://docs.aws.amazon.com/toolkit-for-jetbrains/latest/userguide/images/aws-explorer-tool-window-button.png)
+ On the main menu, choose **View**, **Tool Windows**, **AWS Explorer**.  
![\[Opening AWS Explorer from the main menu.\]](http://docs.aws.amazon.com/toolkit-for-jetbrains/latest/userguide/images/aws-explorer-main-menu.png)

In **AWS Explorer**, choose the settings icon (**Show Options Menu**) for the following options:

![\[The AWS Explorer Show Options Menu.\]](http://docs.aws.amazon.com/toolkit-for-jetbrains/latest/userguide/images/aws-explorer.png)


**AWS Connection Settings**  
Contains the following options:  
+ **AWS Regions list** – The AWS Toolkit for JetBrains uses the selected Region. To have the toolkit use a different Region, choose another listed Region.
+ **Recent Credentials list** – Lists recent connections made from the AWS Toolkit for JetBrains to AWS accounts. The toolkit uses the selected connection. To have the toolkit use a different recent connection, choose that connection's name.
+ **All Credentials** – Lists all available connections that you can make from the AWS Toolkit for JetBrains to AWS accounts. The toolkit uses the selected connection. To have the toolkit use a different connection, choose that connection's name. To do other connection tasks, choose **AWS Edit Credential file(s)**.
The **AWS Connection Settings** area in the status bar displays the AWS account connection and Region that the AWS Toolkit for JetBrains is currently using.  

![\[The AWS Connection Settings area in the status bar.\]](http://docs.aws.amazon.com/toolkit-for-jetbrains/latest/userguide/images/aws-connection-settings.png)

Choose this area to view the same **AWS Connection Settings** options as the **Show Options Menu**.

**View Documentation**  
Goes to the [AWS Toolkit for JetBrains User Guide](https://docs.aws.amazon.com/toolkit-for-jetbrains/latest/userguide/) (this guide).

**View Source on GitHub**  
Goes to the [aws/aws-toolkit-jetbrains](https://github.com/aws/aws-toolkit-jetbrains) repository on the GitHub website.

**View Mode**  
Adjusts the **AWS Explorer** tool window so that you can quickly access it and save space when you work in the editor or other tool windows.  
For IntelliJ IDEA view modes, see [Tool window view modes](https://www.jetbrains.com/help/idea/viewing-modes.html) on the IntelliJ IDEA Help website.  
For PyCharm view modes, see [Tool window view modes](https://www.jetbrains.com/help/pycharm/viewing-modes.html) on the PyCharm Help website.  
For WebStorm view modes, see [Tool window view modes](https://www.jetbrains.com/help/webstorm/viewing-modes.html) on the WebStorm Help website.  
For JetBrains Rider view modes, see [Tool window view modes](https://www.jetbrains.com/help/rider/Viewing_Modes.html) on the JetBrains Rider Help website.

**Move to**  
Moves the **AWS Explorer** tool window to a different location in IntelliJ IDEA, PyCharm, WebStorm, or JetBrains Rider.

**Resize**  
Changes the size of the **AWS Explorer** tool window.

**Remove from Sidebar**  
Removes the **AWS Explorer** tool window from the tool window bar. To display it again, on the main menu bar, choose **View**, **Tool Windows**, **AWS Explorer**.

You can also use AWS Explorer to work with Lambda functions and work with AWS CloudFormation stacks in AWS accounts.

# Create Function dialog box
<a name="create-function-dialog"></a>

The **Create Function** dialog box in the AWS Toolkit for JetBrains is displayed when you create a standalone AWS Lambda function.

![\[Create Function dialog box.\]](http://docs.aws.amazon.com/toolkit-for-jetbrains/latest/userguide/images/create-function-dialog.png)


The **Create Function** dialog box contains the following items:

**Name**  
(Required) The function's name. This can contain only the uppercase letters `A` through `Z`, the lowercase letters `a` through `z`, the numbers `0` through `9`, hyphens (`-`), and underscores (`_`). The name must be less than 64 characters in length.

**Description**  
(Optional) Any meaningful description about the function.

**Handler**  
(Required) The ID of the corresponding function handler for [Java](https://docs.aws.amazon.com/lambda/latest/dg/java-handler.html), [Python](https://docs.aws.amazon.com/lambda/latest/dg/python-handler.html), [Node.js](https://docs.aws.amazon.com/lambda/latest/dg/nodejs-handler.html), or [C\$1](https://docs.aws.amazon.com/lambda/latest/dg/csharp-handler.html).

**Runtime**  
(Required) The ID of the [Lambda runtime](https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html) to use.

**Timeout (seconds)**  
(Required) The amount of time that Lambda allows a function to run before stopping it. Specify an amount up to 900 seconds (15 minutes).

**Memory (MB)**  
(Required) The amount of memory available to the function as it runs. Specify an amount [between 128 MB and 3,008 MB](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-limits.html) in 64-MB increments.

**Environment Variables**  
(Optional) Any [environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html) for the Lambda function to use, specified as key-value pairs. To add, change, or delete environment variables, choose the folder icon, and then follow the on-screen instructions.

**IAM Role**  
(Required) Choose an available [Lambda execution role](https://docs.aws.amazon.com/lambda/latest/dg/lambda-intro-execution-role.html) in the connected AWS account for Lambda to use for the function. To create an execution role in the account and have Lambda use that role instead, choose **Create**, and then follow the on-screen instructions.

**Enable AWS X-Ray**  
(Optional) If selected, [Lambda enables AWS X-Ray](https://docs.aws.amazon.com/lambda/latest/dg/services-xray.html) to detect, analyze, and optimize performance issues with the function. X-Ray collects metadata from Lambda and any upstream or downstream services that make up your function. X-Ray uses this metadata to generate a detailed service graph that shows performance bottlenecks, latency spikes, and other issues that impact function performance.

**Source Bucket**  
(Required) Choose an available Amazon Simple Storage Service (Amazon S3) bucket in the connected AWS account for the AWS Serverless Application Model (AWS SAM) command line interface (CLI) to use to deploy the function to Lambda. To create an Amazon S3 bucket in the account and have the AWS SAM CLI use that one instead, choose **Create**, and then follow the on-screen instructions.

# Deploy Serverless Application dialog box
<a name="deploy-serverless-application-dialog"></a>

The **Deploy Serverless Application** dialog box in the AWS Toolkit for JetBrains is displayed when you deploy an AWS serverless application.

![\[The Deploy Serverless Application dialog box.\]](http://docs.aws.amazon.com/toolkit-for-jetbrains/latest/userguide/images/sam-deploy.png)


The **Deploy Serverless Application** dialog box contains the following items:

**Create Stack**  
(Required) Provide the name of the stack for the AWS Serverless Application Model (AWS SAM) command line interface (CLI) to create in AWS CloudFormation for the connected AWS account. The AWS SAM CLI then uses this stack to deploy the AWS serverless application.

**Update Stack**  
(Required) Choose the name of an existing CloudFormation stack in the connected AWS account for the AWS SAM CLI to use to deploy the AWS serverless application.

**Note**  
Either **Create Stack** or **Update Stack** is required, but not both.

**Template Parameters**  
(Optional) Any parameters that the AWS Toolkit for JetBrains detects in the corresponding project's `template.yaml` file. To specify a value for a parameter, choose the box in the **Value** column next to the parameter, enter the value, and then press **Enter**. For more information, see [Parameters](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/parameters-section-structure.html) in the *AWS CloudFormation User Guide*.

**S3 Bucket**  
(Required) Choose an existing Amazon Simple Storage Service (Amazon S3) bucket in the connected AWS account for the AWS SAM CLI to use to deploy the AWS serverless application. To create an Amazon S3 bucket in the account and have the AWS SAM CLI use that bucket instead, choose **Create**, and then follow the on-screen instructions.

**ECR Repository**  
(Required for `Image` package type only) Choose an existing Amazon Elastic Container Registry (Amazon ECR) repository URI in the connected AWS account for the AWS SAM CLI to use to deploy the AWS serverless application. For information about AWS Lambda package types, see [Lambda deployment packages](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html) in the *AWS Lambda Developer Guide*.

**Require confirmation before deploying**  
(Optional) If selected, instructs CloudFormation to wait for you to finish creating or updating the corresponding stack by [executing the stack's current change set in CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-changesets-execute.html). If you don't execute this change set, the AWS serverless application doesn't move on to the deployment phase.

**Build function inside a container**  
(Optional) If selected, the AWS SAM CLI builds any of the serverless application's functions inside of a Lambda-like Docker container locally before deployment. This is useful if the function depends on packages that have natively compiled dependencies or programs. For more information, see [Building applications](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/serverless-sam-cli-using-build.html) in the *AWS Serverless Application Model Developer Guide*.

# New Project dialog box
<a name="new-project-dialog"></a>

The **New Project** dialog box in the AWS Toolkit for JetBrains is displayed when you create an AWS serverless application.

**Topics**
+ [New Project dialog box (IntelliJ IDEA, PyCharm, and WebStorm)](#new-project-dialog-intellij)
+ [New Project dialog box (JetBrains Rider)](#new-project-dialog-rider)

## New Project dialog box (IntelliJ IDEA, PyCharm, and WebStorm)
<a name="new-project-dialog-intellij"></a>



**Note**  
The following screenshot shows the **New Project** dialog box for IntelliJ IDEA, but the field descriptions also apply to PyCharm and WebStorm.

![\[The New Project dialog box for IntelliJ IDEA.\]](http://docs.aws.amazon.com/toolkit-for-jetbrains/latest/userguide/images/sam-create-images.png)


The **New Project** dialog box contains the following items:

**Project name**  
(Required) The name of the project.

**Project location**  
(Required) The location where IntelliJ IDEA creates the project.

**Package Type**  
(Required) The AWS Lambda function's deployment package type, which can be either `Zip` or `Image`. For information about the difference between `Zip` and `Image` package types, see [Lambda deployment packages](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html) in the *AWS Lambda Developer Guide*.

**Runtime**  
(Required) The ID of the [Lambda runtime](https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html) to use.

**SAM Template**  
(Required) The name of the AWS Serverless Application Model (AWS SAM) template to use.

**Project SDK**  
(Required) The Java development kit (JDK) to use. For more information, see [Java Development Kit (JDK)](https://www.jetbrains.com/help/idea/sdk.html#jdk) on the IntelliJ IDEA Help website.

## New Project dialog box (JetBrains Rider)
<a name="new-project-dialog-rider"></a>

**Note**  
When you create a new solution, this dialog box contains the title **New Solution** instead of **New Project**. However, the dialog box's contents are the same.

![\[The New Project dialog box for JetBrains Rider.\]](http://docs.aws.amazon.com/toolkit-for-jetbrains/latest/userguide/images/sam-create-images-rider.png)


The **New Project** dialog box contains the following items:

**Solution name**  
(Required) The name of the solution.

**Project name**  
(Required) The name of the project.

**Solution directory**  
(Required) The path to the solution's directory.

**Put solution and project in the same directory**  
(Optional) If selected, puts the solution's files in the same location as the project's files.

**Create repository**  
(Optional) If selected, creates a remote repository for the project with the specified provider.

**Package Type**  
(Required) The Lambda function's package type, which can be either `Zip` or `Image`. For information about the difference between `Zip` and `Image` package types, see [Lambda deployment packages](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html) in the *AWS Lambda Developer Guide*.

**Runtime**  
(Required) The ID of the Lambda runtime to use.

**SAM Template**  
(Required) The name of the AWS SAM template to use.

**Resulting project structure**  
(Non-editable) The paths for the created project's directories and files.

# Run/Debug Configurations dialog box
<a name="run-debug-configurations-dialog"></a>

The **Run/Debug Configurations** dialog box in the AWS Toolkit for JetBrains is displayed whenever you want to alter the run/debug configurations, whether locally, remotely, or in an Amazon Elastic Container Service (Amazon ECS) cluster.

**Topics**
+ [Run/Debug Configurations dialog box (local function settings)](run-debug-configurations-dialog-local.md)
+ [Run/Debug Configurations dialog box (remote function settings)](run-debug-configurations-dialog-remote.md)
+ [Edit configuration dialog box (Amazon ECS cluster)](edit-configuration-dialog-ecs.md)

# Run/Debug Configurations dialog box (local function settings)
<a name="run-debug-configurations-dialog-local"></a>

This dialog box is displayed whenever you update settings for the *local* version of an AWS Lambda function.

**Note**  
To update settings for the *remote* version of that same function (the function's source code is in Lambda in your AWS account), see [Run/Debug Configurations dialog box (remote function settings)](run-debug-configurations-dialog-remote.md) instead.

This dialog box contains three tabs: **Configuration**, **SAM CLI**, and **AWS Connection**.

![\[The Configuration tab of the Run/Debug Configurations dialog box for local function settings.\]](http://docs.aws.amazon.com/toolkit-for-jetbrains/latest/userguide/images/sam-run-debug-config-zip.png)


The **Configuration** tab of the **Run/Debug Configurations** dialog box for local function settings contains the following items:

**Name**  
(Required) The name of this configuration.

**Allow parallel run / Allow running in parallel **  
(Optional) If selected, allows IntelliJ IDEA, PyCharm, WebStorm, or JetBrains Rider to launch as many instances of the configuration to run in parallel as needed.1

**From handler / From template**  
(Required) Depending on which option you choose, you must configure additional settings.

**Runtime**  
(Required) The ID of the [Lambda runtime](https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html) to use.

**Handler**  
(Required for the **From handler** option) The identifier of the corresponding function handler for [Java](https://docs.aws.amazon.com/lambda/latest/dg/java-handler.html), [Python](https://docs.aws.amazon.com/lambda/latest/dg/python-handler.html), [Node.js](https://docs.aws.amazon.com/lambda/latest/dg/nodejs-handler.html), or [C\$1](https://docs.aws.amazon.com/lambda/latest/dg/csharp-handler.html).

**Timeout (seconds)**  
(Required for the **From handler** option) The amount of time that Lambda allows a function to run before stopping it. Specify an amount up to 900 seconds (15 minutes).

**Memory (MB)**  
(Required for the **From handler** option) The amount of memory available to the function as it runs. Specify an amount [between 128 MB and 3,008 MB](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-limits.html) in 64-MB increments.

**Environment Variables**  
(Optional for the **From handler** option) Any [environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html) for the Lambda function to use, specified as key-value pairs. To add, change, or delete environment variables, choose the folder icon, and then follow the on-screen instructions.

**Template**  
(Required for the **From template** option) The location and file name of the AWS Serverless Application Model (AWS SAM) template (for example, `template.yaml`) to use for this configuration, and the resource in that template to associate with this configuration.

**File**  
(Required) The location and file name of the event data to pass to the function, in JSON format. For event data examples, see [Invoke the Lambda function](https://docs.aws.amazon.com/lambda/latest/dg/getting-started-create-function.html#get-started-invoke-manually) in the *AWS Lambda Developer Guide* and [Generating sample event payloads](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/serverless-sam-cli-using-generate-event.html) in the *AWS Serverless Application Model Developer Guide*.

**Text**  
(Required) The event data to pass to the function, in JSON format. For event data examples, see [Invoke the Lambda function](https://docs.aws.amazon.com/lambda/latest/dg/getting-started-create-function.html#get-started-invoke-manually) in the *AWS Lambda Developer Guide* and [Generating sample event payloads](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/serverless-sam-cli-using-generate-event.html) in the *AWS Serverless Application Model Developer Guide*.  
Either **File** or **Text** is required, but not both.

**Before launch: window**  
(Optional) Lists any tasks that must be performed before starting this configuration.2

***Notes***  
1 For more information, see the following:  
+ For IntelliJ IDEA, see [Common options](https://www.jetbrains.com/help/idea/run-debug-configurations-dialog.html#common) on the IntelliJ IDEA Help website. 
+ For PyCharm, see [Common options](https://www.jetbrains.com/help/pycharm/run-debug-configurations-dialog.html#common) on the PyCharm Help website.
+ For WebStorm, see [Common options](https://www.jetbrains.com/help/webstorm/run-debug-configuration-node-js.html#common) on the WebStorm Help website.
+ For JetBrains Rider, see [Common options](https://www.jetbrains.com/help/rider/Run_Debug_Configurations_dialog.html#common) on the JetBrains Rider Help website.
2 For more information, see the following:  
+ For IntelliJ IDEA, see [Before Launch options](https://www.jetbrains.com/help/idea/run-debug-configurations-dialog.html#before-launch-options) on the IntelliJ IDEA Help website. 
+ For PyCharm, see [Before Launch options](https://www.jetbrains.com/help/pycharm/run-debug-configurations-dialog.html#before-launch-options) on the PyCharm Help website.
+ For WebStorm, see [Before Launch options](https://www.jetbrains.com/help/webstorm/run-debug-configuration-node-js.html#before-launch-options) on the WebStorm; Help website.
+ For JetBrains Rider, see [Before Launch options](https://www.jetbrains.com/help/rider/Run_Debug_Configurations_dialog.html#before-launch-options) on the JetBrains Rider Help website.

![\[The SAM CLI tab of the Run/Debug Configurations dialog box for local function settings.\]](http://docs.aws.amazon.com/toolkit-for-jetbrains/latest/userguide/images/sam-run-debug-cli.png)


The **SAM CLI** tab of the **Run/Debug Configurations** dialog box for local function settings contains the following items:

**Name**  
(Required) The name of this configuration.

**Allow parallel run / Allow running in parallel**  
(Optional) If selected, allows IntelliJ IDEA, PyCharm, WebStorm, or JetBrains Rider to launch as many instances of the configuration to run in parallel as needed.1

**Build function inside a container**  
(Optional) If selected, the AWS SAM CLI builds any of the serverless application's functions inside of a Lambda-like Docker container locally before deployment. This is useful if the function depends on packages that have natively compiled dependencies or programs. For more information, see [Building applications](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/serverless-sam-cli-using-build.html) in the *AWS Serverless Application Model Developer Guide*.

**Skip checking for newer container images**  
(Optional) If selected, the AWS SAM CLI skips pulling down the latest Docker image for the [runtime](https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html) that is specified on the **Configuration** tab.

**Docker Network**  
(Optional) The name or ID of an existing Docker network for Lambda Docker containers to connect to, with the default bridge network. If not specified, the Lambda containers connect only to the default bridge Docker network.

**Before launch: window**  
(Optional) Lists any tasks that must be performed before starting this configuration.2

***Notes***  
1 For more information, see the following:  
+ For IntelliJ IDEA, see [Common options](https://www.jetbrains.com/help/idea/run-debug-configurations-dialog.html#common) on the IntelliJ IDEA Help website. 
+ For PyCharm, see [Common options](https://www.jetbrains.com/help/pycharm/run-debug-configurations-dialog.html#common) on the PyCharm Help website.
+ For WebStorm, see [Common options](https://www.jetbrains.com/help/webstorm/run-debug-configuration-node-js.html#common) on the WebStorm Help website.
+ For JetBrains Rider, see [Common options](https://www.jetbrains.com/help/rider/Run_Debug_Configurations_dialog.html#common) on the JetBrains Rider Help website.
2 For more information, see the following:  
+ For IntelliJ IDEA, see [Before Launch options](https://www.jetbrains.com/help/idea/run-debug-configurations-dialog.html#before-launch-options) on the IntelliJ IDEA Help website. 
+ For PyCharm, see [Before Launch options](https://www.jetbrains.com/help/pycharm/run-debug-configurations-dialog.html#before-launch-options) on the PyCharm Help website.
+ For WebStorm, see [Before Launch options](https://www.jetbrains.com/help/webstorm/run-debug-configuration-node-js.html#before-launch-options) on the WebStorm; Help website.
+ For JetBrains Rider, see [Before Launch options](https://www.jetbrains.com/help/rider/Run_Debug_Configurations_dialog.html#before-launch-options) on the JetBrains Rider Help website.

![\[The AWS Connection tab of the Run/Debug Configurations dialog box for local function settings.\]](http://docs.aws.amazon.com/toolkit-for-jetbrains/latest/userguide/images/sam-run-debug-aws-connection.png)


The **AWS Connection** tab of the **Run/Debug Configurations** dialog box for local function settings contains the following items:

**Credentials**  
(Required) The name of the existing AWS account connection to use.

**Region**  
(Required) The name of the AWS Region to use for the connected account.

***Notes***  
1 For more information, see the following:  
+ For IntelliJ IDEA, see [Common options](https://www.jetbrains.com/help/idea/run-debug-configurations-dialog.html#common) on the IntelliJ IDEA Help website. 
+ For PyCharm, see [Common options](https://www.jetbrains.com/help/pycharm/run-debug-configurations-dialog.html#common) on the PyCharm Help website.
+ For WebStorm, see [Common options](https://www.jetbrains.com/help/webstorm/run-debug-configuration-node-js.html#common) on the WebStorm Help website.
+ For JetBrains Rider, see [Common options](https://www.jetbrains.com/help/rider/Run_Debug_Configurations_dialog.html#common) on the JetBrains Rider Help website.
2 For more information, see the following:  
+ For IntelliJ IDEA, see [Before Launch options](https://www.jetbrains.com/help/idea/run-debug-configurations-dialog.html#before-launch-options) on the IntelliJ IDEA Help website. 
+ For PyCharm, see [Before Launch options](https://www.jetbrains.com/help/pycharm/run-debug-configurations-dialog.html#before-launch-options) on the PyCharm Help website.
+ For WebStorm, see [Before Launch options](https://www.jetbrains.com/help/webstorm/run-debug-configuration-node-js.html#before-launch-options) on the WebStorm; Help website.
+ For JetBrains Rider, see [Before Launch options](https://www.jetbrains.com/help/rider/Run_Debug_Configurations_dialog.html#before-launch-options) on the JetBrains Rider Help website.

# Run/Debug Configurations dialog box (remote function settings)
<a name="run-debug-configurations-dialog-remote"></a>

This dialog box displays whenever you update settings for the *remote* version of an AWS Lambda function (the function's source code is in Lambda in your AWS account).

**Note**  
To update settings for the *local* version of that same function, see [Run/Debug Configurations dialog box (local function settings)](run-debug-configurations-dialog-local.md) instead.  
Although the name of the dialog box is **Run/Debug Configurations**, you cannot use the AWS Toolkit for JetBrains to debug the remote version of a Lambda function. You can only run the function.

![\[The Run/Debug Configurations dialog box for remote function settings.\]](http://docs.aws.amazon.com/toolkit-for-jetbrains/latest/userguide/images/run-debug-configurations-dialog-remote.png)


The **Run/Debug Configurations** dialog box for remote function settings contains the following items:

**Name**  
(Required) The name of this configuration.

**Share / Share through VCS**  
(Optional) If selected, makes this configuration available to other team members.1

**Allow parallel run / Allow running in parallel **  
(Optional) If selected, allows IntelliJ IDEA, PyCharm, WebStorm, or JetBrains Rider to launch as many instances of the configuration to run in parallel as needed.1

**Credentials**  
(Required) The name of the existing AWS account connection to use.

**Region**  
(Required) The name of the AWS Region to use for the connected account.

**Function**  
(Required) The name of the Lambda function to use.

**File**  
(Required) The location and file name of the event data to pass to the function, in JSON format. For event data examples, see [Invoke the Lambda function](https://docs.aws.amazon.com/lambda/latest/dg/getting-started-create-function.html#get-started-invoke-manually) in the *AWS Lambda Developer Guide* and [Generating sample event payloads](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/serverless-sam-cli-using-generate-event.html) in the *AWS Serverless Application Model Developer Guide*.

**Text**  
(Required) The event data to pass to the function, in JSON format. For event data examples, see [Invoke the Lambda function](https://docs.aws.amazon.com/lambda/latest/dg/getting-started-create-function.html#get-started-invoke-manually) in the *AWS Lambda Developer Guide* and [Generating sample event payloads](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/serverless-sam-cli-using-generate-event.html) in the *AWS Serverless Application Model Developer Guide*.

**Note**  
Either **File** or **Text** is required, but not both.

**Before launch: Activate tool window**  
(Optional) Lists any tasks that must be performed before starting this configuration.2

**Show this page**  
(Optional) If selected, displays these configuration settings prior to starting this configuration.2

**Activate tool window**  
(Optional) If selected, opens the **Run** or the **Debug** tool window when you start this configuration.2

***Notes***  
1 For more information, see the following:  
+ For IntelliJ IDEA, see [Common options](https://www.jetbrains.com/help/idea/run-debug-configurations-dialog.html#common) on the IntelliJ IDEA Help website. 
+ For PyCharm, see [Common options](https://www.jetbrains.com/help/pycharm/run-debug-configurations-dialog.html#common) on the PyCharm Help website.
+ For WebStorm, see [Common options](https://www.jetbrains.com/help/webstorm/run-debug-configuration-node-js.html#common) on the WebStorm Help website.
+ For JetBrains Rider, see [Common options](https://www.jetbrains.com/help/rider/Run_Debug_Configurations_dialog.html#common) on the JetBrains Rider Help website.
2 For more information, see the following:  
+ For IntelliJ IDEA, see [Before Launch options](https://www.jetbrains.com/help/idea/run-debug-configurations-dialog.html#before-launch-options) on the IntelliJ IDEA Help website. 
+ For PyCharm, see [Before Launch options](https://www.jetbrains.com/help/pycharm/run-debug-configurations-dialog.html#before-launch-options) on the PyCharm Help website.
+ For WebStorm, see [Before Launch options](https://www.jetbrains.com/help/webstorm/run-debug-configuration-node-js.html#before-launch-options) on the WebStorm; Help website.
+ For JetBrains Rider, see [Before Launch options](https://www.jetbrains.com/help/rider/Run_Debug_Configurations_dialog.html#before-launch-options) on the JetBrains Rider Help website.

# Edit configuration dialog box (Amazon ECS cluster)
<a name="edit-configuration-dialog-ecs"></a>

The **Edit configuration** dialog box contains two tabs: **Configuration** and **AWS Connection**.

![\[The Configuration tab of the Edit configuration dialog box.\]](http://docs.aws.amazon.com/toolkit-for-jetbrains/latest/userguide/images/edit-configuration-dialog-ecs-configuration.png)


The **Configuration** tab of the **Edit configuration** dialog box contains the following items:

**Name**  
(Required) The name of this configuration.

**Share / Share through VCS**  
(Optional) If selected, makes this configuration available to other team members.1

**Allow parallel run / Allow running in parallel**  
(Optional) If selected, allows IntelliJ IDEA, PyCharm, WebStorm, or JetBrains Rider to launch as many instances of the configuration to run in parallel as needed.1

**Cluster**  
(Required) The name of the Amazon Elastic Container Service (Amazon ECS) cluster to debug.

**Service**  
(Required) The name of the Amazon ECS service in the cluster to debug.

**Add Container**  
Adds a container to this configuration. Optional if at least one tab is already visible. Each tab represents a separate container.  
The following items apply to the selected container: **Platform**, **Remote Debug Port**, **Start Command**, **Artifacts Mappings**, and **Port Mappings**.

**Platform**  
(Required) The debug platform to use.

**Remote Debug Port**  
(Optional) The port to attach to the debugger. Generally, you shouldn't specify this unless your service uses ports 20020-20030. If it does, specify that port here so that the container doesn't try to bind ports that might otherwise be in use elsewhere.

**Start Command**  
(Required) The command to start your program so that the debugger can attach to it. For Java, it should start with `java` and contain no debugger information, such as `-Xdebug`. For Python, it must start with `python`, `python2`, or `python3`, followed by the path and name of the file to run.

**Artifacts Mappings**  
(Required) A **Local Path** on your local development machine that maps to a **Remote Path** within the container. You must map all code and artifacts that you plan to run. To specify a local and remote path mapping, choose **Add** (the **\$1** icon).

**Port Mappings**  
(Optional) A **Local Port** on your local development machine that maps to a **Remote Port** within the container. This enables local ports to communicate directly with ports on a remote resource. For example, for the command `curl localhost:3422`, port `3422` maps to some service. To specify a local and remote port mapping, choose **Add** (the **\$1** icon).

**Before launch: Activate tool window**  
(Optional) Lists any tasks that must be performed before starting this configuration.2

**Show this page**  
(Optional) If selected, displays these configuration settings before starting this configuration.2

**Activate tool window**  
(Optional) If selected, opens the **Run** or **Debug** tool window when you start this configuration.2

***Notes***  
1 For more information, see the following:  
+ For IntelliJ IDEA, see [Common options](https://www.jetbrains.com/help/idea/run-debug-configurations-dialog.html#common) on the IntelliJ IDEA Help website. 
+ For PyCharm, see [Common options](https://www.jetbrains.com/help/pycharm/run-debug-configurations-dialog.html#common) on the PyCharm Help website.
+ For WebStorm, see [Common options](https://www.jetbrains.com/help/webstorm/run-debug-configuration-node-js.html#common) on the WebStorm Help website.
+ For JetBrains Rider, see [Common options](https://www.jetbrains.com/help/rider/Run_Debug_Configurations_dialog.html#common) on the JetBrains Rider Help website.
2 For more information, see the following:  
+ For IntelliJ IDEA, see [Before Launch options](https://www.jetbrains.com/help/idea/run-debug-configurations-dialog.html#before-launch-options) on the IntelliJ IDEA Help website. 
+ For PyCharm, see [Before Launch options](https://www.jetbrains.com/help/pycharm/run-debug-configurations-dialog.html#before-launch-options) on the PyCharm Help website.
+ For WebStorm, see [Before Launch options](https://www.jetbrains.com/help/webstorm/run-debug-configuration-node-js.html#before-launch-options) on the WebStorm; Help website.
+ For JetBrains Rider, see [Before Launch options](https://www.jetbrains.com/help/rider/Run_Debug_Configurations_dialog.html#before-launch-options) on the JetBrains Rider Help website.

![\[The AWS Connection tab of the Edit configuration dialog box.\]](http://docs.aws.amazon.com/toolkit-for-jetbrains/latest/userguide/images/edit-configuration-dialog-ecs-aws-connection.png)


The **AWS Connection** tab of the **Edit configuration** dialog box contains the following items:

**Name**  
(Required) The name of this configuration.

**Credentials**  
(Required) The name of the existing AWS account connection to use.

**Region**  
(Required) The name of the AWS Region to use for the connected account.

**Share / Share through VCS**  
(Optional) If selected, makes this configuration available to other team members.1

**Allow parallel run / Allow running in parallel**  
(Optional) If selected, allows IntelliJ IDEA, PyCharm, WebStorm, or JetBrains Rider to launch as many instances of the configuration to run in parallel as needed.1

**Before launch: Activate tool window**  
(Optional) Lists any tasks that must be performed before starting this configuration.2

**Show this page**  
(Optional) If selected, displays these configuration settings before starting this configuration.2

**Activate tool window**  
(Optional) If selected, opens the **Run** or **Debug** tool window when you start this configuration.2

***Notes***  
1 For more information, see the following:  
+ For IntelliJ IDEA, see [Common options](https://www.jetbrains.com/help/idea/run-debug-configurations-dialog.html#common) on the IntelliJ IDEA Help website. 
+ For PyCharm, see [Common options](https://www.jetbrains.com/help/pycharm/run-debug-configurations-dialog.html#common) on the PyCharm Help website.
+ For WebStorm, see [Common options](https://www.jetbrains.com/help/webstorm/run-debug-configuration-node-js.html#common) on the WebStorm Help website.
+ For JetBrains Rider, see [Common options](https://www.jetbrains.com/help/rider/Run_Debug_Configurations_dialog.html#common) on the JetBrains Rider Help website.
2 For more information, see the following:  
+ For IntelliJ IDEA, see [Before Launch options](https://www.jetbrains.com/help/idea/run-debug-configurations-dialog.html#before-launch-options) on the IntelliJ IDEA Help website. 
+ For PyCharm, see [Before Launch options](https://www.jetbrains.com/help/pycharm/run-debug-configurations-dialog.html#before-launch-options) on the PyCharm Help website.
+ For WebStorm, see [Before Launch options](https://www.jetbrains.com/help/webstorm/run-debug-configuration-node-js.html#before-launch-options) on the WebStorm; Help website.
+ For JetBrains Rider, see [Before Launch options](https://www.jetbrains.com/help/rider/Run_Debug_Configurations_dialog.html#before-launch-options) on the JetBrains Rider Help website.

# Update Code dialog box
<a name="update-code-dialog"></a>

The **Update Code** dialog box in the AWS Toolkit for JetBrains is displayed whenever you update an AWS Lambda function.

![\[The Update Code dialog box.\]](http://docs.aws.amazon.com/toolkit-for-jetbrains/latest/userguide/images/sam-update-code.png)


The **Update Code** dialog box contains the following items:

**Handler**  
(Required) The ID of the corresponding Lambda function handler for [Java](https://docs.aws.amazon.com/lambda/latest/dg/java-handler.html), [Python](https://docs.aws.amazon.com/lambda/latest/dg/python-handler.html), [Node.js](https://docs.aws.amazon.com/lambda/latest/dg/nodejs-handler.html), or [C\$1](https://docs.aws.amazon.com/lambda/latest/dg/csharp-handler.html).

**Source Bucket**  
(Required for `Zip` package type only) Choose an existing Amazon Simple Storage Service (Amazon S3) bucket in the connected AWS account for the AWS Serverless Application Model (AWS SAM) command line interface (CLI) to use to deploy the function to Lambda. To create an Amazon S3 bucket in the account and have the AWS SAM CLI use that bucket instead, choose **Create**, and then follow the on-screen instructions. For information about Lambda package types, see [Lambda deployment packages](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html) in the *AWS Lambda Developer Guide*.

**ECR Repository**  
(Required for `Image` package type only) Choose an existing Amazon Elastic Container Registry (Amazon ECR) repository in the connected AWS account for the AWS SAM CLI to use to deploy the function to Lambda.

# Update Configuration dialog box
<a name="update-configuration-dialog"></a>

The **Update Configuration** dialog box in the AWS Toolkit for JetBrains is displayed whenever you update the configuration for an AWS Lambda function. The information that you provide differs slightly depending on whether the project's Lambda function is of package type `Zip` or `Image`.

The **Update Configuration** dialog box for the `Zip` package type:

![\[The Update Configuration dialog box for Zip applications.\]](http://docs.aws.amazon.com/toolkit-for-jetbrains/latest/userguide/images/sam-update-config-zip.png)


The **Update Configuration** dialog box for the `Image` package type:

![\[The Update Configuration dialog box for Image applications.\]](http://docs.aws.amazon.com/toolkit-for-jetbrains/latest/userguide/images/sam-update-config-image.png)


The **Update Configuration** dialog box contains the following items:

**Name**  
(Required) The function's name. Can contain only the uppercase letters `A` through `Z`, the lowercase letters `a` through `z`, the numbers `0` through `9`, hyphens (`-`), and underscores (`_`). The name must be less than 64 characters in length.

**Description**  
(Optional) Any meaningful description about the function.

**Package Type**  
(Required) The Lambda function's package type, which can be either `Zip` or `Image`.

**Handler**  
(Required for `Zip` packages only) The ID of the corresponding Lambda function handler for [Java](https://docs.aws.amazon.com/lambda/latest/dg/java-handler.html), [Python](https://docs.aws.amazon.com/lambda/latest/dg/python-handler.html), [Node.js](https://docs.aws.amazon.com/lambda/latest/dg/nodejs-handler.html), or [C\$1](https://docs.aws.amazon.com/lambda/latest/dg/csharp-handler.html).

**Runtime**  
(Required for `Zip` packages only) The ID of the [Lambda runtime](https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html) to use.

**Timeout (seconds)**  
(Required) The amount of time that Lambda allows a function to run before stopping it. Specify an amount up to 900 seconds (15 minutes).

**Memory (MB)**  
(Required) The amount of memory available to the function as it runs. Specify an amount [between 128 MB and 3,008 MB](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-limits.html) in 64-MB increments.

**Environment Variables**  
(Optional) Any [environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html) for the Lambda function to use, specified as key-value pairs. To add, change, or delete environment variables, choose the folder icon, and then follow the on-screen instructions.

**IAM Role**  
(Required) Choose an available [Lambda execution role](https://docs.aws.amazon.com/lambda/latest/dg/lambda-intro-execution-role.html) in the connected AWS account for Lambda to use for the function. To create an execution role in the account and have Lambda use that role instead, choose **Create**, and then follow the on-screen instructions.

**Enable AWS X-Ray**  
(Optional) If selected, [Lambda enables AWS X-Ray](https://docs.aws.amazon.com/lambda/latest/dg/services-xray.html) to detect, analyze, and optimize performance issues with the function. X-Ray collects metadata from Lambda and any upstream or downstream services that make up your function. X-Ray uses this metadata to generate a detailed service graph that shows performance bottlenecks, latency spikes, and other issues that impact function performance.