Exemplo n.º 1
0
        private bool PullGitRepo(Objects.BuildItem buildItem)
        {
            var cloneFoler = SettingsDetails.SourcesLocation + buildItem.Name;

            if (Directory.Exists(cloneFoler + "\\.git"))
            {
                return(GitLogic.PullRepo(SettingsDetails, cloneFoler));
            }
            else
            {
                return(GitLogic.CloneRepo(SettingsDetails, buildItem.GitRepoAddress, cloneFoler));
            }
        }
Exemplo n.º 2
0
        public static bool BuildProject(Objects.BuildItem buildItem, Settings.Objects.Details settingsDetails)
        {
            var projectLocation  = settingsDetails.SourcesLocation + buildItem.Name;
            var outputLocation   = settingsDetails.BuildLocation + buildItem.Name;
            var solutionLocation = projectLocation + "\\" + buildItem.PathToSln;

            if (Directory.Exists(outputLocation) == false)
            {
                Directory.CreateDirectory(outputLocation);
            }

            //InstallNuGetPackages(solutionLocation);

            FileLogger fileLogger = new FileLogger()
            {
                Verbosity              = LoggerVerbosity.Detailed,
                ShowSummary            = true,
                SkipProjectStartedText = true
            };

            BuildParameters param = new BuildParameters()
            {
                MaxNodeCount = Environment.ProcessorCount,
                Loggers      = new[] {
                    fileLogger
                },
            };

            Dictionary <string, string> globalProperties = new Dictionary <string, string>
            {
                { "Configuration", "Release" },     // always "Debug"
                { "Platform", buildItem.Platform }, // always "Any CPU"
                { "OutputPath", outputLocation },
            };

            BuildManager.DefaultBuildManager.BeginBuild(param);

            var buildRequest    = new BuildRequestData(solutionLocation, globalProperties, null, new String[] { "Build" }, null);
            var buildSubmission = BuildManager.DefaultBuildManager.PendBuildRequest(buildRequest);

            buildSubmission.Execute();
            BuildManager.DefaultBuildManager.EndBuild();
            if (buildSubmission.BuildResult.OverallResult == BuildResultCode.Failure)
            {
                return(false);
            }

            return(true);
        }
Exemplo n.º 3
0
        public void BuildItem(Objects.BuildItem buildItem)
        {
            if (PullGitRepo(buildItem) == false)
            {
                return;
            }

            if (BuildProject(buildItem) == false)
            {
                return;
            }

            if (PublishToS3(buildItem) == false)
            {
                return;
            }
        }
Exemplo n.º 4
0
        private bool BuildProject(Objects.BuildItem buildItem)
        {
            BuildLogic.BuildProject(buildItem, SettingsDetails);

            return(true);
        }
Exemplo n.º 5
0
 private bool PublishToS3(Objects.BuildItem buildItem)
 {
     return(true);
 }