mirror of
https://github.com/MindWorkAI/AI-Studio.git
synced 2025-04-27 15:19:48 +00:00
Some checks are pending
Build and Release / Read metadata (push) Waiting to run
Build and Release / Build app (${{ matrix.dotnet_runtime }}) (-aarch64-apple-darwin, osx-arm64, macos-latest, aarch64-apple-darwin, dmg updater) (push) Blocked by required conditions
Build and Release / Build app (${{ matrix.dotnet_runtime }}) (-aarch64-pc-windows-msvc.exe, win-arm64, windows-latest, aarch64-pc-windows-msvc, nsis updater) (push) Blocked by required conditions
Build and Release / Build app (${{ matrix.dotnet_runtime }}) (-aarch64-unknown-linux-gnu, linux-arm64, ubuntu-22.04-arm, aarch64-unknown-linux-gnu, deb) (push) Blocked by required conditions
Build and Release / Build app (${{ matrix.dotnet_runtime }}) (-x86_64-apple-darwin, osx-x64, macos-latest, x86_64-apple-darwin, dmg updater) (push) Blocked by required conditions
Build and Release / Build app (${{ matrix.dotnet_runtime }}) (-x86_64-pc-windows-msvc.exe, win-x64, windows-latest, x86_64-pc-windows-msvc, nsis updater) (push) Blocked by required conditions
Build and Release / Build app (${{ matrix.dotnet_runtime }}) (-x86_64-unknown-linux-gnu, linux-x64, ubuntu-22.04, x86_64-unknown-linux-gnu, appimage deb updater) (push) Blocked by required conditions
Build and Release / Prepare & create release (push) Blocked by required conditions
Build and Release / Publish release (push) Blocked by required conditions
49 lines
1.8 KiB
C#
49 lines
1.8 KiB
C#
// ReSharper disable ClassNeverInstantiated.Global
|
|
// ReSharper disable UnusedType.Global
|
|
// ReSharper disable UnusedMember.Global
|
|
|
|
using Build.Tools;
|
|
|
|
namespace Build.Commands;
|
|
|
|
public sealed class UpdateWebAssetsCommand
|
|
{
|
|
[Command("update-web", Description = "Update web assets")]
|
|
public void UpdateWebAssets()
|
|
{
|
|
if(!Environment.IsWorkingDirectoryValid())
|
|
return;
|
|
|
|
Console.WriteLine("=========================");
|
|
Console.Write("- Updating web assets ...");
|
|
|
|
var rid = Environment.GetRidsForCurrentOS().First();
|
|
var cwd = Environment.GetAIStudioDirectory();
|
|
var contentPath = Path.Join(cwd, "bin", "release", Environment.DOTNET_VERSION, rid.ToName(), "publish", "wwwroot", "_content");
|
|
var isMudBlazorDirectoryPresent = Directory.Exists(Path.Join(contentPath, "MudBlazor"));
|
|
if (!isMudBlazorDirectoryPresent)
|
|
{
|
|
Console.WriteLine();
|
|
Console.WriteLine($"- Error: No web assets found for RID '{rid}'. Please publish the project first.");
|
|
return;
|
|
}
|
|
|
|
Directory.CreateDirectory(Path.Join(cwd, "wwwroot", "system"));
|
|
var sourcePaths = Directory.EnumerateFiles(contentPath, "*", SearchOption.AllDirectories);
|
|
var counter = 0;
|
|
foreach(var sourcePath in sourcePaths)
|
|
{
|
|
counter++;
|
|
var relativePath = Path.GetRelativePath(cwd, sourcePath);
|
|
var targetPath = Path.Join(cwd, "wwwroot", relativePath);
|
|
var targetDirectory = Path.GetDirectoryName(targetPath);
|
|
if (targetDirectory != null)
|
|
Directory.CreateDirectory(targetDirectory);
|
|
|
|
File.Copy(sourcePath, targetPath, true);
|
|
}
|
|
|
|
Console.WriteLine($" {counter:###,###} web assets updated successfully.");
|
|
Console.WriteLine();
|
|
}
|
|
} |