Skip to content

Commit

Permalink
fix prompting stage name
Browse files Browse the repository at this point in the history
  • Loading branch information
Ivan Vlasic committed Dec 29, 2021
1 parent 6f38c2d commit 82ad06f
Showing 1 changed file with 17 additions and 4 deletions.
21 changes: 17 additions & 4 deletions cli/controller/stage.go
Original file line number Diff line number Diff line change
Expand Up @@ -74,6 +74,9 @@ func (s *Stage) New() (bool, error) {
}
}
stage, err := s.chooseCreateStage()
if err == promptui.ErrInterrupt {
return false, nil
}
if err != nil {
return false, log.Wrap(err)
}
Expand All @@ -96,18 +99,29 @@ func (s *Stage) New() (bool, error) {

func (s *Stage) chooseCreateStage() (*domain.Stage, error) {
stageName := s.Stage
var err error
if stageName == "" {
stageName, _ = promptStageName()
stageName, err = promptStageName()
if err == promptui.ErrInterrupt {
return nil, nil
}
if err != nil {
return nil, log.Wrap(err)
}

}
for {
stage, err := s.project.NewStage(stageName, s.Node, s.store.ProjectRoot())
var see *domain.StageExistsError
if errors.As(err, &see) {
ui.Info("Stage %s already exists", stageName)
stageName, err = promptStageName()
if err != nil {
if err == promptui.ErrInterrupt {
return nil, nil
}
if err != nil {
return nil, log.Wrap(err)
}
continue
}
if err != nil {
Expand All @@ -119,8 +133,7 @@ func (s *Stage) chooseCreateStage() (*domain.Stage, error) {

func promptStageName() (string, error) {
prompt := promptui.Prompt{
Label: "Please specify a new stage name to continue",
Default: domain.DefaultStageName,
Label: "Please specify a new stage name to continue",
}
stage, err := prompt.Run()
return stage, err
Expand Down

0 comments on commit 82ad06f

Please sign in to comment.