2
TFSビルドを含むファイル共有を移動する必要があるため、ビルドのコレクションを通り抜けてドロップ位置を更新するコードを書きました。私はコードが何かを行ったことを知っています。私が2番目の実行でコードをデバッグすると、今度はドロップダウンに新しいuncパスが表示されるようになります。しかし、私がチームエクスプローラに入り、ビルドのために「ドロップ位置」をクリックすると、私は古い場所に移動します。ドロップされたTFSビルドの再配置
私には何が欠けていますか?
var buildServer = tpc.GetService<IBuildServer>();
foreach (var build in buildServer.QueryBuilds(projectName))
{
string newDropLocation = FixPath(build.DropLocation);
string newLogLocation = FixPath(build.LogLocation);
build.DropLocation = newDropLocation;
if(!String.IsNullOrEmpty(newLogLocation))
{
build.LogLocation = newLogLocation;
}
build.Save();
Console.WriteLine("------------");
Console.WriteLine(newDropLocation);
Console.WriteLine(newDropLocationRoot);
Console.WriteLine(newLogLocation);
}
FWIW、FixPathは、\\ olderserver \ share \と\\ newserver \ share \ –
のstring.replaceを実行するヘルパーメソッドです。新しいドロップ先ルートを更新しますか? –
IBuildDetail.DropLocationRootは読み取り専用です。 DropLocationとLogLocationにはセッターがあります。 –