|
|
|
|
@@ -3,7 +3,6 @@ package tui
|
|
|
|
|
import (
|
|
|
|
|
"context"
|
|
|
|
|
"fmt"
|
|
|
|
|
"os/exec"
|
|
|
|
|
"strings"
|
|
|
|
|
|
|
|
|
|
"bee/audit/internal/platform"
|
|
|
|
|
@@ -102,7 +101,7 @@ func (m model) updateNvidiaSATSetup(msg tea.KeyMsg) (tea.Model, tea.Cmd) {
|
|
|
|
|
return m, nil
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// startNvidiaSAT launches the SAT and nvtop.
|
|
|
|
|
// startNvidiaSAT launches the NVIDIA acceptance pack.
|
|
|
|
|
func (m model) startNvidiaSAT() (tea.Model, tea.Cmd) {
|
|
|
|
|
var selectedGPUs []platform.NvidiaGPU
|
|
|
|
|
for i, sel := range m.nvidiaGPUSel {
|
|
|
|
|
@@ -142,31 +141,12 @@ func (m model) startNvidiaSAT() (tea.Model, tea.Cmd) {
|
|
|
|
|
return nvidiaSATDoneMsg{title: result.Title, body: result.Body, err: err}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
nvtopPath, lookErr := exec.LookPath("nvtop")
|
|
|
|
|
if lookErr != nil {
|
|
|
|
|
// nvtop not available: just run the SAT, show running screen
|
|
|
|
|
return m, satCmd
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return m, tea.Batch(
|
|
|
|
|
satCmd,
|
|
|
|
|
tea.ExecProcess(exec.Command(nvtopPath), func(_ error) tea.Msg {
|
|
|
|
|
return nvtopClosedMsg{}
|
|
|
|
|
}),
|
|
|
|
|
)
|
|
|
|
|
return m, satCmd
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// updateNvidiaSATRunning handles keys on the running screen.
|
|
|
|
|
func (m model) updateNvidiaSATRunning(msg tea.KeyMsg) (tea.Model, tea.Cmd) {
|
|
|
|
|
switch msg.String() {
|
|
|
|
|
case "o", "O":
|
|
|
|
|
nvtopPath, err := exec.LookPath("nvtop")
|
|
|
|
|
if err != nil {
|
|
|
|
|
return m, nil
|
|
|
|
|
}
|
|
|
|
|
return m, tea.ExecProcess(exec.Command(nvtopPath), func(_ error) tea.Msg {
|
|
|
|
|
return nvtopClosedMsg{}
|
|
|
|
|
})
|
|
|
|
|
case "a", "A":
|
|
|
|
|
if m.nvidiaSATCancel != nil {
|
|
|
|
|
m.nvidiaSATCancel()
|
|
|
|
|
@@ -234,5 +214,5 @@ func renderNvidiaSATSetup(m model) string {
|
|
|
|
|
|
|
|
|
|
// renderNvidiaSATRunning renders the running screen.
|
|
|
|
|
func renderNvidiaSATRunning() string {
|
|
|
|
|
return "NVIDIA SAT\n\nTest is running...\n\n[o] Open nvtop [a] Abort test [ctrl+c] quit\n"
|
|
|
|
|
return "NVIDIA SAT\n\nTest is running...\n\n[a] Abort test [ctrl+c] quit\n"
|
|
|
|
|
}
|
|
|
|
|
|