Σύστημα Συνεχής Ολοκλήρωσης για Python βάση κώδικα

ψήφοι
48

Αρχίζω να εργαστεί σε ένα πρόγραμμα χόμπι με Python βάση κώδικα και θα ήθελα να δημιουργήσει κάποια μορφή συνεχούς ολοκλήρωσης (δηλαδή τρέχει μια μπαταρία των δοκιμών περιπτώσεις κάθε φορά που το check-in γίνεται και η αποστολή γκρινιάζουν e-mail στην υπεύθυνη πρόσωπα, όταν οι δοκιμές δεν) είναι παρόμοια με CruiseControl ή TeamCity .

Αντιλαμβάνομαι θα μπορούσα να κάνω αυτό με άγκιστρα στα περισσότερα VCSes , αλλά αυτό προϋποθέτει ότι οι δοκιμές τρέχουν στον ίδιο υπολογιστή με το διακομιστή ελέγχου έκδοσης, η οποία δεν είναι τόσο κομψό όσο θα ήθελα. Υπάρχει κάποιος που έχει οποιεσδήποτε προτάσεις για ένα μικρό, φιλικό προς το χρήστη, το σύστημα συνεχούς ολοκλήρωσης open-source κατάλληλο για Python βάση κώδικα;

Δημοσιεύθηκε 02/08/2008 στις 19:43
πηγή χρήστη
Σε άλλες γλώσσες...                            


7 απαντήσεις

ψήφοι
26

Μια πιθανότητα είναι Hudson. Είναι γραμμένο σε Java, αλλά δεν υπάρχει ενοποίηση με τα προγράμματα Python:

Hudson αγκαλιάζει Python

Δεν έχω δοκιμάσει τον εαυτό μου, όμως.

( Update , Σεπτ 2011: Μετά από μια διαφωνία εμπορικών σημάτων Hudson έχει μετονομαστεί σε Jenkins .)

Απαντήθηκε 02/08/2008 στις 19:56
πηγή χρήστη

ψήφοι
25

Τρέχουμε Buildbot - Trac στην εργασία. Δεν έχω χρησιμοποιήσει πάρα πολύ από την βάση κώδικα μου δεν είναι μέρος του κύκλου κυκλοφορίας ακόμα. Αλλά θα τρέξει τις δοκιμές σε διαφορετικά περιβάλλοντα (OSX / Linux / Win) και στέλνει μηνύματα ηλεκτρονικού ταχυδρομείου - και είναι γραμμένο σε Python.

Απαντήθηκε 02/08/2008 στις 20:06
πηγή χρήστη

ψήφοι
17

Χρησιμοποιούμε τόσο Buildbot και Hudson για την ανάπτυξη Jython. Και οι δύο είναι χρήσιμα, αλλά έχουν διαφορετικά πλεονεκτήματα και αδυναμίες.

διαμόρφωση Buildbot είναι καθαρή Python και είναι αρκετά απλό μόλις πάρετε κρεμάτε από το (δείτε τις epydoc που δημιουργείται docs API για την πιο πρόσφατη πληροφορίες). Buildbot καθιστά ευκολότερο να προσδιοριστούν τα καθήκοντα μη-δοκιμή και διανομή των δοκιμαστές. Ωστόσο, αυτό πραγματικά δεν έχει καμία έννοια των ατομικών δοκιμών, μόνο κειμένου, HTML, και περίληψη της παραγωγής, οπότε αν θέλετε να έχετε πολυεπίπεδη εξόδου δυνατότητα περιήγησης δοκιμής και ούτω καθεξής, θα πρέπει να το φτιάξετε μόνοι σας, ή απλά να χρησιμοποιήσετε Hudson.

Hudson έχει καταπληκτική υποστήριξη για γεώτρηση κάτω από τα συνολικά αποτελέσματα σε σύνολα δοκιμών και μεμονωμένες δοκιμές? Επίσης, είναι μεγάλη για τη σύγκριση εξόδου δοκιμής μεταξύ χτίζει, αλλά η κατανεμημένη (master / slave) τα πράγματα είναι συγκριτικά πιο περίπλοκη, γιατί θα πρέπει να έχετε ένα περιβάλλον Java για τους σκλάβους πολύ? Επίσης, Hudson είναι λιγότερο ανεκτικοί φύλλο συνδέσεις δικτύου μεταξύ του πλοιάρχου και των σκλάβων.

