2016-09-06 4 views
7

निष्पादित किया जा रहा है। यदि मैं एक निश्चित उपयोग केस पास करता हूं तो मैं बांस के निर्माण (जो वर्तमान में चल रहे हैं) को रोकने की कोशिश कर रहा हूं।एटलसियन बांस एक ऐसे निर्माण को रोकता है जो वर्तमान में चल रहा है/

मेरे पास उन बिल्डों की एक सूची है जिन्हें मुझे रोकने की आवश्यकता है। अब, मैं निर्माण के शीर्ष दाएं (छवि देखें) पर "स्टॉप बिल्ड" बटन के समान निर्माण (बिल्डों) को रोकने के लिए एक आरईएसटी अनुरोध भेजना चाहता हूं। enter image description here

आरईएसटी एपीआई दस्तावेज में मैंने केवल यह देखा है जो केवल कतारबद्ध होने पर ही निर्माण को रोकता है।

https://docs.atlassian.com/bamboo/REST/3.3-SNAPSHOT/

/queue/{projectKey}-{buildKey}-{buildNumber} 

बंद करो निष्पादन का निर्माण, हालांकि केवल तभी निर्माण अभी तक शुरू नहीं किया गया है - इसलिए यदि निर्माण कतार में इंतजार कर रहा है। यदि निर्माण अब कतार में मौजूद नहीं है, तो विधि का कोई प्रभाव नहीं पड़ता है।

मुझे रनिंग रुकने का एक तरीका चाहिए। कोई भी सहायताकाफी प्रशंसनीय होगी।

उत्तर

1

मैं अपने स्वयं के स्वचालन सर्वर के माध्यम से रोकने के लिए आवश्यक बांस के निर्माण के नामों को समझने में सक्षम था। फिर मैं स्टॉपप्लान बटन कोड को सीधे मारकर इसे प्राप्त करने में सक्षम था। यहां मैंने लिखा रूबी विधि है:

# Get request to stop a build located at the given url 
def stop_bamboo_build_request(build_key) 
    logger.debug "Build Key: #{build_key}" 
    uri = URI("#{Rails.configuration.bamboo_base_url}/build/admin/stopPlan.action?planKey=#{build_key}") 

    # Create client 
    http = Net::HTTP.new(uri.host, uri.port) 
    http.use_ssl = true 
    http.verify_mode = OpenSSL::SSL::VERIFY_PEER 

    # Create Request 
    req = Net::HTTP::Get.new(uri) 
    # Add Auth 
    req.basic_auth(Rails.configuration.bamboo_username, Rails.configuration.bamboo_password) 

    # Add headers 
    req.add_field "X-Atlassian-Token", "no-check" 

    # Fetch Request 
    res = http.request(req) 
    logger.debug "Response HTTP Status Code: #{res.code}" 
    logger.debug "Response HTTP Response Body: #{res.body}" 
rescue StandardError => e 
    logger.debug "HTTP Request failed (#{e.message})" 
end 
संबंधित मुद्दे

 संबंधित मुद्दे