4

Jenkins を使用して CI システムをセットアップしており、ビルド時に agvtool を使用してマーケティングおよび技術バージョンをバンプおよび設定しています。

ビルド時にバージョン管理を設定することに加えて、.plist にいくつかのカスタム値を設定すると非常に便利です。

これは可能ですか?

4

1 に答える 1

10

「事前アクション」オプションを利用してスクリプトを実行することにより、ビルド時に Info.plist を編集できます。

ここに画像の説明を入力

UserDefinedVersionNumber という名前の Plist 内のキーをインクリメントするスクリプトの例を次に示します。

#!/bin/sh

#Grabs info from plist
plist=$SRCROOT"/"$INFOPLIST_FILE
currentBuild=`/usr/libexec/PlistBuddy -c "Print :UserDefinedVersionNumber" "$plist"`

#And changes it before writing out the plist again
if [ -z "$currentBuild" ]
then
    currentBuild=1
    /usr/libexec/PlistBuddy -c "Add :UserDefinedVersionNumber string $currentBuild" "$plist"

else
    currentBuild=$(($currentBuild + 1));
    /usr/libexec/PlistBuddy -c "Set :UserDefinedVersionNumber $currentBuild" "$plist"
fi

その小さなボックスにスクリプトを直接入力できるはずですが、特に共有スクリプトの場合、スクリプトの編集と保守が面倒になる可能性があることがわかりました。

于 2012-12-03T19:22:41.560 に答える