GitLab CI/CD Nasıl Kurulur ve Yönetilir? Kolay Adımlarla Detaylı Rehber

GitLab CI/CD Nasıl Kurulur ve Yönetilir? Kolay Adımlarla Detaylı Rehber

GitLab CI/CD kurulumu ve yönetimi hakkında detaylı bir rehber. Adım adım anlatımla, GitLab CI/CD’nin gücünden nasıl yararlanacağınızı keşfedin.

BFS

Merhaba yazılımcı dostum! Bugün seni heyecan verici bir dünyaya davet ediyorum: GitLab CI/CD! Eğer yazılım geliştirme sürecini daha verimli hale getirmek, hata riskini azaltmak ve projelerini otomatikleştirmek istiyorsan doğru yerdesin. GitLab, devasa projelerin yönetimini kolaylaştıran, geliştiriciler için oldukça etkili ve güçlü bir araçtır. Ama biz bugün GitLab’ın en güzel özelliklerinden biri olan CI/CD'yi (Sürekli Entegrasyon ve Sürekli Teslimat) keşfedeceğiz. Hazır mısın?

GitLab CI/CD Nedir?



GitLab CI/CD, yazılım projelerini sürekli olarak entegre etmek ve teslim etmek için kullanılan güçlü bir otomasyon aracıdır. Yani, yazılım geliştirme sürecinin her aşamasında, yazdığın kodu test etmek, derlemek ve canlıya almak için elle yapman gereken işleri GitLab’ın otomatik olarak yapmasını sağlarsın. Peki, neden bu kadar önemli? Çünkü CI/CD, yazılım geliştirme süreçlerini hızlandırır, hataları azaltır ve takım çalışmasını daha sorunsuz hale getirir. Her şeyin bir düzene girmesi ve otomatize olması, sana zaman kazandırır.

Şimdi gel, GitLab CI/CD’yi nasıl kuracağımıza adım adım bakalım!

Adım 1: GitLab Hesabı Oluşturun



İlk adım, bir GitLab hesabı oluşturmak. GitLab’ın resmi web sitesine gidip, kaydolman çok kolay. GitLab'ın birçok planı var, ama eğer sadece kişisel veya küçük projelerde kullanacaksan ücretsiz planını tercih edebilirsin.

GitLab’ı kurmadan önce bir repo oluşturmak da önemli bir adımdır. Hadi, bu adımdan sonra GitLab’ı CI/CD iş akışına entegre etmeye başlayalım.

Adım 2: GitLab Runner’ı Kurma



GitLab CI/CD'nin çalışabilmesi için bir GitLab Runner kurman gerekiyor. Runner, GitLab’a iş akışlarını ve görevleri nasıl çalıştıracağına dair talimat verir. GitLab Runner’ı kurmak için terminale aşağıdaki komutu yazabilirsin:


sudo apt-get install gitlab-runner


Bu komut, GitLab Runner’ı bilgisayarına kuracaktır. Eğer macOS kullanıyorsan, Homebrew ile şu komutu kullanabilirsin:


brew install gitlab-runner


GitLab Runner kurulduktan sonra, runner’ı GitLab hesabına kaydettirmen gerekiyor. Bunun için şu komutu kullanabilirsin:


sudo gitlab-runner register


