private byte[] CreatePublishPayload(GetInstallerContentResponse installerContent) { var publishPayloadBuilder = _publishPayloadBuilderFactory(); foreach (var coreComponent in installerContent.CoreComponents) { publishPayloadBuilder.AddCoreComponent(coreComponent.Name, new VersionNumber(coreComponent.Version)); } foreach (var gameEngine in installerContent.GameEngines) { publishPayloadBuilder.AddGameEngine(new GameEngineName(gameEngine.Name), new VersionNumber(gameEngine.Version)); } foreach (var gameMath in installerContent.GamesMaths) { publishPayloadBuilder.AddGameMath(gameMath.Name, new GameEngineName(gameMath.EngineName), new VersionNumber(gameMath.Version)); } foreach (var gameLimits in installerContent.GamesLimits) { publishPayloadBuilder.AddGameLimits(gameLimits.Name, new GameEngineName(gameLimits.EngineName), new VersionNumber(gameLimits.Version)); } return(_publishPayloadSerializer.Serialize(publishPayloadBuilder.Build())); }
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); }
private void CreateLatestPublishXmlFile(IInstallerFolder installerFolder, GetInstallerContentResponse installerContent) { installerFolder.PublishHistory.LatestPublishXml.SetBinaryContent(CreatePublishPayload(installerContent)); }