1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/openeuler-clibcni

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
В этом репозитории не указан файл с открытой лицензией (LICENSE). При использовании обратитесь к конкретному описанию проекта и его зависимостям в коде.
Клонировать/Скачать
update-version.bash 3.5 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
wujing Отправлено 11.10.2021 06:02 e238f72
#######################################################################
##- @Copyright (C) Huawei Technologies Co., Ltd. 2019. All rights reserved.
# - clibcni licensed under the Mulan PSL v2.
# - You can use this software according to the terms and conditions of the Mulan PSL v2.
# - You may obtain a copy of Mulan PSL v2 at:
# - http://license.coscl.org.cn/MulanPSL2
# - THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND, EITHER EXPRESS OR
# - IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT, MERCHANTABILITY OR FIT FOR A PARTICULAR
# - PURPOSE.
# - See the Mulan PSL v2 for more details.
##- @Description: generate cetification
##- @Author: wujing
##- @Create: 2019-04-25
#######################################################################
#!/bin/bash
#
# usage
# ./update-version.bash
function update_release_notes()
{
LAST_RELEASE=$(git describe --tags --abbrev=0)
# Prepare proposed delease notes
rm -f release_notes.tmp
echo "$(date "+%Y-%m-%d") $USER release $1" >> release_notes.tmp
git log --first-parent --oneline $LAST_RELEASE.. | cut -d' ' -f 2- | sed 's/^/ - /' >> release_notes.tmp
echo >> release_notes.tmp
echo " dev stats:" >> release_notes.tmp
echo " -$(git diff --shortstat $LAST_RELEASE)" >> release_notes.tmp
echo -n " - contributors: " >> release_notes.tmp
git shortlog -ns --no-merges $LAST_RELEASE..HEAD | cut -d$'\t' -f 2 | sed -e ':a' -e 'N' -e '$!ba' -e 's/\n/, /g' >> release_notes.tmp
echo "#" >> release_notes.tmp
echo "#" >> release_notes.tmp
echo "#" >> release_notes.tmp
echo >> release_notes.tmp
cat release_notes >> release_notes.tmp
grep -v '^#' release_notes.tmp | sed '/./,$!d' > release_notes
rm -rf release_notes.tmp
}
topDir=$(git rev-parse --show-toplevel)
specfile="${topDir}/clibcni.spec"
CMakefile="${topDir}/CMakeLists.txt"
old_version=$(cat ${specfile} | grep "%global" | grep "_version" | awk {'print $3'})
first_old_version=$(cat ${specfile} | grep "%global" | grep "_version" | awk {'print $3'} | awk -F "." {'print $1'})
second_old_version=$(cat ${specfile} | grep "%global" | grep "_version" | awk {'print $3'} | awk -F "." {'print $2'})
third_old_version=$(cat ${specfile} | grep "%global" | grep "_version" | awk {'print $3'} | awk -F "." {'print $3'})
read -p "Which level version do you want to upgrade?[1/2/3/r/N](default:N) select:" choice
if [[ ! -n "${choice}" || ${choice} == "N" ]]; then
echo "The version number has not been modified, it is still ${old_version}"
exit 0
fi
if [[ ${choice} -eq "1" ]]; then
first_old_version=$(($first_old_version+1))
second_old_version="0"
third_old_version="0"
elif [[ ${choice} -eq "2" ]]; then
second_old_version=$(($second_old_version+1))
third_old_version="0"
elif [[ ${choice} -eq "3" ]]; then
third_old_version=$(($third_old_version+1))
fi
new_version=${first_old_version}.${second_old_version}.${third_old_version}
if [[ ${choice} -ne "r" ]]; then
update_release_notes "$new_version"
fi
echo "The version number has been modified: ${old_version} => ${new_version}"
old_release=$(cat ${specfile} | grep "%global" | grep "_release" | awk {'print $3'})
new_release=$((old_release+1))
echo "The relase version has been modified, it is ${new_release}"
sed -i "s/set(CLIBCNI_VERSION \"${old_version}\")/set(CLIBCNI_VERSION \"${new_version}\")/g" ${CMakefile}
sed -i "s/^\%global _version ${old_version}$/\%global _version ${new_version}/g" ${specfile}
sed -i "s/^\%global _release ${old_release}$/\%global _release ${new_release}/g" ${specfile}
echo "The release number has been modified: ${old_release} => ${new_release}"

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/openeuler-clibcni.git
git@api.gitlife.ru:oschina-mirror/openeuler-clibcni.git
oschina-mirror
openeuler-clibcni
openeuler-clibcni
master