Я пытаюсь передать значение xcom в нормальную функцию, но оно передает фактическое значение
Я пытался использовать ниже, используя пример кода
def getArgsForPractice(practice, messageId, status_result):
practice_args = dict()
practice_args['practice_id'] = practice
practice_args['message_id'] = messageId
practice_args['status'] = status_result
practice_args_json = json.dumps(practice_args)
message = {'data': base64.b64encode(practice_args_json.encode('utf-8')).decode()}
return message
PubSubPublishSuccess = PubSubPublishOperator(task_id='publish-messages_success',
topic=PUB_SUB_TOPIC,
project=PROJECT_ID,
messages=[
getArgsForPractice(
"{{ task_instance.xcom_pull('get_practice_id_task', key='return_value')[0]}}",
"{{ task_instance.xcom_pull('get_measure_id_task', key='return_value')[0]}}",
"SUCCESS"
)
],
dag=dag)
Я видел значение ниже, как этовведите код здесь:
{"practice_id": "{{ task_instance.xcom_pull('get_practice_id_task', key='return_value')[0]}}", "message_id": "{{ task_instance.xcom_pull('get_measure_id_task', key='return_value')[0]}}", "status": "SUCCESS"} │ 599454601822320 │