mirror of
https://github.com/zoriya/octokit.net.git
synced 2025-12-05 23:06:10 +00:00
(build) Updated Cake.Frosting to version 0.34.1 (#1978)
* (build) Updated Cake.Frosting to version 0.34.1 * Update GritVersion from 3.6.2 to 5.0.0
This commit is contained in:
committed by
Brendan Forster
parent
8fcb731343
commit
01d5c8721c
@@ -6,7 +6,7 @@
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Cake.Frosting" Version="0.31.0" />
|
||||
<PackageReference Include="Cake.Frosting" Version="0.34.1" />
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
||||
|
||||
@@ -28,6 +28,8 @@ public class Context : FrostingContext
|
||||
|
||||
public Project[] Projects { get; set; }
|
||||
|
||||
public FilePath GitVersionToolPath { get; set; }
|
||||
|
||||
public DotNetCoreTestSettings GetTestSettings()
|
||||
{
|
||||
var settings = new DotNetCoreTestSettings
|
||||
|
||||
@@ -63,10 +63,12 @@ public class Lifetime : FrostingLifetime<Context>
|
||||
else
|
||||
{
|
||||
context.Information("Installing tools...");
|
||||
ToolInstaller.Install(context, "GitVersion.CommandLine", "3.6.2");
|
||||
ToolInstaller.Install(context, "Octokit.CodeFormatter", "1.0.0-preview");
|
||||
}
|
||||
|
||||
|
||||
context.GitVersionToolPath = ToolInstaller.DotNetCoreToolInstall(context, "GitVersion.Tool", "5.0.0", "dotnet-gitversion");
|
||||
|
||||
// Calculate semantic version.
|
||||
context.Version = BuildVersion.Calculate(context);
|
||||
context.Version.Prefix = context.Argument<string>("version", context.Version.Prefix);
|
||||
|
||||
@@ -30,11 +30,6 @@ public class BuildVersion
|
||||
public static BuildVersion Calculate(Context context)
|
||||
{
|
||||
context.Information("Calculating semantic version...");
|
||||
if (context.CoreOnly)
|
||||
{
|
||||
context.Information("Skipping GitVersion query for local build");
|
||||
return new BuildVersion("0.0.0", "dev");
|
||||
}
|
||||
|
||||
if (!context.IsLocalBuild)
|
||||
{
|
||||
|
||||
@@ -1,29 +1,13 @@
|
||||
using Cake.Common;
|
||||
using Cake.Common.Diagnostics;
|
||||
using Cake.Common.Tools.GitVersion;
|
||||
using Cake.Core;
|
||||
using Cake.Common.Tools.GitVersion;
|
||||
|
||||
public static class GitVersionRunner
|
||||
{
|
||||
public static GitVersion Run(ICakeContext context, GitVersionOutput outputType)
|
||||
public static GitVersion Run(Context context, GitVersionOutput outputType)
|
||||
{
|
||||
if (context.IsRunningOnWindows())
|
||||
return context.GitVersion(new GitVersionSettings
|
||||
{
|
||||
return context.GitVersion(new GitVersionSettings
|
||||
{
|
||||
OutputType = outputType
|
||||
});
|
||||
}
|
||||
else
|
||||
{
|
||||
// On non windows platform, point the GitVersion task at our wrapper script that uses mono to run GitVersion.exe
|
||||
context.Information("Overriding GitVersion ToolPath to /bin/sh ./tools/gitversion_wrapper.sh");
|
||||
return context.GitVersion(new GitVersionSettings
|
||||
{
|
||||
OutputType = outputType,
|
||||
ToolPath = "/bin/sh",
|
||||
ArgumentCustomization = args => args.Prepend("./tools/gitversion_wrapper.sh")
|
||||
});
|
||||
}
|
||||
OutputType = outputType,
|
||||
ToolPath = context.GitVersionToolPath
|
||||
});
|
||||
}
|
||||
}
|
||||
@@ -1,16 +1,76 @@
|
||||
using Cake.Common.Tools.NuGet;
|
||||
using Cake.Common.IO;
|
||||
using Cake.Common.Tools.DotNetCore;
|
||||
using Cake.Common.Tools.DotNetCore.Tool;
|
||||
using Cake.Common.Tools.NuGet;
|
||||
using Cake.Common.Tools.NuGet.Install;
|
||||
using Cake.Core;
|
||||
using Cake.Core.IO;
|
||||
|
||||
public static class ToolInstaller
|
||||
{
|
||||
private static DirectoryPath ToolsPath { get; } = "./tools";
|
||||
public static void Install(ICakeContext context, string package, string version)
|
||||
{
|
||||
context.NuGetInstall(package, new NuGetInstallSettings
|
||||
{
|
||||
Version = version,
|
||||
ExcludeVersion = true,
|
||||
OutputDirectory = "./tools"
|
||||
OutputDirectory = ToolsPath
|
||||
});
|
||||
}
|
||||
|
||||
public static FilePath DotNetCoreToolInstall(
|
||||
this ICakeContext context,
|
||||
string package,
|
||||
string version,
|
||||
string toolName)
|
||||
{
|
||||
context.EnsureDirectoryExists(ToolsPath);
|
||||
|
||||
var toolsPath = context.MakeAbsolute(ToolsPath);
|
||||
|
||||
var toolInstallPath = toolsPath
|
||||
.Combine(".store")
|
||||
.Combine(package.ToLowerInvariant())
|
||||
.Combine(version.ToLowerInvariant());
|
||||
|
||||
var toolPath = toolsPath.CombineWithFilePath(
|
||||
string.Concat(
|
||||
toolName,
|
||||
context.Environment.Platform.IsUnix()
|
||||
? string.Empty
|
||||
: ".exe"
|
||||
)
|
||||
);
|
||||
|
||||
if (!context.DirectoryExists(toolInstallPath) && context.FileExists(toolPath))
|
||||
{
|
||||
context.DotNetCoreTool("tool", new DotNetCoreToolSettings
|
||||
{
|
||||
ArgumentCustomization = args => args
|
||||
.Append("uninstall")
|
||||
.AppendSwitchQuoted("--tool-path", toolsPath.FullPath)
|
||||
.AppendQuoted(package)
|
||||
});
|
||||
}
|
||||
|
||||
if (!context.FileExists(toolPath))
|
||||
{
|
||||
context.DotNetCoreTool("tool", new DotNetCoreToolSettings
|
||||
{
|
||||
ArgumentCustomization = args => args
|
||||
.Append("install")
|
||||
.AppendSwitchQuoted("--version", version)
|
||||
.AppendSwitchQuoted("--tool-path", toolsPath.FullPath)
|
||||
.AppendQuoted(package)
|
||||
});
|
||||
}
|
||||
|
||||
if (!context.FileExists(toolPath))
|
||||
{
|
||||
throw new System.Exception($"Failed to install .NET Core tool {package} ({version}).");
|
||||
}
|
||||
|
||||
return toolPath;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user