以下の関数から、クラウド スケジューラに存在するジョブにパッチを適用 (更新) しようとしています。この関数は、API を使用してジョブの属性 (access_token) を更新します。ただし、正しく展開されていません。コードに問題はありますか?
pprint から base64 をインポート pprint をインポート
googleapiclient からのインポート検出 oauth2client.client からのインポート GoogleCredentials
def hello_pubsub (イベント、コンテキスト):
credentials = GoogleCredentials.get_application_default()
service = discovery.build('cloudscheduler', 'v1', credentials=credentials)
name = 'projects/XYZ/locations/TempLocation/jobs/TestTopic'
job_body = {
"name": "temp",
"description": temp,
"pubsubTarget": {
"topicName": "projects/XYZ/topics/TestTopic",
"attributes": {
"access_token": "blabla"
}
},
"httpTarget": {
"uri": "https://cloudscheduler.googleapis.com/v1/projects/XYZ/locations/TempLocation/jobs/TestTopic",
"httpMethod": "POST",
"headers": {
"Content-Type": "application/json",
},
"oauthToken": {
"serviceAccountEmail": "xyz@gmail.com",
}
}
}
request = service.projects().locations().jobs().patch(name=name, body=job_body)
response = request.execute()
pprint(response)