private List <BuildAction> GetActionsList(GetInstallerContentResponse installerContent, Folders.QAMainFolder qaMainFolder, Folders.IInstallerFolder installerFolder) { var actions = new List <BuildAction>(); actions.AddRange(GetBranchCoreComponentsActions(installerFolder.Components, installerContent)); actions.AddRange(GetBranchEnginesAndGamesActions(installerFolder.Components, installerContent)); actions.Add(new BuildAction("Branch BuildTools", () => BranchBuildTools(qaMainFolder.BuildTools, installerFolder.BuildTools))); actions.Add(new BuildAction("Branch GGP Solution file", () => BranchSolutionFile(qaMainFolder, installerFolder))); actions.Add(new BuildAction("Branch BuildCustomization.xml", () => BranchBuildCustomizationXmlFile(qaMainFolder, installerFolder))); actions.Add(new BuildAction("Create Publish.xml file", () => CreatePublishXmlFile(installerFolder, installerContent))); actions.Add(new BuildAction("Create LatestPublish.xml file", () => CreateLatestPublishXmlFile(installerFolder, installerContent))); actions.Add(new BuildAction($"Get Latest for {installerFolder.GetServerPath().AsString()}", () => installerFolder.ToSourceControlFolder().GetLatest())); return(actions); }
public void Build(Guid installerId, Folders.IInstallerFolder installerFolder) { var qaMainFolder = installerFolder.Root.QA.Main; CallProgress(0, "Reading installer content"); var installerContent = ReadInstallerContent(installerId); var actions = GetActionsList(installerContent, qaMainFolder, installerFolder); for (int i = 0; i < actions.Count; i++) { var action = actions[i]; CallProgress((decimal)i / (decimal)actions.Count, action.Description); action.Execute(); CallProgress((decimal)(i + 1) / (decimal)actions.Count, action.Description); } }
private void BranchSolutionFile(Folders.QAMainFolder qaMainFolder, Folders.IInstallerFolder installerFolder) { _tfsGateway.Branch(qaMainFolder.Components.GGPGameServerSln.GetServerPath(), installerFolder.Components.GGPGameServerSln.GetServerPath(), false); }