Έτσι, για να πάρει τα οφέλη και των δύο εργαλείων, θα τρέχει ένα μόνο παράδειγμα της Hudson, που πιάνει τα κοινά αποτυχίες δοκιμασία, τότε θα κάνουμε παλινδρόμησης πολλαπλών πλατφορμών Buildbot.

Εδώ είναι περιπτώσεις μας:

Απαντήθηκε 15/09/2008 στις 01:11
πηγή χρήστη

ψήφοι
17

Δεύτερη η Buildbot - ενσωμάτωση Trac. Μπορείτε να βρείτε περισσότερες πληροφορίες σχετικά με την ενσωμάτωση στην ιστοσελίδα Buildbot . Στην προηγούμενη δουλειά μου, γράψαμε και χρησιμοποίησε το plugin θα αναφέρουμε (tracbb). Τι το plugin που κάνει είναι ξαναγράψιμο όλες τις διευθύνσεις URL Buildbot ώστε να μπορείτε να χρησιμοποιήσετε Buildbot μέσα από Trac. ( Http://example.com/tracbb ).

Το πολύ ωραίο πράγμα για Buildbot είναι ότι η διαμόρφωση είναι γραμμένο σε Python. Μπορείτε να ενσωματώσετε το δικό σας κώδικα Python άμεσα στη διαμόρφωση. Είναι επίσης πολύ εύκολο να γράψετε τη δική σας BuildSteps να εκτελέσει συγκεκριμένες εργασίες.

Χρησιμοποιήσαμε BuildSteps για να πάρει την πηγή από SVN, τραβήξτε τις εξαρτήσεις, δημοσιεύει τα αποτελέσματα των δοκιμών σε WebDAV, και τα λοιπά.

Έγραψα μια διεπαφή X10 έτσι θα μπορούσαμε να στέλνουν σήματα με τα αποτελέσματα κατασκευής. Όταν η κατασκευή απέτυχε, αλλάξαμε σε κόκκινο λάμπα λάβας. Όταν η κατασκευή πέτυχε, μια πράσινη λάμπα λάβας σε λειτουργία. Καλές στιγμές :-)

Απαντήθηκε 03/08/2008 στις 13:09
πηγή χρήστη

ψήφοι
7

Είμαστε χρησιμοποιώντας Bitten διασκορπισμένες έχει ενσωματωθεί με trac. Και αυτό είναι python βάση.

Απαντήθηκε 16/09/2008 στις 17:51
πηγή χρήστη

ψήφοι
6

TeamCity έχει κάποια Python ολοκλήρωσης .

Αλλά TeamCity είναι:

  • Δεν open-source
  • Δεν είναι μικρό, αλλά πλούσιο σε δυνατότητες
  • είναι ελεύθερη για μικρές-μεσαίες ομάδες.
Απαντήθηκε 22/09/2008 στις 22:18
πηγή χρήστη

ψήφοι
5

Έχω πολύ καλές εμπειρίες με Travis-CI για μικρότερες βάσεις κώδικα. Τα κύρια πλεονεκτήματα είναι:

  • εγκατάσταση γίνεται σε λιγότερο από μισή οθόνη αρχείο ρυθμίσεων
  • μπορείτε να κάνετε τη δική σας εγκατάσταση ή απλά να χρησιμοποιήσετε τη δωρεάν φιλοξενείται έκδοση
  • ημι-αυτόματη ρύθμιση για τα αποθετήρια GitHub
  • Δεν λογαριασμό που απαιτούνται για την ιστοσελίδα? συνδεθείτε μέσω του GitHub

Ορισμένοι περιορισμοί:

  • Python δεν υποστηρίζεται ως πρώτη γλώσσα κατηγορίας (από τη στιγμή της γραφής? Αλλά μπορείτε να χρησιμοποιήσετε pip και apt-get για την εγκατάσταση των εξαρτήσεων python? Δείτε αυτό το σεμινάριο )

  • κωδικός πρέπει να φιλοξενείται σε GitHub (τουλάχιστον όταν χρησιμοποιείτε την επίσημη έκδοση)

Απαντήθηκε 02/02/2012 στις 22:42
πηγή χρήστη

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more