#azure #azure-data-factory
#azure #azure-data-factory
Вопрос:
Я почти уверен, что это просто, но, похоже, я нигде не могу этого найти. Я создал параметр в родительском конвейере (скажем, имя конвейера — TestParent) на фабрике данных:
Этот родительский конвейер вызывает дочерний конвейер. Я хочу ссылаться на этот параметр в дочернем конвейере. Каков синтаксис для получения значения этого параметра от родительского в дочернем?
Ответ №1:
Хорошо, я наконец-то заставил это работать:
Я полностью удалил параметр из родительского конвейера. В дочернем конвейере (который называется HubMaster) мы создаем параметр с именем MasterBatchId:
В родительском конвейере я создал узел конвейера выполнения с именем EP_HubMaster, который вызывает дочерний конвейер с именем HubMaster. Чтобы заполнить параметр дочернего конвейера MasterBatchId во время выполнения, нам нужно отредактировать JSON родительского конвейера, чтобы он выглядел следующим образом:
{
"name": "TestParent",
"properties": {
"activities": [
{
"name": "EP_HubMaster",
"type": "ExecutePipeline",
"typeProperties": {
"pipeline": {
"referenceName": "HubMaster",
"type": "PipelineReference"
},
"parameters": {
"MasterBatchId": {
"value": "@pipeline().RunId",
"type": "Expression"
}
}
}
}
],
"folder": {
"name": "Master"
}
},
"type": "Microsoft.DataFactory/factories/pipelines"
}
Вы можете видеть, что мы передаем @pipeline().RunId
из родительского (что было первоначальным намерением) во входной параметр MasterBatchId
дочернего конвейера.
Комментарии:
1. Что означает, что вам нужно редактировать файл JSON каждый раз при его запуске? Как это будет работать в режиме CI / CD?