feat(awless): add cheatsheet
authorAlan Berman <thealanberman@gmail.com>
Tue, 23 Mar 2021 05:23:13 +0000 (22:23 -0700)
committerAJ ONeal <aj@therootcompany.com>
Wed, 24 Mar 2021 21:59:26 +0000 (21:59 +0000)
awless/README.md

index d174e108a77a84ed56d4bb7a04036958f3fbe979..6956f480b533a12a41e401df133c2acdb91cc300 100644 (file)
@@ -6,3 +6,76 @@ tagline: |
 ---
 
 To update or switch versions, run `webi awless@stable` (or `@v2`, `@beta`, etc).
+
+## Cheat Sheet
+
+awless is modeled after popular command-line tools such as Git. Most commands
+are in the form of:
+
+```bash
+awless verb [entity] [parameter=value ...]
+```
+
+If you already have awscli installed and configured, awless will use your
+existing `~/.aws/credentials` file. If not, you can review and configure awless
+with `awless config`.
+
+Unlike the standard awscli tools, `awless` aims to be more human readable.
+
+### List resources
+
+For instance, let's list some resources:
+
+```bash
+awless list vpcs
+```
+
+Which outputs a friendly human readable table!
+
+```bash
+|         ID ▲          | NAME | DEFAULT |   STATE   |     CIDR      |
+|-----------------------|------|---------|-----------|---------------|
+| vpc-00fd208a070000000 |      | false   | available | 172.16.0.0/16 |
+| vpc-22222222          |      | true    | available | 172.31.0.0/16 |
+```
+
+There's also filter capabilities, in case the list is long. For example, let's
+list all EC2 instances with "api" in the name:
+
+```bash
+awless list instances --filter name=api
+```
+
+In addition to the default table output, there's also csv, tsv, json.
+
+```bash
+awless list loadbalancers --format csv
+```
+
+### Create resources
+
+awless allows specifying things by name rather than ID by using the `@` prefix.
+
+```bash
+awless create subnet cidr=10.0.0.0/24 vpc=@wordpress-vpc name=wordpress-public-subnet
+```
+
+### Delete resources
+
+If you leave out a parameter, awless will prompt you for the missing
+information.
+
+```bash
+awless delete i-123456789000abcd
+```
+
+It will correctly detect what you were probably trying to do:
+
+```bash
+Did you mean `awless delete instance ids=i-051fcef0537a53eb0` ?  [Y/n]
+```
+
+### Advanced
+
+For a more advanced tutorial about awless' features, see the official
+[Getting Started](https://github.com/wallix/awless/wiki/Getting-Started) guide.