Skip to content
This repository was archived by the owner on Aug 30, 2024. It is now read-only.

Commit 3261fe3

Browse files
committed
Export entclient to coder-sdk
1 parent ff28df3 commit 3261fe3

File tree

20 files changed

+75
-69
lines changed

20 files changed

+75
-69
lines changed

ci/integration/users_test.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import (
55
"testing"
66

77
"cdr.dev/coder-cli/ci/tcli"
8-
"cdr.dev/coder-cli/internal/entclient"
8+
"cdr.dev/coder-cli/coder-sdk"
99
"cdr.dev/slog/sloggers/slogtest/assert"
1010
)
1111

@@ -20,7 +20,7 @@ func TestUsers(t *testing.T) {
2020

2121
headlessLogin(ctx, t, c)
2222

23-
var user entclient.User
23+
var user coder.User
2424
c.Run(ctx, `coder users ls --output json | jq -c '.[] | select( .username == "charlie")'`).Assert(t,
2525
tcli.Success(),
2626
tcli.StdoutJSONUnmarshal(&user),

internal/entclient/activity.go renamed to coder-sdk/activity.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package entclient
1+
package coder
22

33
import (
44
"context"

internal/entclient/client.go renamed to coder-sdk/client.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package entclient
1+
package coder
22

33
import (
44
"net/http"

internal/entclient/devurl.go renamed to coder-sdk/devurl.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package entclient
1+
package coder
22

33
import (
44
"context"

internal/entclient/env.go renamed to coder-sdk/env.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package entclient
1+
package coder
22

33
import (
44
"context"

internal/entclient/error.go renamed to coder-sdk/error.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package entclient
1+
package coder
22

33
import (
44
"encoding/json"

internal/entclient/org.go renamed to coder-sdk/org.go

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
1-
package entclient
1+
package coder
22

3-
import "context"
3+
import (
4+
"context"
5+
"net/http"
6+
)
47

58
// Org describes an Organization in Coder
69
type Org struct {
@@ -12,6 +15,6 @@ type Org struct {
1215
// Orgs gets all Organizations
1316
func (c Client) Orgs(ctx context.Context) ([]Org, error) {
1417
var os []Org
15-
err := c.requestBody(ctx, "GET", "/api/orgs", nil, &os)
18+
err := c.requestBody(ctx, http.MethodGet, "/api/orgs", nil, &os)
1619
return os, err
1720
}

internal/entclient/request.go renamed to coder-sdk/request.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package entclient
1+
package coder
22

33
import (
44
"bytes"

internal/entclient/secrets.go renamed to coder-sdk/secrets.go

Lines changed: 21 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package entclient
1+
package coder
22

33
import (
44
"context"
@@ -23,32 +23,36 @@ func (c *Client) Secrets(ctx context.Context, user *User) ([]Secret, error) {
2323
return secrets, err
2424
}
2525

26-
func (c *Client) secretByID(ctx context.Context, id string, user *User) (*Secret, error) {
26+
// SecretWithValueByName gets the Coder secret with its value by its name.
27+
func (c *Client) SecretWithValueByName(ctx context.Context, name string, user *User) (*Secret, error) {
28+
s, err := c.SecretByName(ctx, name, user)
29+
if err != nil {
30+
return nil, err
31+
}
32+
var secret Secret
33+
err = c.requestBody(ctx, http.MethodGet, "/api/users/"+user.ID+"/secrets/"+s.ID, nil, &secret)
34+
return &secret, err
35+
}
36+
37+
// SecretWithValueByID gets the Coder secret with its value by the secret_id.
38+
func (c *Client) SecretWithValueByID(ctx context.Context, id string, user *User) (*Secret, error) {
2739
var secret Secret
2840
err := c.requestBody(ctx, http.MethodGet, "/api/users/"+user.ID+"/secrets/"+id, nil, &secret)
2941
return &secret, err
3042
}
3143

32-
func (c *Client) secretNameToID(ctx context.Context, name string, user *User) (id string, _ error) {
44+
// SecretByName gets a secret object by name
45+
func (c *Client) SecretByName(ctx context.Context, name string, user *User) (*Secret, error) {
3346
secrets, err := c.Secrets(ctx, user)
3447
if err != nil {
35-
return "", err
48+
return nil, err
3649
}
3750
for _, s := range secrets {
3851
if s.Name == name {
39-
return s.ID, nil
52+
return &s, nil
4053
}
4154
}
42-
return "", ErrNotFound
43-
}
44-
45-
// SecretByName gets a secret object by name
46-
func (c *Client) SecretByName(ctx context.Context, name string, user *User) (*Secret, error) {
47-
id, err := c.secretNameToID(ctx, name, user)
48-
if err != nil {
49-
return nil, err
50-
}
51-
return c.secretByID(ctx, id, user)
55+
return nil, ErrNotFound
5256
}
5357

5458
// InsertSecretReq describes the request body for creating a new secret
@@ -66,10 +70,10 @@ func (c *Client) InsertSecret(ctx context.Context, user *User, req InsertSecretR
6670

6771
// DeleteSecretByName deletes the authenticated users secret with the given name
6872
func (c *Client) DeleteSecretByName(ctx context.Context, name string, user *User) error {
69-
id, err := c.secretNameToID(ctx, name, user)
73+
secret, err := c.SecretByName(ctx, name, user)
7074
if err != nil {
7175
return err
7276
}
73-
_, err = c.request(ctx, http.MethodDelete, "/api/users/"+user.ID+"/secrets/"+id, nil)
77+
_, err = c.request(ctx, http.MethodDelete, "/api/users/"+user.ID+"/secrets/"+secret.ID, nil)
7478
return err
7579
}

internal/entclient/users.go renamed to coder-sdk/users.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package entclient
1+
package coder
22

33
import (
44
"context"

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy