63 lines
1.5 KiB
Plaintext
63 lines
1.5 KiB
Plaintext
|
#!/bin/bash
|
||
|
# -*- coding: utf-8 mode: sh -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
|
||
|
source "$(dirname -- "$0")/../load.sh" || exit 1
|
||
|
require: git
|
||
|
|
||
|
DEVELOP=develop
|
||
|
FEATURE=wip/
|
||
|
RELEASE=release-
|
||
|
MAIN=master
|
||
|
HOTFIX=hotfix-
|
||
|
source "$MYDIR/${MYNAME%.sh}.conf"
|
||
|
|
||
|
function init_action() {
|
||
|
:
|
||
|
}
|
||
|
|
||
|
function list_action() {
|
||
|
:
|
||
|
}
|
||
|
|
||
|
function release_action() {
|
||
|
:
|
||
|
}
|
||
|
|
||
|
chdir=
|
||
|
Remote=
|
||
|
action=list
|
||
|
args=(
|
||
|
"faire une nouvelle release"
|
||
|
" -rv VERSION"
|
||
|
-d:,--chdir:BASEDIR chdir= "répertoire dans lequel se placer avant de lancer les opérations"
|
||
|
-o:,--remote Remote= "++spécifier le remote vers lequel pousser les branches"
|
||
|
--init action=init "++initialiser les branches $DEVELOP et $MAIN"
|
||
|
--list action=list "lister les modifications qui seraient intégrées dans la release"
|
||
|
-r,--release action=release "faire la release"
|
||
|
-v:,--version Version= "spécifier la version de la release"
|
||
|
)
|
||
|
parse_args "$@"; set -- "${args[@]}"
|
||
|
|
||
|
if [ -n "$chdir" ]; then
|
||
|
cd "$chdir" || die
|
||
|
fi
|
||
|
|
||
|
git_check_gitvcs || die "$(ppath "$(pwd)" ~): ce répertoire n'est pas un dépôt git"
|
||
|
setx branch=git_get_branch
|
||
|
case "$branch" in
|
||
|
"$DEVELOP") current=develop;;
|
||
|
"$FEATURE"*) current=feature;;
|
||
|
"$RELEASE"*) current=release;;
|
||
|
"$MAIN") current=main;;
|
||
|
"$HOTFIX"*) current=hotfix;;
|
||
|
*) ewarn "$branch: branche courante non reconnue";;
|
||
|
esac
|
||
|
|
||
|
case "$action" in
|
||
|
init) init_action "$@";;
|
||
|
list) list_action "$@";;
|
||
|
release)
|
||
|
[ -n "$Version" ] || die "Vous devez spécifier la version de la release"
|
||
|
release_action "$@"
|
||
|
;;
|
||
|
esac
|