jenkins 正在创建lambda函数以调用粘附作业

uqcuzwp8  于 2022-11-21  发布在  Jenkins
关注(0)|答案(1)|浏览(151)

通过Terraform我创建了一个lambda函数来调用glue job。我正在使用jenkins运行terraform apply job,当我在创建后测试lambda函数时,我得到了语法错误。
如果我从本地终端运行terraform apply,它运行得很好。
Lambda测试也已执行,但通过jenkins terraform apply我得到语法错误。
invoke-glue-job.py

from __future__ import print_function
import boto3
import urllib

print ('Loading function')

glue = boto3.client('glue')

def lambda_handler(event, context)
    gluejobname = "job1"

    try: 
        runId = glue.start_job_run(JobName=gluejobname)
        status = glue.get_job_run(JobName=gluejobname, RunId=runid['JobRunId'])
        print("Job Status : ", status['JobRun']['JobRunState'], "runId",runId)
    except Exception as e:
        raise e

当我运行jenkins作业时,出现以下错误:

{
  "errorMessage": "Syntax error in module 'invoke-glue-job': invalid syntax (invoke-glue-job.py, line 9)",
  "errorType": "Runtime.UserCodeSyntaxError",
  "requestId": "46a194e6-410b-45ed-927e-3e752f5836cb",
  "stackTrace": [
    "  File \"/var/task/invoke-glue-job.py\" Line 9\n    def lambda_handler(event, context)\n"
  ]
}

我在terraform配置中使用了handler = "invoke-glue-job.lambda_handler"。我不确定这里的错误是什么。有什么建议吗?

zdwk9cvp

zdwk9cvp1#

您忘记了:。因此它应该是:

def lambda_handler(event, context):

相关问题