Choose Best Tools- Azure DevOps | GitHub | Azure DevTest Labs 2

Choose Best Tools- Azure DevOps | GitHub | Azure DevTest Labs 2

239
0
SHARE

පසුගිය ලිපියෙන් අපි කතා කලා Azure DevOps | GitHub | Azure DevTest Labs  කියන tools සහ services පිළිබඳව සහ ඒවා භාවිතා කල හැකි අවස්ථා මොනවද යන්න ගැන. මෙතනින් ඒ ලිපිය කියවන්න. මේ ලිපියෙන් ඒ ගැන තවදුරටත් කතා කරන්න තමයි යන්නේ. මොකද මේ Azure DevOps | GitHub | Azure DevTest Labs  කියන tools සහ services පිළිබඳව ඔබ දැනගත යුතු තවල් දේවල් රාශියක් තිබෙන නිසා.

Azure DevOps

Azure DevOps කියන්නේ මොකක්ද කියලා සහ එමගින් අපිට කරන්න පුළුවන් දේවල් ගැන දැනට ඔබට යම් වැටහීමක් තිබෙනවා. දැන් අපි බලමු Azure DevOps වලින් කරන්න පුළුවන් තවත් දේවල් මොනවද කියලා.ඇත්තටම මෙතැනදී අපි ඉගෙන ගන්න යන්නේ Azure DevOps මගින් application development lifecycle එක manage කරන්නේ කොහොමද කියලා.

මේ සඳහා උදාහරණයක් විදියට අපි ABC කියලා company එකක් ගමු. මේ ABC company එකේ දැනට විවධ projects develop වෙනවා. මේ අතරේ internal භාවිතා කරන්න බලාපොරොත්තු වෙන projects වගේම external projects තිබෙනවා.

ඉතින් මේ projects වල වැඩ කරන teams වලට අවශ්‍ය වෙනවා ඔවුන්ගේ progress එක ගැන එහෙම නැත්නම් ඔවුන්ට මුහුණ දෙන්න වුන issues ගැන , වගේ විස්තර managersලට වගේම project එක sponsor කරන අයට ලබාදෙන්න. මේ විස්තර බොහොම පිළිවෙලට වගේම කෙටියෙන් ඒ කියන්නේ දිගට දිගට රචනා වගේ නැතුව කෙටියෙන් සහ සරලව, කියවන කෙනාට හොඳ අවබෝධයක් ලැබෙන විදියට සකස් කරන්න අවශ්‍ය වෙනවා. ඉතින් මේ වගේ documents වලට බොහෝ වෙලාවට charts එහෙම යොදාගන්න එක සිදු වෙනවා.ඉතින් මේ විදියට projects වල විස්තර වගේම managersලට team එකක ඉන්න හැම පුද්ගලයාගේම progress එක ගැන, එක් එක් පුද්ගලයාට project resources වලට තිබෙන access level එක වගේ කාරණාත් දැනගන්න අවශ්‍ය වෙනවා. මොකද ගොඩක් වෙලාවට companies වලින් project එකකට විතරක් වැඩ කරන්න සේවකයන් යොදාගන්නවා. මේ වගේ අවස්ථා වලදී ඔවුන්ට ලබාදෙන්නේ project එකට අවශ්‍ය වෙන accessibility එක විතරයි.

ඉතින් මෙන්න මේ වගේ අවශ්‍යතා ඉටු කරගන්න වඩාත් පහසුවෙන් භාවිතා කරන්න පුළුවන් සේවාවක් ගැන ඔබ මොකද හිතන්නේ. අපි දැනටමත් සේවාවන් කිහිපයක් ඉගෙන ගෙන තිබෙන නිසා අපේ අවශ්‍යතා එකින් එක නිවැරදිව විමසා බලමු.
ඇත්තටම අපේ ABC company එකට ඔවුන්ගේ testing environments නිර්මාණය කරන්න සහ automate කරන්න අවශ්‍යතාවයක්ද තිබෙන්නේ. නැහැ එවැනි අවශ්‍යතාවක් නෙවෙයි. ඒ නිසා මෙහිදී Azure DevTest Labs සුදුසු වෙන්නේ නැහැ.

එහෙනම් ABC company එක open-source software නිර්මාණය කරන්න යනවද, මුලින්ම අපි දැනගත්තා  ABC company එක internal සහ external projects කිහිපයක් පවත්වාගෙන යන බව. නමුත් මෙහිදී කියවෙන්නේ නැහැ හරියටම ඔවුන්  open-source software නිර්මාණය කරනවාද කියන කාරණාව. ඒ නිසා අපිට පුළුවන් GitHub යොදාගැනීම සුදුසු නැහැ කියලා තීරණය කරන්න.

