Voyons pourquoi les outils CI et CI sont complètement différents.
What a pain CI est destiné à décider d'où vient l'idée, quelles sont les dernières confirmations que cela fonctionne, comment comprendre que vous avez une pratique, et pas seulement installé Jenkins.
L'idée de faire une conférence sur l'intégration continue est apparue il y a un an, lorsque je suis allé à des entretiens à la recherche d'un emploi. J'ai parlé avec 10 à 15 entreprises, dont une seule a pu répondre intelligemment à ce qu'est l'IC et expliquer comment elles se sont rendu compte qu'elles ne l'avaient pas. Les autres parlaient de bêtises inintelligibles à propos de Jenkins :) Eh bien, nous avons Jenkins, il construit, CI! Pour le rapport, je vais essayer d'expliquer ce qu'est réellement l'intégration continue et pourquoi Jenkins et des outils similaires ont une attitude très faible à cet égard.
Alors, qu'est-ce qui vous vient Ă l'esprit lorsque vous dites CI? La plupart des gens penseraient Ă Jenkins, Gitlab CI, Travis, etc.
MĂŞme si nous cherchons sur Google, nous recevrons ces outils.
Si vous connaissez les questions, alors immédiatement après avoir répertorié les outils, vous serez informé que CI est lorsque vous créez et exécutez des tests dans votre Pull Request pour une validation.
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 .
.
( , ):