Skip to content

Commit 961b2d1

Browse files
committed
WIP: refactor openapi_client
1 parent edcb72c commit 961b2d1

17 files changed

+5129
-101
lines changed

.mockery.yml

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,11 @@
44
all: false
55
dir: '{{.InterfaceDir}}'
66
force-file-write: true
7+
filename: 'mocks.go'
78
formatter: gofmt
89
log-level: info
910
structname: '{{.Mock}}{{.InterfaceName}}'
10-
pkgname: '{{.SrcPackageName}}_test'
11+
pkgname: '{{.SrcPackageName}}'
1112
recursive: false
1213
require-template-schema-exists: true
1314
template: testify
@@ -16,3 +17,7 @@ packages:
1617
github.com/codesphere-cloud/cs-go/cmd:
1718
interfaces:
1819
Client:
20+
github.com/codesphere-cloud/cs-go/api/openapi_client:
21+
config:
22+
all: true
23+
interfaces:

Makefile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ lint: install-build-deps
1212
test:
1313
go test ./...
1414

15-
generate: install-build-deps
15+
generate:
1616
go generate ./...
1717

1818
build:
@@ -25,7 +25,7 @@ install:
2525
generate-client:
2626
rm -rf ${OPENAPI_DIR}
2727
openapi-generator-cli generate -g go -o ${OPENAPI_DIR} -i https://codesphere.com/api/docs \
28-
--additional-properties=isGoSubmodule=true,withGoMod=false,packageName=openapi_client \
28+
--additional-properties=generateInterfaces=true,isGoSubmodule=true,withGoMod=false,packageName=openapi_client \
2929
--type-mappings=integer=int \
3030
--template-dir openapi-template \
3131
--skip-validate-spec # TODO: remove once the Codesphere openapi spec is fixed

api/client.go

Lines changed: 11 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -34,16 +34,19 @@ func (c Configuration) GetApiUrl() *url.URL {
3434
return defaultUrl
3535
}
3636

37+
func NewClientWithCustomApi(ctx context.Context, opts Configuration, api *openapi_client.APIClient) *Client {
38+
return &Client{
39+
ctx: context.WithValue(ctx, openapi_client.ContextAccessToken, opts.Token),
40+
api: api,
41+
}
42+
}
43+
3744
func NewClient(ctx context.Context, opts Configuration) *Client {
3845
cfg := openapi_client.NewConfiguration()
3946
cfg.Servers = []openapi_client.ServerConfiguration{{
4047
URL: opts.BaseUrl.String(),
4148
}}
42-
43-
return &Client{
44-
ctx: context.WithValue(ctx, openapi_client.ContextAccessToken, opts.Token),
45-
api: openapi_client.NewAPIClient(cfg),
46-
}
49+
return NewClientWithCustomApi(ctx, opts, openapi_client.NewAPIClient(cfg))
4750
}
4851

4952
func (c *Client) ListDataCenters() ([]DataCenter, error) {
@@ -104,10 +107,9 @@ func (c *Client) DeleteDomain(teamId int, domainName string) error {
104107
func (c *Client) UpdateDomain(
105108
teamId int, domainName string, args UpdateDomainArgs,
106109
) (*Domain, error) {
107-
domain, _, err := c.api.DomainsAPI.
108-
DomainsUpdateDomain(c.ctx, float32(teamId), domainName).
109-
DomainsGetDomain200ResponseCustomConfig(args).
110-
Execute()
110+
domain, _, err := c.api.DomainsAPI.DomainsUpdateDomainExecute(
111+
c.api.DomainsAPI.DomainsUpdateDomain(c.ctx, float32(teamId), domainName).
112+
DomainsGetDomain200ResponseCustomConfig(args))
111113
return domain, err
112114
}
113115

@@ -135,36 +137,3 @@ func (c *Client) UpdateWorkspaceConnections(
135137
RequestBody(req).Execute()
136138
return domain, err
137139
}
138-
139-
func (c *Client) ListWorkspaces(teamId int) ([]Workspace, error) {
140-
workspaces, _, err := c.api.WorkspacesAPI.WorkspacesListWorkspaces(c.ctx, float32(teamId)).Execute()
141-
return workspaces, err
142-
}
143-
144-
func (c *Client) WorkspaceStatus(workspaceId int) (*WorkspaceStatus, error) {
145-
status, _, err := c.api.WorkspacesAPI.WorkspacesGetWorkspaceStatus(c.ctx, float32(workspaceId)).Execute()
146-
return status, err
147-
}
148-
149-
func (c *Client) CreateWorkspace(args CreateWorkspaceArgs) (*Workspace, error) {
150-
workspace, _, err := c.api.WorkspacesAPI.
151-
WorkspacesCreateWorkspace(c.ctx).
152-
WorkspacesCreateWorkspaceRequest(args).
153-
Execute()
154-
return workspace, err
155-
}
156-
157-
func (c *Client) SetEnvVarOnWorkspace(workspaceId int, envVars map[string]string) error {
158-
vars := []openapi_client.WorkspacesListEnvVars200ResponseInner{}
159-
for k, v := range envVars {
160-
vars = append(vars, openapi_client.WorkspacesListEnvVars200ResponseInner{
161-
Name: k,
162-
Value: v,
163-
})
164-
}
165-
_, err := c.api.WorkspacesAPI.
166-
WorkspacesSetEnvVar(c.ctx, float32(workspaceId)).
167-
WorkspacesListEnvVars200ResponseInner(vars).
168-
Execute()
169-
return err
170-
}

0 commit comments

Comments
 (0)