উত্তরটি হ'ল তারা অবশ্যই অতিরিক্ত কাজ নয়।
এটি সত্য যে কেউ বাশ স্ক্রিপ্ট ব্যবহার করে একই পরিণতি অর্জন করতে পারে যার মধ্যে ড্রাশ কমান্ডগুলি অন্তত অন্তত বিল্ডিংয়ের অংশ রয়েছে includes তবে, আমরা যদি যা করতে চাইছি জেনকিনসিসিআইয়ের মতো সিআই কাঠামোর সাথে আমাদের প্রক্রিয়াটি সংহত করা, তবে ফিংয়ের মতো কিছু ব্যবহার করা (পিঁপড়া বা ক্যাপিস্ট্রানো এখানে প্রতিস্থাপিত হতে পারে) যাওয়ার উপায়।
Phing এর সাহায্যে আমরা বিল্ড প্রক্রিয়াটি পৃথক বিভাগে বিভক্ত করতে পারি যা জেনকিন্সকে বুদ্ধিমান উপায়ে রিপোর্ট করতে পারে।
উদাহরণস্বরূপ। বলুন যে আমার বিল্ড প্রক্রিয়াটির অংশ হিসাবে আমি দুটি মডিউল, নোড এবং হোডফেইল সক্ষম করতে ড্রাশ ব্যবহার করি। তাহলে বিল্ডটি ব্যর্থ হওয়া উচিত। তবে আমরা যদি জেনকিনসিসিআইকে নিম্নলিখিত শেল কমান্ডটি চালানোর জন্য বলি, জেনকিনসআইআই বলবে যে বিল্ডটি পাস করেছে:
drush --quiet --yes @staging en node shouldfail
স্পষ্টতই এটি ঠিক নয়। তবে পরিবর্তে যদি আমরা একই প্রক্রিয়াটি সংজ্ঞায়িত করতে পিপড়া বা ফিং ব্যবহার করি, তবে আমরা জেনকিন্স বুঝতে পারে এমন কিছু ব্যর্থ যুক্তি যুক্ত করতে পারি, এবং তাই এটি যেমন করা উচিত তেমনি ব্যর্থ হয়। নিম্নলিখিত ফিং বিল্ড স্ক্রিপ্টটি পূর্ববর্তী কমান্ডের মতো একই কাজ করার চেষ্টা করে, তবে আমরা এটি প্রত্যাশা করে ব্যর্থ হই:
<project name="staging" default="enable modules" description="Jenkins Staging Build">
<target name="enable modules">
<exec command="drush --quiet --yes @staging en node shouldfail" error='error' checkreturn="true">
</exec>
<loadfile property="en.error" file="error" />
<if>
<contains string="${en.error}" substring="warning" />
<then>
<property name="en.fail" value="Could not enable all modules" />
</then>
</if>
<fail if="en.fail" message="${en.fail}" />
</target>
</project>
বিটিডাব্লু পিঁপড়া এবং ফিং প্রায় একই রকম। Phing ব্যবহারে পিএইচপি বিকাশকারীদের সুবিধা হ'ল তারা আরও স্বাচ্ছন্দ্যে Phing প্রসারিত করতে পারেন।
ড্রুপাল বিকাশ এবং ড্র্যাশ যেমনটি ঠিক তেমন ভাল হওয়ার জন্য, তবে আমি ফিং বাড়ানোর ক্ষেত্রে খুব বেশি মূল্য দেখতে পাই না এবং মনে করি যে চালানো এক্সিকিউটিভ কার্যগুলি স্মার্ট বিল্ড টেম্পলেট তৈরি করতে যথেষ্ট হবে।
ঠিক আছে, আমার প্রশ্নের উত্তর দেওয়ার জন্য আমি ফিং বের করার জন্য সময় বিনিয়োগ করেছি। এটি আসলে বেশ স্বজ্ঞাত এবং এটি বের করতে খুব বেশি সময় লাগে না।