在 VSTS 发布管理中重命名发布
Renaming a release in VSTS Release Management
是否可以重命名当前正在进行或已经完成的版本?
我尝试使用以下语法重命名版本,但它总是抛出一条错误消息 "Adding or deleting stages from the release is not allowed"
var releases = releaseClient.GetReleasesAsync(definitionId: 100, searchtext: "OldReleaseName").Result;
var release = release.FirstOrDefault();
release.Name = "new release name";
releaseClient.UpdateReleaseAsync(release, "projectName", release.Id).Wait();
是的,可以重命名版本。
在这种特殊情况下出现的错误是因为 GetReleases API returns 是版本的浅表副本,而 UpdateRelease API 接受完整版本对象。
要修复上述代码中的错误,我们还需要调用 GetRelease API 以加载完整的发布对象并在更新调用中使用它。
var releases = releaseClient.GetReleasesAsync(definitionId: 100, searchtext: "OldReleaseName").Result;
var release = release.FirstOrDefault();
// Add a null check here? This is to load the complete release object.
release = releaseClient.GetReleaseAsync("projectName", release.Id).Result;
release.Name = "new release name";
releaseClient.UpdateReleaseAsync(release, "projectName", release.Id).Wait();
是否可以重命名当前正在进行或已经完成的版本?
我尝试使用以下语法重命名版本,但它总是抛出一条错误消息 "Adding or deleting stages from the release is not allowed"
var releases = releaseClient.GetReleasesAsync(definitionId: 100, searchtext: "OldReleaseName").Result;
var release = release.FirstOrDefault();
release.Name = "new release name";
releaseClient.UpdateReleaseAsync(release, "projectName", release.Id).Wait();
是的,可以重命名版本。
在这种特殊情况下出现的错误是因为 GetReleases API returns 是版本的浅表副本,而 UpdateRelease API 接受完整版本对象。
要修复上述代码中的错误,我们还需要调用 GetRelease API 以加载完整的发布对象并在更新调用中使用它。
var releases = releaseClient.GetReleasesAsync(definitionId: 100, searchtext: "OldReleaseName").Result;
var release = release.FirstOrDefault();
// Add a null check here? This is to load the complete release object.
release = releaseClient.GetReleaseAsync("projectName", release.Id).Result;
release.Name = "new release name";
releaseClient.UpdateReleaseAsync(release, "projectName", release.Id).Wait();