Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings
This repository was archived by the owner on Aug 30, 2024. It is now read-only.
/coder-v1-cliPublic archive

Commitaa5597c

Browse files
committed
Move user flag to entclient req options
1 parent17b16f9 commitaa5597c

File tree

22 files changed

+171
-104
lines changed

22 files changed

+171
-104
lines changed

‎cmd/coder/auth.go

Lines changed: 3 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -11,15 +11,15 @@ import (
1111
)
1212

1313
// requireAuth exits the process with a nonzero exit code if the user is not authenticated to make requests
14-
funcrequireAuth(userstring)*entclient.Client {
15-
client,err:=newClient(user)
14+
funcrequireAuth()*entclient.Client {
15+
client,err:=newClient()
1616
iferr!=nil {
1717
flog.Fatal("%v",err)
1818
}
1919
returnclient
2020
}
2121

22-
funcnewClient(userFlagstring) (*entclient.Client,error) {
22+
funcnewClient() (*entclient.Client,error) {
2323
sessionToken,err:=config.Session.Read()
2424
iferr!=nil {
2525
returnnil,xerrors.Errorf("read session: %v (did you run coder login?)",err)
@@ -38,16 +38,7 @@ func newClient(userFlag string) (*entclient.Client, error) {
3838
client:=&entclient.Client{
3939
BaseURL:u,
4040
Token:sessionToken,
41-
UserID:entclient.Me,
4241
}
4342

44-
user,err:=client.UserByEmail(userFlag)
45-
iferr!=nil {
46-
returnnil,xerrors.Errorf("failed to find user (%v) by email: %v",userFlag,err)
47-
}
48-
49-
// perform all additional actions as this user
50-
client.UserID=user.ID
51-
5243
returnclient,nil
5344
}

‎cmd/coder/ceapi.go

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
package main
22

33
import (
4+
"context"
5+
46
"golang.org/x/xerrors"
57

68
"go.coder.com/flog"
@@ -27,13 +29,13 @@ outer:
2729
}
2830

2931
// getEnvs returns all environments for the user.
30-
funcgetEnvs(client*entclient.Client) ([]entclient.Environment,error) {
31-
user,err:=client.TargetUser()
32+
funcgetEnvs(ctx context.Context,client*entclient.Client,emailstring) ([]entclient.Environment,error) {
33+
user,err:=client.UserByEmail(ctx,email)
3234
iferr!=nil {
33-
returnnil,xerrors.Errorf("getself: %+v",err)
35+
returnnil,xerrors.Errorf("getuser: %+v",err)
3436
}
3537

36-
orgs,err:=client.Orgs()
38+
orgs,err:=client.Orgs(ctx)
3739
iferr!=nil {
3840
returnnil,xerrors.Errorf("get orgs: %+v",err)
3941
}
@@ -43,7 +45,7 @@ func getEnvs(client *entclient.Client) ([]entclient.Environment, error) {
4345
varallEnvs []entclient.Environment
4446

4547
for_,org:=rangeorgs {
46-
envs,err:=client.Envs(user,org)
48+
envs,err:=client.Envs(ctx,user,org)
4749
iferr!=nil {
4850
returnnil,xerrors.Errorf("get envs for %v: %+v",org.Name,err)
4951
}
@@ -56,8 +58,8 @@ func getEnvs(client *entclient.Client) ([]entclient.Environment, error) {
5658
}
5759

5860
// findEnv returns a single environment by name (if it exists.)
59-
funcfindEnv(client*entclient.Client,namestring) (*entclient.Environment,error) {
60-
envs,err:=getEnvs(client)
61+
funcfindEnv(ctx context.Context,client*entclient.Client,userEmail,envNamestring) (*entclient.Environment,error) {
62+
envs,err:=getEnvs(ctx,client,userEmail)
6163
iferr!=nil {
6264
returnnil,xerrors.Errorf("get environments: %w",err)
6365
}
@@ -66,11 +68,11 @@ func findEnv(client *entclient.Client, name string) (*entclient.Environment, err
6668

6769
for_,env:=rangeenvs {
6870
found=append(found,env.Name)
69-
ifenv.Name==name {
71+
ifenv.Name==envName {
7072
return&env,nil
7173
}
7274
}
7375
flog.Error("found %q",found)
74-
flog.Error("%q not found",name)
76+
flog.Error("%q not found",envName)
7577
returnnil,xerrors.New("environment not found")
7678
}

‎cmd/coder/configssh.go

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -76,19 +76,19 @@ func configSSH(filepath *string, remove *bool) func(cmd *cobra.Command, _ []stri
7676
returnnil
7777
}
7878

79-
entClient:=requireAuth(entclient.Me)
79+
entClient:=requireAuth()
8080

8181
sshAvailable:=isSSHAvailable(ctx)
8282
if!sshAvailable {
8383
returnxerrors.New("SSH is disabled or not available for your Coder Enterprise deployment.")
8484
}
8585

86-
user,err:=entClient.TargetUser()
86+
user,err:=entClient.Me(cmd.Context())
8787
iferr!=nil {
8888
returnxerrors.Errorf("fetch username: %w",err)
8989
}
9090

91-
envs,err:=getEnvs(entClient)
91+
envs,err:=getEnvs(cmd.Context(),entClient,entclient.Me)
9292
iferr!=nil {
9393
returnerr
9494
}
@@ -127,7 +127,7 @@ var (
127127
)
128128

129129
funcwriteSSHKey(ctx context.Context,client*entclient.Client)error {
130-
key,err:=client.SSHKey()
130+
key,err:=client.SSHKey(ctx)
131131
iferr!=nil {
132132
returnerr
133133
}

‎cmd/coder/envs.go

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,8 @@ import (
88
"cdr.dev/coder-cli/internal/x/xtabwriter"
99
"github.com/spf13/cobra"
1010
"golang.org/x/xerrors"
11+
12+
"go.coder.com/flog"
1113
)
1214

1315
funcmakeEnvsCommand()*cobra.Command {
@@ -25,11 +27,15 @@ func makeEnvsCommand() *cobra.Command {
2527
Short:"list all environments owned by the active user",
2628
Long:"List all Coder environments owned by the active user.",
2729
RunE:func(cmd*cobra.Command,args []string)error {
28-
entClient:=requireAuth(user)
29-
envs,err:=getEnvs(entClient)
30+
entClient:=requireAuth()
31+
envs,err:=getEnvs(cmd.Context(),entClient,user)
3032
iferr!=nil {
3133
returnerr
3234
}
35+
iflen(envs)<1 {
36+
flog.Info("no environments found")
37+
returnnil
38+
}
3339

3440
switchoutputFmt {
3541
case"human":

‎cmd/coder/main.go

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package main
22

33
import (
4+
"context"
45
"fmt"
56
"log"
67
"net/http"
@@ -19,6 +20,9 @@ var (
1920
)
2021

2122
funcmain() {
23+
ctx,cancel:=context.WithCancel(context.Background())
24+
defercancel()
25+
2226
ifos.Getenv("PPROF")!="" {
2327
gofunc() {
2428
log.Println(http.ListenAndServe("localhost:6060",nil))
@@ -49,7 +53,7 @@ func main() {
4953
makeURLCmd(),
5054
completionCmd,
5155
)
52-
err=app.Execute()
56+
err=app.ExecuteContext(ctx)
5357
iferr!=nil {
5458
os.Exit(1)
5559
}

‎cmd/coder/secrets.go

Lines changed: 18 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@ coder secrets create aws-credentials --from-file ./credentials.json`,
7979
},
8080
RunE:func(cmd*cobra.Command,args []string)error {
8181
var (
82-
client=requireAuth(*user)
82+
client=requireAuth()
8383
name=args[0]
8484
valuestring
8585
errerror
@@ -109,10 +109,12 @@ coder secrets create aws-credentials --from-file ./credentials.json`,
109109
}
110110
}
111111

112-
err=client.InsertSecret(entclient.InsertSecretReq{
112+
err=client.InsertSecret(cmd.Context(),entclient.InsertSecretReq{
113113
Name:name,
114114
Value:value,
115115
Description:description,
116+
},&entclient.ReqOptions{
117+
User:*user,
116118
})
117119
iferr!=nil {
118120
returnxerrors.Errorf("insert secret: %w",err)
@@ -131,9 +133,11 @@ coder secrets create aws-credentials --from-file ./credentials.json`,
131133

132134
funclistSecrets(user*string)func(cmd*cobra.Command,_ []string)error {
133135
returnfunc(cmd*cobra.Command,_ []string)error {
134-
client:=requireAuth(*user)
136+
client:=requireAuth()
135137

136-
secrets,err:=client.Secrets()
138+
secrets,err:=client.Secrets(cmd.Context(),&entclient.ReqOptions{
139+
User:*user,
140+
})
137141
iferr!=nil {
138142
returnxerrors.Errorf("get secrets: %w",err)
139143
}
@@ -156,16 +160,18 @@ func listSecrets(user *string) func(cmd *cobra.Command, _ []string) error {
156160
}
157161

158162
funcmakeViewSecret(user*string)func(cmd*cobra.Command,args []string)error {
159-
returnfunc(_*cobra.Command,args []string)error {
163+
returnfunc(cmd*cobra.Command,args []string)error {
160164
var (
161-
client=requireAuth(*user)
165+
client=requireAuth()
162166
name=args[0]
163167
)
164168
ifname=="" {
165169
returnxerrors.New("[name] is a required argument")
166170
}
167171

168-
secret,err:=client.SecretByName(name)
172+
secret,err:=client.SecretByName(cmd.Context(),name,&entclient.ReqOptions{
173+
User:*user,
174+
})
169175
iferr!=nil {
170176
returnxerrors.Errorf("get secret by name: %w",err)
171177
}
@@ -179,17 +185,19 @@ func makeViewSecret(user *string) func(cmd *cobra.Command, args []string) error
179185
}
180186

181187
funcmakeRemoveSecrets(user*string)func(c*cobra.Command,args []string)error {
182-
returnfunc(_*cobra.Command,args []string)error {
188+
returnfunc(cmd*cobra.Command,args []string)error {
183189
var (
184-
client=requireAuth(*user)
190+
client=requireAuth()
185191
)
186192
iflen(args)<1 {
187193
returnxerrors.New("[...secret_name] is a required argument")
188194
}
189195

190196
errorSeen:=false
191197
for_,n:=rangeargs {
192-
err:=client.DeleteSecretByName(n)
198+
err:=client.DeleteSecretByName(cmd.Context(),n,&entclient.ReqOptions{
199+
User:*user,
200+
})
193201
iferr!=nil {
194202
flog.Error("failed to delete secret %q: %v",n,err)
195203
errorSeen=true

‎cmd/coder/shell.go

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25,11 +25,11 @@ func getEnvsForCompletion(user string) []string {
2525
returnnil
2626

2727
varenvNames []string
28-
client,err:=newClient(user)
28+
client,err:=newClient()
2929
iferr!=nil {
3030
returnenvNames
3131
}
32-
envs,err:=getEnvs(client)
32+
envs,err:=getEnvs(context.TODO(),client,user)
3333
iferr!=nil {
3434
returnenvNames
3535
}
@@ -98,9 +98,9 @@ func sendResizeEvents(ctx context.Context, termfd uintptr, process wsep.Process)
9898

9999
funcrunCommand(ctx context.Context,envNamestring,commandstring,args []string)error {
100100
var (
101-
entClient=requireAuth(entclient.Me)
101+
entClient=requireAuth()
102102
)
103-
env,err:=findEnv(entClient,envName)
103+
env,err:=findEnv(ctx,entClient,envName,entclient.Me)
104104
iferr!=nil {
105105
returnerr
106106
}

‎cmd/coder/sync.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ func makeRunSync(init *bool) func(cmd *cobra.Command, args []string) error {
5252
remote=args[1]
5353
)
5454

55-
entClient:=requireAuth(entclient.Me)
55+
entClient:=requireAuth()
5656

5757
info,err:=os.Stat(local)
5858
iferr!=nil {
@@ -71,7 +71,7 @@ func makeRunSync(init *bool) func(cmd *cobra.Command, args []string) error {
7171
remoteDir=remoteTokens[1]
7272
)
7373

74-
env,err:=findEnv(entClient,envName)
74+
env,err:=findEnv(cmd.Context(),entClient,envName,entclient.Me)
7575
iferr!=nil {
7676
returnerr
7777
}

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp