From b0c69c203ee697b7adf962a54e27203a13cf4ceb Mon Sep 17 00:00:00 2001 From: JP Appel Date: Mon, 7 Oct 2024 00:46:47 -0400 Subject: Update vtt status endpoint to check container --- api/docker.go | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) (limited to 'api/docker.go') diff --git a/api/docker.go b/api/docker.go index 5640b67..248880e 100644 --- a/api/docker.go +++ b/api/docker.go @@ -5,6 +5,7 @@ import ( "fmt" "io" "log/slog" + "time" "github.com/docker/docker/api/types/container" "github.com/docker/docker/client" @@ -56,3 +57,25 @@ func vttLogs(ctx context.Context, lines uint) (io.ReadCloser, error) { return r, nil } + +func vttStatus(ctx context.Context) ServerStatus { + status := ServerStatus{} + status.Site = VTT_URL + status.Timestamp = time.Now() + + apiClient, err := client.NewClientWithOpts(client.FromEnv, client.WithAPIVersionNegotiation()) + if err != nil { + Logger.ErrorContext(ctx, "Failed to get docker api client", slog.Any("err", err)) + return status + } + + json, err := apiClient.ContainerInspect(ctx, vttContainerId) + if err != nil { + Logger.ErrorContext(ctx, "Error occured while geting foundry container stats", slog.Any("err", err)) + return status + } + + status.Online = json.State.Running + + return status +} -- cgit v1.2.3