openSUSE:Build Service Curl
Πως να χρησιμοποιήσετε το curl για ανάπτυξη στο build service
Δείτε το osc help api.
Το Curl είναι ένα εργαλείο γραμμής εντολών για την μεταφορά δεδομένων από ή προς κάποιο διακομιστή, με τη χρήση ενός από τα υποστηριζόμενα πρωτόκολλα (HTTP, HTTPS, FTP, FTPS, TFTP, DICT, TELNET, LDAP ή FILE).
Η εντολή είναι σχεδιασμένη να λειτουργεί χωρίς διαδραστικότητα από το χρήστη.
Μπορεί να βοηθήσει πολύ στον έλεγχο του openSUSE build service API κατά την ανάπτυξη.
Εδώ βρίσκονται οι πιο συνηθισμένες εντολές:
Αίτηση GET
curl -u username:password -X GET https://$APISERVER/any/path
Αίτηση PUT
curl -u username:password -X PUT -T /path/to/file/to/put https://$APISERVER/any/path
Αίτηση POST
curl -u username:password -X POST -T /path/to/file/to/post https://$APISERVER/any/path
Αίτηση DELETE
curl -u username:password -X DELETE https://$APISERVER/any/path
Παραδείγματα για το openSUSE build service
Παρακαλείσθε να κάνετε τα ακόλουθα πριν δοκιμάσετε τις παρακάτω εντολές:
export APISERVER=api.opensuse.org export ARCH=i586 export FILENAME=filename export PACKAGE=package export PROJECT=openSUSE:Factory export REPOSITORY=standard export REVISION=r1 export USERNAME=username export PASSWORD=password
Διαγραφή ενός αρχείου pattern
curl -u $USERNAME:$PASSWORD -X DELETE https://$APISERVER/source/$PROJECT/_pattern/$FILENAME
Λήψη μεταδεδομένων για ένα μεμονωμένο πακέτο
curl -u $USERNAME:$PASSWORD -X GET https://$APISERVER/source/$PROJECT/$PACKAGE/_meta
Λήψη μιας συγκεκριμένης έκδοσης ενός πηγαίου αρχείου
curl -u $USERNAME:$PASSWORD -X GET https://$APISERVER/source/$PROJECT/$PACKAGE/$FILENAME?rev=$REVISION
Λήψη μιας λίστας από δυαδικά i586 κατασκευασμένα σε ένα έργο
curl -u $USERNAME:$PASSWORD -X GET https://$APISERVER/build/$PROJECT/i586/_binarylist
Λήψη μιας λίστας από δημοσιευμένα δυαδικά i586 για ένα έργο
curl -u $USERNAME:$PASSWORD -X GET https://$APISERVER/published/$PROJECT/openSUSE_10.3/i586
Εκκίνηση ανακατασκευής για όλα τα πακέτα στην arch & repo
curl -u $USERNAME:$PASSWORD -X POST -H "Content-Length:0" "https://$APISERVER/build/$PROJECT?cmd=rebuild&arch=$ARCH&repository=$REPOSITORY"
Εκκίνηση μιας διαγραφής των εξαιρεθέντων πακέτων
Για να αποκλείσετε οριστικά πακέτα για μια αρχιτεκτονική με το "ExcludeArch:" στο specfile, χρησιμοποιήστε
curl -u $USERNAME:$PASSWORD -X POST -H "Content-Length:0" "https://$APISERVER/build/$PROJECT?code=excluded&cmd=wipe"