awless

command module
v0.1.10 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 13, 2018 License: Apache-2.0 Imports: 1 Imported by: 0

README

Build Status Go Report Card

terminal icon awless is a powerful, innovative and small surface command line interface (CLI) to manage Amazon Web Services.

Twitter | Wiki | Changelog

Why awless

awless stands out by providing the following features:

  • small and hierarchical set of commands
  • create and revert fully-fledged infrastructures through a new simple and powerful templating language (see awless templates (wiki))
  • local log of all your cloud modifications done through awless
  • exploration of your cloud infrastructure and resources relations, even offline using a local graph storage
  • greater output's readability with numerous machine and human friendly formats
  • ensure smart defaults & security best practices
  • connect easily using awless' smart SSH to your private & public instances

Install

Choose one of the following options:

  1. On macOS, use homebrew: brew tap wallix/awless; brew install awless
  2. With curl (macOS/Linux), run: curl https://raw.githubusercontent.com/wallix/awless/master/getawless.sh | bash
  3. Download the latest awless binaries (Windows/Linux/macOS) from Github
  4. If you have Golang already installed, install from the source with: go get -u github.com/wallix/awless

If you have previously used the AWS CLI or aws-shell, you don't need to configure anything! Your config will be automatically loaded (i.e. ~/.aws/{credentials,config}) and awless will prompt for any missing info.

Main features

video of a few awless commands
Note that the video above is in APNG and requires a recent browser.

  • Aliasing of resources through their natural name so you don't have to always use cryptic ids that are impossible to remember

  • awless show : Explore a resource - even offline thanks to the sync ;) - given only a name (or id/arn) showing its properties, relations, dependencies, etc.

  • awless run : Create, update and delete complex infrastructures with smart defaults and sound auto-complete through awless templates, ex: awless run my-awless-templates/create_my_infra.aws

  • Hundreds of powerful CRUD CLI one-liners integrated in the awless templating engine:

    $ awless create instance -h
    $ awless create vpc -h
    $ awless attach policy -h
    etc.
    
  • awless log : Easy reporting of all the CLI template executions

  • awless revert : Revert of executed templates and resources creation

  • Create instances straight from a distro name. No need to know the region or AMI ;) (free tier community bare distro only, see awless create instance -h)

    $ awless create instance distro=debian
    $ awless create instance distro=coreos
    $ awless create instance distro=redhat::7.2 type=t2.micro
    $ awless create instance distro=debian:debian:jessie lock=true
    $ awless create instance distro=amazonlinux:amzn2
    etc.
    
  • Leveraging AWS userdata to provision instance on creation from remote (i.e http) or local scripts: awless create instance ... userdata=/home/john/...

  • awless ssh : Clean and simple SSH to public & private instances using only a name

    $ awless ssh my-production-instance
    $ awless ssh redis-prod --through jump-server
    $ awless ssh 34.215.29.221
    $ awless ssh db-private --private
    $ awless ssh 172.31.77.151 --port 2222 --through my-proxy --through-port 23
    etc.
    
  • awless switch : Switch easily between AWS accounts (i.e. profile) and regions

     $ awless switch admin eu-west-2
     $ awless switch us-west-1
     $ awless switch mfa
     etc.
    
  • awless list : Clear and easy listing of multi-region cloud resources (subnets, instances, users, buckets, records, etc.) on AWS EC2, IAM, S3, RDS, AutoScaling, SNS, SQS, Route53, CloudWatch, CloudFormation, Lambda, etc.

  • Transparently syncing cloud resources locally to a graph representation in order for the CLI to leverage data and their relations in other awless commands and in an offline manner (more on the sync)

  • awless sync : Explicit and manual command to fetch & store resources locally. Then query & inspect your cloud offline

  • Output formats either human (Markdown-compatible tables) or machine readable (csv, tsv, json, ...): --format

  • Listing filters via resources properties or resources tags: --filter property=val, --tag Env=Production, --tag-value Purchased, --tag-key Dept,Internal

  • awless inspect : Leverage experimental inspectors which are small CLI utilities to run analysis on your cloud resources graphs

  • awless completion : CLI autocompletion for Unix/Linux's bash and zsh

Getting started

Take the tour at Getting Started (wiki).

Or read the introductory blog post about awless.

More articles:

Awards

About

awless is an open source project created by Henri Binsztok, Quentin Bourgerie, Simon Caplette and François-Xavier Aguessy at WALLIX. awless is released under the Apache License and sponsored by Wallix.

Disclaimer: Awless allows for easy resource creation with your cloud provider;
we will not be responsible for any cloud costs incurred (even if you create a 
million instances using awless templates).

Contributors are welcome! Please head to Contributing (wiki) to learn more. Note that awless uses triplestore another project developped at WALLIX.

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
acceptance
aws
DO NOT EDIT This file was automatically generated with go generate DO NOT EDIT This file was automatically generated with go generate
DO NOT EDIT This file was automatically generated with go generate DO NOT EDIT This file was automatically generated with go generate
aws
doc
DO NOT EDIT This file was automatically generated with go generate
DO NOT EDIT This file was automatically generated with go generate
spec
DO NOT EDIT This file was automatically generated with go generate DO NOT EDIT This file was automatically generated with go generate DO NOT EDIT This file was automatically generated with go generate Copyright 2017 WALLIX Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License.
DO NOT EDIT This file was automatically generated with go generate DO NOT EDIT This file was automatically generated with go generate DO NOT EDIT This file was automatically generated with go generate Copyright 2017 WALLIX Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License.
properties
DO NOT EDIT This file was automatically generated with go generate
DO NOT EDIT This file was automatically generated with go generate
rdf
DO NOT EDIT This file was automatically generated with go generate
DO NOT EDIT This file was automatically generated with go generate
gen
aws
env

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL