Skip to content

Commit 420ace6

Browse files
committed
Update the version-promote command to align with the new API
1 parent 0dc80f1 commit 420ace6

File tree

5 files changed

+15
-14
lines changed

5 files changed

+15
-14
lines changed

apptrust/http/http_client.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ const apptrustApiPath = "apptrust/api"
2323

2424
type ApptrustHttpClient interface {
2525
GetHttpClient() *jfroghttpclient.JfrogHttpClient
26-
Post(path string, requestBody interface{}) (resp *http.Response, body []byte, err error)
26+
Post(path string, requestBody interface{}, params map[string]string) (resp *http.Response, body []byte, err error)
2727
Get(path string) (resp *http.Response, body []byte, err error)
2828
Patch(path string, requestBody interface{}) (resp *http.Response, body []byte, err error)
2929
Delete(path string, requestBody interface{}) (resp *http.Response, body []byte, err error)
@@ -86,8 +86,8 @@ func (c *apptrustHttpClient) GetHttpClient() *jfroghttpclient.JfrogHttpClient {
8686
return c.client
8787
}
8888

89-
func (c *apptrustHttpClient) Post(path string, requestBody interface{}) (resp *http.Response, body []byte, err error) {
90-
url, err := utils.BuildUrl(c.serverDetails.Url, apptrustApiPath+path, nil)
89+
func (c *apptrustHttpClient) Post(path string, requestBody interface{}, params map[string]string) (resp *http.Response, body []byte, err error) {
90+
url, err := utils.BuildUrl(c.serverDetails.Url, apptrustApiPath+path, params)
9191
if err != nil {
9292
return nil, nil, err
9393
}

apptrust/service/applications/application_service.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ func NewApplicationService() ApplicationService {
2525
}
2626

2727
func (as *applicationService) CreateApplication(ctx service.Context, requestBody *model.AppDescriptor) error {
28-
response, responseBody, err := ctx.GetHttpClient().Post("/v1/applications", requestBody)
28+
response, responseBody, err := ctx.GetHttpClient().Post("/v1/applications", requestBody, nil)
2929
if err != nil {
3030
return err
3131
}

apptrust/service/packages/package_service.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ func NewPackageService() PackageService {
2323

2424
func (ps *packageService) BindPackage(ctx service.Context, request *model.BindPackageRequest) error {
2525
endpoint := "/v1/package"
26-
response, responseBody, err := ctx.GetHttpClient().Post(endpoint, request)
26+
response, responseBody, err := ctx.GetHttpClient().Post(endpoint, request, nil)
2727
if err != nil {
2828
return err
2929
}

apptrust/service/versions/version_service.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ func NewVersionService() VersionService {
2323
}
2424

2525
func (vs *versionService) CreateAppVersion(ctx service.Context, request *model.CreateAppVersionRequest) error {
26-
response, responseBody, err := ctx.GetHttpClient().Post("/v1/applications/version", request)
26+
response, responseBody, err := ctx.GetHttpClient().Post("/v1/applications/version", request, nil)
2727
if err != nil {
2828
return err
2929
}
@@ -37,8 +37,8 @@ func (vs *versionService) CreateAppVersion(ctx service.Context, request *model.C
3737
}
3838

3939
func (vs *versionService) PromoteAppVersion(ctx service.Context, applicationKey, version string, request *model.PromoteAppVersionRequest, sync bool) error {
40-
endpoint := fmt.Sprintf("/v1/applications/%s/versions/%s/promote?async=%s", applicationKey, version, strconv.FormatBool(!sync))
41-
response, responseBody, err := ctx.GetHttpClient().Post(endpoint, request)
40+
endpoint := fmt.Sprintf("/v1/applications/%s/versions/%s/promote", applicationKey, version)
41+
response, responseBody, err := ctx.GetHttpClient().Post(endpoint, request, map[string]string{"async": strconv.FormatBool(!sync)})
4242
if err != nil {
4343
return err
4444
}

apptrust/service/versions/version_service_test.go

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ package versions
33
import (
44
"errors"
55
"net/http"
6+
"strconv"
67
"testing"
78

89
mockhttp "github.com/jfrog/jfrog-cli-application/apptrust/http/mocks"
@@ -56,7 +57,7 @@ func TestCreateAppVersion(t *testing.T) {
5657
for _, tt := range tests {
5758
t.Run(tt.name, func(t *testing.T) {
5859
mockHttpClient := mockhttp.NewMockApptrustHttpClient(ctrl)
59-
mockHttpClient.EXPECT().Post("/v1/applications/version", tt.request).
60+
mockHttpClient.EXPECT().Post("/v1/applications/version", tt.request, nil).
6061
Return(tt.mockResponse, []byte(tt.mockResponseBody), tt.mockError).Times(1)
6162

6263
mockCtx := mockservice.NewMockContext(ctrl)
@@ -102,7 +103,7 @@ func TestPromoteAppVersion(t *testing.T) {
102103
ExcludedRepositoryKeys: []string{"repo3"},
103104
},
104105
sync: true,
105-
expectedEndpoint: "/v1/applications/test-app/versions/1.0.0/promote?async=false",
106+
expectedEndpoint: "/v1/applications/test-app/versions/1.0.0/promote",
106107
mockResponse: &http.Response{StatusCode: 200},
107108
mockResponseBody: "{}",
108109
mockError: nil,
@@ -119,7 +120,7 @@ func TestPromoteAppVersion(t *testing.T) {
119120
ExcludedRepositoryKeys: []string{"repo3"},
120121
},
121122
sync: false,
122-
expectedEndpoint: "/v1/applications/test-app/versions/1.0.0/promote?async=true",
123+
expectedEndpoint: "/v1/applications/test-app/versions/1.0.0/promote",
123124
mockResponse: &http.Response{StatusCode: 202},
124125
mockResponseBody: "{}",
125126
mockError: nil,
@@ -134,7 +135,7 @@ func TestPromoteAppVersion(t *testing.T) {
134135
PromotionType: model.PromotionTypeCopy,
135136
},
136137
sync: true,
137-
expectedEndpoint: "/v1/applications/test-app/versions/1.0.0/promote?async=false",
138+
expectedEndpoint: "/v1/applications/test-app/versions/1.0.0/promote",
138139
mockResponse: &http.Response{StatusCode: 400},
139140
mockResponseBody: "error",
140141
mockError: nil,
@@ -149,7 +150,7 @@ func TestPromoteAppVersion(t *testing.T) {
149150
PromotionType: model.PromotionTypeCopy,
150151
},
151152
sync: false,
152-
expectedEndpoint: "/v1/applications/test-app/versions/1.0.0/promote?async=true",
153+
expectedEndpoint: "/v1/applications/test-app/versions/1.0.0/promote",
153154
mockResponse: nil,
154155
mockResponseBody: "",
155156
mockError: errors.New("http client error"),
@@ -160,7 +161,7 @@ func TestPromoteAppVersion(t *testing.T) {
160161
for _, tt := range tests {
161162
t.Run(tt.name, func(t *testing.T) {
162163
mockHttpClient := mockhttp.NewMockApptrustHttpClient(ctrl)
163-
mockHttpClient.EXPECT().Post(tt.expectedEndpoint, tt.payload).
164+
mockHttpClient.EXPECT().Post(tt.expectedEndpoint, tt.payload, map[string]string{"async": strconv.FormatBool(!tt.sync)}).
164165
Return(tt.mockResponse, []byte(tt.mockResponseBody), tt.mockError).Times(1)
165166

166167
mockCtx := mockservice.NewMockContext(ctrl)

0 commit comments

Comments
 (0)