Implementare continuă Jenkins [cu exemplu practic]
Publicat: 2020-12-28Implementarea Jenkins este un proces accelerat de dezvoltare complexă de software automatizat. Acest articol pune în lumină modul în care Jenkins integrează toate procesele ciclului de viață al dezvoltării sau etapele DevOps, cum ar fi construirea, documentarea, testarea, ambalarea, etapa, implementarea, analiza statică și multe altele, practicate în mai multe organizații.
Astăzi, multe organizații adoptă DevOps în ofertele lor. În ciclul de viață al dezvoltării software, trebuie să lansați software-ul în mod continuu ca parte a proiectului.
Instrumente precum Jenkins sunt foarte populare pentru potențialul lor de a permite integrarea și livrarea continuă a aplicațiilor, indiferent de platformă. Jenkins este un instrument gratuit și dintr-o singură sursă care poate gestiona orice fel de construcție în implementarea Jenkins , despre care va fi discutat în articol.
Jenkins poate fi integrat cu multe tehnologii de testare și implementare. Acest articol descrie modul în care Jenkins este utilizat pentru construirea și testarea continuă a proiectelor dvs. software.
Învață curs online de inginerie software de la cele mai bune universități din lume. Câștigă programe Executive PG, programe avansate de certificat sau programe de master pentru a-ți accelera cariera.
Astfel, înainte de a descoperi cum funcționează Jenkins, trebuie să înțelegem următoarele subiecte care stau la baza învățării Jenkins:

- Desfăşurare continuă
- Livrare continuă vs implementare continuă
- Un exemplu practic de implementare Jenkins
- Beneficiile implementării Jenkins
Să le aruncăm o privire pe toate unul câte unul!
Cuprins
Desfăşurare continuă
În implementare continuă, software-ul este lansat pe serverele de producție în mod continuu cu automatizare. Codul trece de etape precum compilarea codului sursă, validarea, revizuirea, împachetarea aplicației și efectuarea testării unitare și a integrării.
Codul este apoi implementat pe serverele de testare când este efectuat testul de acceptare a utilizatorului. Software-ul va fi implementat pe serverele de producție pentru lansarea software-ului. Citiți despre integrarea continuă cu jenkins.
Livrare continuă vs. Implementare continuă
Livrarea continuă și implementarea continuă sunt două etape cruciale ale unui SDLC în care livrarea continuă nu este implementată în producție pentru nicio modificare. Dezvoltatorul trebuie să se asigure că codul poate fi implementat întotdeauna și să îl implementeze oricând este necesar.
Credit de imagine
Implementarea continuă are nevoie de fiecare modificare implementată automat, fără nici un arbitraj uman.
În diagrama de mai sus, după terminarea etapelor de integrare continuă, aplicația construită este implementată automat pe serverele de producție, ceea ce nu este altceva decât o implementare constantă.
Sau, dacă ni se cere aprobarea umană pentru a implementa versiunea mai nouă pentru a automatiza totul, executăm o livrare continuă.
Datorită acestei diferențe de bază, au existat mai multe implicații care fac ca fiecare proces să fie potrivit pentru diferite circumstanțe.
Jenkins
Jenkins este un instrument open-source care accelerează procesul software printr-un server de automatizare utilizat pentru a construi și testa în mod continuu proiecte software, permițând un mediu CI/CD pentru dezvoltatori. Este scris în Java deci cu adevărat portabil.
Jenkins are mii de plugin-uri și integrări. Prin urmare, este potrivit pentru proiecte mari care necesită multă personalizare. Acceptă instrumente de control al versiunilor, cum ar fi Git, Maven, Mercurial și Subversion.
Un exemplu practic de implementare Jenkins
Acum că am aflat despre ce fel de instrument este Jenkins și care poate fi aplicat pentru un proces de dezvoltare software pentru implementare continuă, să vedem cum funcționează într-un mediu de producție.
În primul rând, Jenkins este configurat pe un server și se adaugă proiectul unui client pentru compilare și testare. Clientul poate descărca apoi aplicația care a fost testată. Implementarea activelor proiectului într-o nouă locație de pe server poate fi dificilă.

