示例#1
0
        public static string BuildNugetVersionFromBranch(this ICakeContext context, int major, int minor, int patch, string branch)
        {
            var settings = new BuildNugetVersionFromBranchSettings {
                BranchName = branch
            };

            return(BuildNugetVersionFromBranch(context, major, minor, patch, settings));
        }
示例#2
0
        private static string ComposeSuffix(BuildNugetVersionFromBranchSettings settings)
        {
            string branch = GetTrimmedBranchName(settings);
            string suffix = string.Empty;

            if (settings.PreReleaseFilters != null && settings.PreReleaseFilters.All(f => !Regex.IsMatch(branch, f)))
            {
                if (IsBranchPrefixNecessary(branch) || settings.AlwaysApplyBranchPrefix)
                {
                    branch = $"{settings.BranchPrefix}{branch}";
                }

                suffix = $"{GetSuffixSeparator(true)}{branch}";
            }

            return(NormalizeSuffix(suffix, 20));
        }
示例#3
0
        private static string GetTrimmedBranchName(BuildNugetVersionFromBranchSettings settings)
        {
            string branch = settings.BranchName;
            string suffix = string.Empty;

            if (settings.FilterGitReferences)
            {
                branch = TrimBranch(branch);
            }

            if (settings.TrimPatterns != null)
            {
                foreach (string trim in settings.TrimPatterns)
                {
                    branch = branch.Replace(trim, string.Empty);
                }
            }

            return(branch);
        }
示例#4
0
        public static string BuildNugetVersionFromBranch(this ICakeContext context, int major, int minor, int patch, BuildNugetVersionFromBranchSettings settings)
        {
            if (settings.BranchName == null)
            {
                throw new ArgumentNullException("BranchName cannot be null!");
            }

            string version = ComposeVersion(major, minor, patch);
            var    suffix  = ComposeSuffix(settings);

            return($"{version}{suffix}");
        }