Common get_revision function.

This commit is contained in:
Vasily Okunev 2016-08-25 20:13:50 +03:00
parent 44d096f809
commit 557a313275
4 changed files with 19 additions and 28 deletions

View File

@ -1,11 +1,6 @@
#!/bin/bash #!/bin/bash
# отрезает суффикс от тегов мобильной метрики, чтобы привести к числу source "$(dirname "$0")/get_revision_lib.sh"
# фильтрует теги, не являющиеся релизными тегами
function tag_filter
{
sed 's/-mobmet//g' | grep -E "^[0-9]{5,8}$"
}
if [[ $# -ne 1 ]] && [[ $# -ne 2 ]]; then if [[ $# -ne 1 ]] && [[ $# -ne 2 ]]; then
echo "usage: create_revision.sh out_file_path [--use_dbms_tcp_protocol_version]" echo "usage: create_revision.sh out_file_path [--use_dbms_tcp_protocol_version]"
@ -30,21 +25,14 @@ then
" > $out_file " > $out_file
else else
# GIT
git fetch --tags;
# берем последний тэг из текущего коммита # берем последний тэг из текущего коммита
revision=$(git tag --points-at HEAD 2> /dev/null | tag_filter | tail -1) revision=$(get_revision)
# или ближайший тэг если в данном комите нет тэгов
if [[ "$revision" = "" ]]; then
revision=$( ( git describe --tags) | cut -d "-" -f 1 | tag_filter )
fi
if [[ "$revision" == "" ]]; then if [[ "$revision" == "" ]]; then
# в крайнем случае выбирем любую версию как версию демона # в крайнем случае выбирем любую версию как версию демона
# нужно для stash или неполноценной копии репозитория # нужно для stash или неполноценной копии репозитория
revision="77777" revision="77777"
fi fi
revision=$(echo $revision | sed 's/\([0-9]*\)[^0-9]*/\1/')
echo " echo "
#ifndef REVISION #ifndef REVISION

View File

@ -0,0 +1,10 @@
# Filter non-release tags
function tag_filter {
grep -E "^v1\.1\.[0-9]{5}-testing$"
}
# Get last revision number
function get_revision {
git fetch --tags
git tag | tag_filter | tail -1 | sed 's/^v1\.1\.\(.*\)-testing$/\1/'
}

View File

@ -1,6 +1,6 @@
#!/bin/bash #!/bin/bash
source release_lib.sh source "$(dirname "$0")/release_lib.sh"
CONTROL=debian/control CONTROL=debian/control
CHLOG=debian/changelog CHLOG=debian/changelog

View File

@ -1,8 +1,4 @@
# фильтрует теги, не являющиеся релизными тегами source "$(dirname "$0")/libs/libcommon/src/get_revision_lib.sh"
function tag_filter
{
grep -E "^v1\.1\.[0-9]{5}-testing$"
}
function add_daemon_impl { function add_daemon_impl {
local daemon=$1 local daemon=$1
@ -58,10 +54,7 @@ function make_control {
# Генерируем номер ревизии. # Генерируем номер ревизии.
# выставляются переменные окружения REVISION, AUTHOR # выставляются переменные окружения REVISION, AUTHOR
function gen_revision_author { function gen_revision_author {
# GIT REVISION=$(get_revision)
git fetch --tags
REVISION=$(git tag | tag_filter | tail -1 | sed 's/^v1\.1\.\(.*\)-testing$/\1/')
if [[ $STANDALONE != 'yes' ]] if [[ $STANDALONE != 'yes' ]]
then then