Skip to content

Commit

Permalink
[Feat.] CSS certificate download
Browse files Browse the repository at this point in the history
  • Loading branch information
anton-sidelnikov committed Nov 18, 2024
1 parent d0db3ff commit 690790d
Show file tree
Hide file tree
Showing 2 changed files with 52 additions and 0 deletions.
17 changes: 17 additions & 0 deletions acceptance/openstack/css/v1/certificates_test.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
package v1

import (
"testing"

"github.com/opentelekomcloud/gophertelekomcloud/acceptance/clients"
c "github.com/opentelekomcloud/gophertelekomcloud/openstack/css/v1/certifcates"
th "github.com/opentelekomcloud/gophertelekomcloud/testhelper"
)

func TestCertificateDownload(t *testing.T) {
t.Skip("No need to run this test in CI not secure")
client, err := clients.NewCssV1Client()
th.AssertNoErr(t, err)
_, err = c.Get(client)
th.AssertNoErr(t, err)
}
35 changes: 35 additions & 0 deletions openstack/css/v1/certifcates/Get.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
package clusters

import (
"fmt"
"io"
"net/http"

"github.com/opentelekomcloud/gophertelekomcloud"
)

func Get(client *golangsdk.ServiceClient) (*string, error) {
raw, err := client.Get(client.ServiceURL("cer", "download"), nil, &golangsdk.RequestOpts{
MoreHeaders: map[string]string{
"Content-Type": "application/json",
"Accept": "*/*",
},
})
if err != nil {
return nil, err
}

return ExtractCert(err, raw)
}

func ExtractCert(err error, response *http.Response) (*string, error) {
if err != nil {
return nil, err
}
bodyBytes, err := io.ReadAll(response.Body)
if err != nil {
return nil, fmt.Errorf("failed to read response body: %v", err)
}
cert := string(bodyBytes)
return &cert, nil
}

0 comments on commit 690790d

Please sign in to comment.