আপনি কোন অবিচ্ছিন্ন একীকরণ কাঠামোটি ব্যবহার করেন এবং কেন? [বন্ধ]


21

সেখানে বেশ কয়েকটি ভিন্ন ধারাবাহিক একীকরণ (সিআই) ফ্রেমওয়ার্ক রয়েছে এবং আমি ভাবছি যেটি সবচেয়ে জনপ্রিয় which আপনি যেখানে কাজ করেন এমন ফার্মগুলিতে আপনি কোন ফ্রেমওয়ার্ক ব্যবহার করেছেন?

কোনও সিআই কাঠামো অন্যটির চেয়ে বেশি জনপ্রিয় হওয়ার কারণ রয়েছে কি - সম্ভবত এটি তার দেওয়া বৈশিষ্ট্যগুলি, এটিতে সংহত হওয়া জিনিসগুলি বা এটির কেবল বিপণনের সাথেই কাজ করা উচিত?

দেখে মনে হচ্ছে রুবি বা পাইথন বলার চেয়ে জাভা এবং। নেট ওয়ার্ল্ডগুলিতে একটানা সংহতকরণ বেশি ব্যবহৃত হয়। কেন?


সিবি রুবি এবং পাইথনের সাথে এতটা প্রাসঙ্গিক না হওয়ার অন্যতম কারণ হ'ল ভাষাগুলি ব্যাখ্যা করা হয়, তাই কিছু সংকলনের দরকার নেই। তবে এটি কেবল আমার ব্যক্তিগত মতামত ...
mliebelt

1
@ এমিলিবেল্ট - সিআই কেবলমাত্র চেকগুলি সংকলন করার চেয়ে আরও প্রসারিত হয়। আপনি ইউনিট / ইন্টিগ্রেশন পরীক্ষা চালাতে পারেন (এমনকি অন্যান্য নির্ভরশীল প্রকল্পগুলির সাথেও)।
অপুরভ খুরসিয়া

উত্তর:


31

হাডসন বা জেনকিনস (পূর্ববর্তীটি পূর্বের একটি কাঁটাচামচ)। কারণ: এটি সহজ (ইনস্টল করতে এবং ব্যবহারে সহজ) এবং দুর্দান্ত নমনীয়তা রয়েছে। প্লাগিনগুলি আমি ভাবতে পারি এমন প্রায় প্রতিটি কার্যকারিতা যুক্ত করে।

কয়েক বছর আগে আমি ড্যামেজকন্ট্রোল ব্যবহার করেছি । এটি ব্যবহার করাও সহজ ছিল, তবে প্লাগিনগুলি ছিল না। তবে লেখক সিদ্ধান্ত নিয়েছেন যে তিনি সহজ সমাধানটি ছেড়ে চলে যাবেন এবং একটি নতুন সংস্করণ বিকাশ শুরু করলেন, এতে একে অপরের সাথে যোগাযোগ করার জন্য বিভিন্ন সার্ভার রয়েছে (এটি কী?) এটি ভাল কাজ করেনি এবং প্রকল্পটি ছেড়ে দেওয়া হয়েছিল। আমি কিছু সময় অনুসন্ধানে ছিলাম, তবে ক্রুইসেকন্ট্রোল (খুব জটিল) বা ধারাবাহিকভাবে কেউই আমাকে সত্যই পায়নি। হাডসন অবধি, আমার জন্য প্রথম মুহূর্ত থেকে এটি কাজ করেছিল।


আমি এই হিসাবে একটি শালীন UI যুক্ত করতে যাচ্ছি।
মার্টিজন ভার্গবার্গ

হ্যাঁ, আমি ব্যবহারের জন্য সহজ ইউআইটি যোগ করব।
মেনেমেন্ট

5
ক্রুজকন্ট্রোল যেতে ব্যথা হচ্ছিল ... হাডসন উঠে চলা খুব সহজ ছিল। চক নরিস ( উইকি। হুডসন-ci.org/display/HUDSON/ChuckNorris+ প্লাগিন) প্লাগইন আবশ্যক।
স্যাম ডোলান

হডসন সত্যিই দুর্দান্ত। যদিও, আমি আশা করি এটি বিচ্ছিন্ন হওয়ার চেয়ে ভাল ছিল। আপনার যদি খুব ভাল সংখ্যক টিম থাকে যা সমস্ত আলগাভাবে সম্পর্কিত প্রকল্পগুলিতে কাজ করে, তবে একে অপরের পায়ের আঙ্গুলের পা বাড়ানোর সম্ভাবনা এক ধরণের বেশি।
গ্রেগ গৌথিয়ার

