Esempio n. 1
0
 private bool GetCanVersionIncremental(IncrementalStatus buildInfoIncrementalStatus)
 {
     if (!buildInfoIncrementalStatus.CanIncremental)
     {
         IncrementalInfo.ReportStatus(false, IncrementalPhase.Build, buildInfoIncrementalStatus.Details);
         Logger.LogVerbose(buildInfoIncrementalStatus.Details);
         return(false);
     }
     if (LastBuildVersionInfo == null)
     {
         string message = $"Cannot build incrementally because last build didn't contain version {Version}.";
         IncrementalInfo.ReportStatus(false, IncrementalPhase.Build, message);
         Logger.LogVerbose(message);
         return(false);
     }
     if (CurrentBuildVersionInfo.ConfigHash != LastBuildVersionInfo.ConfigHash)
     {
         string message = "Cannot build incrementally because config changed.";
         IncrementalInfo.ReportStatus(false, IncrementalPhase.Build, message);
         Logger.LogVerbose(message);
         return(false);
     }
     if (_parameters.ForceRebuild)
     {
         string message = $"Disable incremental build by force rebuild option.";
         IncrementalInfo.ReportStatus(false, IncrementalPhase.Build, message);
         Logger.LogVerbose(message);
         return(false);
     }
     IncrementalInfo.ReportStatus(true, IncrementalPhase.Build);
     return(true);
 }
Esempio n. 2
0
        private bool GetCanVersionIncremental(IncrementalStatus buildInfoIncrementalStatus)
        {
            bool   canIncremental;
            string details;
            string fullBuildReasonCode;

            if (!buildInfoIncrementalStatus.CanIncremental)
            {
                details             = buildInfoIncrementalStatus.Details;
                fullBuildReasonCode = buildInfoIncrementalStatus.FullBuildReasonCode;
                canIncremental      = false;
            }
            else if (LastBuildVersionInfo == null)
            {
                details             = $"Cannot build incrementally because last build didn't contain group {Version}.";
                fullBuildReasonCode = InfoCodes.FullBuildReason.NoAvailableGroupCache;
                canIncremental      = false;
            }
            else if (CurrentBuildVersionInfo.ConfigHash != LastBuildVersionInfo.ConfigHash)
            {
                details             = "Cannot build incrementally because config changed.";
                fullBuildReasonCode = InfoCodes.FullBuildReason.ConfigChanged;
                canIncremental      = false;
            }
            else if (_parameters.ForceRebuild)
            {
                details             = "Disable incremental build by force rebuild option.";
                fullBuildReasonCode = InfoCodes.FullBuildReason.ForceRebuild;
                canIncremental      = false;
            }
            else
            {
                details             = null;
                canIncremental      = true;
                fullBuildReasonCode = null;
            }

            var buildStrategy = canIncremental ? InfoCodes.Build.IsIncrementalBuild : InfoCodes.Build.IsFullBuild;

            if (canIncremental)
            {
                IncrementalInfo.ReportStatus(true, IncrementalPhase.Build);
                Logger.LogInfo($"Group {Version} will be built incrementally.", code: buildStrategy);
            }
            else
            {
                IncrementalInfo.ReportStatus(false, IncrementalPhase.Build, details, fullBuildReasonCode);
                Logger.LogInfo($"Group {Version} will be built fully.", code: buildStrategy);
                Logger.LogInfo($"The reason of full building under group {Version} is: {details}", code: fullBuildReasonCode);
            }

            return(canIncremental);
        }
        private bool GetCanVersionIncremental(IncrementalStatus buildInfoIncrementalStatus)
        {
            bool   canIncremental;
            string details;
            string fullBuildReasonCode;

            if (!buildInfoIncrementalStatus.CanIncremental)
            {
                details             = buildInfoIncrementalStatus.Details;
                fullBuildReasonCode = buildInfoIncrementalStatus.FullBuildReasonCode;
                canIncremental      = false;
            }
            else if (LastBuildVersionInfo == null)
            {
                details             = $"Cannot build incrementally because last build didn't contain group {Version}.";
                fullBuildReasonCode = InfoCodes.FullBuildReason.NoAvailableGroupCache;
                canIncremental      = false;
            }
            else if (CurrentBuildVersionInfo.ConfigHash != LastBuildVersionInfo.ConfigHash)
            {
                details             = "Cannot build incrementally because config changed.";
                fullBuildReasonCode = InfoCodes.FullBuildReason.ConfigChanged;
                canIncremental      = false;
            }
            else
            {
                details             = null;
                canIncremental      = true;
                fullBuildReasonCode = null;
            }

            var buildStrategy    = canIncremental ? InfoCodes.Build.IsIncrementalBuild : InfoCodes.Build.IsFullBuild;
            var groupDisplayName = string.IsNullOrEmpty(Version) ? "the default group" : $"group '{Version}'";

            if (canIncremental)
            {
                IncrementalInfo.ReportStatus(true, IncrementalPhase.Build);
                Logger.LogVerbose($"Building {groupDisplayName} incrementally.", code: buildStrategy);
            }
            else
            {
                IncrementalInfo.ReportStatus(false, IncrementalPhase.Build, details, fullBuildReasonCode);
                Logger.LogVerbose($"Building {groupDisplayName} fully.", code: buildStrategy);
                Logger.LogVerbose($"The reason of full building for {groupDisplayName} is: {details}", code: fullBuildReasonCode);
            }

            return(canIncremental);
        }
