/// <summary> /// Create Build definition based on template /// </summary> /// <param name="businessProject"></param> /// <param name="buildDefTemplate"></param> private static void CreateBuildDefinition(BusinessProject businessProject, BuildDefTemplate buildDefTemplate) { var buildManager = new BuildManager(businessProject.TeamProjectCollectionUrl, businessProject.TeamProjectName, businessProject.BusinessProjectName); buildManager.CreateBuildDefinition(buildDefTemplate); }
/// <summary> /// Entry point /// </summary> /// <param name="args"></param> static void Main(string[] args) { if (args.Length != 1) { Console.WriteLine("TfsSoftwareProjectCreator tool.\n Usage: TfsSoftwareProjectCreator <Excel input file absolute path>\n"); return; } // Read argument string excelFilePath = args[0]; // Read content from Excel sheet var excelContent = ExcelReader.GetExcelContent(excelFilePath, WORKSHEETNAME); // Read structured information from content var businessProject = new BusinessProject(excelContent); var workItemAreaIteration = new WorkItemAreaIteration(excelContent); var securityGroup = new SecurityGroup(excelContent); var tfvcFolders = new TfvcFolder(excelContent); var buildDefTemplate = new BuildDefTemplate(excelContent); //Create new Team with Areas, Iterations var team = CreateTeam(businessProject, workItemAreaIteration); //Create new TFS Groups var tfsGroups = CreateGroups(businessProject, securityGroup); //Add TFS Groups as a member to the TFS Team AddTfsTeamMembers(businessProject, team.Identity, tfsGroups); //Create TFVC repository folders if (tfvcFolders.Folders.Any()) { CreateTfvcRepositoryFolders(businessProject, tfvcFolders); } // NEXT: Create GIT repository and folders // Create Build definition CreateBuildDefinition(businessProject, buildDefTemplate); Console.WriteLine("TfsSoftwareProjectCreator finished. Press Enter to finish..."); Console.ReadLine(); }