मैं आईओएस एप्लिकेशन के लिए सीआई पर्यावरण स्थापित करने का प्रयास कर रहा हूं। अब तक मैं कमांड लाइन से सही ढंग से परीक्षण का निर्माण का निर्माण करने के xcodebuild मिल गया है, लेकिन यह निष्पादित करने के लिए जब जेनकींस की कोशिश करता है मैं कंसोल में पढ़ा निम्नलिखित हो:जेनकींस प्रोजेक्ट फ़ोल्डर से xcodebuild नहीं चला सकते
Started by user anonymous
Building in workspace /Users/Shared/Jenkins/Home/jobs/Unit Tests/workspace
Working directory is /Users/iosappdev/Documents/Xcode Projects/rules.
[rules] $ /usr/bin/xcodebuild -version
FATAL: Cannot run program "/usr/bin/xcodebuild" (in directory "/Users/iosappdev/Documents/Xcode Projects/rules"): error=13, Permission denied
java.io.IOException: Cannot run program "/usr/bin/xcodebuild" (in directory "/Users/iosappdev/Documents/Xcode Projects/rules"): error=13, Permission denied
at java.lang.ProcessBuilder.start(ProcessBuilder.java:460)
at hudson.Proc$LocalProc.<init>(Proc.java:244)
at hudson.Proc$LocalProc.<init>(Proc.java:216)
at hudson.Launcher$LocalLauncher.launch(Launcher.java:707)
at hudson.Launcher$ProcStarter.start(Launcher.java:338)
at hudson.Launcher$ProcStarter.join(Launcher.java:345)
at au.com.rayh.XCodeBuilder.perform(XCodeBuilder.java:224)
किसी भी विचार? मैं जेनकींस के लिए बिल्कुल नया हूं लेकिन मैंने Google फू के साथ इस सवाल का जवाब देने के लिए अपना सर्वश्रेष्ठ प्रयास नहीं किया है। मैंने मूल रूप से जेनकिंस (मैन्युअल रूप से होमब्री) की मैन्युअल स्थापना के साथ इस समस्या में भाग लिया था, लेकिन हाल ही में ओएसएक्स इंस्टॉलर का उपयोग किया और इसके परिणामस्वरूप एक ही त्रुटि हुई।
मुझे लगता है कि जेनकिन्स/एक्सकोड की तुलना में यूनिक्स/लिनक्स/ओएसएक्स अनुमतियों के साथ इसका अधिक संबंध है, लेकिन निश्चित रूप से यह निर्धारित करने के लिए पर्याप्त विशेषज्ञता नहीं है।
संपादित
परियोजना निर्देशिका अनुमतियाँ 775.
मैं भी उपयोगकर्ता को स्वामित्व जेनकींस पर चलता है बदल रहा है की कोशिश की है करने के लिए निर्धारित किया है।
dev-imac:rules iosappdev$ sudo -u daemon xcodebuild
shell-init: error retrieving current directory: getcwd: cannot access parent directories: Permission denied
shell-init: error retrieving current directory: getcwd: cannot access parent directories: Permission denied
2012-03-21 11:05:46.161 xcodebuild[1411:70b] [MT] DVTAssertions: ASSERTION FAILURE in /SourceCache/IDEXcode3ProjectSupport/IDEXcode3ProjectSupport-1196/Xcode3Sources/XcodeIDE/Frameworks/DevToolsBase/pbxcore/Xcode3Model/Xcode3Project.m:266
Details: Assertion failed: [directoryPath isAbsolutePath]
Object: <Xcode3Project>
Method: +projectFilesInDirectory:
Thread: <NSThread: 0x40010a260>{name = (null), num = 1}
Hints: None
Backtrace:
0 0x000000010025b85f -[DVTAssertionHandler handleFailureInMethod:object:fileName:lineNumber:messageFormat:arguments:] (in DVTFoundation)
1 0x000000010025b6b5 _DVTAssertionFailureHandler (in DVTFoundation)
2 0x00000001011559bc +[Xcode3Project projectFilesInDirectory:] (in DevToolsCore)
3 0x00000001008a424b -[Xcode3CommandLineBuildTool _resolveInputOptions] (in Xcode3Core)
4 0x00000001008aa097 -[Xcode3CommandLineBuildTool run] (in Xcode3Core)
5 0x00000001001d7db6 (in xcodebuild)
6 0x00000001001d7c2c (in xcodebuild)
क्या आप वर्णन कर सकते हैं कि "सही" अनुमतियां क्या हैं/दिखती हैं? xcodebuild में 755 है जो मुझे लगता है कि किसी भी उपयोगकर्ता को किसी भी निर्देशिका से प्रोग्राम निष्पादित करने देगा। परियोजना निर्देशिका में 755 अनुमतियां भी हैं। जेनकिन्स उपयोगकर्ता डेमॉन उपयोगकर्ता है। – cesarislaw
मेरा वास्तव में क्या मतलब था कि आपको जेनकिन्स को उस उपयोगकर्ता के साथ चलाना चाहिए जो निर्देशिका का मालिक है। वैकल्पिक रूप से, इसे लिखने योग्य बनाओ। –
मैंने विभिन्न बिंदुओं पर दोनों की कोशिश की है। फिर से जांच की गई (775 पर निर्देशिका अनुमतियां सेट करें और डेमॉन उपयोगकर्ता के स्वामित्व) और अभी भी अनुमति प्राप्त करने से त्रुटि अस्वीकार हो गई है। – cesarislaw