refactor(build): move BuildContext to file, add BuildSuffix and CommitHash configuration options
This commit is contained in:
parent
1491a26a3e
commit
fa0531f2c5
3 changed files with 72 additions and 49 deletions
|
|
@ -1,9 +1,6 @@
|
|||
using Cake.Common;
|
||||
using Cake.Common.IO;
|
||||
using Cake.Common.IO.Paths;
|
||||
using Cake.Core;
|
||||
using Cake.Frosting;
|
||||
using Cake.Powershell;
|
||||
|
||||
namespace Build;
|
||||
|
||||
public static class Program
|
||||
{
|
||||
|
|
@ -11,45 +8,8 @@ public static class Program
|
|||
{
|
||||
return new CakeHost()
|
||||
.UseContext<BuildContext>()
|
||||
// Uncomment this if you don't want to set the suffix via the run profile program arguments
|
||||
//.UseCakeSetting(nameof(BuildContext.BuildSuffix), "<your suffix here>")
|
||||
.Run(args);
|
||||
}
|
||||
}
|
||||
|
||||
public class BuildContext : FrostingContext
|
||||
{
|
||||
/// <summary>
|
||||
/// Base source directory
|
||||
/// </summary>
|
||||
public ConvertableDirectoryPath BaseSourceLocation { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Powershell module project folder
|
||||
/// </summary>
|
||||
public ConvertableDirectoryPath PowershellModuleProjectDirectory { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Powershell module csproj location
|
||||
/// </summary>
|
||||
public ConvertableFilePath PowershellModuleCsproj { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Output directory for built DLLs and powershell module manifest files
|
||||
/// </summary>
|
||||
public ConvertableDirectoryPath PowershellModuleOutputDir { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Path to powershell script that creates the module manifest files
|
||||
/// </summary>
|
||||
public ConvertableFilePath CreateModuleManifestScript { get; set; }
|
||||
|
||||
public BuildContext(ICakeContext context)
|
||||
: base(context)
|
||||
{
|
||||
BaseSourceLocation = context.Directory("../src");
|
||||
PowershellModuleProjectDirectory = BaseSourceLocation + context.Directory("PowershellModule");
|
||||
PowershellModuleCsproj = PowershellModuleProjectDirectory + context.File("PowershellModule.csproj");
|
||||
PowershellModuleOutputDir = context.Directory("../") + context.Directory("output") + context.Directory("PowershellModule");
|
||||
var buildScriptDirectory = context.Directory("./Scripts");
|
||||
CreateModuleManifestScript = buildScriptDirectory + context.File("CreateModuleManifest.ps1");
|
||||
}
|
||||
}
|
||||
Loading…
Reference in a new issue