From ebd16d7c50132f2bce5955c40988a4b7b0fd2e45 Mon Sep 17 00:00:00 2001 From: Christopher Hase Date: Mon, 8 Sep 2025 14:18:15 +0200 Subject: [PATCH] feat(Client): fix DeleteInstance --- config/config.toml | 1 + internal/client/client.go | 13 ++++++++++--- testdelete.sh | 11 +++++++++++ 3 files changed, 22 insertions(+), 3 deletions(-) create mode 100755 testdelete.sh diff --git a/config/config.toml b/config/config.toml index 1c17351..506f1de 100644 --- a/config/config.toml +++ b/config/config.toml @@ -1,6 +1,7 @@ organization = "edp-developer-framework" region = "EU" log_file = "./lala.log" +credentials_file = "/home/chris/ipcei/projects/garm-provider-edge-connect/config/creds.toml" [cloudlet] name = "Munich" diff --git a/internal/client/client.go b/internal/client/client.go index e3b445c..e72d38d 100644 --- a/internal/client/client.go +++ b/internal/client/client.go @@ -124,7 +124,7 @@ func (e *EdgeConnect) ShowApps(ctx context.Context, appkey AppKey, region string return nil, err } - if !responses.IsSuccessful() { + if !responses.IsSuccessful() && responses.StatusCode != http.StatusNotFound { return nil, responses.Error() } @@ -226,7 +226,7 @@ func (e *EdgeConnect) ShowAppInstances(ctx context.Context, appinstkey AppInstan return nil, err } - if !responses.IsSuccessful() { + if !responses.IsSuccessful() && responses.StatusCode != http.StatusNotFound { return nil, responses.Error() } @@ -278,6 +278,12 @@ func call[T any](ctx context.Context, client *EdgeConnect, path string, body []b responses := Responses[T]{} responses.StatusCode = resp.StatusCode + + if resp.StatusCode == http.StatusNotFound { + log.Printf("Error in call %s: %v", path, ErrNotFound) + return responses, nil + } + decoder := json.NewDecoder(resp.Body) for { var d Response[T] @@ -285,7 +291,8 @@ func call[T any](ctx context.Context, client *EdgeConnect, path string, body []b if err.Error() == "EOF" { break } - log.Fatal(err) + log.Printf("Error in call %s: %v", path, err) + return Responses[T]{}, fmt.Errorf("Error in call %s: %w", path, err) } responses.Responses = append(responses.Responses, d) } diff --git a/testdelete.sh b/testdelete.sh new file mode 100755 index 0000000..ab68f5b --- /dev/null +++ b/testdelete.sh @@ -0,0 +1,11 @@ +#!/bin/bash + +export GARM_COMMAND="DeleteInstance" +export GARM_CONTROLLER_ID="50cb196d" +export GARM_INTERFACE_VERSION="v0.1.0" +export GARM_POOL_ID="50fa68a5" +export GARM_PROVIDER_CONFIG_FILE="/home/chris/ipcei/projects/garm-provider-edge-connect/config/config.toml" +export GARM_INSTANCE_ID="garm-FbqZV9JufazZ" + +cat <