[{"data":1,"prerenderedAt":403},["ShallowReactive",2],{"project-21921293":3},{"id":4,"name":5,"line":6,"line_source":7,"title":8,"url":9,"domain":10,"maker":11,"posted_at":12,"year":13,"points":14,"comments":15,"rank_in_year":16,"shown_in_year":17,"top":18,"tier":19,"category":20,"subcategory":21,"format":22,"keywords":23,"reception":29,"sentiment":30,"stance_mix":31,"scored_comments":36,"aspects":37,"strip":44,"post_text":46,"what":47,"said":102,"maker_in_thread":200,"shape":206,"grid":211,"attempts":365,"same_week":366,"maker_shows":41,"maker_hidden":395,"reader_version":396,"card":397},"21921293","Bash-My-AWS","CLI Commands for AWS","title","Show HN: Bash-My-AWS – CLI Commands for AWS","https:\u002F\u002Fbash-my-aws.org\u002F","bash-my-aws.org","mike-bailey",1577803736,2019,155,63,262,2195,12,"notable","dev_tools","aws command line wrapper","cli",[24,25,26,27,28],"aws cli","bash","aws command line","shell scripts","aws management","curious",0.167,{"positive":32,"neutral":33,"mixed":34,"critical":35},10,13,0,2,25,{"idea":38,"execution":40,"docs":42,"design":43},{"positive":39,"critical":35},5,{"positive":41,"critical":34},1,{"positive":41,"critical":34},{"positive":41,"critical":34},[34,34,34,34,34,39,39,39,45,39,39,34,41,45,45,45,34,45,34,34,34,34,34,34,34,34,34,34,34,34,34,45,45,41,45,34,39,34,39,39],3,null,{"problem":48,"audience":46,"pricing":46,"motivation":64,"time_to_build":71,"stack":78,"openness":99,"stage":100,"team_size":101},{"value":49,"source":50,"evidence":51},"AWSCLI commands are verbose and hard to remember","commenter",[52,56,60],{"id":53,"by":54,"text":55},"21934598","wjoe","This looks pretty great, while the AWS CLI is very comprehensive, I always struggle to remember which flags are needed for each command, and it's not very consistent. One thing…",{"id":57,"by":58,"text":59},"21928943","dopylitty","If you want to easily manipulate your AWS environment from the command line use the AWS cmdlets for PowerShell. The fact that PowerShell cmdlets work on objects instead of text…",{"id":61,"by":62,"text":63},"21931318","m0zg","Coming from Google Cloud, I couldn't deal with the atrocity that is awscli, so I ended up eventually implementing the bare minimum of shell wrappers to at least start, stop, ssh…",{"value":65,"source":50,"evidence":66},"Maker prefers command line over ClickOps and it makes them more effective at work",[67],{"id":68,"by":69,"text":70},"21931953","failmode","I have sometimes questioned whether I should be spending my personal time developing an open source tool so tied to a single companies services. My reasons for continuing…",{"value":72,"source":73,"evidence":74},"many hundreds of hours since 2014","maker",[75],{"id":76,"by":11,"text":77},"21921478","It's probably my fault if you haven't heard of Bash-My-AWS. Bash-My-AWS is a simple but extremely powerful set of CLI commands for managing resources on Amazon Web Services. They…",[79,85,89,95],{"value":80,"source":50,"evidence":81},"Bash",[82],{"id":83,"by":69,"text":84},"21931298","Bash-My-AWS wraps AWSCLI as thinly as possible and makes use of JMESPath and the text output. The result is you have a simple set of commands that don't require you to type…",{"value":86,"source":50,"evidence":87},"AWS CLI",[88],{"id":83,"by":69,"text":84},{"value":90,"source":50,"evidence":91},"JMESPath",[92],{"id":93,"by":69,"text":94},"21931261","jq is only used in three of the >120 functions (for sort-keys functionality). All the rest use JMESPath. If anyone can help with a solution I'd be delighted to remove the…",{"value":96,"source":50,"evidence":97},"jq",[98],{"id":93,"by":69,"text":94},"open_source","launched","unknown",{"praise":103,"objections":121,"requests":140,"questions":151,"alternatives":166},[104,117],{"value":105,"source":50,"evidence":106},"Simple, powerful wrapper that makes AWS CLI usable",[107,110,113],{"id":108,"by":69,"text":109},"21932282","AWSCLI backward compatibility has been so good, I've never had a Bash-My-AWS command fail due to a change. AWS CLI v2 previews were released in Nov 19 and while this may contain…",{"id":111,"by":69,"text":112},"21931416","Windows users have commented at how Bash-My-AWS's innovative use of unix streams reminds them of PowerShell. The listing functions output lines of tokens. The first token is the…",{"id":114,"by":115,"text":116},"21926546","pensatoio","What really sells me on this tool is the ability to examine the underlying awscli command and transformations. I’ll be giving this a go in the new year!",{"value":118,"source":50,"evidence":119},"Transparent: shows underlying awscli commands",[120],{"id":114,"by":115,"text":116},[122,129],{"value":123,"source":50,"evidence":124},"Only covers a few core AWS services",[125],{"id":126,"by":127,"text":128},"21932572","SmirkingRevenge","The annoying part about AWS putting so little effort into smoothing out the rough edges in their tooling, ux and services, is that the whole ecosystem of helpers\u002Fwrappers…",{"value":130,"source":50,"evidence":131},"Website and commandeer tool require JavaScript",[132,136],{"id":133,"by":134,"text":135},"21932506","dastx","Why does your main website (linked in your comment) require JS to run? I've not seen anything that warrants that requirement. I wish people would stop making websites that's…",{"id":137,"by":138,"text":139},"21934713","Hamuko","Spoiler alert: if you don’t want to run JavaScript in your browser, you’re not going to enjoy this application.",[141,145],{"value":142,"source":50,"evidence":143},"Support for switching regions and accounts\u002Fprofiles easily",[144],{"id":53,"by":54,"text":55},{"value":146,"source":50,"evidence":147},"Support for AWS SSO",[148],{"id":149,"by":69,"text":150},"21934750","They're good questions. I can tell you how I manage regions and accounts but am interested in learning how people think Bash-my-AWS might better support users in this regard. The…",[152,159],{"value":153,"source":50,"evidence":154},"How does it differ from existing git extensions",[155],{"id":156,"by":157,"text":158},"21934893","scarface74","How is this different than all of the git extensions that people publish.",{"value":160,"source":50,"evidence":161},"Why depend on jq when JMESPath is built in",[162],{"id":163,"by":164,"text":165},"21928756","Terretta","Interesting this requires ‘jq’ when JMESpath is built into AWS CLI already. http:\u002F\u002Fjmespath.org\u002F",[167,174,178,185],{"value":168,"source":50,"evidence":169},"Commandeer desktop GUI",[170],{"id":171,"by":172,"text":173},"21931075","bob33","for anyone on this thread that is interested. I run https:\u002F\u002Fgetcommandeer.com which is a tool to manage your AWS and IAC infrastructure from a desktop GUI. I love this…",{"value":175,"source":50,"evidence":176},"AWS cmdlets for PowerShell",[177],{"id":57,"by":58,"text":59},{"value":179,"source":50,"evidence":180},"Aegea",[181],{"id":182,"by":183,"text":184},"21929920","ak217","I have developed something similar on top of the AWS CLI that incorporates a bunch of integrations with other tools like the cloudinit and various bits of Batch-related…",{"value":186,"source":50,"evidence":187},"Terraform, CloudFormation, Pulumi",[188,192,196],{"id":189,"by":190,"text":191},"21929477","weberc2","If I’m understanding you correctly, I think you want CloudFormation?",{"id":193,"by":194,"text":195},"21929748","avip","Like it or not (I do...) terraform is the de-facto industry standard, and pretty much the only mature cloud resources management tool I'm aware of. It is unwise IMHO to use…",{"id":197,"by":198,"text":199},"21929647","natekupp","We use Pulumi to manage both our GCP and AWS resources, and we really like it. You might consider using Terraform directly if you want something more mature.",{"comments":35,"answered":34,"key":201},[202,203],{"id":76,"text":77},{"id":204,"text":205},"22045466","Here's the video from my talk on Bash-my-AWS at LinuxConf 2020 in the Gold Coast Australia. https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=UbH_cg7Ev1Q",{"commenters":207,"max_depth":208,"maker_replies":35,"first_comment_mins":209,"lifespan_hours":210},44,6,27,336,[212,214,216,218,219,221,223,225,228,231,234,236,239,242,245,248,250,251,253,255,256,258,260,263,266,269,272,274,277,280,283,284,286,289,292,295,296,299,300,303,306,309,311,314,317,320,322,324,327,330,335,337,339,342,345,346,349,351,352,354,357,360,362],[76,34,34,213,11,41],"project\u002Fpositive\u002Fidea",[171,34,34,215,172,34],"other\u002Fneutral\u002Fnone",[133,34,34,217,134,34],"other\u002Fneutral\u002Fdesign",[137,34,34,215,138,34],[220,34,34,215,172,34],"21935533",[222,34,34,215,172,34],"21936274",[204,34,34,224,11,41],"maker\u002Fneutral\u002Fnone",[226,41,39,213,227,34],"21929393","nahikoa",[229,41,34,215,230,34],"21929721","dajohnson89",[232,41,39,213,233,34],"21930714","Aperocky",[68,41,39,235,69,34],"maker\u002Fpositive\u002Fnone",[237,41,39,235,238,34],"21932690","notyourwork",[240,41,45,224,241,34],"21932721","NotSammyHagar",[243,41,45,244,69,34],"21932974","project\u002Fneutral\u002Fnone",[246,41,39,213,247,34],"21931974","sturgill",[108,41,39,249,69,34],"project\u002Fpositive\u002Fexecution",[126,41,34,215,127,34],[252,41,34,215,238,34],"21932685",[156,41,41,254,157,34],"project\u002Fcritical\u002Fidea",[61,35,34,215,62,34],[53,45,45,257,54,34],"project\u002Fneutral\u002Fdocs",[149,45,45,259,69,34],"maker\u002Fneutral\u002Fdocs",[163,261,45,262,164,34],4,"project\u002Fneutral\u002Fexecution",[264,261,34,215,265,34],"21928855","fiddlerwoaroof",[267,261,45,262,268,34],"21929836","kesor",[270,261,34,215,271,34],"21930476","justin_oaks",[93,261,45,273,69,34],"maker\u002Fneutral\u002Fexecution",[275,261,45,273,276,34],"21932853","kafana",[278,39,34,215,279,34],"21929250","TheSpiciestDev",[281,39,34,215,282,34],"21929271","zbruhnke",[189,39,34,215,190,34],[285,39,34,215,279,34],"21929583",[287,39,34,215,288,34],"21929700","stevekemp",[290,39,34,215,291,34],"21930343","mypalmike",[293,39,34,294,279,34],"21957300","commenter\u002Fneutral\u002Fnone",[197,39,34,215,198,34],[297,39,34,215,298,34],"21929679","cosaquee",[193,39,34,215,194,34],[301,39,34,294,302,34],"21930723","yjftsjthsd-h",[304,39,34,294,305,34],"21931026","LilBytes",[307,39,34,215,308,34],"21930795","crtlaltdel",[310,39,34,215,172,34],"21931062",[312,39,34,215,313,34],"21933931","Galanwe",[315,39,34,215,316,34],"21934512","Aeolun",[318,39,34,215,319,34],"21929879","parfamz",[321,39,34,294,183,34],"21929955",[323,39,34,294,305,34],"21931069",[325,39,34,215,326,34],"21933604","arman_ashrafian",[328,208,34,215,329,34],"21933376","efitz",[331,332,45,333,334,34],"21929979",7,"project\u002Fneutral\u002Fidea","alpb",[336,332,45,262,69,34],"21931378",[57,338,41,254,58,34],8,[340,338,45,262,341,34],"21929050","dvtrn",[343,338,34,294,344,34],"21930091","jolux",[83,338,45,262,69,34],[347,338,34,215,348,34],"21929758","jrockway",[350,338,34,215,172,34],"21931302",[111,338,39,213,69,34],[182,353,34,215,183,34],9,[355,32,45,244,356,34],"21933646","iCarrot",[358,32,39,359,69,34],"21933692","project\u002Fpositive\u002Fdesign",[114,361,39,213,115,34],11,[363,361,39,364,69,34],"21931545","maker\u002Fpositive\u002Fdocs",[],[367,372,377,382,386,390],{"id":368,"name":369,"points":370,"category":371},"21923940","isocity",593,"games",{"id":373,"name":374,"points":375,"category":376},"21921165","One Page Calendar 2020",517,"productivity",{"id":378,"name":379,"points":380,"category":381},"21887848","Eschersket.ch",386,"creative",{"id":383,"name":384,"points":385,"category":371},"21927076","car",308,{"id":387,"name":388,"points":389,"category":381},"21891053","CoreUI Icons",238,{"id":391,"name":392,"points":393,"category":394},"21926666","Nodetube",151,"web_saas",false,"v2",{"id":398,"name":5,"line":6,"ai":395,"cat":20,"year":13,"points":14,"comments":15,"rec":29,"s":399,"top":18,"kw":400,"maker":11,"domain":10,"tier":19,"attempts":34,"strip":401,"url":9,"mix":402,"praise":105,"objection":123,"sub":21},21921293,0.17,[24,25,26,27,28],"0000055535501333030000000000000331305055",[32,33,34,35],1794036584615]