Skip to content

Commit fce569d

Browse files
authored
Rename behavior to mode (#639)
1 parent eccd03e commit fce569d

File tree

8 files changed

+640
-653
lines changed

8 files changed

+640
-653
lines changed

src/cmd/cli/command/behavior.go

Lines changed: 0 additions & 40 deletions
This file was deleted.

src/cmd/cli/command/compose.go

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ func GetUnreferencedManagedResources(serviceInfos []*defangv1.ServiceInfo) []str
3838
}
3939

4040
func makeComposeUpCmd() *cobra.Command {
41-
behavior := Behavior(defangv1.Behavior_DEVELOPMENT)
41+
mode := Mode(defangv1.DeploymentMode_DEVELOPMENT)
4242
composeUpCmd := &cobra.Command{
4343
Use: "up",
4444
Annotations: authNeededAnnotation,
@@ -49,7 +49,7 @@ func makeComposeUpCmd() *cobra.Command {
4949
var detach, _ = cmd.Flags().GetBool("detach")
5050

5151
since := time.Now()
52-
deploy, project, err := cli.ComposeUp(cmd.Context(), client, force, behavior.Value())
52+
deploy, project, err := cli.ComposeUp(cmd.Context(), client, force, mode.Value())
5353
if err != nil {
5454
if !errors.Is(err, types.ErrComposeFileNotFound) {
5555
return err
@@ -178,7 +178,7 @@ func makeComposeUpCmd() *cobra.Command {
178178
composeUpCmd.Flags().BoolP("detach", "d", false, "run in detached mode")
179179
composeUpCmd.Flags().Bool("force", false, "force a build of the image even if nothing has changed")
180180
composeUpCmd.Flags().Bool("tail", false, "tail the service logs after updating") // obsolete, but keep for backwards compatibility
181-
composeUpCmd.Flags().VarP(&behavior, "behavior", "b", "behavior for the deployment, possible values: "+strings.Join(allBehaviors(), ", "))
181+
composeUpCmd.Flags().VarP(&mode, "mode", "m", "deployment mode, possible values: "+strings.Join(allModes(), ", "))
182182
_ = composeUpCmd.Flags().MarkHidden("tail")
183183
return composeUpCmd
184184
}
@@ -193,7 +193,7 @@ func makeComposeStartCmd() *cobra.Command {
193193
RunE: func(cmd *cobra.Command, args []string) error {
194194
var force, _ = cmd.Flags().GetBool("force")
195195

196-
deploy, _, err := cli.ComposeUp(cmd.Context(), client, force, defangv1.Behavior_UNSPECIFIED_BEHAVIOR)
196+
deploy, _, err := cli.ComposeUp(cmd.Context(), client, force, defangv1.DeploymentMode_UNSPECIFIED_MODE)
197197
if err != nil {
198198
return err
199199
}
@@ -311,7 +311,7 @@ func makeComposeConfigCmd() *cobra.Command {
311311
RunE: func(cmd *cobra.Command, args []string) error {
312312
cli.DoDryRun = true // config is like start in a dry run
313313
// force=false to calculate the digest
314-
if _, _, err := cli.ComposeUp(cmd.Context(), client, false, defangv1.Behavior_UNSPECIFIED_BEHAVIOR); !errors.Is(err, cli.ErrDryRun) {
314+
if _, _, err := cli.ComposeUp(cmd.Context(), client, false, defangv1.DeploymentMode_UNSPECIFIED_MODE); !errors.Is(err, cli.ErrDryRun) {
315315
return err
316316
}
317317
return nil

src/cmd/cli/command/mode.go

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
package command
2+
3+
import (
4+
"fmt"
5+
"strings"
6+
7+
defangv1 "github.com/DefangLabs/defang/src/protos/io/defang/v1"
8+
)
9+
10+
type Mode defangv1.DeploymentMode
11+
12+
func (b Mode) String() string {
13+
return strings.ToLower(defangv1.DeploymentMode_name[int32(b)])
14+
}
15+
func (b *Mode) Set(s string) error {
16+
mode, ok := defangv1.DeploymentMode_value[strings.ToUpper(s)]
17+
if !ok {
18+
return fmt.Errorf("invalid mode: %s, valid values are: %v", s, strings.Join(allModes(), ", "))
19+
}
20+
*b = Mode(mode)
21+
return nil
22+
}
23+
func (b Mode) Type() string {
24+
return "mode"
25+
}
26+
27+
func (b Mode) Value() defangv1.DeploymentMode {
28+
return defangv1.DeploymentMode(b)
29+
}
30+
31+
func allModes() []string {
32+
modes := make([]string, 0, len(defangv1.DeploymentMode_name)-1)
33+
for i, mode := range defangv1.DeploymentMode_name {
34+
if i == 0 {
35+
continue
36+
}
37+
modes = append(modes, strings.ToLower(mode))
38+
}
39+
return modes
40+
}

src/pkg/cli/client/byoc/aws/byoc.go

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -181,7 +181,7 @@ func (b *ByocAws) Deploy(ctx context.Context, req *defangv1.DeployRequest) (*def
181181
return nil, err
182182
}
183183
}
184-
taskArn, err := b.runCdCommand(ctx, req.Behavior, "up", payloadString)
184+
taskArn, err := b.runCdCommand(ctx, req.Mode, "up", payloadString)
185185
if err != nil {
186186
return nil, err
187187
}
@@ -329,9 +329,9 @@ func (b *ByocAws) environment() map[string]string {
329329
}
330330
}
331331

332-
func (b *ByocAws) runCdCommand(ctx context.Context, behavior defangv1.Behavior, cmd ...string) (ecs.TaskArn, error) {
332+
func (b *ByocAws) runCdCommand(ctx context.Context, mode defangv1.DeploymentMode, cmd ...string) (ecs.TaskArn, error) {
333333
env := b.environment()
334-
env["DEFANG_BEHAVIOR"] = strings.ToLower(behavior.String())
334+
env["DEFANG_MODE"] = strings.ToLower(mode.String())
335335
if term.DoDebug() {
336336
debugEnv := fmt.Sprintf("AWS_REGION=%q", b.driver.Region)
337337
if awsProfile := os.Getenv("AWS_PROFILE"); awsProfile != "" {
@@ -350,7 +350,7 @@ func (b *ByocAws) Delete(ctx context.Context, req *defangv1.DeleteRequest) (*def
350350
return nil, err
351351
}
352352
// FIXME: this should only delete the services that are specified in the request, not all
353-
taskArn, err := b.runCdCommand(ctx, defangv1.Behavior_UNSPECIFIED_BEHAVIOR, "up", "")
353+
taskArn, err := b.runCdCommand(ctx, defangv1.DeploymentMode_UNSPECIFIED_MODE, "up", "")
354354
if err != nil {
355355
return nil, annotateAwsError(err)
356356
}
@@ -648,7 +648,7 @@ func (b *ByocAws) BootstrapCommand(ctx context.Context, command string) (string,
648648
if err := b.setUp(ctx); err != nil {
649649
return "", err
650650
}
651-
cdTaskArn, err := b.runCdCommand(ctx, defangv1.Behavior_UNSPECIFIED_BEHAVIOR, command)
651+
cdTaskArn, err := b.runCdCommand(ctx, defangv1.DeploymentMode_UNSPECIFIED_MODE, command)
652652
if err != nil || cdTaskArn == nil {
653653
return "", annotateAwsError(err)
654654
}

src/pkg/cli/composeUp.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ func buildContext(force bool) compose.BuildContext {
3030
}
3131

3232
// ComposeUp validates a compose project and uploads the services using the client
33-
func ComposeUp(ctx context.Context, c client.Client, force bool, behavior defangv1.Behavior) (*defangv1.DeployResponse, *types.Project, error) {
33+
func ComposeUp(ctx context.Context, c client.Client, force bool, mode defangv1.DeploymentMode) (*defangv1.DeployResponse, *types.Project, error) {
3434
project, err := c.LoadProject(ctx)
3535
if err != nil {
3636
return nil, project, err
@@ -62,7 +62,7 @@ func ComposeUp(ctx context.Context, c client.Client, force bool, behavior defang
6262
}
6363

6464
resp, err := c.Deploy(ctx, &defangv1.DeployRequest{
65-
Behavior: behavior,
65+
Mode: mode,
6666
Project: project.Name,
6767
Services: services,
6868
})

src/pkg/cli/composeUp_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ func TestComposeUp(t *testing.T) {
2727
}))
2828
defer server.Close()
2929

30-
_, project, err := ComposeUp(context.Background(), client.MockClient{UploadUrl: server.URL + "/", Project: proj}, false, defangv1.Behavior_DEVELOPMENT)
30+
_, project, err := ComposeUp(context.Background(), client.MockClient{UploadUrl: server.URL + "/", Project: proj}, false, defangv1.DeploymentMode_DEVELOPMENT)
3131
if !errors.Is(err, ErrDryRun) {
3232
t.Fatalf("ComposeUp() failed: %v", err)
3333
}

0 commit comments

Comments
 (0)