的蓮測試的AWS LAMBDA API(link)是從一個Javascript BLOB創建lambda函數的一個簡單的例子(role
是一個角色的ARN字符串,可以創建Lambda表達式):如何從Clojure項目或jar中創建AWS Lambda函數?
(def handler "exports.helloWorld = function(event, context) {
console.log('value1 = ' + event.key1)
console.log('value2 = ' + event.key2)
console.log('value3 = ' + event.key3)
context.done(null, 'Hello World')
}")
(create-function :role role :function handler)
有誰知道create-function
是否可以從jar中創建Lambda?簡單地將文件流或二進制字符串傳遞給create-function
是一個壞主意,即使它確實有效?
我想我可以在AWS CLI中使用bash腳本從jar中創建一個lambda,但首先我想檢查一下在Clojure中是否有一個已知的簡單方法。
另一種選擇是將jar上傳到S3存儲桶,然後讓CloudFormation腳本部署它,基於示例here。看起來有點愚蠢,因爲有一個S3存儲桶只是爲了容納構建物,而Lambda會自己存儲它們。
如果這個例子發生任何事情,相關的工具是來自https://github.com/mhjort/clj-lambda-utils的'lein lambda'。看起來像是一個很好的解決方案,下次我與Lambdas合作時,我會嘗試一下。 –