Intshayelelo
Kwimeko yanamhlanje ekhawulezayo yophuhliso lwesoftware, umgangatho wamava ophuhlisi ube yinto ebalulekileyo ekumiseleni impumelelo yeprojekthi. Njengoko iinkqubo zesoftware ziya zisiba nzima ngakumbi, abaphuhlisi bajongana nemiceli mngeni emininzi enokuthintela imveliso yabo kunye nokwaneliseka ngokubanzi. Ukujongana nale mingeni, abayili besoftware kunye nabaphuhlisi bamkela izicwangciso ezahlukeneyo ezibeka phambili amava ophuhlisi, kubandakanya nezixhobo zentsebenziswano, izicwangciso ezizenzekelayo, kunye neendlela eziphucula ukuhamba kakuhle komsebenzi.
Kweli nqaku, siza kuphonononga inkqubela phambili yamva nje kuyilo lwesoftware egxile ekwandiseni amava omphuhlisi. Siza kungena kwihlabathi lezixhobo ezisebenzisanayo, amaqhinga okuzenzela, kunye neendlela ezinokunceda abaphuhlisi basebenze ngokufanelekileyo nangempumelelo. Ukongezelela, siya kunika umzekelo wekhowudi kwiPython ebonisa indlela yokuphumeza isicwangciso esilula sokuzenzekelayo usebenzisa umbhobho weCI / CD.
Izixhobo zeNtsebenziswano zokuPhuhlisa amava oPhuhlisi
Izixhobo ezisebenzisanayo ziye zayiguqula indlela abaphuhlisi abasebenzisana ngayo kwiiprojekthi zesoftware. Ezi zixhobo zenza unxibelelwano lwexesha langempela, ukuphononongwa kwekhowudi, kunye nokulawulwa kweprojekthi, okwenza kube lula kubaphuhlisi ukusebenzisana kunye nokwabelana ngolwazi.
Iinkqubo zoLawulo lweNguqulelo (VCS)
Iinkqubo zolawulo lwenguqulelo, ezifana neGit, zizixhobo ezibalulekileyo zophuhliso lwesoftware esebenzisanayo. I-VCS ivumela abaphuhlisi abaninzi ukuba basebenze kwi-codebase efanayo ngaxeshanye, balandele utshintsho, kwaye balawule iingxabano.
# Qalisa indawo entsha yokugcina iGit
git yongeza .
git commit -m "Izibophelelo zokuqala"
Izixhobo zokuHlola iKhowudi
Izixhobo zokuphonononga ikhowudi, ezifana noPhononongo lweKhowudi yeGitHub, yenza ukuba abaphuhlisi baphonononge kwaye banike ingxelo ngekhowudi yomnye nomnye. Oku kunceda ukuqinisekisa ukuba ikhowudi ikumgangatho ophezulu, ihlangabezana nemigangatho yokukhowuda, kwaye ilandela ezona zenzo zilungileyo.
Izixhobo zoLawulo lweProjekthi
Izixhobo zolawulo lweprojekthi, ezinje ngeJira, Trello, okanye Asana, ukunceda abaphuhlisi ukucwangcisa, ukulandelela, nokulawula umsebenzi wabo. Ezi zixhobo zenza abaphuhlisi banike imisebenzi, babeke imihla ebekiweyo, kwaye babeke iliso kwinkqubela phambili.
IziCwangciso zokuziSebenzisa zokuPhuhlisa amava oPhuhlisi
Izicwangciso ezizenzekelayo zidlala indima ebalulekileyo ekwandiseni amava omphuhlisi ngokunciphisa iinzame zezandla, ukuphucula ukusebenza kakuhle, kunye nokunciphisa iimpazamo.
Uhlanganiso oluqhubekayo (CI)
Ukuhlanganiswa okuqhubekayo yinto apho abaphuhlisi badibanisa iinguqu zabo zekhowudi kwindawo yokugcina ephakathi rhoqo. Oku kuqinisekisa ukuba ikhowudi yakhiwe, ivavanywa, kwaye iqinisekisiwe rhoqo, ukunciphisa amathuba okuba nemiba yokudibanisa.
Ubonelelo oluqhubekayo (CD)
Ukuthunyelwa ngokuqhubekayo kuyindlela apho ukwakhiwa ngokuzenzekelayo kunye neemvavanyo zibangelwa rhoqo xa utshintsho lwekhowudi lutyhalelwa kwindawo yokugcina. Oku kuvumela abaphuhlisi ukuba bafake utshintsho lwekhowudi ngokukhawuleza nangokuthembekileyo.
Infrastructure as Code (IaC)
Iziseko zophuhliso njengekhowudi yinkqubo apho iziseko zophuhliso zichazwa kusetyenziswa ikhowudi, endaweni yolungiselelo lwezandla. Oku kwenza abaphuhlisi bakwazi ukulawula utshintsho lweziseko ezingundoqo, ukunciphisa iimpazamo, nokuphucula ukungaguquguquki.
Iindlela zokuPhuhlisa amava oPhuhlisi
Iindlela zokufundisa zidlala indima ebalulekileyo ekwandiseni amava abaphuhlisi ngokubonelela ngesakhelo sentsebenziswano, unxibelelwano, kunye nokusombulula iingxaki.
Indlela ye-Agile
Indlela ye-Agile yindlela ephindaphindayo kunye neyongezelelweyo yophuhliso lwesoftware egxininisa ukuguquguquka, intsebenziswano, kunye nokuphuculwa okuqhubekayo.
Isakhelo sesikram
Isakhelo sesikram yindlela ethandwayo ye-Agile egxininisa ukusebenza kweqela, uxanduva, kunye nenkqubela phambili ephindaphindayo ukuya kwiinjongo ezichazwe kakuhle.
DevOps Culture
Inkcubeko ye-DevOps yingqondo egxininisa intsebenziswano, unxibelelwano, kunye nokuphucula okuqhubekayo phakathi kophuhliso kunye namaqela okusebenza.
Umzekelo weKhowudi: Ukusebenzisa iPipeline yeCI/CD usebenzisa iPython
Kulo mzekelo, siya kubonisa indlela yokuphumeza umbhobho olula weCI/CD usebenzisa iPython kunye nemibhobho yethala leencwadi.
ngenisa os
inkqubo engaphantsi komhlaba
ukusuka kwimibhobho yokungenisa iPipeline
iklasi MyPipeline(Umbhobho):
def __init__(self):
super().__init__()
self.name = "Umbhobho wam"
def ukwakha (self):
# Yakha ikhowudi
subprocess.run(["yenza", "yakha"])
def test(self):
# Qhuba iimvavanyo zeyunithi
subprocess.run(["yenza", "uvavanyo"])
def deploy(self):
# Beka ikhowudi
subprocess.run(["yenza", "deploy"])
umbhobho = MyPipeline ()
pipeline.run()
Le khowudi ichaza umbhobho we-CI / CD olula owakhayo, uvavanyo, kunye nokubeka utshintsho lwekhowudi. Indlela ethi yakha iqhuba umyalelo othi yenza ukwakha, indlela yovavanyo iqhuba umyalelo othi yenza uvavanyo, kwaye indlela ethi deploy isebenzisa ukwenza deploy umyalelo.
Umbono: CI/CD Pipeline
Le tshati ilandelayo ibona umbhobho weCI/CD usebenzisa iChart.js.
const ctx = document.getElementById('myChart').getContext('2d');
const itshati = iTshati entsha (ctx, {
uhlobo: 'HorizontalBar',
idatha: {
iilebhile: ['Yakha', 'Vavanya', 'Fakela'],
uluhlu lwedatha: [{
ileyibheli: 'Amanyathelo oMbhobho',
idatha: [10, 20, 30],
umbala ongasemva: [
'rgba(255, 99, 132, 0.2)',
'rgba(54, 162, 235, 0.2)',
'rgba(255, 206, 86, 0.2)'
],
umbala womda: [
'rgba(255, 99, 132, 1)',
'rgba(54, 162, 235, 1)',
'rgba(255, 206, 86, 1)'
],
umdaUbubanzi: 1
}]
},
iinketho: {
izikali: {
y: {
startAtZero: yinyani
}
}
}
});
Le tshati ibonakalisa amanyathelo ombhobho, kubandakanywa ukwakha, ukuvavanya, kunye nokuthunyelwa.
Isiphelo
ukwandisa amava omphuhlisi kubalulekile kwimpumelelo yophuhliso lwesoftware. Izixhobo ezisebenzisanayo, izicwangciso ezizisebenzelayo, kunye neendlela zokusebenza zidlala indima ebalulekileyo ekuphuculeni imveliso yomphuhlisi, ulwaneliseko, kunye nomgangatho wobomi bubonke. Ngokwamkela inkqubela phambili yamva nje kuyilo lwesoftware, abaphuhlisi banokusebenza ngokufanelekileyo, ngokusebenzayo, nangentsebenziswano. Umzekelo wekhowudi kunye nokubonwa okubonelelwe kweli nqaku kubonisa indlela yokuphumeza umbhobho we-CI / CD olula usebenzisa iPython kunye neChart.js. Ngokwamkela ezi zicwangciso kunye nezixhobo, abaphuhlisi banokuthatha uphuhliso lwabo lwesoftware ukuya kwinqanaba elilandelayo.
IiReferensi
- [1] "Imeko yeNgxelo yeDevOps" yiPuppet Labs
- [2] "Udibaniso oluqhubekayo kunye noThutho oluqhubekayo" nguMicrosoft
- [3] "I-Agile Methodology" nguScrum.org
- [4] "Inkcubeko ye-DevOps" yi-DevOps Institute
- [5] "Imibhobho yePython" ngethala leencwadi
UFundo olongezelelweyo
- "I-DevOps Handbook" nguGene Kim
- "Ukuhanjiswa ngokuqhubekayo: Ukukhutshwa kweSoftware ethembekileyo ngoKwakha, uVavanyo, kunye noThumelo oluzenzekelayo" nguJez Humble
- "Ulawulo lweProjekthi eAgile ngeScrum" nguKen Schwaber
- "DevOps for Dummies" nguJohn F. Harris