Azure devops 在DevOps上部署ADF管道触发器
我正在从我的ADF开发人员到ADF暂存环境进行一些初始ADF部署。在MS文档中,它说: 如果尝试更新活动触发器,部署可能会失败。要更新活动触发器,您需要手动停止它们,然后在部署后重新启动它们 这是否意味着我需要在部署前/部署后关闭开发或暂存触发器Azure devops 在DevOps上部署ADF管道触发器,azure-devops,azure-data-factory,azure-data-factory-2,Azure Devops,Azure Data Factory,Azure Data Factory 2,我正在从我的ADF开发人员到ADF暂存环境进行一些初始ADF部署。在MS文档中,它说: 如果尝试更新活动触发器,部署可能会失败。要更新活动触发器,您需要手动停止它们,然后在部署后重新启动它们 这是否意味着我需要在部署前/部署后关闭开发或暂存触发器 第二期。我需要计划在dev(sat)和staging(sun)中的不同日期运行相同的触发器集。那么,我是否需要为每个环境创建一组单独的触发器,或者我是否可以在部署期间重写现有触发器的触发器计划?您需要在开始部署之前停止暂存触发器,并在部署完成后重新启动
第二期。我需要计划在dev(sat)和staging(sun)中的不同日期运行相同的触发器集。那么,我是否需要为每个环境创建一组单独的触发器,或者我是否可以在部署期间重写现有触发器的触发器计划?您需要在开始部署之前停止暂存触发器,并在部署完成后重新启动 此页面具有用于停止触发器的PowerShell脚本: 此外,您还可以使用自定义petameters配置文件更新触发器设置: 要在Arm模板中参数化触发器部署,首先这里是一个在特定日期运行的每周触发器示例:
{
"name": "OnceAWeekTrigger",
"properties": {
"annotations": [],
"runtimeState": "Stopped",
"pipelines": [],
"type": "ScheduleTrigger",
"typeProperties": {
"recurrence": {
"frequency": "Week",
"interval": 1,
"startTime": "2021-05-25T22:59:00Z",
"timeZone": "UTC",
"schedule": {
"weekDays": [
"Sunday"
]
}
}
}
}
}
创建一个arm模板参数定义.json
文件,如下所示:
{
"Microsoft.DataFactory/factories/triggers": {
"properties": {
"typeProperties": {
"recurrence": {
"schedule": {
"weekDays": "=:-weekDays:array"
}
}
}
}
}
}
此文件指定您要执行Rametriseschedule_weekDays
属性
运行ADF导出功能后:
npm run build export c:\git\adf /subscriptions/<subscriptionid>/resourceGroups/datafactorydev/providers/Microsoft.DataFactory/factories/<datafactory_name> "ArmTemplate"
参数文件ArmTemplate\ARMTemplateParametersForFactory.json
如下所示:
... {
"name": "[concat(parameters('factoryName'), '/OnceAWeekTrigger')]",
"type": "Microsoft.DataFactory/factories/triggers",
"apiVersion": "2018-06-01",
"properties": {
"annotations": [],
"runtimeState": "Stopped",
"pipelines": [],
"type": "ScheduleTrigger",
"typeProperties": {
"recurrence": {
"frequency": "Week",
"interval": 1,
"startTime": "2021-05-25T22:59:00Z",
"timeZone": "UTC",
"schedule": {
"weekDays": "[parameters('OnceAWeekTrigger_weekDays')]"
}
}
}
}, ...
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentParameters.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"factoryName": {
"value": "factory_name"
},
"OnceAWeekTrigger_weekDays": {
"value": [
"Sunday"
]
}
}
}
然后,您可以通过修改
onceawektrigger\u weekDays
的数组值,在一周中的不同日期为开发和登台创建不同的参数文件。您可以提供参数配置的示例模板吗?我认为在部署任务的参数覆盖部分中没有看到任何频率/间隔的自定义触发器参数。是否必须显式设置触发器进行参数化?我添加了一个示例,用于为触发器的arm模板部署参数化weekDays属性。