2013-01-31 125 views
6

में लॉग इन करता है क्या कोई उपयोगकर्ता दास का उपयोग शुरू करते समय Windows गुलाम ऑफ़लाइन चिह्नित करने के लिए जेनकींस को कॉन्फ़िगर करने का कोई तरीका है?उपयोगकर्ता जेनकिन्स दास को ऑफ़लाइन रखें जब उपयोगकर्ता विंडोज

संपादित करें: मेरा उपयोग शुरू करने से मेरा उपयोगकर्ता लॉग ऑन है।

+0

मुझे लगता है कि आपको "गुलाम का उपयोग शुरू करना" परिभाषित करने की आवश्यकता है: क्या इसका मतलब है कि उपयोगकर्ता लॉग इन है? एक माउस ले जाया गया? सीपीयू उपयोग में वृद्धि हुई? – Slav

उत्तर

1

एक संभावित समाधान Slave Prerequisites Plugin का उपयोग करना है। यह एक स्क्रिप्ट के मामले में काम आवश्यक शर्तें जोड़ने की अनुमति देता:

एक स्क्रिप्ट काम उन पर चलने से पहले गुलाम नोड पर चलाने के लिए सेट करें। तो एक गैर 0 स्थिति लौटने, नोड काम निष्पादन के लिए वीटो लगा हो जाएगा, और किसी अन्य नोड चुना जाएगा, या तो काम वापस अपने आवश्यक शर्तें मैच के लिए कोई उपलब्ध नोड के लिए इंतज़ार कर कतार निर्माण करने के लिए मिल जाएगा।

निम्नलिखित विंडोज़ बैच स्क्रिप्ट के साथ

:

python.exe -c "import psutil; assert len(psutil.get_users())==0" 

आप psutil प्राप्त करने के लिए होगा, लेकिन आप शुद्ध विंडोज शेल के साथ कुछ शिल्प के लिए सक्षम हो सकता है। सबसे स्पष्ट नुकसान यह है कि हम उपलब्ध विकल्पों के उपयोग के बजाय, कई प्रणालियों के माध्यम से जा रहे हैं।

+1

एक और जेनकिन्स मेरे जवाब से -नेटिव समाधान। +1 – VonC

1

Jenkins slave can be registered as a Windows service के बाद से, यह सुनिश्चित करना होगा कि उपयोगकर्ता पर वर्तमान में कोई लॉग इन नहीं है।

एक एक Windows कार्य, regularely चल रहा है, जो यदि कोई उपयोगकर्ता पर लॉग ऑन है की जाँच करेगा गर्भ धारण कर सकता है, और:

  • अगर वहाँ एक है, सेवा बंद कर देंगे।
  • यदि नहीं, (पुनः) एक ही जेनकींस दास एजेंट विंडोज सेवा शुरू करें।

लॉग इन करने के लिए लॉग इन करने के लिए, "From WindowsService how can I find currently logged in user from C#?" एक तरफ देखें।

+0

इसके लिए एक अलग मतदान कार्य चलाना आवश्यक है, जो हमेशा डेटा के साथ थोड़ा देर हो जाएगा। उपयोगकर्ता द्वारा लॉग ऑन किए जाने पर जोर देकर प्रत्येक कार्य को शुरू कर सकते हैं। मैं प्लगइन के मामले में और सोच रहा था जो एक नोड पर एक मॉनिटर जोड़ता है, जैसे https://wiki.jenkins-ci.org/display/JENKINS/Distributed+builds#Distributedbuilds-Nodemonitoring – Oleksiy

+0

@Oleksiy तो आपके नोड मॉनिटर को निष्पादित करें http : //social.technet.microsoft.com/Forums/en/ITCG/thread/701515b3-9af3-49f4-b624-09a083cbed6b या http://technet.microsoft.com/en-us/sysinternals/bb897545 – VonC