Bundan sonra bir dizi soruyla karşılaşacaksın. GitLab URL’sini (örneğin: https://gitlab.com) ve token bilgisini girmen gerekecek. Token’i, GitLab projende Settings > CI / CD sekmesinde bulabilirsin.

Adım 3: GitLab CI/CD Pipeline'ını Yapılandırma



GitLab’da CI/CD pipeline’ları, yazılım geliştirme sürecinde neleri, nasıl ve ne zaman çalıştırman gerektiğini belirler. CI/CD pipeline’ı, bir `.gitlab-ci.yml` dosyasıyla yapılandırılır. Bu dosya, proje kök dizinine yerleştirilmelidir.

İlk basit pipeline’ını aşağıdaki gibi oluşturabilirsin:


stages:
  - build
  - test
  - deploy

build-job:
  stage: build
  script:
    - echo "Building the project..."

test-job:
  stage: test
  script:
    - echo "Running tests..."

deploy-job:
  stage: deploy
  script:
    - echo "Deploying the project..."


Burada stages, işlemlerin sırasını belirler. build-job, test-job ve deploy-job ise her aşamada yapılacak işleri tanımlar. Bu dosyayı projene eklediğinde, GitLab her push işleminden sonra otomatik olarak bu işlemleri başlatacak.

Adım 4: Pipeline’ı Çalıştırma ve Sonuçları İnceleme



Artık her şey hazır! GitLab’a bir push gönderdiğinde, `.gitlab-ci.yml` dosyanıza göre bir pipeline otomatik olarak çalışacaktır. GitLab, her aşamanın durumunu CI/CD > Pipelines sekmesinde gösterir.

Pipeline’ın her adımında neler olduğunu, hangi adımın geçtiğini veya hangi adımda hata aldığını buradan takip edebilirsin. Bu, yazılım geliştirme sürecinde oldukça faydalıdır, çünkü hatalar hemen tespit edilir ve düzeltilir.

Adım 5: Pipeline'a Gelişmiş Özellikler Eklemek



Artık temel bir CI/CD pipeline’ını kurduk, ancak işin içine biraz daha derinleşmek istersen, GitLab CI/CD birçok gelişmiş özellik sunar. Örneğin, cache kullanarak derleme süreçlerini hızlandırabilir, artifact kullanarak dosyalarını kaydedebilir veya environment kullanarak farklı dağıtım ortamları belirleyebilirsin.

Örnek olarak, cache özelliğini şu şekilde ekleyebilirsin:


build-job:
  stage: build
  script:
    - echo "Building the project..."
  cache:
    paths:
      - node_modules/


Bu sayede, her seferinde node_modules yeniden indirilmez ve bu, pipeline’larının hızını artırır.

GitLab CI/CD Yönetimi ve İpuçları



GitLab CI/CD, sadece yazılım geliştirme sürecini hızlandırmakla kalmaz, aynı zamanda ekipler arasında güçlü bir işbirliği sağlar. Takım arkadaşlarınla birlikte pipeline’ları güncelleyebilir, iş akışlarını özelleştirebilir ve projenin her aşamasında otomatik kontroller yapabilirsin.

Unutma, CI/CD süreçlerini düzenli olarak gözden geçirmek ve optimize etmek çok önemlidir. Her yeni özellik eklediğinde veya her yeni entegrasyon sağladığında, pipeline’larını test etmeyi unutma!

Ayrıca, GitLab’ın sunduğu Auto DevOps gibi özellikleri kullanarak çok daha gelişmiş pipeline’lar oluşturabilirsin.

İlgili Yazılar

Benzer konularda diğer yazılarımız

Modern Yazılım Geliştirme Süreçlerinde Yapay Zeka ve Otomasyonun Rolü: 2025’te Yeni Başlangıçlar

Yazılım geliştirme dünyası hızla evriliyor. 2025 yılına adım attığımızda, bu süreçte yapay zeka ve otomasyonun rolü hiç olmadığı kadar önemli hale geldi. Geçmişte yazılım geliştirme yalnızca kod yazmak ve sistemleri test etmekle sınırlıydı. Ancak bugünün...

Yazılım Geliştiriciler İçin Verimli Çalışma Alanı Oluşturmanın İpuçları: En İyi Araçlar ve Yöntemler

Verimli Bir Çalışma Alanı Neden Önemlidir?Yazılım geliştirici olmanın zorluklarından biri de sürekli odaklanmış ve üretken olabilmektir. Bir geliştirici olarak, işlerinizin çoğunu bilgisayar başında geçirirsiniz ve bu süre zarfında verimli bir çalışma...

2025’te Web Sitesi Tasarımı: Yapay Zeka ve Otomasyonun Geleceği

2025 yılına adım atarken, teknolojinin her alanda hızla dönüşüm geçirdiğini görmek kaçınılmaz. Bu değişimlerin en çok etkilediği alanlardan biri ise hiç kuşkusuz web sitesi tasarımı. Web tasarımı sadece görsel estetikten ibaret olmaktan çok daha fazlası...