मैं क्लासिक टेम्पलेट के सीआई/सीडी को स्वचालित करने की कोशिश कर रहा हूं।

दस्तावेज़ीकरण के बाद GCS पर बनाया और चरणबद्ध टेम्पलेट

कोड परिवर्तन (बग फिक्स आदि) पर, मैं मौजूदा नौकरी को खत्म करने और उसी नाम से एक नई नौकरी बनाने का इरादा रखता हूं।

निकासी मौजूदा नौकरी के लिए, मुझे JOB_ID चाहिए, लेकिन मेरे पास है केवल JOB_NAME जिसका उपयोग मैंने कार्य के निर्माण के दौरान किया था।

मुझे दिखाई देने का एकमात्र तरीका list कमांड का उपयोग करना और प्राप्त करना है सक्रिय कार्य, कार्य आईडी निकालने के लिए आउटपुट को ड्रेन कमांड में उपयोग करने के लिए संसाधित करें। यह काफी गोल चक्कर लगता है। क्या Job_Name के साथ नौकरी खत्म करने का कोई तरीका नहीं है या कम से कम JOB_NAME से JOB_ID प्राप्त करें।

0
Vinod Jayachandran 7 अक्टूबर 2020, 09:14

2 जवाब

सबसे बढ़िया उत्तर

डेटा प्रवाह कार्य को अपडेट करने के लिए GCP REST API प्रदान करता है . मौजूदा नौकरी को स्पष्ट रूप से खत्म करने और नई नौकरी बनाने की कोई आवश्यकता नहीं है।

आप इसे पायथन कोड के माध्यम से भी कर सकते हैं। पायथन कोड के लिए मेरा GIST देखें।

0
Vinod Jayachandran 9 अक्टूबर 2020, 12:28

जब आप बनाने के लिए gcloud dataflow jobs run कमांड का इस्तेमाल करते हैं नौकरी, इस आदेश को चलाने से प्रतिक्रिया JOB_ID निम्नलिखित तरीके से वापस आनी चाहिए (उदाहरण के लिए यदि आप बैच नौकरी बनाते हैं):

    id: 2016-10-11_17_10_59-1234530157620696789
    projectId: YOUR_PROJECT_ID
    type: JOB_TYPE_BATCH

वह और gcloud dataflow jobs list का उपयोग करना, जैसा कि आप उल्लेख कर रहे हैं ऑटोमेशन का उपयोग करके JOB_NAME और JOB_ID को जोड़ने का सीधा तरीका होगा। पायथन लिपि के साथ इसे प्राप्त करने का तरीका इस अन्य post< में वर्णित है। /ए> समुदाय में।

1
Daniel Ocando 7 अक्टूबर 2020, 09:48