From 85e182a368f19dcd291c7c46c4c09e4b6bba3aab Mon Sep 17 00:00:00 2001 From: Nikolay Edigaryev Date: Thu, 13 Feb 2025 12:34:00 +0100 Subject: [PATCH 1/2] Worker: prefer assigned CPU/memory to CPU/memory --- internal/worker/vmmanager/vm.go | 22 ++++++++++++++++++---- 1 file changed, 18 insertions(+), 4 deletions(-) diff --git a/internal/worker/vmmanager/vm.go b/internal/worker/vmmanager/vm.go index a81817c..1a6155c 100644 --- a/internal/worker/vmmanager/vm.go +++ b/internal/worker/vmmanager/vm.go @@ -195,17 +195,31 @@ func (vm *VM) cloneAndConfigure(ctx context.Context) error { vm.imageFQN.Store(&fqn) } - if vm.Resource.Memory != 0 { + // Set memory + memory := vm.Resource.AssignedMemory + + if memory == 0 { + memory = vm.Resource.Memory + } + + if memory != 0 { _, _, err = tart.Tart(ctx, vm.logger, "set", "--memory", - strconv.FormatUint(vm.Resource.Memory, 10), vm.id()) + strconv.FormatUint(memory, 10), vm.id()) if err != nil { return err } } - if vm.Resource.CPU != 0 { + // Set CPU + cpu := vm.Resource.AssignedCPU + + if cpu == 0 { + cpu = vm.Resource.CPU + } + + if cpu != 0 { _, _, err = tart.Tart(ctx, vm.logger, "set", "--cpu", - strconv.FormatUint(vm.Resource.CPU, 10), vm.id()) + strconv.FormatUint(cpu, 10), vm.id()) if err != nil { return err } From 40d331e7d80e5ef7756f29840276a571ce3b8cc9 Mon Sep 17 00:00:00 2001 From: Nikolay Edigaryev Date: Thu, 13 Feb 2025 13:10:41 +0100 Subject: [PATCH 2/2] orchard get worker: show default CPU, default memory and labels --- internal/command/get/worker.go | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/internal/command/get/worker.go b/internal/command/get/worker.go index 927fa7c..d95b10c 100644 --- a/internal/command/get/worker.go +++ b/internal/command/get/worker.go @@ -69,16 +69,19 @@ func runGetWorker(cmd *cobra.Command, args []string) error { table.AddRow("Machine ID", worker.MachineID) table.AddRow("Scheduling paused", worker.SchedulingPaused) + table.AddRow("Default CPU", worker.DefaultCPU) + table.AddRow("Default memory", worker.DefaultCPU) - var resourcesInfo string - if len(worker.Resources) != 0 { - resourceDescriptions := lo.MapToSlice(worker.Resources, func(key string, value uint64) string { - return fmt.Sprintf("%s: %d", key, value) - }) - resourcesInfo = strings.Join(resourceDescriptions, "\n") - } + resourcesInfo := strings.Join(lo.MapToSlice(worker.Resources, func(key string, value uint64) string { + return fmt.Sprintf("%s: %d", key, value) + }), "\n") table.AddRow("Resources", nonEmptyOrNone(resourcesInfo)) + labelsInfo := strings.Join(lo.MapToSlice(worker.Labels, func(key string, value string) string { + return fmt.Sprintf("%s: %s", key, value) + }), "\n") + table.AddRow("Labels", nonEmptyOrNone(labelsInfo)) + fmt.Println(table) return nil