加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
set_wb_version 3.31 KB
一键复制 编辑 原始数据 按行查看 历史
Milosz Bodzek 提交于 2016-10-12 08:44 . fixed set_wb_version script
#!/bin/bash
version=$1
major=`echo $version|cut -d. -f1`
minor=`echo $version|cut -d. -f2`
release=`echo $version|cut -d. -f3`
release_number=`echo $version|cut -d. -f3|sed -e 's/\([0-9]*\).*/\1/'`
build=`echo $version|cut -d. -f4`
release_type=$2
edition_name=$3
license_type=$4
echo "----------------------------------------------------"
echo "Setting workbench version"
echo "Version : $1"
echo "Release Type : $2"
echo "Edition : $3"
echo "License : $4"
echo "Parsed Version: $major.$minor.$release.$build"
echo "----------------------------------------------------"
if test "$build" = ""; then
build=0
fi
if test "$version" = ""; then
echo "$0 <major.minor.release[.build]> [<release-type>]"
exit 1
fi
if test x$release_type != x; then
dot_release_type=.$release_type
space_release_type=" $release_type"
else
dot_release_type=
space_release_type=
fi
echo "Updating wb_version.h"
sed -e "s/#define APP_MAJOR_NUMBER.*/#define APP_MAJOR_NUMBER $major/" \
-e "s/#define APP_MINOR_NUMBER.*/#define APP_MINOR_NUMBER $minor/" \
-e "s/#define APP_RELEASE_NUMBER.*/#define APP_RELEASE_NUMBER $release_number/" \
-e "s/#define APP_RELEASE_TYPE.*/#define APP_RELEASE_TYPE \"$release_type\"/" \
-e "s/#define APP_BUILD_NUMBER.*/#define APP_BUILD_NUMBER $build/" \
-i.bak backend/wbprivate/workbench/wb_version.h
if test "$edition_name" != "" -a "$license_type" != ""; then
sed -e "s/#define APP_LICENSE_TYPE.*/#define APP_LICENSE_TYPE \"$license_type\"/" \
-e "s/#define APP_EDITION_NAME.*/#define APP_EDITION_NAME \"$edition_name\"/" \
-i.bak backend/wbprivate/workbench/wb_version.h
fi
echo "Updating AssemblyInfo.cs"
sed -e "s/\[assembly: AssemblyVersion(.*)\]/[assembly: AssemblyVersion(\"$major.$minor.$release_number\")]/"\
-e "s/\[assembly: AssemblyFileVersion(.*)\]/[assembly: AssemblyFileVersion(\"$major.$minor.$release_number\")]/" \
-e "s/\[assembly: AssemblyReleaseType(.*)\]/[assembly: AssemblyReleaseType(\"$release_type\")]/" \
-i.bak frontend/windows/MySQLWorkbench/Properties/AssemblyInfo.cs
if test "$edition_type" != ""; then
sed -e "s/\[assembly: AssemblyConfiguration(.*)\]/[assembly: AssemblyConfiguration(\"$edition_type\")]/"\
-i.bak frontend/windows/MySQLWorkbench/Properties/AssemblyInfo.cs
fi
echo "Updating Info.plist"
sed -e "/<key>CFBundleShortVersionString<\/key>/N;s/.*\n.*<\/string>/ <key>CFBundleShortVersionString<\/key>@ <string>$major.$minor.$release$dot_release_type<\/string>/" -e 'y/@/\n/' -i.bak Info.plist
echo "Updating mysql-workbench.spec.in"
sed -e "s/--define='version.*'/--define='version $major.$minor.$release_number'/" -i.bak build/mysql-workbench.spec.in
# check if build/debian.in/changelog needs update
echo "Checking if build/debian.in/changelog needs updating"
if ! grep $major.$minor.$release- build/debian.in/changelog; then
echo "build/debian.in/changelog needs update, adding a new entry"
cat <<EOF > build/debian.in/changelog.new
mysql-workbench-@edition@ ($major.$minor.$release$dot_release_type-1@distrov@) @distro@; urgency=low
* New release
-- `git config user.name` <`git config user.email`> `LANG=en_EN date +"%a, %d %b %Y %T %z"`
EOF
cat build/debian.in/changelog >> build/debian.in/changelog.new
mv -f build/debian.in/changelog.new build/debian.in/changelog
head -10 build/debian.in/changelog
fi
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化