portkey

Portkey: from REPL to Serverless in one call
viesti 2017-12-30T10:29:21.000004Z

Listening to https://soundcloud.com/defn-771544745/29-zach-the-mighty-oakes, Zach Oakes made a nice reminder about just being able to publish a php script and hit a url and see it working in the days of cgi scripts

viesti 2017-12-30T10:29:47.000095Z

maybe should mention this project to him :)

viesti 2017-12-30T14:23:04.000066Z

hmm, so thinking that https://github.com/oakes/Lightmod could use portkey for deploying to AWS Lambda

viesti 2017-12-30T14:23:27.000048Z

this would be the “PHP” for Clojure 🙂

viesti 2017-12-30T14:42:40.000085Z

Hi! @sekao, wanted to ask if you’ve thought about using AWS Lambda for deploying a webapp, maybe from inside Lightmod

viesti 2017-12-30T14:43:33.000034Z

We’ve been working on a library that allows to lift a Clojure function to AWS Lambda, right from the repl, doing packaging and API gateway configuration at the same time

viesti 2017-12-30T14:43:38.000006Z

https://github.com/portkey-cloud/portkey

viesti 2017-12-30T14:44:06.000052Z

kind of like scp index.php <mailto:me@my-server.com|me@my-server.com>:/www, but for Clojure and using AWS Lambda for the server

sekao 2017-12-30T17:19:07.000055Z

hello, wow that is really neat! does portkey have the ability to use arbitrary clojure dependencies? i haven't used Lambda before so i'm not sure i understand it.

viesti 2017-12-30T18:25:13.000050Z

yes, it walks the bytecode, freezes Clojure vars packages them and unfreezes them at lambda process startup. There are cases that are out of scope, say loading libraries at runtime with Class/forName (jdbc drivers for example) in which case the class can be kept manually in package with a :keep option.

viesti 2017-12-30T18:28:36.000034Z

I haven't been too active lately with portkey and there are some issues currently but just had the idea that running a webapp locally and then publishing to Lambda might be neat in a Clojurebridge setup. Although there is some amount of "magic" going on, I like the idea of quick PHP style publishing, although the runtime is a bit different than Apache+PHP :)