babashka

https://github.com/babashka/babashka. Also see #sci, #nbb and #babashka-circleci-builds .
borkdude 2021-01-13T13:00:40.116100Z

pod-babashka-aws 0.0.4 released: bumped deps and a fix for forwarding a system property by @i.slack

1👍2❤️
2021-01-13T14:51:43.116200Z

@lukaszkorecki I added caching to the aws sso credential_process script. So ready for usage I think 🙂 It also works with the aws cli https://gist.github.com/jeroenvandijk/ace7432be94d083e63729ac313a0b78f

lukasz 2021-01-13T15:24:42.116500Z

@jeroenvandijk really cool - if I understand correctly, most SDKs can pick up the credential_process option, including bb's aws pod?

2021-01-13T16:15:35.116700Z

@lukaszkorecki yes, from experience I know this to be true for the aws cli (so maybe also python skd’s) and the java sdk (used by Amazonica). aws-api doesn’t support it yet (https://github.com/cognitect-labs/aws-api/issues/73)

lukasz 2021-01-13T16:17:45.117300Z

Awesome, that's super helpful

1👍
borkdude 2021-01-13T16:30:17.117600Z

@jeroenvandijk when you're done developing this, maybe we could add it to the docs of the pod

borkdude 2021-01-13T16:30:32.117800Z

or to an examples dir

2021-01-13T16:31:44.118Z

Yeah I was thinking of how to distribute this in a convenient way. I have more scripts like this in mind, so was actually thinking of a seperate repo. Maybe even installable via homebrew or something so it is easy to find and install

2021-01-13T16:32:18.118300Z

Also it becomes complex pretty quickly, so tests would be nice too

borkdude 2021-01-13T16:32:39.118500Z

well, maybe as a gitlib?

2021-01-13T16:33:31.118700Z

could be helpful when using it as a library. gitlib’s don’t support adding binaries to the PATH, right?

borkdude 2021-01-13T16:34:14.118900Z

well, you can check anything into git, but maybe not the best thing to do. why?

borkdude 2021-01-13T16:34:56.119100Z

what kind of binary?

2021-01-13T16:35:10.119300Z

just to make it a bit more convenient. Like how you install babashka through homebrew and not having to manage everything yourself (including updates)

2021-01-13T16:35:27.119500Z

a binary as in chmod +x script/my-babashka.clj

lukasz 2021-01-13T16:36:11.119700Z

btw, I'll most likely write my own version of the SSO provider, as for example - when configuring SSO you have to have a valid config with profiles - @jeroenvandijk version assumes that some of that is configured in source

1👍
2021-01-13T16:36:13.119900Z

I’ll look into it later. For now, I spend way too much time on everything related to this pod 😅

borkdude 2021-01-13T16:37:07.120100Z

but this was also the pod / native aws thing you have tried to come up with for a long time... right? so not time wasted...?

1💯
2021-01-13T16:37:09.120300Z

@lukaszkorecki My script only assumes you give it the right arguments in your credentials file (region, account-id, role and start url).

2021-01-13T16:38:06.120500Z

@borkdude sorry definitely didn’t mean wasted! Just that I need to focus a bit on other things and not sure when I’ll get to wrapping all these other things properly

borkdude 2021-01-13T16:39:14.120800Z

@jeroenvandijk if you are distributing .clj files, I think gitlibs are the way to go.

(require '[babashka.deps :as deps])
(deps/add-deps '{:deps {jeroenvandijk/scripts {:git/url "<https://github>..." :sha "..."}}})
(require '[jeroenvandijk.scripts.aws-thing :as aws-thing])

2021-01-13T16:39:52.121Z

Yeah looks good! Thank you

borkdude 2021-01-13T16:42:32.121300Z

Btw, I automated bumping the aws-api deps using a bb script: https://github.com/babashka/pod-babashka-aws/blob/main/script/update-deps.clj

2021-01-13T16:44:31.121700Z

ah smart

borkdude 2021-01-13T16:46:09.121900Z

And we have already 5 contributors now in such a short time. I think it's a success. Thanks for the time you put into the credential stuff especially, the gnarliest bit :)

2021-01-13T16:48:33.122100Z

I have to thank for you sure! 🙏 For putting that much time in this and not even being a real AWS user (yet, right?)

borkdude 2021-01-13T16:49:09.122300Z

Right, but we're moving to the cloud now at work too, so I'll probably be one soon (either AWS, or Azure)

2021-01-13T16:49:20.122500Z

I’m also happy with the result. I have spent a lot of time in getting AWS tools to compile with Graalvm. This will not be the last one I think

2021-01-13T16:49:43.122700Z

Ah nice. Good to hear you can start with Clojure tools from the start (when using AWS)