如何通过C# REST API传入自定义YAML字符串创建Azure Pipeline
用C# REST API传入自定义YAML字符串创建Azure Pipeline
你当前的代码是通过指定仓库中YAML文件路径创建Pipeline,要改为传入自定义YAML字符串,只需调整configuration对象的结构,用yamlContent字段替换path,同时可根据场景决定是否保留仓库关联配置。
修改后的代码示例:
string PipelineURL = string.Format("https://dev.azure.com/{0}/{1}/_apis/pipelines?api-version=6.0", ConfigurationManager.AppSettings["OrganizationName"].ToString(), ConfigurationManager.AppSettings["ProjectName"].ToString()); // 自定义YAML内容,可根据业务需求修改 string customYaml = @" trigger: none pool: vmImage: 'ubuntu-latest' steps: - script: echo Hello from custom inline YAML! displayName: 'Execute inline script' "; var postData = new { folder = "", name = Name, configuration = new { type = "yaml", yamlContent = customYaml // 若无需关联仓库,可移除原有的path和repository配置 // 若需要关联仓库拉取代码,可保留repository节点,示例如下: // repository = new // { // id = "repo-id", // name = "repo-name", // type = "azureReposGit" // } } };
关键说明:
yamlContent字段:直接传递自定义YAML字符串作为Pipeline定义,API会优先使用这段内容,不再读取仓库中指定路径的文件。- 仓库配置取舍:如果Pipeline不需要拉取仓库代码,可完全移除
repository和path配置;若需要关联仓库资源,保留repository节点即可,无需path。 - YAML格式注意:用
@定义多行字符串可保留YAML的缩进和换行结构,避免手动转义带来的语法错误。
内容的提问来源于stack exchange,提问作者Ramakrishnan Ramar
相关产品推荐
相关产品推荐

