我想跟踪源代码控制中的管道更改,并且正在寻找一种以编程方式从 ADF 检索 json 表示的方法。
.Net 例程返回对象,但遗憾的是 ToString() 不返回 json(这不方便吗?),所以现在我正在考虑手动复制 json(现在向我开枪!),或者可能试图从 .Net 对象重新创建 json(稍后向我射击!)。
请告诉我我很密集,有一种明显的方法可以做到这一点。
我想跟踪源代码控制中的管道更改,并且正在寻找一种以编程方式从 ADF 检索 json 表示的方法。
.Net 例程返回对象,但遗憾的是 ToString() 不返回 json(这不方便吗?),所以现在我正在考虑手动复制 json(现在向我开枪!),或者可能试图从 .Net 对象重新创建 json(稍后向我射击!)。
请告诉我我很密集,有一种明显的方法可以做到这一点。
您可以使用 Newtonsoft Json 序列化对象。有关如何通过 ADF SDK 连接的信息,请参阅 ( https://azure.microsoft.com/en-us/documentation/articles/data-factory-create-data-factories-programmatically/ )
var aadTokenCredentials = new TokenCloudCredentials(ConfigurationManager.AppSettings["SubscriptionId"], GetAuthorizationHeader());
var resourceManagerUri = new Uri(ConfigurationManager.AppSettings["ResourceManagerEndpoint"]);
var manager = new DataFactoryManagementClient(aadTokenCredentials, resourceManagerUri);
var pipeline = manager.Pipelines.Get(resourceGroupName, dataFactoryName, pipelineName);
var pipelineAsJson = JsonConvert.SerializeObject(pipeline.Pipeline, Formatting.Indented);
我期待更复杂的东西,但查看 sdk 源 GitHub 并没有做任何特别的事情。
我们的团队有一个部署工具,可以接受 git 更改并适当地部署它们。一切都是异步完成的,并通过 git 进行控制和版本控制。简而言之,我们的部署流程如下:
任何完成的 git 合并请求都会触发 VSO 构建。这只是通过 MsBuild 构建整个解决方案。
每个成功的构建都会应用一个 Git 标签来跟踪 Last Known Good。
接下来(如果构建成功)我们的 .net ADFPublisher 首先只获取更改的数据工厂文件并根据它们的 git 操作(修改、添加、删除等)异步发布它们。
对于某些失败情况,我们的 ADFPublisher 将执行重试。
整个过程(构建 + 发布)大约需要 65 秒,并且已经使我们免于遇到一些错误。它还允许我们非常轻松地将定义从一个环境移动到另一个环境。
如果您认为这是您感兴趣的东西,请告诉我,我将设置一种方式与您分享