Linux lhjmq-records 5.15.0-118-generic #128-Ubuntu SMP Fri Jul 5 09:28:59 UTC 2024 x86_64
Your IP : 3.15.195.84
# koji completion -*- shell-script -*-
_koji_search()
{
COMPREPLY+=( $(compgen -W \
'$("$1" -q search $2 "$cur*" 2>/dev/null)' -- "$cur") )
}
_koji_build()
{
_koji_search "$1" build
}
_koji_package()
{
_koji_search "$1" package
}
_koji_user()
{
_koji_search "$1" user
}
_koji_tag()
{
COMPREPLY+=( $(compgen -W '$("$1" -q list-tags 2>/dev/null)' -- "$cur") )
}
_koji_target()
{
COMPREPLY+=( $(compgen -W '$("$1" -q list-targets 2>/dev/null |
awk "{ print \$1 }")' -- "$cur") )
}
_koji()
{
local cur prev words cword split
_init_completion -s || return
local commandix command
for (( commandix=1; commandix < cword; commandix++ )); do
if [[ ${words[commandix]} != -* ]]; then
command=${words[commandix]}
break
fi
done
case $prev in
--help|--help-commands|-!(-*)h*)
return
;;
--config|--keytab|-!(-*)[co])
_filedir
return
;;
--runas|--user|--editor|--by)
_koji_user "$1"
return
;;
--authtype)
COMPREPLY=( $(compgen -W 'noauth ssl password kerberos' -- "$cur") )
return
;;
--topdir)
_filedir -d
return
;;
--type)
case $command in
latest-pkg|list-tagged)
COMPREPLY=( $(compgen -W 'maven' -- "$cur") )
;;
esac
return
;;
--name)
case $command in
list-targets)
_koji_target "$1"
;;
esac
return
;;
--owner)
_koji_user "$1"
return
;;
--tag|--latestfrom)
_koji_tag "$1"
return
;;
--package)
_koji_package "$1"
return
;;
--build)
_koji_build "$1"
return
;;
--build-target)
_koji_target "$1"
return
;;
esac
$split && return
if [[ $command ]]; then
if [[ $cur == -* ]]; then
COMPREPLY=( $(compgen -W \
'$(_parse_help "$1" "$command --help")' -- "$cur") )
[[ $COMPREPLY == *= ]] && compopt -o nospace
return
fi
# How many'th non-option arg (1-based) for $command are we completing?
local i nth=1
for (( i=commandix+1; i < cword; i++ )); do
[[ ${words[i]} == -* ]] || (( nth++ ))
done
case $command in
build|maven-build|win-build)
case $nth in
1)
_koji_target "$1"
;;
2)
_filedir src.rpm
;;
esac
;;
cancel)
_koji_build "$1"
;;
chain-build)
case $nth in
1)
_koji_target "$1"
;;
esac
;;
download-build)
case $nth in
1)
_koji_build "$1"
;;
esac
;;
import-comps)
case $nth in
1)
_filedir xml
;;
2)
_koji_tag "$1"
;;
esac
;;
latest-by-tag)
_koji_package "$1"
;;
latest-pkg|list-groups|list-tag-inheritance|show-groups)
case $nth in
1)
_koji_tag "$1"
;;
esac
;;
list-tagged)
case $nth in
1)
_koji_tag "$1"
;;
2)
_koji_package "$1"
;;
esac
;;
list-untagged)
case $nth in
1)
_koji_package "$1"
;;
esac
;;
move-pkg)
case $nth in
1|2)
_koji_tag "$1"
;;
*)
_koji_package "$1"
;;
esac
;;
search)
case $nth in
1)
COMPREPLY=( $(compgen -W 'package build tag target
user host rpm' -- "$cur") )
;;
esac
;;
tag-pkg|untag-pkg)
case $nth in
1)
_koji_tag "$1"
;;
*)
_koji_package "$1"
;;
esac
;;
taginfo)
_koji_tag "$1"
;;
wait-repo)
case $nth in
1)
for (( i=commandix+1; i < cword; i++ )); do
if [[ ${words[i]} == --target ]]; then
_koji_target "$1"
return
fi
done
_koji_tag "$1"
;;
esac
;;
esac
return
fi
if [[ $cur == -* ]]; then
COMPREPLY=( $(compgen -W '$(_parse_help "$1")' -- "$cur") )
[[ $COMPREPLY == *= ]] && compopt -o nospace
elif [[ ! $command ]]; then
COMPREPLY=( $(compgen -W '$("$1" --help-commands 2>/dev/null | \
awk "/^( +|\t)/ { print \$1 }")' -- "$cur") )
fi
} &&
complete -F _koji koji arm-koji ppc-koji s390-koji sparc-koji
# ex: filetype=sh
|