How-To's

Introducing the AWS Toolkit for Rider

We have good news for anyone wanting to create C# serverless applications! We’ve been working with Amazon Web Services and are very pleased to announce the availability of the AWS Toolkit for Rider, a free, open source plugin for Rider that will help you build, test and deploy serverless applications for Amazon Web Services platform.

You might already be familiar with the plugin from other JetBrains IDEs, as it was released for PyCharm and IntelliJ IDEA earlier this year, with support for Python and Java. This new release adds new features for these IDEs and adds support for C# in Rider, and Node.js in WebStorm.

Develop .NET applications on AWS with Rider

So what’s in the plugin for Rider users?

  • A project template to create a .NET Core based C# AWS Lambda.
  • Automatically created run configuration to locally run and debug AWS Lambda handlers inside a Docker environment.
  • Gutter icons to run and debug Lambda handlers directly from the C# file, and from the CloudFormation template.yaml configuration file.
  • Easy selection and management of AWS credentials and regions.
  • Deployment of AWS Lambda directly from the template.yaml file.
  • AWS Explorer to deploy, configure and update AWS Lambda, including creation of the S3 bucket to hold deployment artifacts.
  • Cloud Debugging (beta) of ECS instances.

We’re very excited about Cloud Debugging – it allows you to debug a .NET Core application on a Linux container, while it’s deployed in ECS. The service is currently in beta in AWS, and the support in the plugin has been developed in a joint collaboration between Amazon and JetBrains.

Right click to enable cloud debugging

The AWS Toolkit plugin will configure the deployed application and the container to support remote debugging, but please note that there is also some manual configuration required inside the AWS console to ensure roles are correct. We’ll take a closer look at Cloud Debugging in another blog post, but for now you can read more in the AWS docs.

When you install the plugin, make sure you install the required dependencies, too:

  • The AWS CLI and AWS SAM CLI tools, which the plugin uses to build, deploy and invoke your code.
  • .NET Core 2.0 or 2.1. It’s not enough to just have .NET Core 3.0 or above installed. Make sure you’re running tests on the same version you’re targeting.
  • Docker. The SAM CLI will download and create a container to invoke your Lambda locally.

You’ll also need to have an AWS account, configured with the correct permissions. Check out the AWS Toolkit homepage for more details, AWS tutorials and download links.

And of course, don’t forget the tooling that Rider provides for AWS developers even without the plugin! Because Rider includes the database tooling from DataGrip, you can connect to and query AWS databases, such as Amazon RDS, Amazon Aurora and Amazon Redshift.

Database tools connected to Amazon Redshift, showing results of a query

Even better, Rider will use that database connection to provide code completion of SQL strings, directly in your C# code.

We’ll take a closer look at AWS Lambda and Cloud Debugging support in more posts over the next few days, to coincide with AWS re:Invent. And of course, we’ll be there too! So please come visit us at booth #1505 to see demos, get more details and chat with the team.

In the meantime, please download the plugin, check out AWS’s documentation, and let us know how you get on!

image description