Skip to content

Commit 7f34a06

Browse files
authored
Merge pull request #28 from ThreeDotsLabs/token-for-init
allow configuring training during init
2 parents 9bcde12 + 9e2a22a commit 7f34a06

File tree

1 file changed

+48
-25
lines changed

1 file changed

+48
-25
lines changed

tdl/main.go

Lines changed: 48 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,31 @@ func main() {
3131
}
3232
}
3333

34+
var configureFlags = []cli.Flag{
35+
&cli.StringFlag{
36+
Name: "server",
37+
Usage: "custom server",
38+
Hidden: true,
39+
},
40+
&cli.BoolFlag{
41+
Name: "insecure",
42+
Usage: "do not verify certificate",
43+
Hidden: true,
44+
},
45+
&cli.StringFlag{
46+
Name: "region",
47+
Usage: "the region to use (eu or us)",
48+
},
49+
&cli.BoolFlag{
50+
Name: "override",
51+
Usage: "if config already exists, it will be overridden",
52+
// deprecated, backward compatibility
53+
Hidden: true,
54+
},
55+
}
56+
57+
var tokenDocs = fmt.Sprintf("token from %s", internal.WebsiteAddress)
58+
3459
var app = &cli.App{
3560
Name: "tdl",
3661
Usage: "https://threedots.tech/ CLI.",
@@ -84,30 +109,9 @@ var app = &cli.App{
84109
Subcommands: []*cli.Command{
85110
{
86111
Name: "configure",
87-
Usage: "connect your environment with platform account",
88-
ArgsUsage: fmt.Sprintf("<token from %s>", internal.WebsiteAddress),
89-
Flags: []cli.Flag{
90-
&cli.StringFlag{
91-
Name: "server",
92-
Usage: "custom server",
93-
Hidden: true,
94-
},
95-
&cli.BoolFlag{
96-
Name: "insecure",
97-
Usage: "do not verify certificate",
98-
Hidden: true,
99-
},
100-
&cli.StringFlag{
101-
Name: "region",
102-
Usage: "the region to use (eu or us)",
103-
},
104-
&cli.BoolFlag{
105-
Name: "override",
106-
Usage: "if config already exists, it will be overridden",
107-
// deprecated, backward compatibility
108-
Hidden: true,
109-
},
110-
},
112+
Usage: "connect your environment with https://academy.threedots.tech/ account",
113+
ArgsUsage: fmt.Sprintf("<%s>", tokenDocs),
114+
Flags: configureFlags,
111115
Action: func(c *cli.Context) error {
112116
token := c.Args().First()
113117

@@ -130,6 +134,10 @@ var app = &cli.App{
130134
"<trainingID from %s> [directory, if empty defaults to trainingID]",
131135
internal.WebsiteAddress,
132136
),
137+
Flags: append(configureFlags, &cli.StringFlag{
138+
Name: "token",
139+
Usage: tokenDocs,
140+
}),
133141
Usage: "initialise training files in your current directory",
134142
Action: func(c *cli.Context) error {
135143
trainingID := c.Args().First()
@@ -143,7 +151,22 @@ var app = &cli.App{
143151
dir = trainingID
144152
}
145153

146-
return newHandlers(c).Init(c.Context, trainingID, dir)
154+
handlers := newHandlers(c)
155+
156+
if c.String("token") != "" {
157+
err := handlers.ConfigureGlobally(
158+
c.Context,
159+
c.String("token"),
160+
c.String("server"),
161+
c.String("region"),
162+
c.Bool("insecure"),
163+
)
164+
if err != nil {
165+
return fmt.Errorf("could not configure training: %w", err)
166+
}
167+
}
168+
169+
return handlers.Init(c.Context, trainingID, dir)
147170
},
148171
},
149172
{

0 commit comments

Comments
 (0)