Pentru asta, preliminar, să presupunem că un proiect client este configurat pe Jenkins, legat de sistemul dumneavoastră de control al versiunilor.
Pasul 1: Crearea unui articol Jenkins
Din meniul principal, selectați „Articol nou” și denumiți-l. Acesta va exporta fișierele din proiectul dvs. client într-un folder de server.
Pasul 2: Crearea unei acțiuni post-build
Accesați proiectul client și selectați configurați. Acum, creați o acțiune post-build și alegeți „arhiva artefacte” din meniul drop-down. Adăugați tipurile de fișiere care urmează să fie arhivate și exportate.
După aceasta, adăugați o altă acțiune post-build, „Construiți alt proiect” și introduceți elementul de compilare creat anterior.
Arhiva
Pasul 3: Instalarea pluginului „Copy Artefact”
În al treilea pas, veți instala pluginul „Copy Artifact” al lui Jenkins.
Accesați „Numele proiectului” pentru configurarea și adăugarea unui pas de construire. Pe măsură ce pluginul Copy Artefact este instalat, veți vedea opțiunea „Copy artefacts from another project”. Desemnați folderul pentru a copia artefactele și setați calea locației.
Setați locația la „var/www/clients/..” . Aceasta va crea un folder nou pe server. Specificați calea cu o adresă HTTP(!).
Salvarea proiectului
Pasul 4: Efectuarea testării
După etapele primare, acum este momentul să testați aplicația.
Pentru aceasta, porniți o construcție din proiectul clientului. Acest lucru va determina o nouă construcție. Verificați folderul de implementare de pe server. Aici, veți vedea fișierele implementate.
Dar, chiar și după toate acțiunile, compilarea a eșuat și ați primit o eroare „FileException”.
De ce?
Motivele posibile pot fi:
- Jenkins nu a avut permisiunile de scriere în folder și nu poate implementa fișierele.
- Conectați SSH la server.
- Verificați permisiunile folderului de ieșire.
- Veți ști, ne-am confruntat cu o problemă.
Efectuați următorii pași pentru a rezolva acest lucru:
- Adăugați Jenkins la un grup, aici, grupul „www-data”.
- Schimbarea dreptului de proprietate asupra folderului de ieșire în grupul „www-data” cu comanda sudo chown – R : clienți „www – data”.
- Permiteți accesul la scriere în folder cu comanda sudo chmod .
- Reporniți serverul și vedeți aplicația implementată
Ce beneficii oferă Jenkins?
- Jenkins este un instrument open-source și oferă un suport excelent pentru comunitate.
- Jenkins este relativ ușor de instalat.
- Jenkins are peste 1000 de pluginuri. Dacă un plugin nu este disponibil, îl puteți codifica cu ușurință.
- Jenkins este gratuit.
- Jenkins este construit cu Java; prin urmare, portabil pe toate platformele majore.
Citește și: Idei și subiecte de proiect Jenkins

Ultimele Cuvinte
Jenkins este un instrument robust de automatizare scris Java care a fost utilizat pe scară largă pentru integrarea continuă. Cu Jenkins, este mai ușor să construiți și să testați proiecte software continuu cu ceea ce este scris. Este instrumentul suprem pentru a vă oferi software-ul întotdeauna prin integrarea cu un număr mare de tehnologii de testare și implementare.
Învățarea dezvoltării software – DevOps cu upGrad
upGrad oferă Program Executive PG în Dezvoltare Software – Specializare în DevOps în care veți învăța să furnizați aplicații și servicii la o viteză foarte mare în organizație. Facultatea de la upGrad vă va învăța toate aspectele legate de DevOps și de ce învățarea acestuia va face o carieră profitabilă pentru dvs.
Diploma PG a upGrad în specializarea în dezvoltare software în Programul DevOps Repere:
Acest curs online prelungit de 12 luni oferă următoarele caracteristici:
- Sesiuni online cu cunoștințe cu prelegeri live
- Acces gratuit la conținutul valoros din Data Science și Machine Learning
- Lucrez la peste 7 proiecte și sarcini live
- Învățarea a zece limbaje și instrumente de programare
- Asigurare de plasare garantată
- Suport în carieră 360° cu asistență la locul de muncă