Skip to content

Commit 3b919f1

Browse files
authored
feat: adapt object storage to new regional api (#1343)
* feat: adapt object storage to new regional api * feat: updated generated apis for region enhancements * fix: revert generated code back to original version * fix: remove premature deprecation mark * fix: remove unneeded go.work.sum and add it to .gitignore
1 parent b9c414f commit 3b919f1

File tree

5 files changed

+16
-18
lines changed

5 files changed

+16
-18
lines changed

Diff for: .gitignore

+2
Original file line numberDiff line numberDiff line change
@@ -13,3 +13,5 @@ bin/
1313
## IDE
1414
*.idea/
1515
*.vscode/
16+
17+
go.work.sum

Diff for: examples/objectstorage/go.mod

+2-4
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,10 @@ module github.com/stackitcloud/stackit-sdk-go/examples/objectstorage
22

33
go 1.18
44

5-
require (
6-
github.com/stackitcloud/stackit-sdk-go/core v0.15.1
7-
github.com/stackitcloud/stackit-sdk-go/services/objectstorage v0.11.1
8-
)
5+
require github.com/stackitcloud/stackit-sdk-go/services/objectstorage v0.11.1
96

107
require (
118
github.com/golang-jwt/jwt/v5 v5.2.1 // indirect
129
github.com/google/uuid v1.6.0 // indirect
10+
github.com/stackitcloud/stackit-sdk-go/core v0.15.1 // indirect
1311
)

Diff for: examples/objectstorage/objectstorage.go

+4-6
Original file line numberDiff line numberDiff line change
@@ -5,33 +5,31 @@ import (
55
"fmt"
66
"os"
77

8-
"github.com/stackitcloud/stackit-sdk-go/core/config"
98
"github.com/stackitcloud/stackit-sdk-go/services/objectstorage"
109
)
1110

1211
func main() {
1312
// Specify the project ID
1413
projectId := "PROJECT_ID"
14+
region := "eu01"
1515

1616
// Create a new API client, that uses default authentication and configuration
17-
objectStorageClient, err := objectstorage.NewAPIClient(
18-
config.WithRegion("eu01"),
19-
)
17+
objectStorageClient, err := objectstorage.NewAPIClient()
2018
if err != nil {
2119
fmt.Fprintf(os.Stderr, "Creating API client: %v\n", err)
2220
os.Exit(1)
2321
}
2422

2523
// Get the object storage buckets for your project
26-
getBucketsResp, err := objectStorageClient.ListBuckets(context.Background(), projectId).Execute()
24+
getBucketsResp, err := objectStorageClient.ListBuckets(context.Background(), projectId, region).Execute()
2725
if err != nil {
2826
fmt.Fprintf(os.Stderr, "Error when calling `GetBuckets`: %v\n", err)
2927
} else {
3028
fmt.Printf("Number of buckets: %v\n", len(*getBucketsResp.Buckets))
3129
}
3230

3331
// Create an object storage bucket
34-
createBucketResp, err := objectStorageClient.CreateBucket(context.Background(), projectId, "example-bucket").Execute()
32+
createBucketResp, err := objectStorageClient.CreateBucket(context.Background(), projectId, region, "example-bucket").Execute()
3533
if err != nil {
3634
fmt.Fprintf(os.Stderr, "Error when calling `CreateBucket`: %v\n", err)
3735
} else {

Diff for: services/objectstorage/wait/wait.go

+5-5
Original file line numberDiff line numberDiff line change
@@ -13,13 +13,13 @@ import (
1313

1414
// Interface needed for tests
1515
type APIClientBucketInterface interface {
16-
GetBucketExecute(ctx context.Context, projectId string, bucketName string) (*objectstorage.GetBucketResponse, error)
16+
GetBucketExecute(ctx context.Context, projectId string, region, bucketName string) (*objectstorage.GetBucketResponse, error)
1717
}
1818

1919
// CreateBucketWaitHandler will wait for bucket creation
20-
func CreateBucketWaitHandler(ctx context.Context, a APIClientBucketInterface, projectId, bucketName string) *wait.AsyncActionHandler[objectstorage.GetBucketResponse] {
20+
func CreateBucketWaitHandler(ctx context.Context, a APIClientBucketInterface, projectId, region, bucketName string) *wait.AsyncActionHandler[objectstorage.GetBucketResponse] {
2121
handler := wait.New(func() (waitFinished bool, response *objectstorage.GetBucketResponse, err error) {
22-
s, err := a.GetBucketExecute(ctx, projectId, bucketName)
22+
s, err := a.GetBucketExecute(ctx, projectId, region, bucketName)
2323
if err != nil {
2424
return false, nil, err
2525
}
@@ -30,9 +30,9 @@ func CreateBucketWaitHandler(ctx context.Context, a APIClientBucketInterface, pr
3030
}
3131

3232
// DeleteBucketWaitHandler will wait for bucket deletion
33-
func DeleteBucketWaitHandler(ctx context.Context, a APIClientBucketInterface, projectId, bucketName string) *wait.AsyncActionHandler[struct{}] {
33+
func DeleteBucketWaitHandler(ctx context.Context, a APIClientBucketInterface, projectId, region, bucketName string) *wait.AsyncActionHandler[struct{}] {
3434
handler := wait.New(func() (waitFinished bool, response *struct{}, err error) {
35-
_, err = a.GetBucketExecute(ctx, projectId, bucketName)
35+
_, err = a.GetBucketExecute(ctx, projectId, region, bucketName)
3636
if err == nil {
3737
return false, nil, nil
3838
}

Diff for: services/objectstorage/wait/wait_test.go

+3-3
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ type apiClientBucketMocked struct {
1616
bucketGetFails bool
1717
}
1818

19-
func (a *apiClientBucketMocked) GetBucketExecute(_ context.Context, _, _ string) (*objectstorage.GetBucketResponse, error) {
19+
func (a *apiClientBucketMocked) GetBucketExecute(_ context.Context, _, _, _ string) (*objectstorage.GetBucketResponse, error) {
2020
if a.bucketGetFails {
2121
return nil, &oapierror.GenericOpenAPIError{
2222
StatusCode: 500,
@@ -63,7 +63,7 @@ func TestCreateBucketWaitHandler(t *testing.T) {
6363
wantRes = &objectstorage.GetBucketResponse{}
6464
}
6565

66-
handler := CreateBucketWaitHandler(context.Background(), apiClient, "", "")
66+
handler := CreateBucketWaitHandler(context.Background(), apiClient, "", "", "")
6767

6868
gotRes, err := handler.SetTimeout(10 * time.Millisecond).WaitWithContext(context.Background())
6969

@@ -101,7 +101,7 @@ func TestDeleteBucketWaitHandler(t *testing.T) {
101101
bucketGetFails: tt.bucketGetFails,
102102
}
103103

104-
handler := DeleteBucketWaitHandler(context.Background(), apiClient, "", "")
104+
handler := DeleteBucketWaitHandler(context.Background(), apiClient, "", "", "")
105105

106106
_, err := handler.SetTimeout(10 * time.Millisecond).WaitWithContext(context.Background())
107107

0 commit comments

Comments
 (0)