Skip to content

Commit 3e37390

Browse files
committed
code cleanup for GitVersionTask
1 parent 0099fc0 commit 3e37390

File tree

7 files changed

+45
-65
lines changed

7 files changed

+45
-65
lines changed
Lines changed: 2 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
namespace GitVersionTask
22
{
3-
using System;
43
using System.IO;
54
using GitVersion;
65
using GitVersion.Helpers;
@@ -22,12 +21,9 @@ public class GenerateGitVersionInformation : GitVersionTaskBase
2221

2322
protected override void InnerExecute()
2423
{
25-
if (!ExecuteCore.TryGetVersion(SolutionDirectory, out var versionVariables, NoFetch, new Authentication()))
26-
{
27-
return;
28-
}
24+
if (GetVersionVariables(out var versionVariables)) return;
2925

30-
var fileExtension = GetFileExtension();
26+
var fileExtension = TaskUtils.GetFileExtension(Language);
3127
var fileName = $"GitVersionInformation.g.{fileExtension}";
3228

3329
if (IntermediateOutputPath == null)
@@ -42,23 +38,5 @@ protected override void InnerExecute()
4238
var generator = new GitVersionInformationGenerator(fileName, workingDirectory, versionVariables, new FileSystem());
4339
generator.Generate();
4440
}
45-
46-
string GetFileExtension()
47-
{
48-
switch (Language)
49-
{
50-
case "C#":
51-
return "cs";
52-
53-
case "F#":
54-
return "fs";
55-
56-
case "VB":
57-
return "vb";
58-
59-
default:
60-
throw new Exception($"Unknown language detected: '{Language}'");
61-
}
62-
}
6341
}
6442
}

src/GitVersionTask/GetVersion.cs

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,5 @@
11
namespace GitVersionTask
22
{
3-
using GitVersion;
4-
53
using Microsoft.Build.Framework;
64

75
public class GetVersion : GitVersionTaskBase
@@ -98,13 +96,12 @@ public class GetVersion : GitVersionTaskBase
9896

9997
protected override void InnerExecute()
10098
{
101-
if (ExecuteCore.TryGetVersion(SolutionDirectory, out var versionVariables, NoFetch, new Authentication()))
99+
if (GetVersionVariables(out var versionVariables)) return;
100+
101+
var thisType = typeof(GetVersion);
102+
foreach (var variable in versionVariables)
102103
{
103-
var thisType = typeof(GetVersion);
104-
foreach (var variable in versionVariables)
105-
{
106-
thisType.GetProperty(variable.Key).SetValue(this, variable.Value, null);
107-
}
104+
thisType.GetProperty(variable.Key)?.SetValue(this, variable.Value, null);
108105
}
109106
}
110107
}

src/GitVersionTask/GitVersionTask.csproj

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
<?xml version="1.0" encoding="utf-8"?>
1+
<?xml version="1.0" encoding="utf-8"?>
22
<Project Sdk="Microsoft.NET.Sdk">
33

44
<Import Project="$(MSBuildThisFileDirectory)\UtilPack.Version.props" Condition="exists('$(MSBuildThisFileDirectory)\UtilPack.Version.props')" />
@@ -32,8 +32,8 @@
3232
</ItemGroup>
3333

3434
<ItemGroup>
35-
<PackageReference Include="LibGit2Sharp" Version="$(PackageVersion_LibGit2Sharp)" />
36-
<PackageReference Include="LibGit2Sharp.NativeBinaries" Version="$(PackageVersion_LibGit2SharpNativeBinaries)" PrivateAssets="contentFiles" />
35+
<!--<PackageReference Include="LibGit2Sharp" Version="$(PackageVersion_LibGit2Sharp)" />
36+
<PackageReference Include="LibGit2Sharp.NativeBinaries" Version="$(PackageVersion_LibGit2SharpNativeBinaries)" PrivateAssets="contentFiles" />-->
3737
<PackageReference Include="YamlDotNet" Version="$(PackageVersion_YamlDotNet)">
3838
<PrivateAssets>All</PrivateAssets>
3939
</PackageReference>

