gpt4 book ai didi

ios - 从 Jenkins 中获取 CFBundleVersion 以将其用作变量,例如 ${APP_VERSION}

转载 作者:行者123 更新时间:2023-11-29 10:28:39 26 4
gpt4 key购买 nike

我想做的是能够为 Jenkins 正在构建的提交添加一个标签。现在我用 Jenkins 内部版本号标记提交,但我还想添加在前面的 Info.plist CFBundleVersion 中列出的应用程序版本。

我想知道的是,我如何使用 Jenkins 或其他方式获取该值并能够将其用作 Jenkins 中的参数/变量?

我看到过使用 plistbuddy 来设置这个值的引用资料,所以我假设有一种方法可以使用它来获得相同的值。虽然我不知道如何以及如何将它带到我可以在 Jenkins 中使用它的地方。


为了进一步说明,我在 Jenkins 中使用 Git Publisher 创建标签并使用这种格式推送它

jenkinsbuild-$BUILD_NUMBER

这会在 git 中的提交上产生这样的标记 - jenkinsbuild-303

假设我的应用程序当前版本为 3.5,我想要的是一个读取 - jenkinsbuild-3.5-303 的标签

最佳答案

我设法从@agy 链接到的答案中拼凑出一个解决方案。这是我所做的:

  1. 在 Jenkins 配置的构建部分,我将以下两行添加到 Xcode 步骤之后的“Execute Shell”步骤:

    APP_VERSION=$(/usr/libexec/PlistBuddy -c "Print :CFBundleShortVersionString" "path to your plist")    
    echo APP_VERSION=$APP_VERSION > appversion.properties;
  2. 之后,我添加了“注入(inject)环境变量”步骤(我认为这是 EnvInject 插件的一部分),我将“appversion.properties”添加到属性文件路径 字段。

  3. 完成此操作后,APP_VERSION 现在可用作后续 shell 命令步骤中的环境变量。

关于ios - 从 Jenkins 中获取 CFBundleVersion 以将其用作变量,例如 ${APP_VERSION},我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30846017/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com