|
|
@@ -3,6 +3,11 @@ using Microsoft.Extensions.DependencyInjection;
|
|
|
using Microsoft.Extensions.Logging;
|
|
|
using RackPeek.Commands;
|
|
|
using RackPeek.Commands.AccessPoints;
|
|
|
+using RackPeek.Commands.Desktop;
|
|
|
+using RackPeek.Commands.Desktop.Cpus;
|
|
|
+using RackPeek.Commands.Desktop.Drives;
|
|
|
+using RackPeek.Commands.Desktop.Gpu;
|
|
|
+using RackPeek.Commands.Desktop.Nics;
|
|
|
using RackPeek.Commands.Server;
|
|
|
using RackPeek.Commands.Server.Cpus;
|
|
|
using RackPeek.Commands.Server.Drives;
|
|
|
@@ -13,6 +18,7 @@ using RackPeek.Commands.Systems;
|
|
|
using RackPeek.Commands.Ups;
|
|
|
using RackPeek.Domain.Resources.Hardware;
|
|
|
using RackPeek.Domain.Resources.Hardware.AccessPoints;
|
|
|
+using RackPeek.Domain.Resources.Hardware.Desktop;
|
|
|
using RackPeek.Domain.Resources.Hardware.Reports;
|
|
|
using RackPeek.Domain.Resources.Hardware.Server;
|
|
|
using RackPeek.Domain.Resources.Hardware.Server.Cpu;
|
|
|
@@ -219,6 +225,65 @@ public static class CliBootstrap
|
|
|
services.AddScoped<UpsGetByNameCommand>();
|
|
|
services.AddScoped<UpsGetCommand>();
|
|
|
services.AddScoped<UpsSetCommand>();
|
|
|
+
|
|
|
+ // Desktop use cases
|
|
|
+ services.AddScoped<AddDesktopUseCase>();
|
|
|
+ services.AddScoped<DeleteDesktopUseCase>();
|
|
|
+ services.AddScoped<DescribeDesktopUseCase>();
|
|
|
+ services.AddScoped<GetDesktopUseCase>();
|
|
|
+ services.AddScoped<GetDesktopsUseCase>();
|
|
|
+ services.AddScoped<UpdateDesktopUseCase>();
|
|
|
+
|
|
|
+// Desktop CPU use cases
|
|
|
+ services.AddScoped<AddDesktopCpuUseCase>();
|
|
|
+ services.AddScoped<UpdateDesktopCpuUseCase>();
|
|
|
+ services.AddScoped<RemoveDesktopCpuUseCase>();
|
|
|
+
|
|
|
+// Desktop Drive use cases
|
|
|
+ services.AddScoped<AddDesktopDriveUseCase>();
|
|
|
+ services.AddScoped<UpdateDesktopDriveUseCase>();
|
|
|
+ services.AddScoped<RemoveDesktopDriveUseCase>();
|
|
|
+
|
|
|
+// Desktop GPU use cases
|
|
|
+ services.AddScoped<AddDesktopGpuUseCase>();
|
|
|
+ services.AddScoped<UpdateDesktopGpuUseCase>();
|
|
|
+ services.AddScoped<RemoveDesktopGpuUseCase>();
|
|
|
+
|
|
|
+// Desktop NIC use cases
|
|
|
+ services.AddScoped<AddDesktopNicUseCase>();
|
|
|
+ services.AddScoped<UpdateDesktopNicUseCase>();
|
|
|
+ services.AddScoped<RemoveDesktopNicUseCase>();
|
|
|
+
|
|
|
+// Desktop CRUD commands
|
|
|
+ services.AddScoped<DesktopAddCommand>();
|
|
|
+ services.AddScoped<DesktopDeleteCommand>();
|
|
|
+ services.AddScoped<DesktopDescribeCommand>();
|
|
|
+ services.AddScoped<DesktopGetByNameCommand>();
|
|
|
+ services.AddScoped<DesktopGetCommand>();
|
|
|
+ services.AddScoped<DesktopSetCommand>();
|
|
|
+
|
|
|
+// Desktop CPU commands
|
|
|
+ services.AddScoped<DesktopCpuAddCommand>();
|
|
|
+ services.AddScoped<DesktopCpuSetCommand>();
|
|
|
+ services.AddScoped<DesktopCpuRemoveCommand>();
|
|
|
+
|
|
|
+// Desktop Drive commands
|
|
|
+ services.AddScoped<DesktopDriveAddCommand>();
|
|
|
+ services.AddScoped<DesktopDriveSetCommand>();
|
|
|
+ services.AddScoped<DesktopDriveRemoveCommand>();
|
|
|
+
|
|
|
+// Desktop GPU commands
|
|
|
+ services.AddScoped<DesktopGpuAddCommand>();
|
|
|
+ services.AddScoped<DesktopGpuSetCommand>();
|
|
|
+ services.AddScoped<DesktopGpuRemoveCommand>();
|
|
|
+
|
|
|
+// Desktop NIC commands
|
|
|
+ services.AddScoped<DesktopNicAddCommand>();
|
|
|
+ services.AddScoped<DesktopNicSetCommand>();
|
|
|
+ services.AddScoped<DesktopNicRemoveCommand>();
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
|
|
|
|
|
|
|
|
|
@@ -416,6 +481,50 @@ public static class CliBootstrap
|
|
|
.WithDescription("Delete a UPS");
|
|
|
});
|
|
|
|
|
|
+ config.AddBranch("desktops", desktops =>
|
|
|
+ {
|
|
|
+ // CRUD
|
|
|
+ desktops.AddCommand<DesktopAddCommand>("add");
|
|
|
+ desktops.AddCommand<DesktopGetCommand>("list");
|
|
|
+ desktops.AddCommand<DesktopGetByNameCommand>("get");
|
|
|
+ desktops.AddCommand<DesktopDescribeCommand>("describe");
|
|
|
+ desktops.AddCommand<DesktopSetCommand>("set");
|
|
|
+ desktops.AddCommand<DesktopDeleteCommand>("del");
|
|
|
+
|
|
|
+ // CPU
|
|
|
+ desktops.AddBranch("cpu", cpu =>
|
|
|
+ {
|
|
|
+ cpu.AddCommand<DesktopCpuAddCommand>("add");
|
|
|
+ cpu.AddCommand<DesktopCpuSetCommand>("set");
|
|
|
+ cpu.AddCommand<DesktopCpuRemoveCommand>("del");
|
|
|
+ });
|
|
|
+
|
|
|
+ // Drives
|
|
|
+ desktops.AddBranch("drive", drive =>
|
|
|
+ {
|
|
|
+ drive.AddCommand<DesktopDriveAddCommand>("add");
|
|
|
+ drive.AddCommand<DesktopDriveSetCommand>("set");
|
|
|
+ drive.AddCommand<DesktopDriveRemoveCommand>("del");
|
|
|
+ });
|
|
|
+
|
|
|
+ // GPUs
|
|
|
+ desktops.AddBranch("gpu", gpu =>
|
|
|
+ {
|
|
|
+ gpu.AddCommand<DesktopGpuAddCommand>("add");
|
|
|
+ gpu.AddCommand<DesktopGpuSetCommand>("set");
|
|
|
+ gpu.AddCommand<DesktopGpuRemoveCommand>("del");
|
|
|
+ });
|
|
|
+
|
|
|
+ // NICs
|
|
|
+ desktops.AddBranch("nic", nic =>
|
|
|
+ {
|
|
|
+ nic.AddCommand<DesktopNicAddCommand>("add");
|
|
|
+ nic.AddCommand<DesktopNicSetCommand>("set");
|
|
|
+ nic.AddCommand<DesktopNicRemoveCommand>("del");
|
|
|
+ });
|
|
|
+
|
|
|
+ });
|
|
|
+
|
|
|
|
|
|
// ----------------------------
|
|
|
// Reports (read-only summaries)
|