public SemanticVersion GetNextVersion(SemanticVersion taggedVersion)
        {
            var filePath = Path.Combine(_workingDirectory, "NextVersion.txt");
            if (!File.Exists(filePath))
            {
                File.WriteAllText(filePath, taggedVersion.ToString());
            }
            var version = File.ReadAllText(filePath);

            SemanticVersion semanticVersion;
            if (!SemanticVersionParser.TryParse(version, out semanticVersion))
                throw new ArgumentException("Make sure you have a valid semantic version in NextVersion.txt");

            return semanticVersion;
        }
        public Dictionary<string, string> GetVariables(SemanticVersion nextBuildNumber)
        {
            string numOfCommitsSinceRelease = nextBuildNumber.BuildMetaData == null ? "<unknown>" : nextBuildNumber.BuildMetaData.ToString();

            return new Dictionary<string, string>
            {
                {"GitHubFlowVersion_FullSemVer", nextBuildNumber.ToString()},
                {"GitHubFlowVersion_SemVer", nextBuildNumber.WithBuildMetaData(null).ToString()},
                {"GitHubFlowVersion_AssemblySemVer", nextBuildNumber.WithSuffix(null).WithBuildMetaData(null)+".0"},
                {"GitHubFlowVersion_FourPartVersion", nextBuildNumber.ToVersion().ToString()},
                {"GitHubFlowVersion_Major", nextBuildNumber.Major.ToString() },
                {"GitHubFlowVersion_Minor", nextBuildNumber.Minor.ToString() },
                {"GitHubFlowVersion_Patch", nextBuildNumber.Patch.ToString() },
                {"GitHubFlowVersion_NumCommitsSinceRelease", numOfCommitsSinceRelease},
                {"GitHubFlowVersion_Tag", nextBuildNumber.Suffix}
            };
        }
        public SemanticVersion GetNextVersion(SemanticVersion taggedVersion)
        {
            var filePath = Path.Combine(_workingDirectory, "NextVersion.txt");

            if (!File.Exists(filePath))
            {
                File.WriteAllText(filePath, taggedVersion.ToString());
            }
            var version = File.ReadAllText(filePath);

            SemanticVersion semanticVersion;

            if (!SemanticVersionParser.TryParse(version, out semanticVersion))
            {
                throw new ArgumentException("Make sure you have a valid semantic version in NextVersion.txt");
            }

            return(semanticVersion);
        }
Example #4
0
        public Dictionary <string, string> GetVariables(SemanticVersion nextBuildNumber)
        {
            var numOfCommitsSinceRelease = nextBuildNumber.BuildMetaData == null ? "<unknown>" : nextBuildNumber.BuildMetaData.ToString();

            var fullSemanticVersion = nextBuildNumber.ToString();

            return(new Dictionary <string, string>
            {
                { FullSemVer, fullSemanticVersion },
                { SemVer, nextBuildNumber.WithBuildMetaData(null).ToString() },
                { AssemblyVersion, new Version(nextBuildNumber.Major, nextBuildNumber.Minor, 0, 0).ToString() },
                { AssemblyFileVersion, nextBuildNumber.WithSuffix(null).ToVersion().ToString() },
                { AssemblyInformationalVersion, fullSemanticVersion },
                { FourPartVersion, nextBuildNumber.ToVersion().ToString() },
                { Major, nextBuildNumber.Major.ToString() },
                { Minor, nextBuildNumber.Minor.ToString() },
                { Patch, nextBuildNumber.Patch.ToString() },
                { NumCommitsSinceRelease, numOfCommitsSinceRelease },
                { Tag, nextBuildNumber.Suffix }
            });
        }