Esempio n. 4
0
        private bool GetCanVersionIncremental(IncrementalStatus buildInfoIncrementalStatus)
        {
            bool   canIncremental;
            string message;

            if (!buildInfoIncrementalStatus.CanIncremental)
            {
                message        = buildInfoIncrementalStatus.Details;
                canIncremental = false;
            }
            else if (LastBuildVersionInfo == null)
            {
                message        = $"Cannot build incrementally because last build didn't contain group {Version}.";
                canIncremental = false;
            }
            else if (CurrentBuildVersionInfo.ConfigHash != LastBuildVersionInfo.ConfigHash)
            {
                message        = "Cannot build incrementally because config changed.";
                canIncremental = false;
            }
            else if (_parameters.ForceRebuild)
            {
                message        = "Disable incremental build by force rebuild option.";
                canIncremental = false;
            }
            else
            {
                message        = null;
                canIncremental = true;
            }

            var buildStrategy = canIncremental ? InfoCodes.Build.IsIncrementalBuild : InfoCodes.Build.IsFullBuild;

            if (canIncremental)
            {
                IncrementalInfo.ReportStatus(true, IncrementalPhase.Build);
                Logger.LogInfo($"Group: {Version}, build strategy: {buildStrategy}", code: buildStrategy);
            }
            else
            {
                IncrementalInfo.ReportStatus(false, IncrementalPhase.Build, message);
                Logger.LogInfo($"Group: {Version}, build strategy: {buildStrategy}, details: {message}", code: buildStrategy);
            }

            return(canIncremental);
        }
 private bool GetCanVersionIncremental(IncrementalStatus buildInfoIncrementalStatus)
 {
     if (!buildInfoIncrementalStatus.CanIncremental)
     {
         IncrementalInfo.ReportStatus(false, IncrementalPhase.Build, buildInfoIncrementalStatus.Details);
         Logger.LogVerbose(buildInfoIncrementalStatus.Details);
         return(false);
     }
     if (LastBuildVersionInfo == null)
     {
         string message = $"Cannot build incrementally because last build didn't contain version {Version}.";
         IncrementalInfo.ReportStatus(false, IncrementalPhase.Build, message);
         Logger.LogVerbose(message);
         return(false);
     }
     if (CurrentBuildVersionInfo.ConfigHash != LastBuildVersionInfo.ConfigHash)
     {
         string message = "Cannot build incrementally because config changed.";
         IncrementalInfo.ReportStatus(false, IncrementalPhase.Build, message);
         Logger.LogVerbose(message);
         return(false);
     }
     if (_parameters.ForceRebuild)
     {
         string message = $"Disable incremental build by force rebuild option.";
         IncrementalInfo.ReportStatus(false, IncrementalPhase.Build, message);
         Logger.LogVerbose(message);
         return(false);
     }
     if (_parameters.ApplyTemplateSettings != null)
     {
         var options = _parameters.ApplyTemplateSettings.Options;
         if ((options & (ApplyTemplateOptions.ExportRawModel | ApplyTemplateOptions.ExportViewModel)) != ApplyTemplateOptions.None)
         {
             string message = $"Disable incremental build because ExportRawModel/ExportViewModel option enabled.";
             IncrementalInfo.ReportStatus(false, IncrementalPhase.Build, message);
             Logger.LogVerbose(message);
             return(false);
         }
     }
     IncrementalInfo.ReportStatus(true, IncrementalPhase.Build);
     return(true);
 }
Esempio n. 6
0
 private IncrementalBuildContext(string baseDir, string lastBaseDir, DateTime?lastBuildStartTime, IncrementalStatus buildInfoIncrementalStatus, DocumentBuildParameters parameters, BuildVersionInfo cbv, BuildVersionInfo lbv)
 {
     _parameters             = parameters;
     BaseDir                 = baseDir;
     LastBaseDir             = lastBaseDir;
     LastBuildStartTime      = lastBuildStartTime;
     CurrentBuildVersionInfo = cbv;
     LastBuildVersionInfo    = lbv;
     IncrementalInfo         = new IncrementalInfo();
     CanVersionIncremental   = GetCanVersionIncremental(buildInfoIncrementalStatus);
 }