ඔබට මතක ඇති මෙහිදී අපි මුලින් දැනගත්තා ABC company එක මගින් temporary employees hire කරන බව සහ ඔවුන්ට access ලබාදීමේදී යම් යම් සීමාවන් තිබෙන බව.ඒ කියන්නේ company එකට අවශ්‍ය වෙනවා permissions handle කිරීමේ යම් සේවාවක්. මෙවැනි අවස්ථා වලට වඩාත් සුදුසු වන්නේ Azure DevOps කියලා ඔබට මතක ඇති. Azure DevOps යොදාගැනීම මගින් ABC company එකේ administratorsලට permissions control කරන්න වැඩි පරාසයක options ප්‍රමාණයක් ලැබෙනවා.

ඒ වගේම ABC company එකේ තවත් අවශ්‍යතාවයක් වුනේ නිවැරදිව project management කිරීම. මේ සඳහා ඔවුන්ට reports අත්‍යවශ්‍ය වෙනවා. ඉතින් මේ reporting feature එකත් Azure DevOps මගින් ලබාදෙන මුලිකම සේවාවක්. ඒ වගේම අපේ company එකට third-party DevOps tools යොදාගන්න අවශ්‍යය වෙනවා. බොහොමයක්  third-party DevOps tools Azure DevOps සහ GitHub සමග ක්‍රියාත්මක වන නිසා මෙහිදී ඒ අවශ්‍යතාවයත් Azure DevOps මගින් සපුරාලනවා.

GitHub

දැන් අපි බලමු GitHub වලින් කරන්න පුළුවන් දේවල් පිළිබඳව. මේ සඳහාත් උදාහරණයක් විදියට ABC company එක ගනිමු. ABC company එකට අවශ්‍ය වෙනවා ඔවුන්ගේ e-commerce site එකේ තිබෙන අලුත් සහ පරණ items සමග පිටස්තර අයට එහෙම නැත්නම් වෙනත් companies හෝ sites වලට සම්බන්ධ විය හැකි ආකාරයේ API එකක් publish කරන්න. ඇත්තටම මේ API එක ඔවුන්ගේ internally ක්‍රියාත්මක වෙන එහෙම නැත්නම් මේ code එක internally තිබෙන එකක් වුනත් ඔවුන්ට අවශ්‍ය වෙනවා මේ API එක තවත් කෙනෙක්ට එහෙම නැත්නම් third  party එකකට භාවිතා කරන්න පුළුවන් ආකාරයට call කරන්නේ කොහොමද කියලා ඔවුන් සකසපු example code එක share කරන්න. මේ සඳහා ගැලපෙන platform එකක අවශ්‍යතාවය තමයි ඔවුන්ට තිබෙන්නේ. ඒ වගේම මේ code එක පිලිබඳ ඕනෑම කෙනෙකුට අදහස් දක්වන්න,issues තිබෙනවා නම් ඒවා report කරන්න වගේ දේවලුත් තිබීම මෙහිදී ඔවුන්ට වැදගත් වෙනවා.

ඔබේ දැනුමේ ආකාරයට ABC company එකට භාවිතා කරන්න වඩාත් සුදුසු සේවාව මොකක් වෙන්න පුලුවන්ද. අපි තවදුරටත් මේ අවශ්‍යතාවය විස්තර කර ගනිමු.

ඇත්තටම අපේ ABC company එකට ඔවුන්ගේ testing environments නිර්මාණය කරන්න සහ  automate කරන්න අවශ්‍යතාවයක්ද තිබෙන්නේ. නැහැ එවැනි අවශ්‍යතාවක් නෙවෙයි. ඒ නිසා මෙහිදී Azure DevTest Labs සුදුසු වෙන්නේ නැහැ.

එහෙනම් ABC company එක open-source software නිර්මාණය කරන්න යනවද, ඔව්. ඔවුන්ගේ developersලට අවශ්‍ය වෙනවා ඔවුන්ගේ code එක අනෙක් යටත් භාවිතා කල හැකි පරිදි share කරන්න සහ ඒ පිලිබඳ අදහස් දැනගැනීමට, issues තිබේ නම් ඒවා දැනගැනීමට වගේ කාරණා වැදගත් වෙනවා. මෙන්න මේ අවශ්‍යතා සියල්ලටම සුදුසු වෙන සේවාවක් තමයි GutHub කියන්නේ. මීට පෙරත් සඳහන් කල ආකාරයට GutHub කියන්නේ shared source-code repository එකක්.

මීළඟට ABC company එකට අවශ්‍ය වෙනවද මේ project එකට permissions control කරන්න. මෙවැනි අවශ්‍යතාවයක් මෙහිදී නිවැරදිව දක්වා නොමැති නිසා වගේම මෙහිදී ඔවුන්ට වැදගත් වෙන්නේ ඔවුන්ගේ code එක පිලිබඳ අදහස් දැනගැනීමට, issues තිබේ නම් ඒවා දැනගැනීමට වගේ කාරණා නිසා අපිට හිතන්න පුළුවන් view only හෝ view and write වැනි permissions තමයි මෙහිදී වැදගත් වෙන්නේ කියලා. ඉතින් මේ අවශ්‍යතාවය පහසුවෙන්ම GutHub මගින් ලබාගන්න ඔවුන්ට හැකියාව තිබෙනවා.

