1## v0.1.11 [2018-06-21] 2 3### Features 4 5- [#71](https://github.com/wallix/awless/issues/71): Add support for Classic load-balancers: 6 7``` 8 $ awless list classicloadbalancers 9 $ awless create classicloadbalancer name=my-loadb subnets=[sub-123,sub-456] listeners=HTTP:80:HTTP:8080 healthcheck-path=/health/ping securitygroups=sg-54321 tags=Env:Test,Created:Awless 10 $ awless update classicloadbalancer name=my-loadb health-interval=10 health-target=HTTP:80/weather/ health-timeout=300 healthy-threshold=10 unhealthy-threshold=5 11 $ awless attach classicloadbalancer name=my-loadb instance=@redis-prod-1 12 $ awless delete classicloadbalancer name=my-loadb 13``` 14 15- [#214](https://github.com/wallix/awless/issues/214): `AWS_PROFILE` env variable now loaded in `awless` in addition to the deprecated `AWS_DEFAULT_PROFILE` thanks to @alewando 16- Better completion for `attach mfadevice` and `attach user` commands 17- [#219](https://github.com/wallix/awless/issues/219): Validate access key and secret key before writing into `~/.aws/credentials` file 18 19### Fixes 20 21- [#220](https://github.com/wallix/awless/issues/220): Add double quotes to CSV output if needed thanks to @lllama 22- Fix compilation error in templates with concatenation and reference (c.f. for example in [this template](https://gist.githubusercontent.com/fxaguessy/ef9511bf5ed8f3312904cccb96b818e8/raw/75c0f808220665441055b589be133cf711c64f37/ManageOwnMFA.aws)) 23- Parse integer beginning with '0' as string (preventing the deletion of the initial '0' for example in `... account.id=0123456789`) 24 25## v0.1.10 [2018-04-13] 26 27### Features 28 29- Much better performance when synchronising all access data (IAM, etc.) 30- Create instances now supports distro prompting for CentOS, Amazon Linux 2, CoreOS 31 32 $ awless create instance name=myinst distro=amazonlinux:amzn2 33 $ awless create instance distro=coreos 34 $ awless create instance distro=centos name=myinst 35 36- Avoiding extra throttling: Listing flag `--filter` now passes on the user wanted filtering down to the AWS API when possible so that _less unneeded resources are fetched_, _bandwidth is reduced_ and _some throttling avoided_. 37 38 For example: 39 40 $ awless ls s3objects --filter bucket=website 41 $ awless ls records --filter name=io 42 $ awless ls containertasks --filter name=my-task-definition-name 43 44- Support for region embedded in an AWS profile (i.e. shared config files ~/.aws/{credentials,config}). See #181 in Fixes for more details 45 46- [#191](https://github.com/wallix/awless/issues/191) Attach a certificate to a listener with: `awless listener attach id=... certificate=...` (see awless attach listener -h for more) 47 48 49### Fixes 50 51- [#200](https://github.com/wallix/awless/issues/200): Now paging is supported for s3 objects when listing 52- [#196](https://github.com/wallix/awless/issues/196): Regression fix SIGSEV when having AWS config with role assuming 53- [#182](https://github.com/wallix/awless/issues/182): Region embedded in profile taken into account and given correct precedence 54- [#144](https://github.com/wallix/awless/issues/144): Filtering done on AWS side when listing records for a given zone name 55- [#172](https://github.com/wallix/awless/issues/172): Filtering done on AWS side when listing containertasks for a given task definition name 56 57## v0.1.9 [2018-01-16] 58 59**In this release, the local data model has been updated to support multi-account and stale data is removed when upgrading. Local data (ex: used for completion, etc...) will progressively be synced again through your usage of awless. Although, to get all your data now under the new model, you can manually run `'awless sync'`** 60 61### Features 62 63- Support and seamless sync across multi-account (i.e. multiple profiles) and regions 64- Enriched params prompting with optional/skippable but very common params. Can be disabled with `--prompt-only-required` or forced with `--prompt-all` to leverage smart completion for all params 65- Automatically complete the username when deleting an access key by its ID, if it is contained in the local graph model: 66 * `awless delete accesskey id=ACCESSKEYID` 67- For `awless update stack` param `stackfile` can now slurp yml and json params files. Thanks to @Trane9991 ([#167](https://github.com/wallix/awless/pull/167), [#145](https://github.com/wallix/awless/issues/145)) 68- Better completion for template parameters independently of their display name 69- Aliases can now be resolved to properties other than IDs. For example, they are resolved to ARN in attach/detach/update/delete policy: `awless attach policy arn=@my-policy-name` 70- Running only `awless switch` now returns your current region and profile, allowing a quick and short region/profile lookup 71- Better completion of slice properties 72 73### AWS Services 74 75- Listing of Route53 records now contains a new column for aliases [#181](https://github.com/wallix/awless/issues/181) 76- Create an image from an existing instance. See `awless create image -h` 77 * `awless create image instance=@my-instance-name name=redis-image description='redis prod image'` 78 * `awless create image instance=i-0ee436a45561c04df name=redis-image reboot=true` 79 * List your images with `awless ls images --sort created` 80 * Delete images with an `awless revert ...` or with `awless delete image id=@redis-image` 81- [#169](https://github.com/wallix/awless/issues/169): Start/Stop a RDS database: 82 * `awless start database id=my-db-id` 83 * `awless stop database id=@my-db-name` 84 * `awless restart database id=@my-db-name` 85- Restart an EC2 instance 86 * `awless restart instance id=id-1234` 87 * `awless restart instance ids=@redis-prod-1,@redis-prod-2` 88- [#176](https://github.com/wallix/awless/issues/176): Delete a DNS record only by its awless ID (see `awless ls records`) or by its name: 89 * `awless delete record id=awls-39ec0618` 90 * `awless delete record id=@my.sub.domain.com` 91 92### Fixes 93 94- Fix regression error: errors in dry run showed but where ignored hence user could wrongly confirm to run the template 95- Delete a DNS record only by its awless ID 96 97## v0.1.8 [2017-11-29] 98 99### Features 100 101- Better prompting of template parameters 102- Overall better logging output of template execution 103 104### AWS Services 105 106- Create a database replica with: `awless create database replica=...` 107 108## v0.1.7 [2017-11-24] 109 110### Features 111 112- Better prompt completion for template parameters 113- Create instance/launchconfiguration from community distro names (`awless create instance distro=debian`). In default config value, deprecation of `instance.image` in favor of `instance.distro` (migration should be seamless). 114 * `awless create instance distro=redhat:rhel:7.2` 115 * `awless create launchconfiguration distro=canonical:ubuntu` 116 * `awless create instance distro=debian` 117- Quick way to switch to profiles and regions. Ex: `awless switch eu-west-1`, `awless switch mfa us-west-1` 118- Create a public subnet in only one command with: `awless create subnet public=true...` 119- Save directly your newly created access key in `~/.aws/credentials` with : `awless create accesskey save=true` 120- Overall better logging output of template execution 121 122### AWS Services 123 124- Update Cloudfront distribution with: `awless update distribution...` 125 126## v0.1.6 [2017-11-16] 127 128**Overall re-design of AWS commands with full acceptance testing allowing for easier external contribution, greater flexibility and scalability moving forward** 129 130### Features 131 132- [#154](https://github.com/wallix/awless/issues/154): `awless ssh` allow specifying both `--port` and `--through-port` 133- [#151](https://github.com/wallix/awless/issues/151): `awless ssh` using ip addresses. Ex: `awless ssh 172.31.68.49 --through 172.31.11.249` 134- `awless attach mfadevice` now propose to automatically add the MFA device configuration to `~/.aws/config` 135- [#158](https://github.com/wallix/awless/pull/158), [#159](https://github.com/wallix/awless/pull/159): Added bash/zsh completion to regions and profiles. Thanks to @padilo. 136 137## v0.1.5 [2017-10-05] 138 139### Features 140 141- Complete flow to enable MFA for a user, including QRCode generation 142- Much better output for `awless log`; default message (or user specified message) stored now in logs 143- [#143](https://github.com/wallix/awless/issues/143): Follow CloudFormation stack events: `awless tail stack-events my-stack-name --follow`. Thanks to @Trane9991. 144- Support concatenation between `{holes}` and `"quoted strings"` in template with `+` operator: `policy = create policy ... resource="arn:aws:iam::" + {account.id} + ":mfa/${aws:username}"` 145 146### AWS Services 147 148- Manage and listing of MFA devices: `awless create/delete/attach/detach mfadevice`, `awless list mfadevices` 149- Support [Network Load Balancers](http://docs.aws.amazon.com/elasticloadbalancing/latest/network/introduction.html): `awless create loadbalancer .... type=network ...` 150- Add conditions in policies and support multiple resources `awless create policy ... conditions=\"aws:MultiFactorAuthPresent==true\" resource=arn:aws:iam::0123456789:mfa/test,arn:aws:iam::0123456789:user/test` 151- Add conditions in role creation `awless create role name=awless-mfa-role principal-account=0123456789 conditions=\"aws:MultiFactorAuthPresent==true\"` 152- List the access keys of all users with `awless list accesskeys` (previously, only current user) 153- Fetch role trust policy document: `awless show my-role` 154 155### Fixes 156 157- Exit code is now non zero on template run with KO states 158 159## v0.1.4 [2017-09-21] 160 161### Features 162 163- Local storage of cloud data (RDF store) now done using the NTriples text format instead of a binary format (transition completely transparent for the user). New format allows more friendly git revisioning of data compared to a binary format. 164- [#87](https://github.com/wallix/awless/issues/87): Customize columns displayed in `awless list` with `--columns`: `awless ls instances --sort name --columns name,vpc,state,privateip` 165- Global `--no-sync` flag to not run any sync on command 166- `awless show policy-name/policy-id` now displays the current policy Document (in JSON). 167 168### AWS Services 169 170- Update IAM policies, to add statements with `awless update policy` 171- Add ACM certificates in infra: 172 - `awless list certificates` 173 - `awless create/delete/check certificate domains=my.firstdomain.com,my.seconddomain.com validation-domains=firstdomain.com,seconddomain.com` 174- [#123](https://github.com/wallix/awless/issues/123): Listing route tables display the association IDs. 175 176### Fixes 177- `awless ssh --through`: no reusing same conn to avoid EOF. Bug: only first user (amazonlinux) was successful (usually ec2-user) !! 178- `awless ssh --through`: on new proxy client catching error that where shadowed 179 180## v0.1.3 [2017-09-06] 181 182### Features 183 184- `awless show` command 'not found' error now suggests if resource with same reference exists in other locally synced regions 185- `awless` template language now supports lists, for example: `create loadbalancer subnets=[$subnet1, $subnet2]` 186- Variables in `awless` template language now support references, holes and lists, for example: `mysecgroups = [$secgroup1, {my.secgroup},sg-123456]` 187- `awless` template language now supports *holes* in strings, for example: `create instance name={prefix}database{version}` 188- `awless update securitygroup` can now authorize/revoke access from another security group: `update securitygroup id=sg-12345 inbound=authorize portrange=any protocol=tcp securitygroup=sg-23456` 189- Template CLI prompt: better TAB completion of resources and their properties 190- Man CLI examples for all one liners command. For example, `awless create instance -h` will display relevant CLI examples 191- Add `Type` (AWS/Customer managed) and `Attached` (true/false) columns in `awless list policies` 192- [#129](https://github.com/wallix/awless/issues/129): flag `--color=always/never` to force enabling/disabling of colored output. 193 194### AWS Services 195 196- List network interfaces with `awless list networkinterfaces` 197 198### Fixes 199 200- Fix regression: listing a resource returned no results when this resource was disabled for sync. Listing should always fetch the resources and display what is on your cloud. 201- [#130](https://github.com/wallix/awless/issues/130): Better exit status code in `awless show` command 202- Port ranges starting from *0* to *n* are no longer processed as from *n* to *n*. 203- `awless ssh --through`: works without an SSH agent running; correct StrictHostkeyChecking; correct display for `--print-config` 204 205## v0.1.2 [2017-08-17] 206 207### Features 208 209- Sync overall speed up and massive reducing in memory consumption 210- SSH `--through`: `awless ssh my-priv-inst --through my-pub-inst` allow you to connect to a private instance by going through a public one in ths same VPC. You need to have the same keypair (SSH key) on both instances. 211- Flag `--profile-sync` on `awless sync` to enable live profiling. Will dump `mem` and `cpu` Go profiling files for later inspection 212- [#109](https://github.com/wallix/awless/issues/109): Support caching of STS credentials for Multi-Factor Authentication. 213- [#126](https://github.com/wallix/awless/issues/126): Flag `--no-alias` in `awless show` force the display of IDs in relations. 214- [#126](https://github.com/wallix/awless/issues/126): Reverse sorting when listing resources with flag `--reverse` 215- [#120](https://github.com/wallix/awless/issues/120): Profile info is now included in execution logs and appended when suggesting revert action 216- [#82](https://github.com/wallix/awless/issues/82): Better template TAB completion (e.g. complete list of parameters) 217 218 219### AWS Services 220 221- Instance Profiles: List them; attach them to an instance. Ex: `attach instanceprofile name=...`, `awless ls instanceprofiles` 222- Replace in one command an InstanceProfile on a given instance with the `replace=true` param. Ex: `attach instanceprofile .... replace=true` 223- Update Route53 records with `awless update record` 224 225### Fixes 226 227- [#116](https://github.com/wallix/awless/issues/116) No more sync Out Of Memory 228 229## v0.1.1 [2017-07-06] 230 231### Features 232 233- Detach/Attach rapidly AWS policies to user, group or role with: `attach policy service=ec2 access=readonly group=sysadmin`. More info with `awless attach policy -h` 234- Better template TAB completion: suggest on properties, suggest nothing if not relevant 235- Create access keys: prompt user to potentially store them locally under a specific profile 236- Conveniently prompting and storing locally (~/.aws/credentials) for AWS profile credentials when access keys not found 237- `awless ssh`: support SSH agent thanks to @justone 238- New `--port` flag for `awless ssh`: specifying non-standard SSH port thanks to @justone 239- Use `--no-headers` flag in `awless list` to display the results without headers 240- New flag `--values-for` in `awless show` to output machine readable values for resource properties. Ex: `awless show my_instance --values-for name,publicip` 241- Sync works on best effort now. Meaning it does not bail out when an error happens (most often it can be an access right issues on some AWS services) 242- `awless ls policies` now returns: your managed policies + all policies attached to any users, role or group 243- Table display now use full terminal width when possible 244- Much friendlier first install 245 246### New AWS Services 247 248- Support of EC2 NAT Gateways: `awless list natgateways` / `awless create/delete natgateway` 249- Support [ECR](https://aws.amazon.com/ecr/) repositories and registry: `awless list repositories` / `awless create/delete repository` / `awless authenticate registry` 250- Support [ECS](https://aws.amazon.com/ecs/) clusters, services, containerinstances and containers: `awless list containerclusters/containertasks/containerinstances` `awless attach/detach/delete/start/stop containertask` 251- Create/Delete [ApplicationAutoScaling](http://docs.aws.amazon.com/ApplicationAutoScaling/latest/APIReference/Welcome.html) scalable target and policies: `awless create/delete appscalingtarget/appscalingpolicy` 252 253### Bugfixes 254- Template TAB completion: do not display non relevant id/name listing for each prompt 255- Parse successfully template parameters starting with a digit 256 257## v0.1.0 [2017-05-31] 258 259## Features 260 261- Add documentation for all template parameters (`awless create instance -h`, `awless update s3object -h`...) 262- Listing with filter invalid keys: return error and help 263- `awless whoami` now has flags to return specific account properties only: `--account-only`, `--id-only`, `--name-only`, `--resource-only`, `--type-only` 264- Rename template parameters for standardization: 265 - `delete keypair id=...` -> `delete keypair name=...` 266 - `create listener target=...` -> `create listener targetgroup=...` 267 - `delete database skipsnapshot=... snapshotid=...` -> `delete database skip-snapshot=... snapshot=...` 268 - `delete dbsubnetgroup id=...` -> `delete dbsubnetgroup name=...` 269 - `create queue maxMsgSize=... retentionPeriod=... msgWait=... redrivePolicy=... visibilityTimeout=...` -> `create queue max-msg-size=... retention-period=... msg-wait=... redrive-policy=... visibility-timeout=...` 270 271## v0.0.25 [2017-05-26] 272 273## Features 274 275- [#98](https://github.com/wallix/awless/issues/98): `awless ssh` searches SSH keys in both `~/.awless/keys` and `~/.ssh` folders. 276- When `awless ssh` in an instance, you can now specify only `-i keyname`, if the key is stored in `~/.awless/keys` or `~/.ssh`. 277- [#99](https://github.com/wallix/awless/issues/99): Suggesting the right command when typing `awless create instance ID` or `awless create ID` rather than `awless create instance id=ID` 278- Use a s3 bucket as a public website with `awless update bucket name=my-bucket-name public-website=true` 279- Set/update buckets or s3objects predefined ACL (private / public-read / public-read-write / bucket-owner-read...): `awless update s3object acl=public-read` 280- List CloudFront distributions: `awless list distributions` 281- Create/Update/Check/Delete a CloudFront distribution: `awless create/update/check/delete distribution` 282- List CloudFormation stacks: `awless list stacks` 283- Create/Update/Delete a CloudFormation stack: `awless create/delete stack` 284- `awless log --raw-json` shows the full info stored on template execution (context, fillers used, region, ...). Typically this contextual info can be reused for replay and updates of templates 285 286## v0.0.24 [2017-05-22] 287 288### Features 289 290- Template author is now persisted in awless log using the caller identity 291- [#93](https://github.com/wallix/awless/issues/93): Supporting EC2 tags: syncing locally; filtering in `awless list` with --tag, --tag-value, --tag-key 292- [#84](https://github.com/wallix/awless/issues/84): Create AMI by importing VM image from S3: `awless import image bucket=my-bucket s3object=my-object`. Add template to create AMI from local VM file (OVA, VMDK ...): `awless run repo:upload_image`. 293- Listing pending import image tasks with `awless list importimagetasks` 294- Deleting images and optionally its related snapshots `awless delete image delete-snapshots=true` 295- Create/Update/Delete login profiles (AWS Console credentials): `awless create/update/delete loginprofile username=...` 296- Autowrapping results in tables when too long for `awless list`. No longer truncate results in `--format csv/tsv/json` 297- Adjust the width of table columns to the terminal width in `awless show` 298- Using local EC2 metadata to set region when installing awless on an EC2 instance 299- [#94](https://github.com/wallix/awless/issues/94): Add short flags for `--aws-profile`: `-p` and `--aws-region`: `-r` 300 301### Bugfixes 302 303- Listing in CSV: remove extra spaces; proper listing in TSV (only 1 tab separator) 304- Avoid double sync on first install due to pre defined default region value us-east-1 305- [#92](https://github.com/wallix/awless/issues/92): Impossible to set a region in config when `aws.region` was empty 306- [#89](https://github.com/wallix/awless/issues/89): Fix `awless whoami` when using STS credentials. 307 308## v0.0.23 [2017-05-05] 309 310### Features 311 312- Create and attach role to a user or resource (instance, ...). See an [example](https://github.com/wallix/awless-templates#role-for-resource) 313- Get my IP as seen by AWS: `awless whoami --ip-only`. Example: `awless create securitygroup ... cidr=$(awless whoami --ip-only)/32 ...` 314- [#86](https://github.com/wallix/awless/issues/86): SSH using private IP with `--private` flag. Thanks @padilo. 315- `awless ssh` now checks the remote host public key before connecting. Check can be disabled with the (insecure) `--disable-strict-host-keychecking` flag. 316- [#74](https://github.com/wallix/awless/issues/74): support of encrypted SSH keys for generation `awless create keypair encrypted=true` and in `awless ssh`. 317- Better documentation of [awless-templates](https://github.com/wallix/awless-templates); listing remote templates in awless with `awless run --list`. 318- Friendlier (using units: B, K, M, G) display for storage size (s3objects, volumes, lambda functions) 319- Better help for template parameters (ex: `awless create loadbalancer -h`) 320- Create/delete and list Lambda functions: `awless list functions` / `awless create/delete function` 321- Create/delete/attach/detach and list elastic IPs: `awless list elasticips` / `awless create/delete/attach/detach elasticip` 322- Create/delete and list volume snapshots: `awless list snapshots` / `awless create/delete snapshot` 323- Create/delete and list autoscaling launch configurations, scaling policies and scaling groups: `awless create/delete launchconfiguration/scalingpolicy/scalinggroup`. See an [example](https://github.com/wallix/awless-templates/#group-of-instances-scaling-with-cpu-consumption) 324- Create/delete/start/stop/attach/detach and list cloudwatch alarms. List cloudwatch metrics: `awless list alarms/metrics` 325- List EC2 images (AMIs) of which you are the owner: `awless list images` 326- Copy an EC2 image from a given region to the current region: `awless copy image name=... source-id=... source-region=...` 327- List your IAM access keys: `awless list accesskeys` 328 329### Bugfixes 330 331- Update SSH library to fix [CVE-2017-3204](http://www.cve.mitre.org/cgi-bin/cvename.cgi?name=2017-3204). 332- Take the file name rather than full path as default name when uploading a s3object 333- Correctly create repo on first install on machine with git not installed 334 335## v0.0.22 [2017-04-13] 336 337### Features 338 339- Amazon [**userdata**](http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/user-data.html) support. Give the data as local file or remote http file resource. Ex: `awless create instance userdata=/tmp/mydata.sh ...` or `awless create instance userdata=https://gist.github.com/jsmith/5f58272fa5406`. 340- Global rename of `storageobject` to `s3object` for shorter typing in CLI. 341- awless model/storing is now full RDF ;). Allow exploration of all your infra in RDF tools and ontology editor (Ex: [Protege](http://protege.stanford.edu/)) 342- Faster, better and simpler RDF & triples management now done through the nifty library [triplestore](https://github.com/wallix/triplestore) 343- Ability to use strings with spaces and special characters in template parameters by surrounding them with single or double quotes. 344- Loggers are now sent to the stderr file descriptor which makes easier piping and redirecting output. 345- Warn when creating an instance without access key. 346- ssh: print SSH configuration (`~/.ssh/config`) or the CLI one-liner to connect with SSH using `--print-config` or `--print-cli` flags. 347- ssh: better handle when several instances have the same name (e.g., with a running and a terminated instance) 348- ssh: more warning; provide help and context on failing connections 349- Manage properly secgroups on instances with `awless attach/detach secgroup id=... instance=@my-instance` 350- Logging more info when running templates 351 352### Bugfixes 353 354- `awless whoami` now supports displaying info for `root` user and user with org path 355- Use `securitygroup` rather than `group` in templates, when appropriate. 356- Use `keypair` rather than `key` in templates, when appropriate. 357- Fix the fact you could not attach multiple security groups to an instance 358- Reverting the creation of a load balancer now waits the deletion of its network interfaces 359 360## v0.0.21 [2017-03-23] 361 362### Features 363 364- `awless whoami` now returns your identity, your attached (i.e. managed), inlined and group policies 365- Rudimentary security groups port scanner inspector via `awless inspect -i port_scanner` 366- Template: compile time check of undefined or unused references 367- Run official remote templates without specifying full url: `awless run repo:create_vpc` 368- [#78](https://github.com/wallix/awless/issues/78): Show progress when uploadgin object to storage 369- [#81](https://github.com/wallix/awless/issues/81): Global force flag `--force` to bypass confirm prompt 370 371### Bugfixes 372 373- Fix regression: run templates/one-liners failed on `storageobject`, `subscription` entities 374- Filtering in `awless list --filter` now works with column types other than string 375- Users, groups and policies are now independent of the region 376- [#83](https://github.com/wallix/awless/issues/83): Syncing while offline does not clear local cloud infra 377 378## v0.0.20 [2017-03-20] 379 380### Features 381 382- Auto completion of id/name to help fill in easily any missing info before template execution 383- Better error messaging on parsing template errors 384- Infra: basic support of RDS: listing, creation and deletion of databases and database subnets: `awless list databases/dbsubnetgroups`; `awless create/delete database/dbsubnetgroup` 385- Infra: attach/detach an `instance` to a `targetgroup` 386- Infra: delete tag: `awless delete tag` 387- Access: create an AWS access key for a user 388- DNS: allow to revert creation/deletion of records 389- [#80](https://github.com/wallix/awless/issues/80) DNS: return the ChangeInfo id when creating/deleting a record 390 391### Bugfixes 392 393- [#79](https://github.com/wallix/awless/issues/79): `awless list records` do not add new lines between records. 394- Better compute table columns width to adjust the number of columns to display exactly to the terminal width. 395 396## v0.0.19 [2017-03-16] 397 398### Features 399 400- [#76](https://github.com/wallix/awless/issues/76): Show private IP and availability zones when listing instances. 401- Run remote template when path prefixed with `http`. Ex: `awless run http://github.com/wallix/awless-templates/...` 402- Fetch more instances properties when showing instances (ex: network interfaces, public and private DNS, Root device type and name...) 403- DNS: listing Route53 zones and records `awless list zones/records` 404- DNS: basic creation/deletion of Route53 zones and records `awless create/delete zone/record` 405- Infra: detach EBS volumes `awless detach volume` 406- Config: enable/disable the syncing of Route53 service `awless config set aws.dns.sync` 407- All listing with default format are now Markdown table compatible. 408- Better display of `awless show`. Added `--siblings` flag to display exhaustively all siblings 409- Reverse the sorting order when listing instances sorted by "up since" 410 411### Bugfixes 412 413- Fix `awless show` to properly show relations between groups and users 414 415## 0.0.18 [2017-03-13] 416 417### Features 418 419- infra: support the creation/deletion of ELBv2 loadbalancers, listeners and target groups: `awless create loadbalancer/listener/targetgroup` 420- infra: add tag `Name` to subnets. 421- Format `tsv` supported when listing: `awless list subnets --format tsv` 422- Pricer inspector now resolves prices for any regions: `awless inspect -i pricer` 423 424### Bugfixes 425 426- Fix alias, required and extra params parsing in template runs 427 428## 0.0.17 [2017-03-09] 429 430If you have any data or config issues, you can run `rm -Rf ~/.awless/` to start with a fresh install. 431 432### Features 433 434- [#65](https://github.com/wallix/awless/issues/65): `awless ssh`: use existing SSH client if available, otherwise fallback on builtin SSH. 435- `awless show` resolves automatically on id, name or arn without any prefixing (previously it was '@') 436- [#47](https://github.com/wallix/awless/issues/47): Enable/disable sync per services or resources through config. Ex: `awless config set aws.notification.sync false`, `awless config set aws.storage.storageobject.sync true`. 437- [#55](https://github.com/wallix/awless/issues/55): Dynamically change AWS region/profile with global flags `--aws-region us-west-1` or `--aws-profile myprofile`. 438- [#73](https://github.com/wallix/awless/issues/73): `AWS_DEFAULT_REGION` env variable now loaded in `awless`. It takes precedence over `aws.region`. 439- [#73](https://github.com/wallix/awless/issues/73): `AWS_DEFAULT_PROFILE` env variable now loaded in `awless`. It takes precedence over `aws.profile`. 440- Better output of `awless config list` (doc per variable, etc.). 441- Global default menu with clearer one-liner display. 442- Simplification of the templating engine using decoupled compile passes. 443- Config setters now provide dialogs (ex: `awless config set instance.type` or `awless config set aws.region`). 444- [#54](https://github.com/wallix/awless/issues/54): `awless ssh`: specify the keyfile to use with `-i /path/toward/key` flag. 445- [#64](https://github.com/wallix/awless/issues/64): `awless ssh`: columns and lines automatically adapt to terminal with/height. 446 447- Attach/detach policy to user/group (see [wiki examples](https://github.com/wallix/awless/wiki/Examples)) 448- Attach/detach user to group (see [wiki examples](https://github.com/wallix/awless/wiki/Examples)) 449- List AWS load balancers, target groups and listeners with `awless list loadbalancers/targetgroups/listeners`. Show their relations with, e.g. `awless show LOAD_BALANCER`. 450 451### Bugfixes 452 453- [#12](https://github.com/wallix/awless/issues/12): Support AWS pagination when fetching resources in AWS IAM. 454- Template parsing: allow digits in refs; allow regular chars in alias declaration 455- Template: all aliases now resolves correctly from file or CLI. Ex: `awless create instance subnet=@my-subnet` 456 457## 0.0.16 [2017-03-01] 458 459### Features 460 461- Allow simple fuzzy search for listing filters. Ex: `awless list instances --filter state=run` 462- Revert: waiting instance termination when deleting a vpc/subnet/instance hierarchy. 463 464### Bugfixes 465 466- Fix regression: timeout too low for HTTP requests with AWS. 467 468## 0.0.15 [2017-02-28] 469 470As model/relations for resources may evolve, if you have any issues with models related commands, you can run `rm -Rf ~/.awless/aws/rdf` to start a fresh RDF model. 471 472### Features 473 474- [#6](https://github.com/wallix/awless/issues/6): Create Linux installer shell script: `curl https://raw.githubusercontent.com/wallix/awless/master/getawless.sh | bash` 475- [#42](https://github.com/wallix/awless/issues/42), [#60](https://github.com/wallix/awless/issues/60), [#66](https://github.com/wallix/awless/issues/66): Better load AWS credentials (support profile credentials, MFA and crossaccount profile access) 476- [#32](https://github.com/wallix/awless/issues/32): Basic support of [SNS](https://aws.amazon.com/sns/) (CRUD for topics and subscriptions) 477- [#32](https://github.com/wallix/awless/issues/32): Basic support of [SQS](https://aws.amazon.com/sqs/) (CRUD for queues) 478- [#53](https://github.com/wallix/awless/issues/53): Filter results in listings. Ex: `awless ls instances --filter state=running,"Access Key"=my-key` or the equivalent `awless list instances --filter state=running --filter "Access Key"=my-key` 479- Better help menus by splitting one-liner template commands from general commands 480- Run template: better dialog and remove noisy info 481- Template validation: notify on unexpected params; check names unicity against local graph 482- Log contextual error instead of hard failure when user has no rights to sync a service 483 484### Bugfixes 485 486- [#57](https://github.com/wallix/awless/issues/57): Properly fetch buckets when they are in the `us-east-1` region. 487- [#12](https://github.com/wallix/awless/issues/12): Support AWS pagination when fetching resources in AWS SNS and EC2. 488 489## 0.0.14 [2017-02-21] 490 491As model/relations for resources may evolve, if you have any issues with models related commands, you can run `rm -Rf ~/.awless/aws/rdf` to start a fresh RDF model. 492 493### Features 494 495- [#39](https://github.com/wallix/awless/issues/38), [#38](https://github.com/wallix/awless/issues/33): Remove data collection & sending 496- [#33](https://github.com/wallix/awless/issues/33): Ability to set AWS profile using `aws.profile` config key 497- Better output for `awless sync` 498- `awless ls` now an alias for `awless list` 499 500### Bugfixes 501 502- [#44](https://github.com/wallix/awless/issues/44): Fetch only the S3 buckets and related objects of the current region. 503- [#52](https://github.com/wallix/awless/issues/52), [#34](https://github.com/wallix/awless/issues/34): Properly fetch route tables, even if a route contains several destinations. 504- [#37](https://github.com/wallix/awless/issues/37): Load the region from database when initializing cloud services rather than `awless` environment. 505- [#56](https://github.com/wallix/awless/issues/56): Do not require a VPC as parent of security groups nor route table. 506