Bitrise -如何从Git Tag设置iOS版本号和版本

3mpgtkmj  于 11个月前  发布在  iOS
关注(0)|答案(1)|浏览(155)

全新的Bitrise和CI.我的目标是触发构建和发布到App Store Connect当我在我的仓库中标记一个构建.我有触发工作如预期.我想知道的是,如果它是可能的提取版本和构建号从BITRISE_GIT_TAG环境变量.我想标记一个提交GH与DEV v1.0.3- 22,然后运行一个设置Xcode项目构建号的工作流步骤,我将构建号设置为22,版本号设置为1.0.3。这反映了我们后端的CI/CD流程。
我怎么能这样做呢?

7xzttuei

7xzttuei1#

我最终处理这个问题的方法是用下面的代码添加一个自定义脚本步骤。它看起来有点黑客,但一直工作可靠。

#!/usr/bin/env bash
# fail if any commands fails
set -e
# make pipelines' return status equal the last command to exit with a non-zero status, or zero if all commands exit successfully
set -o pipefail
# debug log
set -x

# write your script here
tag="$BITRISE_GIT_TAG"
app_version="0.0.0"
build_number="1"

if [ ! -z  "$tag" ] ; then 
    echo $tag

    pattern='[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}'

    if [[ $tag =~ $pattern ]]; then 
        app_version=${BASH_REMATCH[0]}
    else echo 'App Version not found'; 
    fi

    build_number=${tag##*-}

    envman add --key app_build_number --value "$build_number"
    envman add --key app_version --value "$app_version"
fi

字符串

相关问题