Azure DevTest Labs

දැන් අපි බලමු Azure DevTest Labs වලින් කරන්න පුළුවන් මොනවද කියලා. කලින් උදාහරණ දෙකේ වගේම මේ සඳහාත් උදාහරණයක් විදියට ABC company එක ගනිමු. ABC company එකට තිබෙන විශේෂම අවශ්‍යතාවක් එහෙම නැත්නම් විශේෂ අවධානයක් යොමු කල යුතු කාරණාවක් තමයි ඔවුන්ගේ e-commerce website එකේ අලුත් versions production environment එකට push කරත්දී මේ ක්‍රියාව නිවැරදිව සිදුවෙනවද කියන දේ. මොකද යම්කිසි වැරදීමකින් වැරදි version එකක් push වීමේ හැකියාව තිබෙන නිසා. ඉතින් මේ වගේ අවස්තා වලදී testings කිරීම බොහොම වැදගත් වගේම testings සඳහා අවශ්‍ය වෙන production environment එක සකසා ගන්නේ කොහොමද කියන එක වැදගත් වෙනවා. මොකද ඇත්තටම තිබෙන website එකේ testing කිරීම කල නොහැකි නිසා. මේ නිසා මේ සඳහා ගැලපෙන production environmnet එක virtual machines වල නිර්මාණය කරගැනීම අවශ්‍ය වෙනවා.

ඒ වගේම මේ කාර්යයේදී වැය වෙන්න පුළුවන් මුදල් ප්‍රමාණය බොහොම වැඩි වෙන්න පුළුවන්ද කියන එක management එකට මතුවෙන ප්‍රධාන ගැටළුවක්. ඒ විතරක් නෙමෙයි මේ විදියට VMs setup කිරීමෙන් පසුව company එකේ QEsලට සිද්ධ වෙනවා නම් ඒ environment එක ඇත්තටම ඔවුන්ගේ production එකට ගැලපෙනවද කියලා නැවත නැවතත් පරික්ෂා කරන්න, එය කාලය නාස්ති කිරීමක් වෙනවා. මේ testings සියල්ලටම පසුව මේ විදියට සකස් කරගනිපු environment එක අනිවාර්යෙන්ම විනාශ විය යුතු වෙනවා. ඒ වගේම testings සිදු කරන එක් එක් පුද්ගලයා භාවිතා කරන VMs ප්‍රමාණය සහ භාවිතා කරන කාලයත් සැලකිල්ලට ගන්න වෙනවා, මොකද මේ කාලයට සහ ප්‍රමාණයට තමයි ගෙවීම් කටයුතු සිදු කල යුත්තේ. ඉතින් මෙන්න මේ වගේ බොහොම වැදගත් කාරණා පිලිබඳ ABC company එකට අවධානය විශාල වශයෙන් යොමු කරන්න සිදු වෙනවා.

මේ අවශ්‍යතා මතකයේ තබාගෙන අපි දැන් බලමු ABC company එකට වඩාත් සුදුසු වෙන්නේ මොන සේවවද කියලා.

ABC company එක open-source software නිර්මාණය කරන්න යනවද, නැහැ මෙහිදී ඔවුන්ගේ අවශ්‍යතාවය software නිර්මාණය නෙවෙයි. ඒ නිසා GitHub මෙහිදී සුදුසු වන්නේ නැහැ.

මීළඟට ABC company එකට අවශ්‍ය වෙනවද මේ project එකට permissions control කරන්න. මෙවැනි අවශ්‍යතාවයක් මෙහිදී නිවැරදිව දක්වා නොමැති නිසා Azure DevOps යොදාගැනීම අවශ්‍ය වෙන්නේ නැහැ.

එහෙනම් ABC company එකට ඔවුන්ගේ testing environments නිර්මාණය කරන්න සහ automate කරන්න අවශ්‍යතාවයක්ද තිබෙන්නේ. ඔව් ඔවුන්ගේ ප්‍රධානම අවශ්‍යතාවය තමයි මේ. ඒ වගේම අනෙකුත් ඔවුන්ගේ අවශ්‍යතාවයන් සැලකිල්ලට ගැනීමෙන් අපිට යෝජනා කරන්න පුළුවන් මෙහිදී වඩාත්ම සුදුසු වන්නේ Azure DevTest Labs බව.

ඉතින් මේ විදියට ඔබේ අවශ්‍යතාවයට වඩාත් සුදුසු සේවාව තෝරාගැනීමට දැන් ඔබට වඩාත් හොඳ අවබෝධයක් තිබෙනවා. තවත් මෙවැනි ලිපියකින් ඉදිරියේදී හමුවෙමු.

Comments

comments

NO COMMENTS

LEAVE A REPLY