मैं जेनरेट किए जा रहे AWS CodePipeline टेम्पलेट के भीतर UserParameters कॉन्फ़िगरेशन को सेटअप करने का प्रयास कर रहा था,
Name: ... Actions: - Name: Invoke-Lambda ActionTypeId: Category: Invoke Owner: AWS Provider: Lambda Version: '1' Configuration: FunctionName: exampleLambdaFunction UserParameters: '{"example":"user-parameters"}'
गो में लिखे एडब्ल्यूएस लैम्ब्डा पर इसका परीक्षण करते समय, हैंडलर के लिए फ़ंक्शन परिभाषा का पता लगाने में, भेजे जाने वाले एडब्ल्यूएस कोडपाइपलाइन जेएसओएन इवेंट को पार्स करने में सामान्य से थोड़ा अधिक समय लगा, उदाहरण के लिए:
{ "CodePipeline.job": { "id": "11111111-abcd-1111-abcd-111111abcdef", "accountId": "111111111111", "data": { "actionConfiguration": { "configuration": { "FunctionName": "exampleLambdaFunction", "UserParameters": "{\"example\":\"user-parameters\"}" } }, "inputArtifacts": [ ... ], ... } } }
github.com/aws/aws-lambda-go/events पैकेज लिंक का उपयोग करें जिसमें इवेंट शामिल हैं। CodePipelineJobEvent जो भेजे जा रहे AWS CodePipeline JSON इवेंट को अनमर्शल करने में मदद करता है
package main import ( "context" "fmt" "github.com/aws/aws-lambda-go/events" "github.com/aws/aws-lambda-go/lambda" ) func Handler(ctx context.Context, event events.CodePipelineJobEvent) (string, error) { fmt.Printf("received codepipeline event function name: % v\n", event.CodePipelineJob.Data.ActionConfiguration.Configuration.FunctionName) fmt.Printf("received codepipeline event user parameters: % v\n", event.CodePipelineJob.Data.ActionConfiguration.Configuration.UserParameters) return "cool", nil } func main() { lambda.Start(Handler) }
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3