{"id":59,"date":"2025-06-22T00:30:03","date_gmt":"2025-06-21T21:30:03","guid":{"rendered":"https:\/\/ali-aslan.com\/?p=59"},"modified":"2025-06-24T22:56:11","modified_gmt":"2025-06-24T19:56:11","slug":"ci-continuous-integration-cd-continuous-delivery-deployment-nedir","status":"publish","type":"post","link":"https:\/\/ali-aslan.com\/?p=59","title":{"rendered":"CI (Continuous Integration) \/ CD (Continuous Delivery \/ Deployment) Nedir?"},"content":{"rendered":"<h2 class=\"wp-block-heading\" id=\"cicd-nedir\">CI\/CD Nedir?<\/h2>\n\n\n\n<p>CI\/CD, denildi\u011finde yaz\u0131l\u0131m geli\u015ftirme s\u00fcre\u00e7lerinde i\u015flerimizi kolayla\u015ft\u0131rmak i\u00e7in otomasyon edilmi\u015f yap\u0131lar gelmektedir, bu otomatize edilmi\u015f yap\u0131lar sayesinde kodlar\u0131n\u0131z\u0131n veya kurdu\u011fumuz yap\u0131lar\u0131n kalite, h\u0131z ve g\u00fcvenilirliklerini artt\u0131rmaktad\u0131r.<\/p>\n\n\n\n<p>her yaz\u0131l\u0131m geli\u015ftirme s\u00fcre\u00e7leri farkl\u0131 yap\u0131larda olsa da CI\/CD ile kodlar\u0131m\u0131z\u0131n otomatik olarak k\u00fct\u00fcphane zaafiyet kontrolleri,derlenmesi, test edilmesi, da\u011f\u0131t\u0131m ve s\u00fcr\u00fcm y\u00f6netimi i\u00e7eren bir d\u00f6ng\u00fcd\u00fcr. Bu d\u00f6ng\u00fc i\u00e7erisinde herhangi bir ad\u0131m\u0131nda problemlerin h\u0131zl\u0131ca tespit edilerek, m\u00fcmk\u00fcn olan en k\u0131sa s\u00fcrede problem \u00e7\u00f6z\u00fclerek ve yaz\u0131l\u0131m\u0131n kalitesi art\u0131r\u0131l\u0131r ve m\u00fc\u015fterilerin ihtiya\u00e7lar\u0131na daha h\u0131zl\u0131 ve temiz cevap vermesi sa\u011flan\u0131r.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1000\" height=\"420\" src=\"http:\/\/ali-aslan.com\/wp-content\/uploads\/2025\/06\/What-is-the-CICD-Pipeline.webp\" alt=\"\" class=\"wp-image-60\" srcset=\"https:\/\/ali-aslan.com\/wp-content\/uploads\/2025\/06\/What-is-the-CICD-Pipeline.webp 1000w, https:\/\/ali-aslan.com\/wp-content\/uploads\/2025\/06\/What-is-the-CICD-Pipeline-300x126.webp 300w, https:\/\/ali-aslan.com\/wp-content\/uploads\/2025\/06\/What-is-the-CICD-Pipeline-768x323.webp 768w\" sizes=\"auto, (max-width: 1000px) 100vw, 1000px\" \/><\/figure>\n\n\n\n<p>\u00d6rne\u011fin; Finans sek\u00f6t\u00fcr\u00fcnde \u00e7al\u0131\u015fan bir yaz\u0131l\u0131mc\u0131s\u0131n\u0131z yeni bir \u00f6zellik eklediniz ve kod de\u011fi\u015fikli\u011fini onaylad\u0131n\u0131z, yaz\u0131l\u0131m\u0131n\u0131z\u0131 ve canl\u0131ya almadan \u00f6nce CI\/CD pipeline otomatik olarak \u00e7al\u0131\u015ft\u0131rarak yazl\u0131l\u0131m i\u00e7erisinde zaafiyet olan k\u00fct\u00fcphaneleri ve derleme sonras\u0131nda yazd\u0131\u011f\u0131n\u0131z testleri ger\u00e7ekle\u015ftirir e\u011fer problem yoksa bir sonraki ad\u0131m sunucuya canl\u0131ya almay\u0131 ger\u00e7ekle\u015ftirir.<br><br>Testlerde problem \u00e7\u0131karsa ya da k\u00fct\u00fcphane zaafiyeti varsa hata vererek i\u015flemi sonland\u0131r\u0131r olas\u0131 g\u00fcvenlik ya da yaz\u0131l\u0131m hatalar\u0131n\u0131 size g\u00f6stererek hatal\u0131 kodu canl\u0131ya alman\u0131z\u0131 ve sizin ya da m\u00fc\u015fterilerinizi zarar etmesini \u00f6nler.<\/p>\n\n\n\n<p><strong>S\u00fcrekli Entegrasyon (CI)<\/strong>;<br>Kod de\u011fi\u015fikliklerinin s\u00fcrekli olarak tespit edilmesini ve entegre edilmesindeki test s\u00fcre\u00e7lerinin bulundu\u011fu k\u0131s\u0131md\u0131r.<\/p>\n\n\n\n<p><strong>S\u00fcrekli Teslimat (CD)<\/strong>;<br>CI sonras\u0131nda test ve kod dogrulamalar\u0131 kabul edilen yaz\u0131l\u0131m\u0131n otomatik olarak da\u011f\u0131t\u0131lmas\u0131(deploy) ve s\u00fcr\u00fcm kontrollerinin ger\u00e7ekle\u015ftirildi\u011fi k\u0131s\u0131md\u0131r.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1000\" height=\"600\" src=\"https:\/\/ali-aslan.com\/wp-content\/uploads\/2025\/06\/CICD-Tools.webp\" alt=\"\" class=\"wp-image-61\" srcset=\"https:\/\/ali-aslan.com\/wp-content\/uploads\/2025\/06\/CICD-Tools.webp 1000w, https:\/\/ali-aslan.com\/wp-content\/uploads\/2025\/06\/CICD-Tools-300x180.webp 300w, https:\/\/ali-aslan.com\/wp-content\/uploads\/2025\/06\/CICD-Tools-768x461.webp 768w\" sizes=\"auto, (max-width: 1000px) 100vw, 1000px\" \/><\/figure>\n\n\n\n<p><strong>Pipeline A\u015famalar\u0131<\/strong> CI\/CD s\u00fcrecinde tipik olarak \u015fu a\u015famalar yer al\u0131r;<\/p>\n\n\n<ul class=\"wp-block-list\" style=\"\">\n<li>\n<strong>Commit<\/strong> (kodun versiyon kontrol sistemine g&ouml;nderilmesi)<\/li>\n\n\n\n<li>\n<strong>Build<\/strong> (derleme, ba&#287;&#305;ml&#305;l&#305;klar&#305;n toplanmas&#305;)<\/li>\n\n\n\n<li>\n<strong>Static Analysis<\/strong> (kod kalitesi, linting, g&uuml;venlik taramalar&#305;)<\/li>\n\n\n\n<li>\n<strong>Test<\/strong> (unit, integration, e2e)<\/li>\n\n\n\n<li>\n<strong>Artifact Management<\/strong> (docker image, NuGet\/NPM paketi vb. depolama)<\/li>\n\n\n\n<li>\n<strong>Deploy<\/strong> (test, staging, prod ortamlar&#305;na otomatik aktar&#305;m)<\/li>\n\n\n\n<li>\n<strong>Monitoring &amp; Feedback<\/strong> (log, metrik toplama, alarm kurma)<\/li>\n<\/ul>\n\n\n\n<p><strong>Pop\u00fcler CI\/CD Ara\u00e7lar\u0131;<\/strong><\/p>\n\n\n<ul class=\"wp-block-list\" style=\"\">\n<li>\n<strong>Jenkins<\/strong><br>En pop&uuml;ler olan ve Java tabanl&#305;, a&ccedil;&#305;k kaynak ve eklenti ekosistemi sayesinde hemen her i&#351; ak&#305;&#351;&#305;na uyarlanabilen, hem basit hem de karma&#351;&#305;k pipeline&rsquo;lar in&#351;a etmeye uygun self-hosted &ccedil;&ouml;z&uuml;md&uuml;r.<\/li>\n\n\n\n<li>\n<strong>GitLab CI\/CD<\/strong><br>GitLab i&ccedil;inde yerle&#351;ik, tam entegre ve a&ccedil;&#305;k kaynak pipeline&rsquo;lar; kod depolama, issue takip ve deploy s&uuml;re&ccedil;lerini tek &ccedil;at&#305; alt&#305;nda toplar.<\/li>\n\n\n\n<li>\n<strong>Azure DevOps<\/strong><br>Microsoft&rsquo;un bulut hizmeti; Azure ba&#351;ta olmak &uuml;zere GitHub, Bitbucket ve GitLab repo&rsquo;lar&#305;yla uyumlu, hem bulut hem self-hosted ajanlarla &ccedil;al&#305;&#351;abilen tam &ouml;zellikli CI\/CD platformudur.<\/li>\n\n\n\n<li>\n<strong>CircleCI<\/strong><br>Bulut tabanl&#305;, kolay ba&#351;lat&#305;labilir ve yatayda otomatik &ouml;l&ccedil;eklenebilir yap&#305;; GitHub, GitLab ve Bitbucket ile s&#305;k&#305; entegrasyon sunar.<\/li>\n\n\n\n<li>\n<strong>Travis CI<\/strong><br>Bulut tabanl&#305; bir CI\/CD ve a&ccedil;&#305;k kaynakl&#305;d&#305;r. GitHub ile entegrasyonu sayesinde, projeleri h&#305;zl&#305; ve kolay bir &#351;ekilde CI\/CD&#8217;ye uygun hale getirir, otomatik test, derleme ve da&#287;&#305;t&#305;m&#305; destekler ve &ouml;zelle&#351;tirilebilir yap&#305;land&#305;rma se&ccedil;enekleri sunar.<\/li>\n\n\n\n<li>\n<strong>GitHub Actions<\/strong><br>GitHub ekosistemine yerle&#351;ik, YAML tabanl&#305; i&#351; ak&#305;&#351;lar&#305; .github\/workflow tan&#305;mlamaya imkan veren, hem GitHub&rsquo;&#305;n bulut sunucular&#305;nda hem de kendi self-hosted runner&rsquo;lar&#305;n&#305;zda &ccedil;al&#305;&#351;abilen, geni&#351; eklenti deste&#287;i sayesinde do&#287;rudan repodan CI\/CD s&uuml;re&ccedil;lerinizi y&ouml;netebilece&#287;iniz entegre CI\/CD platformudur.<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>CI\/CD Nedir? CI\/CD, denildi\u011finde yaz\u0131l\u0131m geli\u015ftirme s\u00fcre\u00e7lerinde i\u015flerimizi kolayla\u015ft\u0131rmak i\u00e7in otomasyon edilmi\u015f yap\u0131lar gelmektedir, bu otomatize edilmi\u015f yap\u0131lar sayesinde kodlar\u0131n\u0131z\u0131n veya kurdu\u011fumuz yap\u0131lar\u0131n kalite, h\u0131z ve g\u00fcvenilirliklerini artt\u0131rmaktad\u0131r. her yaz\u0131l\u0131m geli\u015ftirme s\u00fcre\u00e7leri farkl\u0131 yap\u0131larda olsa da CI\/CD ile kodlar\u0131m\u0131z\u0131n otomatik olarak k\u00fct\u00fcphane zaafiyet kontrolleri,derlenmesi, test edilmesi, da\u011f\u0131t\u0131m ve s\u00fcr\u00fcm y\u00f6netimi i\u00e7eren bir d\u00f6ng\u00fcd\u00fcr. Bu d\u00f6ng\u00fc [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[6],"tags":[],"class_list":["post-59","post","type-post","status-publish","format-standard","hentry","category-devops"],"_links":{"self":[{"href":"https:\/\/ali-aslan.com\/index.php?rest_route=\/wp\/v2\/posts\/59","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ali-aslan.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/ali-aslan.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/ali-aslan.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/ali-aslan.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=59"}],"version-history":[{"count":6,"href":"https:\/\/ali-aslan.com\/index.php?rest_route=\/wp\/v2\/posts\/59\/revisions"}],"predecessor-version":[{"id":75,"href":"https:\/\/ali-aslan.com\/index.php?rest_route=\/wp\/v2\/posts\/59\/revisions\/75"}],"wp:attachment":[{"href":"https:\/\/ali-aslan.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=59"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/ali-aslan.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=59"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/ali-aslan.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=59"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}