aws-alfred-workflow

An Alfred Workflow


Short Description

Workflow for searching AWS

Last Updated

03 Dec 2016

Compatibility

Yosemite
(10.10)
Mavericks
(10.9)
Mountain Lion
(10.8)
Lion
(10.7)
Snow Leopard
(10.6)
Yes Yes Yes Yes Yes
 

Version

3.0
 

Bundle ID

net.august8.alfred.aws
 

Author

Categories

Webservices

Tags

aws-alfred-workflow

AWS workflow for Alfred 3.

This workflow allows you to search EC2 instances by InstanceId and by the Name tag.

Install

You must have your AWS credentials set up in your ~/.aws directory:

$ cd ~/.aws
$ ls -l
total 8
-rw------- 1 twang staff 224 Nov 26 00:28 config
-rw------- 1 twang staff 706 Nov 18 00:01 credentials
$ cat config
[default]
region = us-east-1

[profile foo]
region = us-west-2
$ cat credentials
[default]
aws_access_key_id = xxxxxxxxxxxxxxxxxxxxx
aws_secret_access_key = xxxxxxxxxxxxxxxxxxxxx

[foo]
aws_access_key_id = xxxxxxxxxxxxxxxxxxxxx
aws_secret_access_key = xxxxxxxxxxxxxxxxxxxxx

Configuration

In Alfred Preferences, choose the AWS workflow and click the [x] icon to configure the WF_QUICKLOOK_PORT environment variable.

config_demo

If not configured, quicklook will be disabled.

Usage

Select AWS Profile

Select the AWS profile to use via:

aws >profile <profile name>

Searching for Instances

Now, you can search your EC2 instances via:

aws <query>

  • Select an instance to copy the private IP address to your clipboard.
  • Hold alt to copy public IP address to your clipboard.
  • Hold cmd to open AWS web console to that instance.
  • Press shift (or ⌘Y) to open quicklook to view instance details

Search query

Search queries can be in the form of a space separated list of facet:value or simply just value. Single (') or double (") quotes may be used for either the facet or value to allow for spaces, and escapes (\\) can be used to escape a literal apostrophe or quotation character. Furthermore, colons in facets and values can be specified by quoting the string (e.g.: url:'www.august8.net:8080').

The available facets for each service, as well as the default facet if not provided, is specified for each service below.

EC2 facets

If a bare value starts with i-, the workflow will search for exact prefix matches against the EC2 Instance Id. Otherwise, bare value queries will search the Name tag for the instance.

All other facets map to the tags on the instance. Note, all tag names are converted to lowercase.

S3 facets

The default facet is the Name tag for the bucket.

All other facets map to the tags on the bucket. Note, all tag names are converted to lowercase.

Examples

Search for an EC2 Instance with a Role tag of webserver:

aws role:web

If the EC2 Instance also has a Environment tag of integration-testing, I can search multiple tags via:

aws role:web environment:test

If the EC2 instance also happens to be named my-test-application, I may further restrict my query:

aws role:web environment:test my te app

Open AWS Web Console

You can also open your browser to the AWS Web Console using the + leader prefix:

aws +<query>

See here for demo.

Changelog

v3.0.0 - 2016-12-03

Added

  • ablity to search s3 buckets

Changed

v2.0.0 - 2016-11-27

Added

  • faceted searching

v1.1.1 - 2016-11-27

Fixed

  • bug where quicklook was not disabled if port was not configured

v1.1 - 2016-11-27

Added

Changed

  • changed public IP binding to alt to not conflict with quicklook

Contributors