diff --git a/.github/workflows/release_go.yml b/.github/workflows/release_go.yml index f455eef..37173e8 100644 --- a/.github/workflows/release_go.yml +++ b/.github/workflows/release_go.yml @@ -1,10 +1,12 @@ name: goreleaser on: - push: - # run only against tags - tags: - - v*.*.* +# push: +# # run only against tags +# tags: +# - v*.*.* + release: + types: [ published ] permissions: contents: write diff --git a/cmd/commit.go b/cmd/commit.go index 2538a71..e5f8ea4 100644 --- a/cmd/commit.go +++ b/cmd/commit.go @@ -45,7 +45,13 @@ var CommitCmd = &cobra.Command{ } gitmojis := pkg.GetGitmojis(config) defaultTypes := pkg.DefaultCommitTypes() - initialCommitValues := pkg.BuildInitialCommitValues(_type, scope, desc, body, commitMsg) + initialCommitValues := pkg.BuildInitialCommitValues( + _type, + scope, + desc, + body, + commitMsg, + ) listSettingsGitmojis := ui.ListSettings{IsShowStatusBar: true, IsFilteringEnabled: true, Title: "Gitmojis"} listSettingsCommitTypes := ui.ListSettings{Title: "Commit types", IsShowStatusBar: true, IsFilteringEnabled: true} spin.Stop() diff --git a/cmd/hooks.go b/cmd/hooks.go index c002375..9325231 100644 --- a/cmd/hooks.go +++ b/cmd/hooks.go @@ -53,8 +53,18 @@ var HooksCmd = &cobra.Command{ log.Debug("hooks called") log.Debugf("run: %v", args) if hook { + if len(args) == 0 { + log.Fatalf("len(args) must not be 0 when using pre-commit-message hook https://git-scm.com/docs/githooks#_prepare_commit_msg") + } hookCommitMessageFile := args[0] + log.Debugf("hook commit message file %s", hookCommitMessageFile) hookCommit(hookCommitMessageFile) + } else { + err := cmd.Help() + if err != nil { + log.Fatalf("issue with the help command %s", err) + return + } } }, } @@ -71,6 +81,7 @@ func hookCommit(commitMsgFile string) { log.Debug(commitMsg) spin := ui.NewSpinner() spin.Run() + defer func() { spin.Stop() }() existentHookFiles, err := pkg.HookFilesExistent() if err != nil { log.Fatalf("Error checking if hook files existent") @@ -81,25 +92,34 @@ func hookCommit(commitMsgFile string) { spin.Stop() return } - parsedMessages, err := pkg.ReadAndParseCommitEditMsg(commitMsgFile) - if err != nil { - log.Fatalf("issue reading and parsing the commit msg file %s", err) - } config, err := pkg.GetCurrentConfig() if err != nil { log.Fatalf("get current config issue, %s", err) } + parsedMessages, err := pkg.ReadAndParseCommitEditMsg(commitMsgFile) + if err != nil { + log.Fatalf("issue reading and parsing the commit msg file %s", err) + } + gitmojis := pkg.GetGitmojis(config) - spin.Stop() + defaultTypes := pkg.DefaultCommitTypes() + initialCommitValues := pkg.InitialCommitValues{ Type: parsedMessages.Type, Scope: parsedMessages.Scope, Desc: parsedMessages.Desc, Body: parsedMessages.Body, } - listSettings := ui.ListSettings{IsShowStatusBar: true, IsFilteringEnabled: true, Title: "Gitmojis"} - selectedGitmoji := ui.ListRun(listSettings, gitmojis.Gitmojis) + listSettingsGitmojis := ui.ListSettings{IsShowStatusBar: true, IsFilteringEnabled: true, Title: "Gitmojis"} + listSettingsCommitTypes := ui.ListSettings{Title: "Commit types", IsShowStatusBar: true, IsFilteringEnabled: true} + + spin.Stop() + + selectedGitmoji := ui.ListRun(listSettingsGitmojis, gitmojis.Gitmojis) log.Debugf("selected gitmoji %s", selectedGitmoji) + selectedDefaultType := ui.ListRun(listSettingsCommitTypes, defaultTypes) + log.Debugf("selected %s", selectedDefaultType) + initialCommitValues.Type = selectedDefaultType.Type textInputsData := initialCommitValues.BuildTextInputsData(config) inputsRes := ui.TextInputsRun("please add", textInputsData) diff --git a/pkg/hooks.go b/pkg/hooks.go index 2fc9e53..4e7b084 100644 --- a/pkg/hooks.go +++ b/pkg/hooks.go @@ -20,7 +20,7 @@ hookName=` + "`basename \"$0\"`" + ` gitParams="$*" if command -v go-gitmoji-cli >/dev/null 2>&1; then - go-gitmoji-cli hooks --hook "$gitParams" + go-gitmoji-cli hooks --hook $gitParams else echo "Can't find go-gitmoji-cli, skipping $hookName hook" echo "You can reinstall it using 'go get -u github.com/AndreasAugustin/go-gitmoji-cli' or delete this hook" diff --git a/pkg/hooks_test.go b/pkg/hooks_test.go index 923bb1c..725a018 100644 --- a/pkg/hooks_test.go +++ b/pkg/hooks_test.go @@ -20,7 +20,7 @@ hookName=` + "`basename \"$0\"`" + ` gitParams="$*" if command -v go-gitmoji-cli >/dev/null 2>&1; then - go-gitmoji-cli hooks --hook "$gitParams" + go-gitmoji-cli hooks --hook $gitParams else echo "Can't find go-gitmoji-cli, skipping $hookName hook" echo "You can reinstall it using 'go get -u github.com/AndreasAugustin/go-gitmoji-cli' or delete this hook"