In a recent blog post, Amazon announced the general availability (GA) of AWS CLI (Command Line Interface) v2. Within this version of the CLI, features such as AWS Single Sign-On (SSO) integration, interactive wizards, server-side auto completion and auto prompts are included. In addition, having Python installed is no longer a pre-requisite and the CLI is supported on Windows, Linux and macOS.
AWS SSO allows organizations to centrally manage multiple AWS accounts and business application identities in a unified identity management system. It also includes built-in integrations with other 3rd party services like Salesforce, Box, and Office 365 and can be connected to Azure Active Directory. CLI v2 includes support for AWS SSO so that credentials don’t have to be managed outside of the identity store. To streamline the onboarding of credentials, an import wizard has been included. James Saryerwinnie, a software development engineer at Amazon, explains:
AWS CLI v2 introduces several new mechanisms for configuring credentials. We’ve added a new aws configure import command to import credentials from the .csv files generated in the AWS Console.
$ aws configure import --csv file://path/to/creds.csv
An alternative to the bulk import feature that we just discussed is a wizard experience that can be called from the CLI with the aws configure sso command. Using this command, users will get a series of prompts that need to be populated that will allow them to use an AWS identity in their CLI session.
Image source: https://aws.amazon.com/blogs/developer/aws-cli-v2-is-now-generally-available/
Simplifying the user experience through interactive features has also been a goal of the AWS team. For example, in AWS CLI v1 the TAB key can be used to complete command and parameter names. In AWS CLI v2, they have taken it a step further by being able to auto-complete server-side resource names. Saryerwinnie explains:
One of the major themes for AWS CLI v2 was including more interactive features to help customers. The AWS CLI is used for both automated scripting tasks as well interactive usage, and we wanted to include features that help users when they’re running CLI commands interactively in a terminal. Some of the new interactive features include server side auto-completion.
An example that Amazon has used to illustrate this feature is auto-completing AWS Dynamo table names:
Image source: https://aws.amazon.com/blogs/developer/aws-cli-v2-is-now-generally-available/
Another usability feature introduced in AWS CLI v2 is the new –cli-auto-prompt command which will prompt users for each required parameter, one at a time. Once all required parameters have been provided, a list of optional parameters will be listed with a brief description from AWS documentation included.
Image source: https://aws.amazon.com/blogs/developer/aws-cli-v2-is-now-generally-available/
For a complete listing of features, bug fixes and enhancements, please see the AWS CLI v2 changelog. AWS CLI v2 is mostly backward compatible with AWS CLI v1, however Amazon has listed known issues in their AWS CLI v2 migration guide.