mirror of
https://github.com/MindWorkAI/AI-Studio.git
synced 2025-04-28 11:39:48 +00:00
Added the prepare command
This commit is contained in:
parent
1fc1e4341b
commit
f02799d050
@ -11,6 +11,25 @@ namespace Build.Commands;
|
|||||||
|
|
||||||
public sealed partial class UpdateMetadataCommands
|
public sealed partial class UpdateMetadataCommands
|
||||||
{
|
{
|
||||||
|
[Command("prepare", Description = "Prepare the next release")]
|
||||||
|
public async Task Prepare(PrepareAction action)
|
||||||
|
{
|
||||||
|
var appVersion = await this.UpdateAppVersion(action);
|
||||||
|
if (!string.IsNullOrWhiteSpace(appVersion))
|
||||||
|
{
|
||||||
|
var buildNumber = await this.IncreaseBuildNumber();
|
||||||
|
var buildTime = await this.UpdateBuildTime();
|
||||||
|
await this.UpdateChangelog(buildNumber, appVersion, buildTime);
|
||||||
|
await this.UpdateDotnetVersion();
|
||||||
|
await this.UpdateRustVersion();
|
||||||
|
await this.UpdateMudBlazorVersion();
|
||||||
|
await this.UpdateTauriVersion();
|
||||||
|
await this.UpdateProjectCommitHash();
|
||||||
|
await this.UpdateLicenceYear(Path.GetFullPath(Path.Combine(Environment.GetAIStudioDirectory(), "..", "..", "LICENSE.md")));
|
||||||
|
await this.UpdateLicenceYear(Path.GetFullPath(Path.Combine(Environment.GetAIStudioDirectory(), "Pages", "About.razor.cs")));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
[Command("build", Description = "Build MindWork AI Studio")]
|
[Command("build", Description = "Build MindWork AI Studio")]
|
||||||
public async Task Build()
|
public async Task Build()
|
||||||
{
|
{
|
||||||
@ -152,6 +171,9 @@ public sealed partial class UpdateMetadataCommands
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Right now, the build time is formatted as "yyyy-MM-dd HH:mm:ss UTC", but must remove the seconds:
|
||||||
|
buildTime = buildTime[..^7] + " UTC";
|
||||||
|
|
||||||
const string CODE_START =
|
const string CODE_START =
|
||||||
"""
|
"""
|
||||||
LOGS =
|
LOGS =
|
||||||
@ -187,14 +209,14 @@ public sealed partial class UpdateMetadataCommands
|
|||||||
await File.WriteAllLinesAsync(pathMetadata, lines, Environment.UTF8_NO_BOM);
|
await File.WriteAllLinesAsync(pathMetadata, lines, Environment.UTF8_NO_BOM);
|
||||||
}
|
}
|
||||||
|
|
||||||
private async Task UpdateAppVersion(PrepareAction action)
|
private async Task<string> UpdateAppVersion(PrepareAction action)
|
||||||
{
|
{
|
||||||
const int APP_VERSION_INDEX = 0;
|
const int APP_VERSION_INDEX = 0;
|
||||||
|
|
||||||
if (action == PrepareAction.NONE)
|
if (action == PrepareAction.NONE)
|
||||||
{
|
{
|
||||||
Console.WriteLine("- No action specified. Skipping app version update.");
|
Console.WriteLine("- No action specified. Skipping app version update.");
|
||||||
return;
|
return string.Empty;
|
||||||
}
|
}
|
||||||
|
|
||||||
var pathMetadata = Environment.GetMetadataPath();
|
var pathMetadata = Environment.GetMetadataPath();
|
||||||
@ -228,6 +250,7 @@ public sealed partial class UpdateMetadataCommands
|
|||||||
|
|
||||||
lines[APP_VERSION_INDEX] = updatedAppVersion;
|
lines[APP_VERSION_INDEX] = updatedAppVersion;
|
||||||
await File.WriteAllLinesAsync(pathMetadata, lines, Environment.UTF8_NO_BOM);
|
await File.WriteAllLinesAsync(pathMetadata, lines, Environment.UTF8_NO_BOM);
|
||||||
|
return updatedAppVersion;
|
||||||
}
|
}
|
||||||
|
|
||||||
private async Task UpdateLicenceYear(string licenceFilePath)
|
private async Task UpdateLicenceYear(string licenceFilePath)
|
||||||
@ -423,7 +446,7 @@ public sealed partial class UpdateMetadataCommands
|
|||||||
""";
|
""";
|
||||||
}
|
}
|
||||||
|
|
||||||
private async Task IncreaseBuildNumber()
|
private async Task<int> IncreaseBuildNumber()
|
||||||
{
|
{
|
||||||
const int BUILD_NUMBER_INDEX = 2;
|
const int BUILD_NUMBER_INDEX = 2;
|
||||||
var pathMetadata = Environment.GetMetadataPath();
|
var pathMetadata = Environment.GetMetadataPath();
|
||||||
@ -434,9 +457,10 @@ public sealed partial class UpdateMetadataCommands
|
|||||||
|
|
||||||
lines[BUILD_NUMBER_INDEX] = buildNumber.ToString();
|
lines[BUILD_NUMBER_INDEX] = buildNumber.ToString();
|
||||||
await File.WriteAllLinesAsync(pathMetadata, lines, Environment.UTF8_NO_BOM);
|
await File.WriteAllLinesAsync(pathMetadata, lines, Environment.UTF8_NO_BOM);
|
||||||
|
return buildNumber;
|
||||||
}
|
}
|
||||||
|
|
||||||
private async Task UpdateBuildTime()
|
private async Task<string> UpdateBuildTime()
|
||||||
{
|
{
|
||||||
const int BUILD_TIME_INDEX = 1;
|
const int BUILD_TIME_INDEX = 1;
|
||||||
var pathMetadata = Environment.GetMetadataPath();
|
var pathMetadata = Environment.GetMetadataPath();
|
||||||
@ -447,6 +471,7 @@ public sealed partial class UpdateMetadataCommands
|
|||||||
|
|
||||||
lines[BUILD_TIME_INDEX] = buildTime;
|
lines[BUILD_TIME_INDEX] = buildTime;
|
||||||
await File.WriteAllLinesAsync(pathMetadata, lines, Environment.UTF8_NO_BOM);
|
await File.WriteAllLinesAsync(pathMetadata, lines, Environment.UTF8_NO_BOM);
|
||||||
|
return buildTime;
|
||||||
}
|
}
|
||||||
|
|
||||||
[GeneratedRegex("""(?ms).?(NET\s+SDK|SDK\s+\.NET)\s*:\s+Version:\s+(?<sdkVersion>[0-9.]+).+Commit:\s+(?<sdkCommit>[a-zA-Z0-9]+).+Host:\s+Version:\s+(?<hostVersion>[0-9.]+).+Commit:\s+(?<hostCommit>[a-zA-Z0-9]+)""")]
|
[GeneratedRegex("""(?ms).?(NET\s+SDK|SDK\s+\.NET)\s*:\s+Version:\s+(?<sdkVersion>[0-9.]+).+Commit:\s+(?<sdkCommit>[a-zA-Z0-9]+).+Host:\s+Version:\s+(?<hostVersion>[0-9.]+).+Commit:\s+(?<hostCommit>[a-zA-Z0-9]+)""")]
|
||||||
|
Loading…
Reference in New Issue
Block a user