আমি ডকার পাত্রে একটি সি ++ প্রকল্প তৈরি করতে জেনকিন্সকে ব্যবহার করার চেষ্টা করছি। জেনকিন্সে জেনকিনসের বাইরে কোনও ধারক তৈরি করতে আমার কোনও সমস্যা নেই।
নীচে আমি চেষ্টা করেছিলাম। আমি স্পষ্টতার জন্য ভলিউম ম্যাপিংটি বাদ দিচ্ছি।
মামলা 1
নিম্নলিখিত কমান্ডটি সফলভাবে একটি শেলের মধ্যে একটি বিল্ড চালায়।
docker run --rm --interactive=true --tty=true $IMAGE make
তবে জেনকিন্সে যখন "এক্সিকিউট শেল" পদক্ষেপ হিসাবে চালানো হয় তখন ডকার নিম্নলিখিত ত্রুটিটি প্রদান করে।
cannot enable tty mode on non tty input
মামলা 2
নিম্নলিখিত কমান্ডটি আগের মত একই তবে ইন্টারঅ্যাক্টিভিটি অক্ষম করে।
docker run --rm $IMAGE make
জেনকিনস সফলভাবে একটি বিল্ড চালাতে পারে। তবে কোনও বিল্ড বাতিল করতে গিয়ে গুরুতর সমস্যা রয়েছে। বিল্ডটি অবিলম্বে বাতিল হওয়া হিসাবে চিহ্নিত হয়েছে তবে বিল্ডটি সম্পূর্ণ না হওয়া পর্যন্ত ধারকটি চলতে থাকবে। এছাড়াও প্রস্থানটি বের হওয়ার পরে পাত্রে সরানো হয় না ।
শেল চালানোর সময় কমান্ডটি সাফল্যের সাথে তৈরি হয় তবে তাতে বাধা দেওয়া সম্ভব হয় না। এছাড়াও প্রস্থানটি বেরোনোর পরে সরিয়ে ফেলা হয়।
প্রশ্ন
কেউ কীভাবে জেনকিন্স থেকে ডকারের পাত্রে পরিষ্কারভাবে বিল্ডগুলি চালাতে এবং বিল্ডগুলি বাতিল করার ক্ষমতা বজায় রাখতে জানেন?
জেনকিন্সের কোনও প্লাগইন ব্যবহার করা কোনও বিকল্প নয় কারণ ডকার কলগুলি স্ক্রিপ্টগুলির মধ্যে রয়েছে এবং সহজেই তা বের করা যায় না।