Integración continua como práctica, no Jenkins. Andrey Alexandrov



Analicemos por qué las herramientas de CI son completamente diferentes.



Qué doloroso CI tiene la intención de decidir de dónde vino la idea, cuáles son las últimas confirmaciones de que funciona, cómo entender que tiene una práctica, y no solo instalar Jenkins.



La idea de hacer una charla sobre Integración Continua apareció hace un año, cuando fui a entrevistas buscando trabajo. Hablé con 10-15 empresas, de las cuales solo una pudo responder de manera inteligible qué es la IC y explicar cómo se dieron cuenta de que no la tenían. El resto hablaba tonterías ininteligibles sobre Jenkins :) Bueno, tenemos a Jenkins, ¡construye, CI! Para el informe intentaré explicar qué es realmente la integración continua y por qué Jenkins y herramientas similares tienen una actitud muy débil hacia esto.





Entonces, ¿qué le viene a la mente cuando dice CI? La mayoría de la gente pensaría en Jenkins, Gitlab CI, Travis, etc.





Incluso si buscamos en Google, se nos darán estas herramientas.





Si está familiarizado con las preguntas, inmediatamente después de enumerar las herramientas, se le informará que CI es cuando crea y ejecuta pruebas en su Solicitud de extracción para una confirmación.





Continuous Integration , ! Continuous Integration Jenkins-, GitLab- ..





CI, , , , .





!





, . , master- git .





. , feature branch, .





.





, . , , .





, . . , 2. , 10 15, 100 . .





- . , - .





.





, , .





. , . – . , – , , - . , , . pull request . . ? .





- .





.





- , , . ? . ? pull request , .



, . , - , , , . , , , - . , . , -.



, , . . , 5-10, , , - . , , .





- – ! .





20 . Continuous Integration .



– agile framework. 96- . - , , , - , . 24 , - , , .





«Continuous Integration» . , . , . integration .



. .



Integration — , , , , . , -. , waterfall, - . .



Integration – , . , transbase developer, , .



, integration – .





«continuous», ? , . – , , . . . . , . . . . - , .



, - , , , . . - , , , . Jenkins.



: , , - – Jenkins . Jenkins .



. . – , - .



, 2020- - . . Jenkins. . . - . 3-4 . , git pull, . . – , Continuous Integration!





, ? . , , - , . man…, , , . .



. Continuous Integration . , , , . , . , Continuous Integration .



- , , ?





, – State of DevOps. , 7 . , Google.



2018- , , , , IT.



? 4 , : deployment frequency, lead time for changes, time to restore service, change failure rate.



, -, , , , , . : , - , medium performer, high performer . – Netflix, Amazon, , , .





, . Technology Radar Gitflow. Gitflow , . , , branches, . Technology Radar HOLD. ? .



, , , , - .



Gitflow , Continuous Integration, , , Gitflow – . , , , Gitflow , Gitflow , Gitflow .



, Gitflow . . , , , . . - .



, , , 3.2, 4 , , , . , , - .



, – - . . . . - , Continuous Integration, , . , , , , . , , . .





- , , , Continuous Integration - , ?



Jez Humble – Handbook, Accelerate, Continuous Delivery «Continuous Delivery». :



  • .
  • unit-.
  • , 10 .


, , .



. . . 10 , , Continuous Integration, , , . ? , , , . , , , . , 20-30 . , , , , , .



prod, Continuous Integration, , . , . . , , – , . . , - , . – .



Unit- – , – , . , , .



Continuous Integration. , . .



:



  • Continuous Integration – Jenkins, Gitlab.
  • , , .
  • , , , . . , . .
  • , , .




?



. ? , ?



, «», , , - .



, - , ?



, . , , .



. . ? , , . . . , , . . . , , - . , , - . , , – , . .



. ?



?



.



- , . , - , . , , - . , . , - , - , , , . , . .



, !



( ) ? , .



.



Continuous Integration , , , . . – - , , , . , Continuous Integration – . , . research, .



4 , . 4 . , . 3- . Continuous.



, , , , ?



Continuous Integration. , 10 . , . continuous deployment, prod , - . , . , , - , .



? , .



, .



, , , … . ? , , , . , , . , , , . , .



, Continuous Integration Continuous Delivery, …. -, , . Scientific. , GitHub . , . , - : , Rest API. , , . , . , , .



. transbase development. 100 % Continuous Integration, , .



transbase development , transbase debelopment?



, . . . , . : « , , , transbase develoopment». . , . .



– . , , , . . Continuous Integration . , , . . , . , .



- - . , , . . , , , . . . , .



: « , - ?».



. . , - . , , , - . , . transbase development, , , continuous review. , pull request , -. pull request 10 . .



, , - . -, , - . , 1 000 , . , . , . , . . – , . , , . , - ? ? , . transbase deveploment – , .



4 , , , . , , .



() . – , – . – . , . , 15 . , . . branches, toggle, .



. toggle , https://trunkbaseddevelopment.com/. toggle: , , . . toggle – .



- : «Jenkins ?»



Jenkins . , : Jenkins, Gitlab . , . , . – , . , , , . , – , , .



. . , , ?



. Jez Humble. . , , , , , , , .



, . . . , , ? , Continuous Integration Development, , . . ?



, , , . , bash, .



-, bash – . .



, . bash . . , . , , bash. , . . .



, . , pull request 1 000 bash. 4 . . . . pull request , - bash, .



. Pulumi. . , , . . toggle . . . . . . - . . , . , . , , , .



- ?



. . , , , , , , . . , Continuous Integration, , .



() , . , . – , , . , : developers, , production-, .



? , , . - , , . , , , - . - . , , - production. 5-10-15 , , – .



Continuous Integration 10 , 10 30 . -. . - . .



, , . . - -. - .



- , , production , , . . – . - , 100 . . .



, , . . , -, . : « » . .



, , , , . , . , . Prod , . . . . , digital transformation, , .



, , . , prod .



, .



, -.



, . , . . . . . . . , , , . . , , , . .



() : « . ? - , ».



() . , . Continuous Integration – , 100 % . Continuous Integration , , , , – - , . , . , . : «, ?». : «, ». . . .



, , .



() . – , .



() , . – , 100 % Continuous Integration. . . . . – , , , , «Deploy» . ? , , .



– . pre prod, . , , – . . …, , . .



, , . , .



Continuous Integration. .



, MVP, , , . . , MVP user story, , . . , - user story , TDD. TDD, , , . . – . TDD , . , Test Driven Development, . , , . , , , , . .



. MVP . , , , MVP TDD, , , , .



. , - , .



() , MVP, - . - . MVP - , .



-, .



MVP prod.



.



TDD , , . , . , , , . , - , - . , - , - . , . . , , , .



TDD , - Ruby, Ruby. : « TDD». : «, - ». , Python TDD. , . , , . , , , , TDD – , , . .



() . - , , . . . , , , . , CI . CI . , , . , .



. 4 . 4 .



.



( , ):






All Articles