Sobes.tech
Junior — Middle

CI/CD kullanarak yazılım entegrasyonu ve teslimi süreçlerinin otomasyonunda ne kadar deneyiminiz var?

sobes.tech yapay zeka

AI'dan gelen yanıt

Python uygulamalarının derlenmesi, test edilmesi ve dağıtımı için CI/CD yapılandırması ve kullanımı konusunda deneyimim var. Genellikle GitHub Actions, GitLab CI veya Jenkins gibi araçları kullanıyorum.

Otomatize ettiğim temel adımlar:

  • Her commit veya pull request'te otomatik test çalıştırma.
  • Kod kalitesini linters (örneğin, flake8, pylint) ile kontrol etme.
  • Uygulamanın derlenmesi ve paketlenmesi (örneğin, Docker görüntülerinin oluşturulması).
  • Tüm kontroller başarıyla geçtikten sonra test veya üretim sunucularına otomatik dağıtım.

Python projesi için GitHub Actions'ta basit bir workflow örneği:

name: Python CI

on: [push, pull_request]

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v2
    - name: Python kurulumunu yap
      uses: actions/setup-python@v2
      with:
        python-version: '3.9'
    - name: Bağımlılıkları yükle
      run: |
        python -m pip install --upgrade pip
        pip install -r requirements.txt
    - name: Testleri çalıştır
      run: |
        pytest