Skip to content

Commit 012a659

Browse files
committed
move cache to task
no need for in memory cache in an exe
1 parent 2415f2b commit 012a659

18 files changed

+109
-116
lines changed

GitVersionCore/CachedVersion.cs

Lines changed: 0 additions & 8 deletions
This file was deleted.

GitVersionCore/DirectoryDateFinder.cs

Lines changed: 0 additions & 22 deletions
This file was deleted.

GitVersionCore/GitVersionCore.csproj

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -63,8 +63,6 @@
6363
<Compile Include="BuildServers\GitHelper.cs" />
6464
<Compile Include="BuildServers\IBuildServer.cs" />
6565
<Compile Include="BuildServers\TeamCity.cs" />
66-
<Compile Include="CachedVersion.cs" />
67-
<Compile Include="DirectoryDateFinder.cs" />
6866
<Compile Include="LastVersionOnMasterFinder.cs" />
6967
<Compile Include="ShortVersion.cs" />
7068
<Compile Include="SemanticVersionExtensions.cs" />
@@ -113,7 +111,6 @@
113111
<Compile Include="SemanticVersionBuildMetaData.cs" />
114112
<Compile Include="SemanticVersionPreReleaseTag.cs" />
115113
<Compile Include="ShortVersionParser.cs" />
116-
<Compile Include="VersionCache.cs" />
117114
<Compile Include="GitFlow\BranchFinders\VersionOnMasterFinder.cs" />
118115
<Compile Include="VersionPoint.cs" />
119116
</ItemGroup>

GitVersionCore/GitVersionFinder.cs

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,13 @@ public SemanticVersion FindVersion(GitVersionContext context)
1919
return new GitFlowVersionFinder().FindVersion(context);
2020
}
2121

22+
public static SemanticVersion GetSemanticVersion(Repository repository)
23+
{
24+
var versionForRepositoryFinder = new GitVersionFinder();
25+
var gitVersionContext = new GitVersionContext(repository);
26+
Logger.WriteInfo("Running against branch: " + gitVersionContext.CurrentBranch.Name);
27+
return versionForRepositoryFinder.FindVersion(gitVersionContext);
28+
}
2229
public static bool ShouldGitHubFlowVersioningSchemeApply(IRepository repo)
2330
{
2431
return repo.FindBranch("develop") == null;

GitVersionCore/RepositoryLoader.cs

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,14 @@ public static Repository GetRepo(string gitDirectory)
99
{
1010
try
1111
{
12-
return new Repository(gitDirectory);
12+
var repository = new Repository(gitDirectory);
13+
14+
var branch = repository.Head;
15+
if (branch.Tip == null)
16+
{
17+
throw new WarningException("No Tip found. Has repo been initialized?");
18+
}
19+
return repository;
1320
}
1421
catch (Exception exception)
1522
{

GitVersionCore/VersionCache.cs

Lines changed: 0 additions & 61 deletions
This file was deleted.

GitVersionExe/Program.cs

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -59,8 +59,11 @@ static void Main()
5959
{
6060
buildServer.PerformPreProcessingSteps(gitDirectory);
6161
}
62-
63-
var semanticVersion = VersionCache.GetVersion(gitDirectory);
62+
SemanticVersion semanticVersion;
63+
using (var repo = RepositoryLoader.GetRepo(gitDirectory))
64+
{
65+
semanticVersion = GitVersionFinder.GetSemanticVersion(repo);
66+
}
6467

6568
if (arguments.Output == OutputType.BuildServer)
6669
{

GitVersionTask.Tests/AssemblyInfoBuilderTests.cs

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,10 @@ public void VerifyCreatedCode()
3131
};
3232
var assemblyInfoBuilder = new AssemblyInfoBuilder
3333
{
34-
SemanticVersion = semanticVersion
34+
CachedVersion = new CachedVersion
35+
{
36+
SemanticVersion = semanticVersion
37+
}
3538
};
3639
var assemblyInfoText = assemblyInfoBuilder.GetAssemblyInfoText();
3740
Approvals.Verify(assemblyInfoText);
@@ -80,7 +83,10 @@ static void VerifyAssemblyVersion(AssemblyVersioningScheme avs)
8083
};
8184
var assemblyInfoBuilder = new AssemblyInfoBuilder
8285
{
83-
SemanticVersion = semanticVersion,
86+
CachedVersion = new CachedVersion
87+
{
88+
SemanticVersion = semanticVersion
89+
},
8490
AssemblyVersioningScheme = avs,
8591
};
8692

GitVersionTask.Tests/VersionAndBranchFinderTests.cs

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
1-
using GitVersion;
2-
using LibGit2Sharp;
1+
using LibGit2Sharp;
32
using NUnit.Framework;
43

54
[TestFixture]
@@ -17,7 +16,7 @@ public void ShouldBeAbleGetVersionFromGitDir()
1716
AddOneCommitToHead(repo, "code");
1817

1918
}
20-
SemanticVersion versionAndBranch;
19+
CachedVersion versionAndBranch;
2120
VersionAndBranchFinder.TryGetVersion(ASBMTestRepoWorkingDirPath, out versionAndBranch);
2221
Assert.IsNotNull(versionAndBranch);
2322
}

GitVersionTask/AssemblyInfoBuilder/AssemblyInfoBuilder.cs

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,12 +4,13 @@
44

55
public class AssemblyInfoBuilder
66
{
7-
public SemanticVersion SemanticVersion;
7+
public CachedVersion CachedVersion;
88
public AssemblyVersioningScheme AssemblyVersioningScheme;
99

1010
public string GetAssemblyInfoText()
1111
{
12-
var vars = VariableProvider.GetVariablesFor(SemanticVersion);
12+
var semanticVersion = CachedVersion.SemanticVersion;
13+
var vars = VariableProvider.GetVariablesFor(semanticVersion);
1314
var assemblyInfo = string.Format(@"
1415
using System;
1516
using System.Reflection;
@@ -39,9 +40,9 @@ static class GitVersionInformation
3940
}}
4041
4142
42-
", SemanticVersion.GetAssemblyVersion(AssemblyVersioningScheme), string.Format("{0}.{1}.{2}.0", SemanticVersion.Major, SemanticVersion.Minor, SemanticVersion.Patch), SemanticVersion.ToString("i"),
43-
SemanticVersion.BuildMetaData.ReleaseDate.OriginalDate.UtcDateTime.ToString("yyyy-MM-dd"),
44-
SemanticVersion.BuildMetaData.CommitDate.UtcDateTime.ToString("yyyy-MM-dd"),
43+
", semanticVersion.GetAssemblyVersion(AssemblyVersioningScheme), string.Format("{0}.{1}.{2}.0", semanticVersion.Major, semanticVersion.Minor, semanticVersion.Patch), semanticVersion.ToString("i"),
44+
semanticVersion.BuildMetaData.ReleaseDate.OriginalDate.UtcDateTime.ToString("yyyy-MM-dd"),
45+
semanticVersion.BuildMetaData.CommitDate.UtcDateTime.ToString("yyyy-MM-dd"),
4546
GenerateVariableMembers(vars));
4647

4748
return assemblyInfo;

0 commit comments

Comments
 (0)