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)); }
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)); }
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); }
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}"); }