Tomcat
server.xml
<Host><Context docBase="eSpaceVersions" path="/eSpaceVersions" /></Host>
web.xml
<!-- ipa 下載 配置 -->
<mime-mapping>
<extension>ipa</extension>
<mime-type>application/vnd.iphone</mime-type>
</mime-mapping>
<!-- apk 下載 配置 -->
<mime-mapping>
<extension>apk</extension>
<mime-type>application/vnd.android.package-archive</mime-type>
</mime-mapping>
tomcat_users.xml
<role rolename="manager"/>
<role rolename="admin"/>
<user username="wahaha" password="123" roles="admin,manager"/>
#arch=i386
arch=armv7
sdk=iphone$device$sdkVersion
#ip="/sbin/ifconfig -a|grep inet|grep -v 127.0.0.1|grep 10.60.*|grep -v inet6|awk '{print $2}'"
outputDir=/Users/xxx/Documents/apache-tomcat-6.0.16/webapps/eSpaceVersions
remoteRootDir=http://10.60.6.100:8080/eSpaceVersions
logDir=$outputDir/log
logPath=$logDir/build_log
ipaDir=$outputDir/ipa/$BUILD_ID
ipaPath=$ipaDir/$projectName.ipa
remoteIpaPath=$remoteRootDir/ipa/$BUILD_ID/$projectName.ipa
srcPath=${WORKSPACE}/$projectName
MainfestFile=$ipaDir/manifest.plist
InstallFile=$ipaDir/install.html
mkdir -p $outputDir
mkdir -p $logDir
mkdir -p $ipaDir
cd $srcPath
#clean
echo "1. Clean project start. Command:xcodebuild clean -sdk $sdk -configuration $configuration" >>$logPath 2>&1
xcodebuild clean -sdk $sdk -configuration $configuration >>$logPath 2>&1
echo " Clean project end" >>$logPath 2>&1
#security unlock-keychain
#build
echo "2. Build project start. Command:xcodebuild -sdk $sdk -configuration $configuration" >>$logPath 2>&1
xcodebuild -sdk $sdk -configuration $configuration CODE_SIGN_IDENTITY="iPhone Distribution: Sinotrans Guangdong Co., Ltd."
echo " Build project end" >>$logPath 2>&1
#check
if [ ! -d ./build/$configuration-iphone$device/ ]
then
echo "build failed. " >>$logPath 2>&1
gzip -9 -c $logPat > log.gz
(uuencode log.gz log.gz)|mail -s "RCS-iPhone BUILD FAILED" [email protected] >>$logPath 2>&1
exit 0
fi
#package
echo "3. Package app start." >>$logPath 2>&1
mkdir -p $ipaDir/Payload
cp -r ./build/$configuration-iphone$device/$projectName.app $ipaDir/Payload
cp ./build/${projectName}.build/$configuration-iphone$device/${projectName}.build/${projectName}-LinkMap-normal-${arch}.txt $ipaDir
cd $ipaDir
zip -r ${projectName}.ipa Payload iTunesArtwork >>$logPath 2>&1
rm -fr Payload
echo " Package app end." >>$logPath 2>&1
#create mainfest.plist
echo "4. Create mainfest.plist file begin" >> $logPath 2>&1
touch $MainfestFile
echo "{" >> $MainfestFile
echo " items = " >> $MainfestFile
echo " ({ " >> $MainfestFile
echo " assets =" >> $MainfestFile
echo " (" >> $MainfestFile
echo " {" >> $MainfestFile
echo " kind = \"software-package\";" >> $MainfestFile
echo " url = \"$remoteIpaPath\";" >> $MainfestFile
echo " }," >> $MainfestFile
echo " {" >> $MainfestFile
echo " kind = \"display-image\";" >> $MainfestFile
echo " needs-shine = YES;" >> $MainfestFile
echo " url = \"$remoteRootDir/display.png\";" >> $MainfestFile
echo " }," >> $MainfestFile
echo " );" >> $MainfestFile
echo " metadata =" >> $MainfestFile
echo " {" >> $MainfestFile
echo " bundle-identifier = \"com.xxx\";" >> $MainfestFile
echo " bundle-version = \"1.0\";" >> $MainfestFile
echo " kind = software;" >> $MainfestFile
echo " subtitle = Apple;" >> $MainfestFile
echo " title = \"eSpace iPhone\";" >> $MainfestFile
echo " };" >> $MainfestFile
echo " });" >> $MainfestFile
echo "}" >> $MainfestFile
echo " Create mainfest.plist file end " >> $logPath 2>&1