এই প্রোগ্রামারটি এখনও হাডসনকে উইন্ডোজে কাজ করার জন্য কনফিগার করতে পারে না :(
Mchl

16

আমি কাজে এবং বাড়িতে টিমসিটি ব্যবহার করি । এটি বিভিন্ন বিল্ড রানারদের জন্য দুর্দান্ত সমর্থন এবং প্লাগইনগুলির মাধ্যমে এক্সটেনসিবল।

কনফিগারেশনের জন্য এক্সএমএল পাইলসের সাথে কাজ না করা আমার বইগুলির একটি বিশাল প্লাস এবং ফ্রি সংস্করণটি আমার বাড়ির প্রয়োজনের জন্য যথেষ্ট।

টিমসিটির সাথে আমি যে সমস্যার সমাধান করেছিলাম তা হ'ল এটি স্বয়ংক্রিয়ভাবে সংস্করণে নিট করার চেষ্টা করে N আমাকে একটি তুলনামূলকভাবে জটিল কাজটি সেট আপ করতে হয়েছিল, তবে এটি একবার স্থাপন করার পরে এটি মনোহর মতো কাজ করেছিল।


আমি বাসায় টিসি চেষ্টা করতে যাচ্ছি। ক্রুয়েসেকন্ট্রল.টনে সমস্যা ছাড়া আমাদের আর কিছু হয়নি।
কেউ নেই

8

ব্যক্তিগতভাবে, আমি কেবল কখনও ক্রুজকন্ট্রোল এবং ক্রুজকন্ট্রোল. নেট ব্যবহার করেছি। এর কারণ অর্থনীতির সাথে জড়িত। এগুলি যুক্তিসঙ্গতভাবে স্থিতিশীল এবং আপনি একবার এটি সেট আপ করার পরে, এটি বজায় রাখার জন্য আপনার খুব দরকার খুব কম। ব্যবহারকারী সম্প্রদায়টি সাধারণত খুব সহায়ক, এবং এটি আপনার প্রয়োজনগুলিতে প্রসারিত হতে পারে।

এটি বলেছিল, এমন একটি বেশ কয়েকটি বাণিজ্যিক অফার উপলব্ধ রয়েছে যা সম্পর্কে আমি অবগত (একটি জেটব্রেইনস, অন্যজন আটলাসিয়ান দ্বারা তৈরি) যা আরও ভাল সেট আপ করার অভিজ্ঞতা এবং বাণিজ্যিক সহায়তার প্রস্তাব দেয়। আমি এই অফারগুলি চেষ্টা করার অর্থ পেয়েছি তবে সত্যিই এখনও কোনও সুযোগ পাইনি।

বর্ণিত ভাষাগুলির চেয়ে সংকলিত ভাষাগুলির সাথে সিআই সরঞ্জামগুলির আরও গুরুত্বপূর্ণ ভূমিকা আছে, তবে এর অর্থ এটি নয় যে সিআই সরঞ্জামটি ব্যাখ্যা করা ভাষায় নষ্ট হয়। যখন আপনার বেশ কয়েকটি প্রকল্প রয়েছে যা একে অপরের উপর নির্ভর করে এবং আপনি নিশ্চিত করতে চান যে কোনও পরিবর্তন দুর্ঘটনাক্রমে তার নির্ভরতাগুলি ভেঙে না ফেলে - সিআই সরঞ্জামগুলি অমূল্য।

তিনটি সাধারণ শ্রেণীর সমস্যা রয়েছে যা সিআই সরঞ্জামগুলি আপনাকে ধরতে সহায়তা করতে পারে:

  1. ত্রুটিগুলি সঙ্কলন করুন - যদি কোনও শ্রেণীর স্বাক্ষর এমনভাবে পরিবর্তিত হয় যে নির্ভরতাগুলি ভেঙে দেয়, তবে বিতরণযোগ্য সময়ের অপচয় হওয়ার আগে এটি সম্পর্কে জানা ভাল।
  2. যুক্তি ত্রুটি - কোনও শ্রেণীর আচরণ যদি নির্ভরতা ভেঙে এমনভাবে পরিবর্তিত হয় তবে তাড়াতাড়ি সম্পর্কে জানা ভাল। এটি কোনও ধরণের স্বয়ংক্রিয় পরীক্ষার মাধ্যমে চেক করতে হবে, বেশিরভাগই ইউনিট টেস্টিং।
  3. স্বীকৃতি পরীক্ষা - আপনার যদি সমাপ্ত পণ্যটি চালানোর জন্য টেস্টগুলির একটি স্বয়ংক্রিয় স্যুট থাকে তবে প্রায়শই এটি চালানো ভাল।

বর্ণিত ভাষা সংকলিত হয় না, তাই ধরার জন্য কোনও সংকলনের ত্রুটি নেই। তবে অন্য দুটি সমস্যা যথেষ্ট সাধারণ যে সিআই সরঞ্জামগুলি রুবি / পাইথন / পার্ল / ইত্যাদি প্রকল্পের জন্য কার্যকর useful

উভয় যুক্তি ত্রুটি এবং গ্রহণযোগ্যতা পরীক্ষার পয়েন্টগুলির মূল শব্দটি হ'ল "স্বয়ংক্রিয়" পরীক্ষা। আপনার যদি কোনও মেশিন চালাতে পারে তার পরীক্ষার স্যুট না থাকে, তবে আপনি সত্যিই সিআই সরঞ্জামগুলির বৃহত্তর সুবিধাগুলি হারাচ্ছেন। অটোমেটেড স্যুটগুলি সময়ের সাথে তৈরি করা যায়, তাই আপনি ছোট শুরু করতে পারেন।

সম্পাদন করা

প্রচুর সংখ্যক সিআই সরঞ্জামের বৈশিষ্ট্যের তুলনা করার জন্য এই দুর্দান্ত চার্টটি দেখুন (যার অনেক কিছুই আমি জানতাম না):

http://confluence.public.thoughtworks.org/display/CC/CI+Feature+Matrix


সংকলিত / বর্ণিত পার্থক্য এতটা কালো এবং সাদা নয়। উদাহরণস্বরূপ, পার্লের একটি সংকলন পর্ব রয়েছে যা প্রারম্ভকালে চলতে পারে (এবং "-c" বিকল্পের সাথে পৃথকভাবে আহ্বান করা যেতে পারে) কোনও সিনট্যাক্স ত্রুটি পরীক্ষা করার জন্য।
অ্যান্ড্রু মেডিকো

এটা সত্য. রুবি ১.৯ এবং পাইথনেরও সংকলন পর্যায় রয়েছে। সংকলনের সময় রেফারেন্স শ্রেণি / পরিবর্তনশীল / পদ্ধতিটি উপস্থিত না থাকলে যে কোনও ভাষার ক্ষেত্রে সমস্যার সংকলন ত্রুটি শ্রেণি প্রযোজ্য যা আপনাকে সতর্ক করবে। এটি অবশ্যই কোনও স্থিতিযুক্ত টাইপিত ভাষার ক্ষেত্রে প্রযোজ্য। গতিশীল তবে শক্তিশালী টাইপযুক্ত ভাষায় (রুবি এবং পাইথনের মতো) ওয়াইএমএমভি।
বারিন লরিটস

"একবার আপনি সেগুলি সেট আপ করার পরে, এটি বজায় রাখার জন্য আপনার খুব দরকার খুব কম" - সমস্ত ক্রমাগত ইন্টিগ্রেশন সার্ভারের ক্ষেত্রে কি এটি সত্য নয়?
ব্রায়ান ওকলে

5

টিম ফাউন্ডেশন সার্ভার

সলিড সিআই, ভিজ্যুয়াল স্টুডিওর সাথে টাইট ইন্টিগ্রেশন এবং সংস্করণ নিয়ন্ত্রণ হিসাবে গিট । আমি হডসনের মতো আরও নমনীয় সিআই সার্ভার দেখেছি, তবে অন্যান্য পণ্যের সাথে টিএফএসের আঁটসাঁট সংহতকরণ অভিজ্ঞতাটিকে এতটাই নির্বিঘ্ন করে তোলে যে এটি আমার দলের পক্ষে বোধগম্য হয়।


'অন্যান্য পণ্য' দ্বারা, আপনার অর্থ 'মাইক্রোসফ্ট পণ্য'। আমি আপনার সমালোচনা করছি না, তবে এমএস তাদের প্রযুক্তি স্ট্যাকটি এমনভাবে গঠন করেছে যাতে এমএস পণ্যগুলির সাথে সংহত করার জন্য আপনার অন্যান্য এমএস পণ্য, বা প্রচুর ধৈর্য এবং / অথবা অধ্যবসায় প্রয়োজন।
GKelly

1
নির্বুধের মত উচ্চারণ. তারা প্রায়শই তৈরি করে, এমনকি কিনেক্ট, এমনকি এমএনএস প্রোগ্রামাররা জানেন না, কারণ তারা মাইক্রোসের কথা শোনার সাথে সাথে তাদের কানটি coverেকে রাখে .. (টিএফএস এসডিকে লিঙ্ক) এমএসডিএন.মিক
লূক পুপলেট

2

আমি ক্রুজকন্ট্রোল.এনইটি এবং হাডসন উভয়ই ব্যবহার করি । আমার কিছু বিল্ডগুলি তাদের একটির উপর এবং কিছু অন্যটিতে রয়েছে।

কেন? কারণ আমি বিল্ড ইঞ্জিনিয়ার নই এবং তিনিই যে বিল্ড ইঞ্জিনিয়ার সেগুলি তাদের এইভাবে স্থাপন করেছিল!

আমার বিল্ডগুলি যেভাবে সেট আপ করা হয় বা উভয় পণ্য সম্পর্কে অভিযোগ নিয়ে আমার সমস্যা নেই। জিনিসগুলি এখানে যেভাবে রয়েছে তা আমি আপনাকে অবহিত করছি, সত্যই এবং আশা করি আপনি এই দৃষ্টিভঙ্গির প্রশংসা করবেন!

আপডেট: আমি উত্তর পোস্ট করার পরে, হাডসন কাঁটাচামচ হয়ে জেনকিন্সে পরিণত হয়েছে । উপরের সুপারিশটি জেনকিনসের ক্ষেত্রে প্রযোজ্য।


1

নাড়ি । এটি মূলত জাস্ট ওয়ার্কস, যা ব্যস্ত বিল্ড ইঞ্জিনিয়ারের জন্য একটি বড় বিষয়। তাদের সত্যই চমৎকার প্রযুক্তিগত সহায়তাও রয়েছে। আমি এটিকে এত ভালবাসার মূল কারণটি হ'ল আমাদের কাছে 250+ প্রজেক্ট রয়েছে এবং এটি হিক্কার ব্যতীত এগুলি পরিচালনা করে; আমি হডসনের জন্য একই বলতে পারি না।


1

আমাদের দলটি পাইথন, সি ++ এবং জাভাতে মূলত কাজ করে। আমরা সিআইয়ের জন্য বিল্ডবোট ব্যবহার করি। এটি প্রাথমিকভাবে আমরা এটি দিয়ে শুরু করেছি কারণ এটি ট্র্যাকের সাথে সংহত হয়েছে এবং কারণ এটি সহজ এবং সরল মনে হয়েছিল। আমি বিশ্বাস করি এটি পাইথন বিশ্বে পছন্দসই সিআই কাঠামো।


1

হাডসন। এটি সময়ে একটি ছোট বগি এবং আরও কিছু আকর্ষণীয় প্লাগইন আসলে কাজ করে না, তবে সামান্য হ্যান্ডহোল্ডিং সহ এটি বেশ ব্যবহারযোগ্য।

আমি সম্ভবত এর পরিবর্তে নাড়িটি ব্যবহার করব, তবে আপনার যদি একাধিক প্ল্যাটফর্ম তৈরি করতে হয় তবে এটি> $ 5 কে, যা কিছুটা।


1

ক্রমাগত সংহতকরণের জন্য ক্রুজ কন্ট্রোল.এনইটি । খুব সুন্দরভাবে কাজ করে, যদিও ক্রুজ কনট্রোলটিতে আমরা প্রচুর সংখ্যক বিল্ড প্রকল্প স্থাপন করেছি, সিসট্রে ডেস্কটপ ট্রে অ্যাপটি দীর্ঘ রিফ্রেশ ব্যবধানের পরেও মারাত্মকভাবে অ-প্রতিক্রিয়াশীল।

ন্যান্ট হ'ল বিল্ড স্ক্রিপ্টগুলির জন্য যা ক্রুজকন্ট্রোল প্রকল্পগুলিতে সম্পাদিত হয়। আরও জটিল বিল্ড স্ক্রিপ্টগুলির জন্য, আমরা কাস্টম সি # ন্যান্ট টাস্ক সহ ন্যান্ট প্রসারিত করেছি, যা খুব সুন্দর - সি # তে রাইটিং কোড ন্যান্ট স্ক্রিপ্ট তৈরির চেয়ে অনেক বেশি উপভোগযোগ্য।

আমরা মাইক্রোসফ্টের দোকান এবং তাত্ত্বিকভাবে মাইক্রোসফ্টের টিম বিল্ড 2010 এ চলে যাব একবার আমাদের টিম ফাউন্ডেশন সার্ভার পরিবেশ 2010 এ স্থানান্তরিত করার পরে।


0

মনে রাখবেন যে আপনার সিআই ইঞ্জিন চলছে কিনা তা নির্বিশেষে আপনার কমান্ড লাইন থেকে আপনার অ্যাপ্লিকেশনটি তৈরি করতে সক্ষম হওয়া উচিত।

এর অর্থ হ'ল সমস্ত সিআই-ইঞ্জিন আপনার বিল্ডের জন্য অনুরোধগুলি ব্যবস্থাপনার কাজ করে এবং আপনি সেই ইঞ্জিনটি চয়ন করতে পারেন যা আপনার নির্দিষ্ট প্রয়োজনের সাথে সবচেয়ে ভাল ফিট করে।

ব্যক্তিগতভাবে আমি হডসনটি মূলত পছন্দ করি কারণ এটি " সুন্দর " লাগে তবে আমি জানি যে সমস্ত কিছু ব্যর্থ হলে আমি খুব বেশি প্রচেষ্টা ছাড়াই অন্য একটিতে যেতে পারি। যদি তা হয় তবে আমি প্রথমে আটলশিয়ান তৈরি করা একটি তদন্ত করতে পারি, যেহেতু আমি তাদের তৈরি অন্যান্য প্রোগ্রামগুলির "অনুভূতি" পছন্দ করি।

নোট করুন যে আদান-প্রদানের বিষয়টি বোঝায় যে তারা কোন ভাষায় লিখিত হয়েছে তা বিবেচ্য নয় I আমার বিশ্বাস জাভা বহু ইঞ্জিনের জন্য বেছে নেওয়া হয়েছিল কারণ বহু প্ল্যাটফর্ম সমর্থিত, বহু বিল্ডিং ব্লকের সাথে সহজেই উপলব্ধ। একটি ওয়েব সার্ভারের দরকার - একটি ধরুন। অনেকগুলি সমবর্তী থ্রেডগুলির প্রয়োজন - কেবল সেগুলি ব্যবহার করুন। এক্সটেনসিবিলিটি প্রয়োজন - একটি জারে ড্রপ।


0

আমি "কন্টিনিউজ-ইন্টিগ্রেশন" শব্দটি শোনার আগে (এটি 2002 বা 2003 সালে ফিরে এসেছিল) আমি একটি নাইট বিল্ড স্ক্রিপ্ট লিখেছিলাম যা সিভিএস-এর সাথে সংযুক্ত ছিল, মূল প্রকল্পের একটি পরিষ্কার কপি এবং পাঁচটি ছোট ছোট ছোট ছোট ছোট ছোট প্রকল্প উপস্থাপন করেছিল, সমস্তটি নির্মিত হয়েছিল পিঁপড়ার মাধ্যমে জারগুলি তারপরে দ্বিতীয় পিঁপড়ের স্ক্রিপ্টের মাধ্যমে একটি ওয়ার ফাইলটি তৈরি করে এবং পুনর্বার নিয়োগ করে যা টমক্যাট পিঁপড়ার কাজগুলি ব্যবহার করে।

এটি সন্ধ্যা 7 টায় ক্রোন দিয়ে ছুটেছিল এবং সংযুক্ত আউটপুট ফাইলগুলির একটি গুচ্ছ সহ ইমেল প্রেরণ করেছে। আমরা প্রকল্পের পুরো 7 মাস এটি ব্যবহার করেছি এবং এটি পরবর্তী 20 মাস রক্ষণাবেক্ষণ এবং উন্নতির জন্য ব্যবহারে রয়েছি।

এটি দুর্দান্ত কাজ করেছে তবে তবু বাশ স্ক্রিপ্ট, ক্রোন এবং পিঁপড়ার চেয়ে হাডসন পছন্দ করে।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.