sh plistとipaをつくってscpで上传するやつ
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sh plistとipaをつくってscpで上传するやつ相关的知识,希望对你有一定的参考价值。
_usage() {
cat << _USAGE_
usage: upload_ipa <config_json> <version>
This program depends on the following commands
jq
ipa (shenzhen)
and needs config.json like this.
{
"plist":"project/Info.plist",
"ipaurl":"https://path/to/project.ipa",
"title":"title_in_plist",
"bundle_id":"jp.co.foo.bar",
"scp": {
"dest": "host_name_or_ip:hostpath", // e.g. "168.33.192.12:~/ipas/"
"user": "username",
"identity_file": "/Users/myuser/.ssh/id_rsa"
}
}
_USAGE_
}
_conf() {
echo $(jq "$1" $config_file | sed -e 's/[" ]//g')
}
_require() {
type $1 >/dev/null 2>&1
echo $?
}
if [[ $# -ne 2 || $(_require "jq") -eq 1 || $(_require "ipa") -eq 1 ]]
then
_usage
exit
fi
if [[ ! -f $1 ]]
then
_usage
exit
fi
_xcodeprojfile=$(ls | grep xcodeproj)
name=${_xcodeprojfile%.*}
config_file=$1
version=$2
ipaurl=$(_conf ".ipaurl")
title=$(_conf ".title")
bundle_id=$(_conf ".bundle_id")
scp_dest=$(_conf ".scp.dest")
scp_user=$(_conf ".scp.user")
scp_identity_file=$(_conf ".scp.identity_file")
dest_dirname="${name}_${version}"
plist="${name}.plist"
ipa_file="${name}.ipa"
echo "===> generate plist file for download"
cat << EOF > $plist
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>items</key>
<array>
<dict>
<key>assets</key>
<array>
<dict>
<key>kind</key>
<string>software-package</string>
<key>url</key>
<string>$ipaurl</string>
</dict>
</array>
<key>metadata</key>
<dict>
<key>bundle-identifier</key>
<string>$bundle_id</string>
<key>kind</key>
<string>software</string>
<key>title</key>
<string>$title</string>
</dict>
</dict>
</array>
</dict>
</plist>
EOF
echo "===> create ipa file"
ipa build
rm ${name}.app.dSYM.zip
echo "===> create tmp dir and mv ipa & plist"
mkdir $dest_dirname
mv $ipa_file ${dest_dirname}/
mv $plist ${dest_dirname}/
echo "===> scp to remote host"
scp -r -i $scp_identity_file $dest_dirname $scp_user@$scp_dest
echo "===> rm tmp dir"
rm -r $dest_dirname
以上是关于sh plistとipaをつくってscpで上传するやつ的主要内容,如果未能解决你的问题,请参考以下文章
markdown 轨道を开発する环境を何度でもさくっと用意できるように
csharp Edge.js(https://github.com/tjanczuk/edge)をつかってC#でNode.jsのHTTPサーバをホストするサンプルコード.nugetでEdge.jsをイ
ruby つくって学ぶプログラミング言语Ruby中的方案
ruby つくって学ぶプログラミング言语Ruby中的方案
ruby つくって学ぶプログラミング言语Ruby中的方案
csharp モジュラス10 /ウェイト3のチェックデジットを取得する。てきとーにつくったもの。