diff options
author | Michael Muré <batolettre@gmail.com> | 2018-09-16 14:25:25 +0200 |
---|---|---|
committer | Michael Muré <batolettre@gmail.com> | 2018-09-16 14:25:25 +0200 |
commit | a846fb96de587afdd9b3ea37bdb9731d77e44863 (patch) | |
tree | 4b71d5b7c4395ae1be1e9f6520e7866e98257e4e | |
parent | 6f5d433e33b5432887a8496074f0d7c7048c1167 (diff) | |
download | git-bug-a846fb96de587afdd9b3ea37bdb9731d77e44863.tar.gz |
commands: add a "status" command to show a bug status
-rw-r--r-- | commands/status.go | 50 | ||||
-rw-r--r-- | doc/man/git-bug-status.1 | 29 | ||||
-rw-r--r-- | doc/man/git-bug.1 | 2 | ||||
-rw-r--r-- | doc/md/git-bug.md | 1 | ||||
-rw-r--r-- | doc/md/git-bug_status.md | 22 | ||||
-rw-r--r-- | misc/bash_completion/git-bug | 21 | ||||
-rw-r--r-- | misc/zsh_completion/git-bug | 2 |
7 files changed, 125 insertions, 2 deletions
diff --git a/commands/status.go b/commands/status.go new file mode 100644 index 00000000..29646b6e --- /dev/null +++ b/commands/status.go @@ -0,0 +1,50 @@ +package commands + +import ( + "fmt" + + "github.com/MichaelMure/git-bug/cache" + "github.com/pkg/errors" + "github.com/spf13/cobra" +) + +func runStatus(cmd *cobra.Command, args []string) error { + var err error + + if len(args) > 1 { + return errors.New("Only one bug id is supported") + } + + if len(args) == 0 { + return errors.New("You must provide a bug id") + } + + backend, err := cache.NewRepoCache(repo) + if err != nil { + return err + } + defer backend.Close() + + prefix := args[0] + + b, err := backend.ResolveBugPrefix(prefix) + if err != nil { + return err + } + + snap := b.Snapshot() + + fmt.Println(snap.Status) + + return nil +} + +var statusCmd = &cobra.Command{ + Use: "status <id>", + Short: "Show the bug status", + RunE: runStatus, +} + +func init() { + RootCmd.AddCommand(statusCmd) +} diff --git a/doc/man/git-bug-status.1 b/doc/man/git-bug-status.1 new file mode 100644 index 00000000..076791e8 --- /dev/null +++ b/doc/man/git-bug-status.1 @@ -0,0 +1,29 @@ +.TH "GIT-BUG" "1" "Sep 2018" "Generated from git-bug's source code" "" +.nh +.ad l + + +.SH NAME +.PP +git\-bug\-status \- Show the bug status + + +.SH SYNOPSIS +.PP +\fBgit\-bug status <id> [flags]\fP + + +.SH DESCRIPTION +.PP +Show the bug status + + +.SH OPTIONS +.PP +\fB\-h\fP, \fB\-\-help\fP[=false] + help for status + + +.SH SEE ALSO +.PP +\fBgit\-bug(1)\fP diff --git a/doc/man/git-bug.1 b/doc/man/git-bug.1 index 514dc093..7c6879fa 100644 --- a/doc/man/git-bug.1 +++ b/doc/man/git-bug.1 @@ -29,4 +29,4 @@ It use the same internal storage so it doesn't pollute your project. As you woul .SH SEE ALSO .PP -\fBgit\-bug\-add(1)\fP, \fBgit\-bug\-close(1)\fP, \fBgit\-bug\-commands(1)\fP, \fBgit\-bug\-comment(1)\fP, \fBgit\-bug\-label(1)\fP, \fBgit\-bug\-ls(1)\fP, \fBgit\-bug\-open(1)\fP, \fBgit\-bug\-pull(1)\fP, \fBgit\-bug\-push(1)\fP, \fBgit\-bug\-show(1)\fP, \fBgit\-bug\-termui(1)\fP, \fBgit\-bug\-title(1)\fP, \fBgit\-bug\-webui(1)\fP +\fBgit\-bug\-add(1)\fP, \fBgit\-bug\-close(1)\fP, \fBgit\-bug\-commands(1)\fP, \fBgit\-bug\-comment(1)\fP, \fBgit\-bug\-label(1)\fP, \fBgit\-bug\-ls(1)\fP, \fBgit\-bug\-open(1)\fP, \fBgit\-bug\-pull(1)\fP, \fBgit\-bug\-push(1)\fP, \fBgit\-bug\-show(1)\fP, \fBgit\-bug\-status(1)\fP, \fBgit\-bug\-termui(1)\fP, \fBgit\-bug\-title(1)\fP, \fBgit\-bug\-webui(1)\fP diff --git a/doc/md/git-bug.md b/doc/md/git-bug.md index 9eb7b7bc..33ab48ae 100644 --- a/doc/md/git-bug.md +++ b/doc/md/git-bug.md @@ -30,6 +30,7 @@ git-bug [flags] * [git-bug pull](git-bug_pull.md) - Pull bugs update from a git remote * [git-bug push](git-bug_push.md) - Push bugs update to a git remote * [git-bug show](git-bug_show.md) - Display the details of a bug +* [git-bug status](git-bug_status.md) - Show the bug status * [git-bug termui](git-bug_termui.md) - Launch the terminal UI * [git-bug title](git-bug_title.md) - Display a bug's title * [git-bug webui](git-bug_webui.md) - Launch the web UI diff --git a/doc/md/git-bug_status.md b/doc/md/git-bug_status.md new file mode 100644 index 00000000..a4af6f4d --- /dev/null +++ b/doc/md/git-bug_status.md @@ -0,0 +1,22 @@ +## git-bug status + +Show the bug status + +### Synopsis + +Show the bug status + +``` +git-bug status <id> [flags] +``` + +### Options + +``` + -h, --help help for status +``` + +### SEE ALSO + +* [git-bug](git-bug.md) - A bugtracker embedded in Git + diff --git a/misc/bash_completion/git-bug b/misc/bash_completion/git-bug index f5f3da2a..973eff9c 100644 --- a/misc/bash_completion/git-bug +++ b/misc/bash_completion/git-bug @@ -508,6 +508,26 @@ _git-bug_show() noun_aliases=() } +_git-bug_status() +{ + last_command="git-bug_status" + + command_aliases=() + + commands=() + + flags=() + two_word_flags=() + local_nonpersistent_flags=() + flags_with_completion=() + flags_completion=() + + + must_have_one_flag=() + must_have_one_noun=() + noun_aliases=() +} + _git-bug_termui() { last_command="git-bug_termui" @@ -612,6 +632,7 @@ _git-bug_root_command() commands+=("pull") commands+=("push") commands+=("show") + commands+=("status") commands+=("termui") commands+=("title") commands+=("webui") diff --git a/misc/zsh_completion/git-bug b/misc/zsh_completion/git-bug index 60ae6ce9..38d72c24 100644 --- a/misc/zsh_completion/git-bug +++ b/misc/zsh_completion/git-bug @@ -8,7 +8,7 @@ case $state in level1) case $words[1] in git-bug) - _arguments '1: :(add close commands comment label ls open pull push show termui title webui)' + _arguments '1: :(add close commands comment label ls open pull push show status termui title webui)' ;; *) _arguments '*: :_files' |