Έργα
Κατά την αξιολόγηση πιθανών λύσεων για το νέο Git Forge, σκεφτήκαμε
Pagure και Gitlab. Με βάση μια μελέτη του περίπου
Οι απαιτήσεις περιελάμβαναν λειτουργίες όπως αποστολή αιτημάτων push μέσω HTTPS, μέσα περιορισμού της πρόσβασης σε υποκαταστήματα, υποστήριξη για ιδιωτικά υποκαταστήματα, διαχωρισμό της πρόσβασης για εξωτερικούς και εσωτερικούς χρήστες (για παράδειγμα, για την εξάλειψη των τρωτών σημείων κατά τη διάρκεια ενός εμπάργκο για την αποκάλυψη πληροφοριών σχετικά με το πρόβλημα) , διεπαφή εξοικείωσης, ενοποίηση υποσυστημάτων για εργασία με αναφορές προβλημάτων, κώδικας, τεκμηρίωση και σχεδιασμός νέων δυνατοτήτων, διαθεσιμότητα εργαλείων για ενοποίηση με IDE, υποστήριξη τυπικών ροών εργασιών.
Από τις δυνατότητες του GitLab που επηρέασαν τελικά την απόφαση επιλογής αυτής της πλατφόρμας, αναφέρθηκε η υποστήριξη για υποομάδες με επιλεκτική πρόσβαση σε αποθετήρια, η δυνατότητα χρήσης bot για αυτόματες συγχωνεύσεις (το CentOS Stream απαιτείται για τη διατήρηση πακέτων με τον πυρήνα), παρουσία ενσωματωμένων εργαλείων ανάπτυξης προγραμματισμού, δυνατότητα χρήσης έτοιμης υπηρεσίας SAAS με εγγυημένο επίπεδο διαθεσιμότητας (θα απελευθερώσει πόρους για τη συντήρηση της υποδομής διακομιστή).
Η απόφαση είναι ήδη
Επικρίθηκε επίσης η πρόθεση χρήσης της υπηρεσίας SAAS (εφαρμογή ως υπηρεσία) που παρέχεται από το GitLab, αντί για την ανάπτυξη του GitLab στους διακομιστές του, γεγονός που θέτει την υπηρεσία εκτός ελέγχου (για παράδειγμα, είναι αδύνατο να είμαστε σίγουροι ότι όλα τα τρωτά σημεία στο το σύστημα εξαλείφεται αμέσως,
Εν τω μεταξύ, το GitLab
Οι ακόλουθες λειτουργίες έχουν μεταφερθεί στην ελεύθερη περιοχή:
- Επισύναψη σχετικού ζητήματος.
- Εξαγωγή προβλήματος από το GitLab σε CSV.
- Ένας τρόπος σχεδιασμού, οργάνωσης και απεικόνισης της διαδικασίας ανάπτυξης μεμονωμένων λειτουργιών ή εκδόσεων.
- Ενσωματωμένη υπηρεσία για τη σύνδεση συμμετεχόντων στο έργο με τρίτα μέρη χρησιμοποιώντας email.
- Τερματικό Ιστού για Web IDE.
- Δυνατότητα συγχρονισμού αρχείων για δοκιμή αλλαγών στον κώδικα στο τερματικό ιστού.
- Σχεδιάστε στοιχεία ελέγχου που σας επιτρέπουν να ανεβάσετε μακέτες και στοιχεία προς έκδοση, χρησιμοποιώντας το ζήτημα ως ενιαίο σημείο πρόσβασης σε όλα όσα χρειάζεστε για να αναπτύξετε μια νέα δυνατότητα.
- Αναφορές ποιότητας κώδικα.
- Υποστήριξη για διαχειριστές πακέτων Conan (C/C++), Maven (Java), NPM (node.js) και NuGet (.NET).
- Υποστήριξη για αναπτύξεις καναρινιών, που σας επιτρέπει να εγκαταστήσετε μια νέα έκδοση της εφαρμογής σε ένα μικρό μέρος των συστημάτων.
- Αυξητικές διανομές, που επιτρέπουν την παράδοση νέων εκδόσεων σε μικρό μόνο αριθμό συστημάτων στην αρχή, αυξάνοντας σταδιακά την κάλυψη στο 100%.
- Σημαίες ενεργοποίησης λειτουργικότητας, οι οποίες καθιστούν δυνατή την παράδοση του έργου σε διάφορες εκδόσεις, ενεργοποιώντας δυναμικά ορισμένα χαρακτηριστικά.
- Λειτουργία επισκόπησης ανάπτυξης, που σας επιτρέπει να αξιολογήσετε την κατάσταση κάθε περιβάλλοντος συνεχούς ενοποίησης με βάση το Kubernetes.
- Υποστήριξη για τον καθορισμό πολλαπλών συμπλεγμάτων Kubernetes στον διαμορφωτή (για παράδειγμα, μπορείτε να χρησιμοποιήσετε ξεχωριστά συμπλέγματα Kubernetes για δοκιμαστικές υλοποιήσεις και φόρτους εργασίας).
- Υποστήριξη για τον καθορισμό πολιτικών ασφάλειας δικτύου κοντέινερ που σας επιτρέπουν να περιορίσετε την πρόσβαση μεταξύ των pod Kubernetes.
Επιπλέον, μπορεί να σημειωθεί
Λεπτομέρειες σχετικά με την ευπάθεια θα αποκαλυφθούν μετά από 30 ημέρες.
Πηγή: opennet.ru