2013-10-04 6 views
1

나는 내 안드로이드 애플 리케이션을 구축하기 위해 장소에 자동화 된 시스템을 얻으려고 노력하고 하루 종일 고민하고 누군가가 나를 도울 수있는 또는 올바른 방향으로 나를 가리켜 주시면 감사하겠습니다. Git에서 최신 버전을 가져 와서 빌드하고 Testflight에 APK를 보내는 쉘 스크립트를 작성했습니다. 이 스크립트는 직접 실행하면 제대로 작동하지만 지정된 간격으로 실행하도록 cronjob을 설정하면 다음 오류가 발생합니다.Buildfile : build.xml이 없습니다! - 개미 + cronjob와 안드로이드 애플 리케이션

Buildfile : build.xml이 없습니다!

#!/bin/sh 

API_TOKEN="" 
TEAM_TOKEN="" 
NOTES=$(<Release.txt) 
APP_NAME="MainActivity-release.apk" 

#Reset git 
echo resetting 
git reset --hard 

echo pull latest 
git pull 

echo configure for build 
android update project -p . 

echo build api 
ant release 

/usr/bin/curl "http://testflightapp.com/api/builds.json " -F [email protected]"bin/$APP_NAME" -F api_token="$API_TOKEN" -F team_token="$TEAM_TOKEN" -F notes="$NOTES" -# 

내 홈 디렉토리에이 쉘 스크립트 파일을 이동 및 디렉토리를 변경

cd ~/Documents/workspace/AutomatedAndroidApp

을 사용하고 수동으로 스크립트를 시도하고 일했다. 그러나 다시 나는 cronjob과 함께 그것을 실행하면 같은 오류가 발생했습니다.

는 또한

ant -file ~/Documents/workspace/AutomatedAndroidapp/build.xml 

과 개미 - 파일 경로를 설정하려고했지만 운이 없었다. 나는 이클립스에서 항상 도구를 사용했기 때문에 오늘 전에는 내 앱을 만드는 데 개미를 사용하지 않았다. 그래서 나는 조금 잃어 버렸고 어떤 도움을 주겠다!

+1

크론 작업을 실행하는 사용자에게 사용 가능한 사용자 및 env var를 확인하십시오. – ben75

답변

1

@ ben75에서 제안한 것처럼 이것은 수동으로 실행하는 데 사용하는 사용자 계정과 다른 cronjob 사용자의 문제인 것으로 보입니다. 따라서 ~은 잘못된 사용자의 홈 디렉토리로 해석됩니다. 대신 전체/절대 경로를 사용하고 -file 스위치로 ant에 전달하십시오.

+0

오늘 제안을 시도해보십시오! 감사합니다 – Jerry

+0

고마워요! Y'all은 올바른 방향으로 나를 가리켰다. 나는 그것을 고칠 수 있었다 :) 사용자는 동일했지만 PATH 변수가 설정되지 않았고 잘못된 디렉토리에서 실행되었다. – Jerry

+0

당신이 궤도에 돌아와서 기뻐요! – joescii