Skip to content

Commit fdad726

Browse files
committed
moved initialization to CoreModule
1 parent 0b726f1 commit fdad726

File tree

8 files changed

+46
-39
lines changed

8 files changed

+46
-39
lines changed

src/GitVersionCore/Cache/GitVersionCache.cs

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -60,16 +60,6 @@ public static string GetCacheDirectory(GitPreparer gitPreparer)
6060
return cacheDir;
6161
}
6262

63-
private string PrepareCacheDirectory(GitPreparer gitPreparer)
64-
{
65-
var cacheDir = GetCacheDirectory(gitPreparer);
66-
67-
// If the cacheDir already exists, CreateDirectory just won't do anything (it won't fail). @asbjornu
68-
fileSystem.CreateDirectory(cacheDir);
69-
70-
return cacheDir;
71-
}
72-
7363
public VersionVariables LoadVersionVariablesFromDiskCache(GitPreparer gitPreparer, GitVersionCacheKey key)
7464
{
7565
using (log.IndentLog("Loading version variables from disk cache"))
@@ -109,6 +99,16 @@ public VersionVariables LoadVersionVariablesFromDiskCache(GitPreparer gitPrepare
10999
}
110100
}
111101

102+
private string PrepareCacheDirectory(GitPreparer gitPreparer)
103+
{
104+
var cacheDir = GetCacheDirectory(gitPreparer);
105+
106+
// If the cacheDir already exists, CreateDirectory just won't do anything (it won't fail). @asbjornu
107+
fileSystem.CreateDirectory(cacheDir);
108+
109+
return cacheDir;
110+
}
111+
112112
private static string GetCacheFileName(GitVersionCacheKey key, string cacheDir)
113113
{
114114
return Path.Combine(cacheDir, string.Concat(key.Value, ".yml"));

src/GitVersionCore/CoreModule.cs

Lines changed: 27 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,11 @@
1+
using System;
12
using GitVersion.BuildServers;
23
using Microsoft.Extensions.DependencyInjection;
34
using GitVersion.Common;
5+
using GitVersion.Configuration;
46
using GitVersion.Logging;
7+
using Microsoft.Extensions.Options;
8+
using Environment = GitVersion.Common.Environment;
59

610
namespace GitVersion
711
{
@@ -15,6 +19,29 @@ public void RegisterTypes(IServiceCollection services)
1519

1620
services.AddSingleton<IExecuteCore, ExecuteCore>();
1721

22+
services.AddSingleton<IBuildServerResolver, BuildServerResolver>();
23+
services.AddSingleton(GetConfigFileLocator);
24+
25+
RegisterBuildServers(services);
26+
}
27+
28+
private static IConfigFileLocator GetConfigFileLocator(IServiceProvider sp)
29+
{
30+
var fileSystem = sp.GetService<IFileSystem>();
31+
var log = sp.GetService<ILog>();
32+
var arguments = sp.GetService<IOptions<Arguments>>();
33+
34+
var configFile = arguments.Value.ConfigFile;
35+
36+
var configFileLocator = string.IsNullOrWhiteSpace(configFile)
37+
? new DefaultConfigFileLocator(fileSystem, log) as IConfigFileLocator
38+
: new NamedConfigFileLocator(configFile, fileSystem, log);
39+
40+
return configFileLocator;
41+
}
42+
43+
private static void RegisterBuildServers(IServiceCollection services)
44+
{
1845
services.AddSingleton<IBuildServer, ContinuaCi>();
1946
services.AddSingleton<IBuildServer, TeamCity>();
2047
services.AddSingleton<IBuildServer, AppVeyor>();
@@ -26,8 +53,6 @@ public void RegisterTypes(IServiceCollection services)
2653
services.AddSingleton<IBuildServer, EnvRun>();
2754
services.AddSingleton<IBuildServer, Drone>();
2855
services.AddSingleton<IBuildServer, CodeBuild>();
29-
30-
services.AddSingleton<IBuildServerResolver, BuildServerResolver>();
3156
}
3257
}
3358
}

src/GitVersionCore/ExecuteCore.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,11 +33,11 @@ public VersionVariables ExecuteGitVersion(Arguments arguments)
3333
arguments.CommitId, arguments.OverrideConfig, arguments.NoCache, arguments.NoNormalize);
3434
}
3535

