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