我有一个数据工厂管道,该管道采用以下参数
- param1
- 数据库服务器1名
- 数据库服务器2名称
- 数据库服务器1用户名
- 数据库服务器2用户名
- etc
我的管道通过某种逻辑来决定哪个数据库服务器可以从。
进行导入。本质上,我想部署2个管道的版本。1在开发人员中运行,另一个在产品中运行。
我想通过Azure DevOps发布管道的开发和产品版本。每个环境版本都应(通过钥匙库)以下值:
- 数据库服务器1名
- 数据库服务器2名称
- 数据库服务器1用户名
- 数据库服务器2用户名
一等奖将是如果这些值甚至不再显示为管道中的参数。因此,触发器只需要提供param1即可。另外,如果您手动运行管道,我也只想提供param1。
编辑:请注意,如果这有所不同,我最终在临时链接服务中使用参数(https://learn.microsoft.com/en-en-us/azure/data-factory/参数化链接服务)。
我认为解决问题的关键思想是使用两个单独的数据工厂实例。
在Dev Enironment中,您具有上面所述的参数化连接。将代码用于产品时,您会导出模板并将其再次导入到另一个实例中。在那里,您还有一个额外的配置文件,可以填充正确设置连接所需的值。
如果要避免将凭据存储在配置文件中,则只需添加Azure键保管链链接服务并相应地将秘密标识符参数化。当您将模板导入prod时,您甚至不需要提供任何参数,而是从密钥库中获取哪个秘密的标识符。
请参阅此处以获取更多信息:
DevOps Integration
钥匙库集成