36-
public bool TryGetVersion(string directory, out VersionVariables versionVariables, bool noFetch, Authentication authentication)
36+
public bool TryGetVersion(string directory, out VersionVariables versionVariables, bool noFetch)
3737
{
3838
try
3939
{
40-
versionVariables = ExecuteGitVersion(null, null, authentication, null, noFetch, directory, null);
40+
versionVariables = ExecuteGitVersion(null, null, null, null, noFetch, directory, null);
4141
return true;
4242
}
4343
catch (Exception ex)

src/GitVersionCore/GitPreparer.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,9 @@ namespace GitVersion
1010
public class GitPreparer
1111
{
1212
private readonly ILog log;
13-
private string dynamicRepositoryLocation;
14-
private AuthenticationInfo authentication;
15-
private bool noFetch;
13+
private readonly string dynamicRepositoryLocation;
14+
private readonly AuthenticationInfo authentication;
15+
private readonly bool noFetch;
1616

1717
private const string defaultRemoteName = "origin";
1818

src/GitVersionCore/GitVersionCore.csproj

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020
<PackageReference Include="LibGit2Sharp" Version="$(PackageVersion_LibGit2Sharp)" />
2121
<PackageReference Include="JetBrains.Annotations" Version="$(PackageVersion_JetBrainsAnnotations)" PrivateAssets="All"></PackageReference>
2222
<PackageReference Include="Microsoft.Extensions.DependencyInjection.Abstractions" Version="3.0.0" />
23+
<PackageReference Include="Microsoft.Extensions.Options" Version="3.0.0" />
2324
<PackageReference Include="YamlDotNet" Version="$(PackageVersion_YamlDotNet)" />
2425
</ItemGroup>
2526

src/GitVersionCore/IExecuteCore.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,6 @@ namespace GitVersion
55
public interface IExecuteCore
66
{
77
VersionVariables ExecuteGitVersion(Arguments arguments);
8-
bool TryGetVersion(string directory, out VersionVariables versionVariables, bool noFetch, Authentication authentication);
8+
bool TryGetVersion(string directory, out VersionVariables versionVariables, bool noFetch);
99
}
10-
}
10+
}

src/GitVersionExe/Module.cs

Lines changed: 0 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,5 @@
1-
using System;
21
using GitVersion.Common;
3-
using GitVersion.Configuration;
4-
using GitVersion.Logging;
52
using Microsoft.Extensions.DependencyInjection;
6-
using Microsoft.Extensions.Options;
73

84
namespace GitVersion
95
{
@@ -17,21 +13,6 @@ public void RegisterTypes(IServiceCollection services)
1713
services.AddSingleton<IGitVersionRunner, GitVersionRunner>();
1814

1915
services.AddTransient<IExecCommand, ExecCommand>();
20-
21-
services.AddSingleton(GetConfigFileLocator);
22-
}
23-
24-
private static IConfigFileLocator GetConfigFileLocator(IServiceProvider sp)
25-
{
26-
var fileSystem = sp.GetService<IFileSystem>();
27-
var log = sp.GetService<ILog>();
28-
var arguments = sp.GetService<IOptions<Arguments>>();
29-
30-
var configFileLocator = string.IsNullOrWhiteSpace(arguments.Value.ConfigFile)
31-
? (IConfigFileLocator) new DefaultConfigFileLocator(fileSystem, log)
32-
: new NamedConfigFileLocator(arguments.Value.ConfigFile, fileSystem, log);
33-
34-
return configFileLocator;
3516
}
3617
}
3718
}

src/GitVersionTask/GitVersionTasks.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -120,7 +120,7 @@ private static bool ExecuteGitVersionTask<T>(T task, Action<T> action)
120120

121121
private static bool GetVersionVariables(GitVersionTaskBase task, out VersionVariables versionVariables)
122122
=> new ExecuteCore(fileSystem, log, GetConfigFileLocator(task.ConfigFilePath), buildServerResolver)
123-
.TryGetVersion(task.SolutionDirectory, out versionVariables, task.NoFetch, new Authentication());
123+
.TryGetVersion(task.SolutionDirectory, out versionVariables, task.NoFetch);
124124

125125
private static IConfigFileLocator GetConfigFileLocator(string filePath = null) =>
126126
!string.IsNullOrEmpty(filePath)

0 commit comments

Comments
 (0)