2012-07-14 4 views
5

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

हालांकि अब हमारे पास हमारे सीआई बॉक्स सेटअप (टीमसिटी) हैं, मुझे आईआईएस में वेबसाइट के सेटअप को स्वचालित करने की आवश्यकता है, ऐसे में कोई भी रेक कार्य है जो आईआईएस पर वेबसाइट बना सकता है? मुझे थोड़ी देर पहले देखना याद है लेकिन इसे नहीं मिला।

मैं आईआईएस 6 मेटा स्क्रिप्टिंग सामान (इसके सटीक नाम को याद नहीं कर सकता) और किसी अन्य आईआईएस प्लगइन्स को स्थापित कर सकता हूं, बॉक्स वर्तमान में आईआईएस 7.5 चलाता है।

== संपादित करें ==

मैं देख एक समय पहले था inetmgr (https://github.com/typesafe/inetmgr) है, जो एक छोटे से अस्थिर लगता है और मेरे लिए काम नहीं करता है याद एक लेकिन ऐसा कोई प्रतीत नहीं होता है।

उत्तर

6

नहीं जवाब में से सबसे अच्छा है, लेकिन जैसा कि मैंने कुछ भी प्रस्तावित विधि नीचे मैं सिर्फ कुछ लिखा से अधिक आसान नहीं पा सके अपने आप appcmd का उपयोग कर:

def create_web_site(site_name, site_location, site_port) 
    delete_command = "#{$file["appcmd"]} delete site #{site_name}" 
    result = system delete_command 
    puts "Failed to delete site on IIS: #{$?}" unless result 

    add_command = "#{$file["appcmd"]} add site /name:#{site_name} /bindings:http/*:#{site_port}: /physicalPath:#{site_location}" 
    result = system add_command 
    raise "Failed to add site on IIS: #{$?}" unless result 

    set_app_pool_command = "#{$file["appcmd"]} set app #{site_name}/ /applicationPool:\"ASP.NET v4.0\"" 
    result = system set_app_pool_command 
    raise "Failed to bind site to .net 4 app pool on IIS: #{$?}" unless result 

    start_site_command = "#{$file["appcmd"]} start site #{site_name}" 
    result = system start_site_command 
    raise "Failed to start site on IIS: #{$?}" unless result 
end 

$file["appcmd"] ऊपर में के लिए एक वैश्विक फ़ाइल देखने है मेरी स्क्रिप्ट बनाएं, यह सी है:/windows/system32/inetsrv।

मुझे एक अच्छा समाधान ढूंढना अच्छा लगेगा, इसलिए अगर कोई ऐसा करने के अच्छे तरीके से आता है तो इसका जवाब जोड़ें और यदि यह बेहतर है तो मैं सही उत्तर बदल दूंगा। ऐसा करने के लिए केवल 2 पुस्तकालयों में मुझे डॉल्फ़िन तैनाती और 7 डिजिटल की आईआईएस रेक स्क्रिप्ट मिली, जिनमें से कोई भी दुर्भाग्य से उपयोग करने के तरीके पर अच्छी तरह से प्रलेखित नहीं था।

1

मेरा सुझाव है कि आप Capistrano देखें। Capistrano रूबी/रेल/... अनुप्रयोगों के लिए तैनाती "ढांचा" है। getting started दस्तावेज़ीकरण का हिस्सा देखें और फिर Windows Server with Capistrano पर तैनात करने के तरीके पर इस "ट्यूटोरियल" को देखें।

+0

क्षमा करें मैं इतना स्पष्ट नहीं था कि एएसपी एमवीसी का उपयोग कर एक .net प्रोजेक्ट, इसमें शामिल करने के लिए प्रश्न को बदल देगा। – Grofit

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

  • कोई संबंधित समस्या नहीं^_^