Skip to content

Commit 9d6372d

Browse files
authored
Merge pull request #153 from commitdev/dont-ask-project-name
Removed the required project name when running the command to make it…
2 parents 5eac90c + caa8290 commit 9d6372d

File tree

2 files changed

+14
-19
lines changed

2 files changed

+14
-19
lines changed

cmd/init.go

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ package cmd
33
import (
44
"github.com/commitdev/zero/internal/config/projectconfig"
55
"github.com/commitdev/zero/internal/context"
6-
"github.com/commitdev/zero/pkg/util/exit"
76
"github.com/spf13/cobra"
87
)
98

@@ -15,12 +14,7 @@ var initCmd = &cobra.Command{
1514
Use: "init",
1615
Short: "Create new project with provided name and initialize configuration based on user input.",
1716
Run: func(cmd *cobra.Command, args []string) {
18-
if len(args) < 1 {
19-
exit.Fatal("Project name cannot be empty!")
20-
}
21-
22-
projectName := args[0]
23-
projectContext := context.Init(projectName, projectconfig.RootDir)
24-
projectconfig.Init(projectconfig.RootDir, projectName, projectContext)
17+
projectContext := context.Init(projectconfig.RootDir)
18+
projectconfig.Init(projectconfig.RootDir, projectContext.Name, projectContext)
2519
},
2620
}

internal/context/init.go

Lines changed: 12 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -22,22 +22,23 @@ import (
2222
type Registry map[string][]string
2323

2424
// Create cloud provider context
25-
func Init(projectName string, outDir string) *projectconfig.ZeroProjectConfig {
26-
rootDir := path.Join(outDir, projectName)
27-
flog.Infof(":tada: Creating project %s.", projectName)
25+
func Init(outDir string) *projectconfig.ZeroProjectConfig {
26+
projectConfig := defaultProjConfig()
27+
projectConfig.Name = promptProjectName()
28+
29+
rootDir := path.Join(outDir, projectConfig.Name)
30+
flog.Infof(":tada: Creating project")
2831

2932
err := os.MkdirAll(rootDir, os.ModePerm)
3033
if os.IsExist(err) {
31-
exit.Fatal("Directory %v already exists! Error: %v", projectName, err)
34+
exit.Fatal("Directory %v already exists! Error: %v", projectConfig.Name, err)
3235
} else if err != nil {
3336
exit.Fatal("Error creating root: %v ", err)
3437
}
3538

36-
projectConfig := defaultProjConfig(projectName)
37-
projectConfig.Name = promptProjectName(projectName)
3839
projectConfig.Context["ShouldPushRepoUpstream"] = promptPushRepoUpstream()
3940
projectConfig.Context["GithubRootOrg"] = promptGithubRootOrg()
40-
projectConfig.Context["githubPersonalToken"] = promptGithubPersonalToken(projectName)
41+
projectConfig.Context["githubPersonalToken"] = promptGithubPersonalToken(projectConfig.Name)
4142

4243
// chooseCloudProvider(&projectConfig)
4344
// fmt.Println(&projectConfig)
@@ -141,10 +142,10 @@ func promptGithubPersonalToken(projectName string) string {
141142
return result
142143
}
143144

144-
func promptProjectName(projectName string) string {
145+
func promptProjectName() string {
145146
providerPrompt := promptui.Prompt{
146147
Label: "Project Name",
147-
Default: projectName,
148+
Default: "",
148149
AllowEdit: false,
149150
}
150151
result, err := providerPrompt.Run()
@@ -234,9 +235,9 @@ func fillProviderDetails(projectConfig *projectconfig.ZeroProjectConfig, s proje
234235
}
235236
}
236237

237-
func defaultProjConfig(projectName string) projectconfig.ZeroProjectConfig {
238+
func defaultProjConfig() projectconfig.ZeroProjectConfig {
238239
return projectconfig.ZeroProjectConfig{
239-
Name: projectName,
240+
Name: "",
240241
Infrastructure: projectconfig.Infrastructure{
241242
AWS: nil,
242243
},

0 commit comments

Comments
 (0)