Edits to support --review(er)
Change-Id: I65987a443feda52b0043b55bf2a13446dd93ec14
diff --git a/gerrit/bin/gerrit.sh b/gerrit/bin/gerrit.sh
index 3463960..572d1d3 100755
--- a/gerrit/bin/gerrit.sh
+++ b/gerrit/bin/gerrit.sh
@@ -28,6 +28,7 @@
##---] INCLUDES [---##
##--------------------##
source "${libdir}/filters/include.sh"
+source "${libdir}/do/include.sh"
source "${libdir}/usage/include.sh"
## --------------------------------------------------------------------
@@ -41,7 +42,7 @@
** ERROR: $@
** -----------------------------------------------------------------------
ERROR
- echo
+ echo
exit 1
}
@@ -56,7 +57,7 @@
## -----------------------------------------------------------------------
## Usage: $0 --repo voltha-go --search --wip
## -----------------------------------------------------------------------
-function do_gerrit_search()
+function do_gerrit_search_orig()
{
local -n ref_urls=$1 ; shift
local -n ref_repos=$1 ; shift
@@ -92,7 +93,7 @@
ref_urls+=("$url")
fi
- # --debug) declare -g -i debug=1 ;;
+ # --debug) declare -g -i debug=1 ;;
# --search) declare -g -i search=1 ;;
# --wip) declare -g -i status_is_open=1 ;;
@@ -100,56 +101,6 @@
}
## -----------------------------------------------------------------------
-## Usage: $0 --status open --reviewer [u]
-## -----------------------------------------------------------------------
-function do_gerrit_review()
-{
- local -n ref_urls=$1 ; shift
- local -n ref_repos=$1 ; shift
- local -n ref_status=$1 ; shift
-
- ref_urls=()
-
- # local stem='https://gerrit.opencord.org/q/project:voltha-go+status:open'
- local stem='https://gerrit.opencord.org/q/'
-
- local -a common=()
- [[ -v me ]] && { common+=('reviewer:self') }
-
- for reviewer in "${argv_reviewer[@]}"; do
- common+=("reviewer:${reviewer}")
- done
-
- local repo
- for repo in "${ref_repos[@]}";
- do
- local -a args=()
- args+=("project:${repo}")
- args+=("${common[@]}")
-
- local url="$stem"
- url+="$(join_by '+' "${args[@]}")"
- ref_urls+=("$url")
- done
-
- ## If not repo specific then query all
- if [[ ${#ref_urls[@]} -eq 0 ]]; then
- local -a args=()
- args=("${common[@]}")
-
- local url="$stem"
- url+="$(join_by '+' "${args[@]}")"
- ref_urls+=("$url")
- fi
-
- # --debug) declare -g -i debug=1 ;;
- # --search) declare -g -i search=1 ;;
- # --wip) declare -g -i status_is_open=1 ;;
-
- return
-}
-
-## -----------------------------------------------------------------------
## Intent: Iterate over --admin values and generate repositories
## -----------------------------------------------------------------------
function gen_admin_urls()
@@ -185,6 +136,7 @@
## -----------------------------------------------------------------------
function gen_view_urls()
{
+ # shellcheck disable=SC2178
local -n ref=$1 ; shift
local -n _repos=$1 ; shift
local -n _views=$1 ; shift
@@ -207,22 +159,22 @@
search) continue ;;
default) ref+=("$stem") ;;
# repo*) ref+=("$stem/$repo") ;;
- repo*) ref+=("$stem") ;;
- master)
- ref+=("$stem/+/refs/heads/master")
- ;;
-
- voltha-*)
- echo "STEM: $stem"
- if false; then
- ref+=("$stem/+/refs/tags/${view}")
- ref+=("$stem/+/refs/heads/${view}")
- fi
- # ref+=("$stem/+/refs/heads/${view}")
- ref+=("$stem/+/refs/heads/${view}")
+ repo*) ref+=("$stem") ;;
+ master)
+ ref+=("$stem/+/refs/heads/master")
;;
- v*) ref+=("$stem/+/refs/tags/${view}") ;;
+ voltha-*)
+ echo "STEM: $stem"
+ if false; then
+ ref+=("$stem/+/refs/tags/${view}")
+ ref+=("$stem/+/refs/heads/${view}")
+ fi
+ # ref+=("$stem/+/refs/heads/${view}")
+ ref+=("$stem/+/refs/heads/${view}")
+ ;;
+
+ v*) ref+=("$stem/+/refs/tags/${view}") ;;
*) error "Unknown --view type [$view]" ;;
esac
done # views[@]
@@ -240,6 +192,7 @@
## -----------------------------------------------------------------------
function get_urls()
{
+ # shellcheck disable=SC2178
local -n ref="$1"; shift
local _srv="$1"; shift
@@ -247,8 +200,8 @@
ref=(\
['admin']="$gerrit/admin/repos"
['base']="$gerrit"\
- ['dashboard']="$gerrit/dashboard/self"\
- )
+ ['dashboard']="$gerrit/dashboard/self"\
+ )
return
}
@@ -258,6 +211,7 @@
{
local _repo="$1"; shift
local _id="$1"; shift
+ # shellcheck disable=SC2178
local -n ref=$1; shift
local url="https://gerrit.opencord.org/c/${repo}/+/${id}"
@@ -278,6 +232,7 @@
## -----------------------------------------------------------------------
function access_url()
{
+ # shellcheck disable=SC2178
local -n ref=$1; shift
local _repo="$1"; shift
@@ -307,6 +262,7 @@
## -----------------------------------------------------------------------
function do_gerrit_dashboard()
{
+ # shellcheck disable=SC2178
local -n ref=$1; shift
declare -A data=()
@@ -338,13 +294,15 @@
;;
## Modes
- --debug)
+ --debug)
+ # shellcheck disable=SC2034
declare -g -i argv_debug=1
declare -g -i debug=1
;;
--search) declare -g -i argv_search=1 ;;
--me)
+ # shellcheck disable=SC2034
declare -g -i argv_me=1
me+=("owner:${USER}@opennetworking.org")
;;
@@ -384,7 +342,7 @@
versions+=('master')
fi
-# args+=('--view' 'voltha-2.11')
+ # args+=('--view' 'voltha-2.11')
args+=('--view' 'voltha-2.12')
set -- "${args[@]}" "$@"
;;
@@ -469,6 +427,7 @@
;;
--reviewer)
+ [[ $# -eq 0 ]] && { error '--reviewer requires an argument'; }
arg="$1"; shift
add_filter_reviewer "$arg"
@@ -511,12 +470,12 @@
esac
;;
- -*)
- echo "ERROR: Unknown argument [$arg]"
- exit 1
- ;;
+ -*)
+ echo "ERROR: Unknown argument [$arg]"
+ exit 1
+ ;;
- [[:alnum:]]*)
+ [[:alnum:]]*)
declare -a what=()
# whats+=('patches')
whats+=('versions')
@@ -539,25 +498,19 @@
esac
done
-[[ -v argv_search ]] && { do_gerrit_search urls repos argv_status; }
+[[ -v argv_search ]] && { do_gerrit_search urls repos argv_status; }
[[ -v admins ]] && { gen_admin_urls urls repos admins; }
-
-# -----------------------------------------------------------------------
-# Generalize:
-# o --review function like a simple search filter.
-# o piece missing is defining query URL stem= when needed.
-# -----------------------------------------------------------------------
[[ -v argv_review ]] && { do_gerrit_review urls repos argv_status; }
## are --views working ?
[[ "${#views[@]}" -gt 0 ]] && { gen_view_urls urls repos views; }
if [[ ${#urls[@]} -eq 0 ]]; then
+ # shellcheck disable=SC2034
declare -a show_all=() # show all for visiblity
do_gerrit_search urls repos show_all
fi
-
[[ -v debug ]] && { echo "$BROWSER" "${urls[@]}"; }
if [[ ${#urls[@]} -gt 0 ]]; then
@@ -588,5 +541,4 @@
# argv_status+=('status:open')
# ;;
-
# [EOF]