src/GitVersionTask/GitVersionTaskBase.cs

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,5 +63,10 @@ public void LogError(string message, string file = null)
6363
{
6464
BuildEngine.LogErrorEvent(new BuildErrorEventArgs(string.Empty, string.Empty, file, 0, 0, 0, 0, message, string.Empty, "GitVersionTask"));
6565
}
66+
67+
protected bool GetVersionVariables(out VersionVariables versionVariables)
68+
{
69+
return !ExecuteCore.TryGetVersion(SolutionDirectory, out versionVariables, NoFetch, new Authentication());
70+
}
6671
}
6772
}

src/GitVersionTask/TaskUtils.cs

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
namespace GitVersionTask
2+
{
3+
using System;
4+
5+
public class TaskUtils
6+
{
7+
public static string GetFileExtension(string language)
8+
{
9+
switch(language)
10+
{
11+
case "C#":
12+
return "cs";
13+
14+
case "F#":
15+
return "fs";
16+
17+
case "VB":
18+
return "vb";
19+
20+
default:
21+
throw new Exception($"Unknown language detected: '{language}'");
22+
}
23+
}
24+
}
25+
}

src/GitVersionTask/UpdateAssemblyInfo.cs

Lines changed: 3 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
namespace GitVersionTask
22
{
3-
using System;
43
using System.IO;
54

65
using GitVersion;
@@ -30,17 +29,14 @@ protected override void InnerExecute()
3029

3130
InvalidFileChecker.CheckForInvalidFiles(CompileFiles, ProjectFile);
3231

33-
if (!ExecuteCore.TryGetVersion(SolutionDirectory, out var versionVariables, NoFetch, new Authentication()))
34-
{
35-
return;
36-
}
32+
if (GetVersionVariables(out var versionVariables)) return;
3733

3834
CreateTempAssemblyInfo(versionVariables);
3935
}
4036

41-
void CreateTempAssemblyInfo(VersionVariables versionVariables)
37+
private void CreateTempAssemblyInfo(VersionVariables versionVariables)
4238
{
43-
var fileExtension = GetFileExtension();
39+
var fileExtension = TaskUtils.GetFileExtension(Language);
4440
var assemblyInfoFileName = $"GitVersionTaskAssemblyInfo.g.{fileExtension}";
4541

4642
if (IntermediateOutputPath == null)
@@ -58,23 +54,5 @@ void CreateTempAssemblyInfo(VersionVariables versionVariables)
5854
assemblyInfoFileUpdater.CommitChanges();
5955
}
6056
}
61-
62-
string GetFileExtension()
63-
{
64-
switch(Language)
65-
{
66-
case "C#":
67-
return "cs";
68-
69-
case "F#":
70-
return "fs";
71-
72-
case "VB":
73-
return "vb";
74-
75-
default:
76-
throw new Exception($"Unknown language detected: '{Language}'");
77-
}
78-
}
7957
}
8058
}

src/GitVersionTask/WriteVersionInfoToBuildLog.cs

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -7,15 +7,12 @@ public class WriteVersionInfoToBuildLog : GitVersionTaskBase
77
{
88
protected override void InnerExecute()
99
{
10-
if (!ExecuteCore.TryGetVersion(SolutionDirectory, out var versionVariables, NoFetch, new Authentication()))
11-
{
12-
return;
13-
}
10+
if (GetVersionVariables(out var versionVariables)) return;
1411

1512
WriteIntegrationParameters(BuildServerList.GetApplicableBuildServers(), versionVariables);
1613
}
1714

18-
void WriteIntegrationParameters(IEnumerable<IBuildServer> applicableBuildServers, VersionVariables versionVariables)
15+
private void WriteIntegrationParameters(IEnumerable<IBuildServer> applicableBuildServers, VersionVariables versionVariables)
1916
{
2017
foreach (var buildServer in applicableBuildServers)
2118
{

0 commit comments

Comments
 (0)