diff options
Diffstat (limited to 'plugins/jira/jira.plugin.zsh')
-rw-r--r-- | plugins/jira/jira.plugin.zsh | 44 |
1 files changed, 14 insertions, 30 deletions
diff --git a/plugins/jira/jira.plugin.zsh b/plugins/jira/jira.plugin.zsh index 89559767f..341e23ec0 100644 --- a/plugins/jira/jira.plugin.zsh +++ b/plugins/jira/jira.plugin.zsh @@ -1,35 +1,11 @@ # CLI support for JIRA interaction # -# Setup: -# Add a .jira-url file in the base of your project -# You can also set $JIRA_URL in your .zshrc or put .jira-url in your home directory -# A .jira-url in the current directory takes precedence. -# The same goes with .jira-prefix and $JIRA_PREFIX. -# -# For example: -# cd to/my/project -# echo "https://name.jira.com" >> .jira-url -# -# Variables: -# $JIRA_RAPID_BOARD - set to "true" if you use Rapid Board -# $JIRA_DEFAULT_ACTION - action to do when `jira` is called witn no args -# defaults to "new" -# $JIRA_NAME - Your JIRA username. Used as default for assigned/reported -# $JIRA_PREFIX - Prefix added to issue ID arguments -# -# -# Usage: -# jira # Performs the default action -# jira new # opens a new issue -# jira reported [username] -# jira assigned [username] -# jira dashboard -# jira ABC-123 # Opens an existing issue -# jira ABC-123 m # Opens an existing issue for adding a comment +# See README.md for details : ${JIRA_DEFAULT_ACTION:=new} function jira() { + emulate -L zsh local action=${1:=$JIRA_DEFAULT_ACTION} local jira_url jira_prefix @@ -63,6 +39,12 @@ function jira() { elif [[ "$action" == "dashboard" ]]; then echo "Opening dashboard" open_command "${jira_url}/secure/Dashboard.jspa" + elif [[ "$action" == "dumpconfig" ]]; then + echo "JIRA_URL=$jira_url" + echo "JIRA_PREFIX=$jira_prefix" + echo "JIRA_NAME=$JIRA_NAME" + echo "JIRA_RAPID_BOARD=$JIRA_RAPID_BOARD" + echo "JIRA_DEFAULT_ACTION=$JIRA_DEFAULT_ACTION" else # Anything that doesn't match a special action is considered an issue name local issue_arg=$action @@ -84,15 +66,17 @@ function jira() { function _jira_url_help() { cat << EOF -JIRA url is not specified anywhere. +error: JIRA URL is not specified anywhere. + Valid options, in order of precedence: .jira-url file \$HOME/.jira-url file - JIRA_URL environment variable + \$JIRA_URL environment variable EOF } function _jira_query() { + emulate -L zsh local verb="$1" local jira_name lookup preposition query if [[ "${verb}" == "reported" ]]; then @@ -102,12 +86,12 @@ function _jira_query() { lookup=assignee preposition=to else - echo "not a valid lookup: $verb" >&2 + echo "error: not a valid lookup: $verb" >&2 return 1 fi jira_name=${2:=$JIRA_NAME} if [[ -z $jira_name ]]; then - echo "JIRA_NAME not specified" >&2 + echo "error: JIRA_NAME not specified" >&2 return 1 fi |