2012-10-29 25 views
6

Python sürümlerini belirli bir env değişkenine bağımlı hale getirmek için travis-ci'yi yapılandırmanın bir yolu var mı?Env varna bağlı olarak Python sürümü yapın (travis-ci kullanarak)

aşağıdaki travis.yml yapılandırma dikkate alınız:

Django 1.3 ( DJANGO=1.3.4) ve 1.4 ( DJANGO=1.4.2) Ben de temelde Django 1.5 olan Django son gelişme sürümü ( DJANGO=https://github.com/django/django/zipball/master) karşı test etmek istediğiniz arasında
language: python 
python: 
    - "2.5" 
    - "2.6" 
    - "2.7" 
env: 
    - DJANGO=1.3.4 
    - DJANGO=1.4.2 
    - DJANGO=https://github.com/django/django/zipball/master 
install: 
    - pip install -q Django==$DJANGO --use-mirrors 
    - pip install -e . --use-mirrors 
script: 
    - python src/runtests.py 

.

Gördüğüm sorun, travis-ci'nin tüm belirtilen Python sürümlerine karşı tümleştirmeyi otomatik olarak çalıştırmasıdır. Ancak Django 1.5 artık Python 2,5'ü desteklemiyor. > Piton "2.5", "2.6", "2.7"

  • Django -

    • DJANGO = 1.3.4: o ben bu sadece gibi entegrasyonlar olsun böylece Django geliştirme sürümü için bunu ihmal etmek mümkün mü = 1.4.2 -> piton "2.5", "2.6", "2.7"
    • DJANGO = https://github.com/django/django/zipball/master -> piton "2.6", "2.7"

    GÜNCELLEME:

    İşte canlı bir e link Birkaç ay boyunca başarıyla kullandığım Odi'nin cevabına dayalı xample: https://github.com/deschler/django-modeltranslation/blob/master/.travis.yml

  • +0

    Not: Yukarıdaki örnekte, '- DJANGO = Django == 1.3.4' ve '- pip install -q $ DJANGO --use-mirrors' kullanmak zorundadır. – Mathijs

    cevap

    12

    Yapı matrisinden hariç tutmak istediğiniz yapılandırmaları belirtebilirsiniz (örn. test etmek istemediğiniz kombinasyonlar).

    senin .travis.yml Bu ekleyin:

    matrix: 
        exclude: 
        - python: "2.5" 
        env: DJANGO=https://github.com/django/django/zipball/master 
    

    Not: sadece tam eşleme dışında tutulacaktır.

    Daha fazla bilgi için build documentation (section The Build Matrix) konusuna bakın.

    +2

    Mükemmel, tam olarak aradığım şey. Çok teşekkürler. –

    İlgili konular