Ajuda: què és el lliurament continu

Abans nosaltres va dir sobre Integració Contínua (CI). Continuem amb el lliurament continu. Aquest és un conjunt de mètodes de desenvolupament de programari. Ajuda a garantir que el vostre codi estigui llest per al desplegament.

Ajuda: què és el lliurament continu
/Pixabay/ bluebudgie / PL

Història

La frase lliurament continu es va tornar a veure Manifest àgil des de l'any 2001 a l'inici de la llista de principis bàsics: "La prioritat és resoldre els problemes dels clients mitjançant el lliurament continu de programari actualitzat".

El 2010, Jez Humble i David Farley van llançar un llibre per lliurament continu. Segons els autors, el CD complementa l'enfocament Integració contínua i us permet simplificar la preparació del codi per al desplegament.

Després de la publicació del llibre, l'enfocament va començar a guanyar popularitat i en només un parell d'anys va arribar a ser gairebé universalment acceptat. D'acord amb enquesta, realitzat entre més de 600 desenvolupadors i gestors de TI el 2014, el 97% dels responsables tècnics i el 84% dels programadors estaven familiaritzats amb el lliurament continu.

Ara aquest enfocament segueix sent un dels més populars. Segons un estudi del 2018 que va implicar la comunitat informàtica DevOps i la comunitat Jenkins, això usos la meitat dels més de mil enquestats enquestats.

Com funciona el lliurament continu?

La base del CD és la preparació del codi per al desplegament. Per dur a terme aquesta tasca, s'utilitza l'automatització del procés de preparació del programari per al llançament. Hauria de ser estàndard en diferents entorns de desenvolupament, cosa que ajudarà a trobar ràpidament els punts febles i optimitzar-los. Per exemple, accelerar les proves.

Un exemple de procés de lliurament continu és el següent:

Ajuda: què és el lliurament continu

Si l'enfocament d'integració contínua s'encarrega d'automatitzar les dues primeres etapes, l'entrega contínua és responsable de les dues següents. L'estabilitat del procés està assegurada, entre altres coses, pels sistemes gestió de la configuració. Supervisen els canvis en la infraestructura, bases de dades i dependències. El desplegament en si es pot automatitzar o fer manualment.

S'imposen els requisits següents al procés:

  • Disponibilitat d'informació sobre la preparació per entrar a l'entorn de producció i la preparació per al llançament immediat (les eines de CD posen a prova el codi i permeten avaluar l'efecte dels canvis en la versió).
  • Responsabilitat global del producte final. L'equip del producte (gerents, desenvolupadors, provadors) pensa en el resultat, i no només en la seva àrea de responsabilitat (el resultat és una versió de treball que està disponible per als usuaris del producte).

En CD s'acostuma a utilitzar revisió de codi, i per recollir opinions dels clients: el principi llançament fosc. Primer s'allibera una nova funció per a un petit segment d'usuaris: la seva experiència d'interacció amb el producte ajuda a trobar deficiències i errors que no es van detectar durant les proves internes.

Quin és el benefici

L'entrega contínua ajuda a simplificar el desplegament del codi, la qual cosa té un impacte positiu en la productivitat i redueix la probabilitat d'esgotament dels empleats. En definitiva, això redueix els costos globals de desenvolupament. Per exemple, CD va ajudar un dels equips d'HP reduir aquests costos en un 40%.

A més, segons un estudi de 2016 (pàg. 28 document) - les empreses que han implementat CD resolen els problemes de seguretat de la informació un 50% més ràpidament que les que no utilitzen l'enfocament. Fins a cert punt, aquesta diferència es pot explicar pel rendiment de les eines d'automatització de processos.

Un altre avantatge és l'acceleració dels llançaments. Lliurament continu a l'estudi de desenvolupament finlandès ajudat augmentar la velocitat de muntatge del codi en un 25%.

Dificultats potencials

El primer i principal problema és la necessitat de reconstruir processos familiars. Per mostrar els beneficis del nou enfocament, val la pena canviar a CD gradualment, començant no per les aplicacions que requereixen més mà d'obra.

El segon problema potencial és el gran nombre de branques de codi. La conseqüència de la "ramificació" són conflictes freqüents i una major pèrdua d'una gran quantitat de temps. Possible solució - enfocament sense branques.

En particular, en algunes empreses les principals dificultats sorgeixen amb les proves: triguen massa temps. Els resultats de les proves sovint s'han d'analitzar manualment, però una possible solució pot ser paral·lelitzar les proves en les primeres etapes d'implementació del CD.

També hauríeu de formar els empleats perquè treballin amb noves eines: un programa educatiu preliminar estalviarà temps i esforç als desenvolupadors.

Ajuda: què és el lliurament continu
/flickr/ h.ger1969 / CC BY-SA

Instruments

Aquí hi ha algunes eines obertes per al lliurament continu:

  • GoCD — servidor per al lliurament continu en Java i JRuby on Rails. Us permet controlar tot el procés de lliurament de l'aplicació: compilació, prova i llançament. L'eina es distribueix sota la llicència Apache 2.0. El podeu trobar al lloc web oficial guia de configuració.
  • Capistrano — un marc per crear scripts que automatitzen el desplegament d'aplicacions en Ruby, Java o PHP. Capistrano és capaç d'executar ordres en una màquina remota connectant-s'hi mitjançant SSH. Funciona amb altres eines de lliurament i integració contínua, com ara el servidor Integrity CI.
  • Gradle és una eina multiplataforma que automatitza tot el cicle de desenvolupament d'aplicacions. Gradle funciona amb Java, Python, C/C++, Scala, etc. Hi ha integració amb Eclipse, IntelliJ i Jenkins.
  • drone - Plataforma de CD en llenguatge Go. El drone es pot desplegar on-premise o al núvol. L'eina està construïda sobre els contenidors i utilitza fitxers YAML per gestionar-los.
  • Spinnaker — una plataforma per al lliurament continu de codi en sistemes multinúvol. Desenvolupat per Netflix, els enginyers de Google van tenir un paper important en el desenvolupament de l'eina. Instruccions d'instal · lació trobar-lo al lloc web oficial.

Què llegir al nostre blog corporatiu:

Font: www.habr.com

Afegeix comentari