Using turbot-aws to access the AWS Command Line Interface (CLI)

This guide explains how the turbot-aws command line tool can be used on a Linux or Windows instance for easy access to the AWS CLI tools across multiple Turbot accounts and users.

Overview

The AWS Command Line Interface (CLI) is a unified tool to manage your AWS services. With just one tool to download and configure, you can control multiple AWS services from the command line and automate them through scripts.

The turbot-aws utility provides full access to the AWS CLI, but with a simple wrapper to work with Turbot’s multi-account and user models. Turbot makes it incredibly simple to run AWS commands across multiple accounts and applications without complex credential management.

Accessing turbot-aws within a Linux instance managed by Turbot in AWS

The turbot-aws program is automatically installed on all Turbot managed Linux instances. It’s available immediately from the command line as:

turbot-aws

For help, examples and information on getting started, run:

turbot-aws --help

Using turbot-aws on your own instance or desktop

If you are not using Turbot to manage your Linux instance, or you would like to use the turbot-aws program on your Windows, Linux, or Mac device; you can download the turbot-aws shell attached to this article.  Note for Windows you will need to have a bash terminal available such as cygwin or git bash.  After downloading the turbot-aws zip file and extracting the contents, be sure to set the turbot-aws script to be executable.

Install instructions

  • AWS CLI must be installed before continuing. Enter the following command into the bash terminal
pip install awscli
  • Download the turbot-aws tool at the bottom of this article and extract the relevant file (depending if you are running linux or windows) to a preferred location. The following instructions are for Windows.
  • In the bash terminal, do the following:
    • Type cat .bash_profile
    • If this file does not exist, type touch .bash_profile
    • Type vim .bash_profile (or whatever your preferred text editor is)
    • Add alias turbot-aws='pathToTurbotCLIFile' (this is the path to the file itself, not the directory)
    • Press escape, then :wq!, then enter to save the file
    • Type source .bash_profile in bash to load the alias
  • Similar to the AWS CLI, turbot-aws is configured with Turbot API Access keys. These Turbot credentials are then used for Turbot API calls to retrieve various AWS credentials for different users in different AWS accounts.
  • Per the options above, turbot-aws supports command line, environment variables and the AWS config file for settings. It's recommended to establish base Turbot API credentials in the AWS config file before using turbot-aws.
  • Type the following into the bash window:
    • aws configure set default.turbot_host turbot.example.com
    • aws configure set default.turbot_access_key_id 44829bc4-c682-4f3d-b14c-af77b8728bcb
    • aws configure set default.turbot_secret_access_key 1d1cc2ce-c0ba-4997-9b28-fd850fe51f7c
    • aws configure set default.turbot_user_id jane@example.com
  • Type turbot-aws --refresh 
  • Confirm the cli is configured by testing a command, such as turbot-cli s3 ls

If you are usually accessing the same account (e.g. abc) for AWS CLI commands, you can also set the default account:

aws configure set default.turbot_account_id abc

Additional help and option info can be found by running:

turbot-aws --help
Was this article helpful?
0 out of 0 found this helpful