2

Ich benutze das Serverless Framework 1.x und ich möchte meine serverless.yml definieren, um auf eine Funktion zu verweisen, die sich in einem anderen Ordner (nicht in der Stammebene) befindet.Wie referenziere ich eine Funktion, die nicht mit dem Serverless Framework im Stammordner ist?

Zum Beispiel in der folgenden Ordnerstruktur, möchte ich eine handler() Funktion verweisen, die in einer function1.js Datei in den Ordner Funktionen definiert ist.

serverless.yml 
functions/ 
    function1.js 
    function2.js 
    function3.js 
package.json 
node_modules/ 
    .. 

Alle Beispiele, die ich das folgende Basisszenario sehen überlegen, wo die Datei im Stamm ist:

serverless.yml 
handler.js 

Wo die serverless.yml Datei ist definiert durch:

functions: 
    hello: 
    handler: handler.hello 
+0

ich habe selbst beantwortet diese Frage in der Hoffnung, Zukunft Leser zu helfen. Diese Frage wurde von [diesem] inspiriert (http://stackoverflow.com/questions/42415688/serverless-framework-with-custom-packaging). – Zanon

Antwort

4

Der Serverless Framework-Zugriff funktioniert in anderen Ordnern mit der folgenden Syntax:

folder/filename.function 

Also, wenn wir eine Datei mit dem Namen function1.js mit einer Funktion handler(), die wir ausführen wollen, wenn unsere Lambda-Funktion aufgerufen wird, wir die folgende Definition in der serverless.yml Datei:

service: example 

functions: 
    func1: 
    handler: functions/function1.handler 
    func2: 
    handler: functions/function2.handler 

Das gleiche gilt für mehrere Ordnerebenen gelten würde:

folder/folder/folder/filename.function 
Verwandte Themen