update 'lock' command completion
This commit is contained in:
parent
7d74814449
commit
9674907aea
84
src/_conan
84
src/_conan
|
|
@ -453,12 +453,27 @@ _conan_list() {
|
||||||
|
|
||||||
(( $+functions[_conan_lock] )) ||
|
(( $+functions[_conan_lock] )) ||
|
||||||
_conan_lock() {
|
_conan_lock() {
|
||||||
|
local curcontext=$curcontext state state_descr line ret=1
|
||||||
|
typeset -A opt_args
|
||||||
|
|
||||||
_arguments -C \
|
_arguments -C \
|
||||||
'(- : *)'{-h,--help}'[display help information]' \
|
'(- : *)'{-h,--help}'[display help information]' \
|
||||||
'1: :_conan_lock_commands' \
|
'1:subcommand:->subcommand' \
|
||||||
'*:: :->args'
|
'*:: :->args'
|
||||||
|
|
||||||
case $state in
|
case $state in
|
||||||
|
(subcommand)
|
||||||
|
local -a commands=(
|
||||||
|
'add:add requires, build-requires or python requires to an existing or new lockfile'
|
||||||
|
'create:create a lockfile from a conanfile or a reference'
|
||||||
|
'merge:merge 2 or more lockfiles'
|
||||||
|
'remove:remove requires, build-requires or python-requires from an existing lockfile'
|
||||||
|
'update:update requires'
|
||||||
|
'upgrade:upgrade requires, build-requires or python-requires from an exiting lockfile'
|
||||||
|
'upgrade-config:upgrade config requires in a lockfile'
|
||||||
|
)
|
||||||
|
_describe -t 'commands' "command" commands && ret=0
|
||||||
|
;;
|
||||||
(args)
|
(args)
|
||||||
local -a opts=($_conan_common_options)
|
local -a opts=($_conan_common_options)
|
||||||
case $words[1] in
|
case $words[1] in
|
||||||
|
|
@ -474,34 +489,73 @@ _conan_lock() {
|
||||||
(create)
|
(create)
|
||||||
opts+=(
|
opts+=(
|
||||||
\*{-b,--build}'[optional, specify which packages to build from source]:build'
|
\*{-b,--build}'[optional, specify which packages to build from source]:build'
|
||||||
|
'--requires[directly provide requires instead of a conanfile]:requires'
|
||||||
|
'--tool-requires[directly provide tool-requires instead of a conanfile]:tool-requires'
|
||||||
|
'--build-require[whether the provided reference is a build-require]'
|
||||||
$_conan_remote_options[@]
|
$_conan_remote_options[@]
|
||||||
'(-u --update)'{-u,--update}'[will check the remote and in case a newer version]'
|
|
||||||
$conan_profile_options[@]
|
$conan_profile_options[@]
|
||||||
|
$conan_reference_options[@]
|
||||||
$_conan_lockfile_options[@]
|
$_conan_lockfile_options[@]
|
||||||
'1: :_files'
|
'1: :_files'
|
||||||
)
|
)
|
||||||
;;
|
;;
|
||||||
(merge)
|
(merge)
|
||||||
opts+=(
|
opts+=(
|
||||||
|
'--lockfile[file name of the input lockfile]:filename:_files'
|
||||||
|
'--lockfile-out[file name of the created lockfile]:filename:_files'
|
||||||
|
)
|
||||||
|
;;
|
||||||
|
(remove)
|
||||||
|
opts+=(
|
||||||
|
'*--build-requires[remove build-requires from lockfile]:build_requires'
|
||||||
|
'*--python-requires[remove python-requires from lockfile]'
|
||||||
|
'*--config-requires[remove config-requires from lockfile]'
|
||||||
'--lockfile-out[file name of the created lockfile]:filename:_files'
|
'--lockfile-out[file name of the created lockfile]:filename:_files'
|
||||||
'--lockfile[file name of the input lockfile]:filename:_files'
|
'--lockfile[file name of the input lockfile]:filename:_files'
|
||||||
)
|
)
|
||||||
;;
|
;;
|
||||||
|
(update)
|
||||||
|
opts+=(
|
||||||
|
'*--requires[update references to lockfile]:requires'
|
||||||
|
'*--build-requires[update build-requires from lockfile]:build_requires'
|
||||||
|
'*--python-requires[update python-requires from lockfile]'
|
||||||
|
'*--config-requires[update config-requires from lockfile]'
|
||||||
|
'--lockfile-out[file name of the created lockfile]:filename:_files'
|
||||||
|
'--lockfile[file name of the input lockfile]:filename:_files'
|
||||||
|
)
|
||||||
|
;;
|
||||||
|
(upgrade)
|
||||||
|
opts+=(
|
||||||
|
'--requires[directly provide requires instead of a conanfile]:requires'
|
||||||
|
'--tool-requires[directly provide tool-requires instead of a conanfile]:tool-requires'
|
||||||
|
\*{-ur,--update-requires}'[update requires from lockfile]:update_requires'
|
||||||
|
\*{-ubr,--update-build-requires}'[update build-requires from lockfile]:update_build_requires'
|
||||||
|
\*{-upr,--update-python-requires}'[update python-requires from lockfile]:update_python_requires'
|
||||||
|
'*--build-requires[update build-requires from lockfile]:build_requires'
|
||||||
|
$_conan_remote_options[@]
|
||||||
|
$conan_profile_options[@]
|
||||||
|
$conan_reference_options[@]
|
||||||
|
$_conan_lockfile_options[@]
|
||||||
|
)
|
||||||
|
;;
|
||||||
|
(upgrade-config)
|
||||||
|
opts+=(
|
||||||
|
'--requires[directly provide requires instead of a conanfile]:requires'
|
||||||
|
'--tool-requires[directly provide tool-requires instead of a conanfile]:tool-requires'
|
||||||
|
'*--update-config-requires[update config-requires from lockfile]:update_config_requires'
|
||||||
|
$_conan_remote_options[@]
|
||||||
|
$conan_profile_options[@]
|
||||||
|
$conan_reference_options[@]
|
||||||
|
$_conan_lockfile_options[@]
|
||||||
|
)
|
||||||
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
_arguments "$opts[@]"
|
_arguments "$opts[@]" && ret=1
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
}
|
|
||||||
|
|
||||||
(( $+functions[_conan_lock_commands] )) ||
|
return ret
|
||||||
_conan_lock_commands() {
|
|
||||||
local -a commands=(
|
|
||||||
'add:add requires, build-requires or python requires to an existing or new lockfile'
|
|
||||||
'create:create a lockfile from a conanfile or a reference'
|
|
||||||
'merge:merge 2 or more lockfiles'
|
|
||||||
)
|
|
||||||
_describe -t 'commands' "command" commands
|
|
||||||
}
|
}
|
||||||
|
|
||||||
(( $+functions[_conan_profile] )) ||
|
(( $+functions[_conan_profile] )) ||
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue