Οδηγός αναφοράς digna CLI 2026.06¶
2026-09-05
Αυτή η σελίδα τεκμηριώνει το πλήρες σύνολο εντολών που είναι διαθέσιμες στην έκδοση 2026.06 του digna CLI, μαζί με παραδείγματα χρήσης και επιλογές.
Το εκτελέσιμο αρχείο ονομάζεται digna.
Βασικά στοιχεία του CLI¶
Επισκόπηση και σύνταξη¶
Το CLI της έκδοσης 2026.06 χρησιμοποιεί μια δομημένη ιεραρχία εντολών βασισμένη σε κατηγορίες:
Οι εντολές version και serve είναι μεμονωμένες εντολές χωρίς υποεντολή:
Καθολικές επιλογές¶
Οι ακόλουθες καθολικές επιλογές ισχύουν για όλες τις εντολές:
--help,-h: Εμφανίζει πληροφορίες βοήθειας για το CLI ή για συγκεκριμένη κατηγορία εντολών ή υποεντολή.--stacktrace: Εμφανίζει ολόκληρη την αλυσίδα σφαλμάτων σε περίπτωση αποτυχίας, αντί μόνο για το μήνυμα ανώτατου επιπέδου.
Η επιλογή --stacktrace είναι καθολική με την αυστηρή έννοια: πρέπει να δίνεται πριν από την κατηγορία της εντολής και όχι μετά.
Δεν υπάρχει σημαία --version. Χρησιμοποιήστε την εντολή version αντ' αυτού.
Προϋποθέσεις¶
Οι περισσότερες εντολές χρειάζονται ένα αναγνώσιμο, έγκυρο αρχείο config.toml· ορισμένες απαιτούν επιπλέον έγκυρη άδεια χρήσης. Ο ακόλουθος πίνακας καταγράφει τι φορτώνει κάθε κατηγορία εντολών πριν κάνει οτιδήποτε:
| Κατηγορία εντολών | Χρειάζεται config.toml | Χρειάζεται έγκυρη άδεια |
|---|---|---|
version | όχι | όχι |
config check | όχι (είναι ακριβώς αυτό για το οποίο αναφέρει η εντολή) | όχι |
license check | όχι | είναι ο ίδιος ο έλεγχος |
crypt | ναι | όχι |
serve | ναι | όχι |
windows | όχι (η υπηρεσία το διαβάζει κατά την εκκίνησή της) | όχι |
project | ναι | όχι |
user | ναι | ναι |
inspection | ναι | ναι |
repo | ναι | ναι |
Όπου απαιτείται άδεια, ελέγχονται τόσο η υπογραφή της όσο και η ημερομηνία λήξης της, και η εντολή ματαιώνεται πριν αγγίξει το αποθετήριο αν αποτύχει οποιοδήποτε από τα δύο.
Κωδικοί εξόδου¶
0: η εντολή ολοκληρώθηκε επιτυχώς.1: η εντολή απέτυχε. Το μήνυμα σφάλματος γράφεται στο stderr με το πρόθεμαError:.
help¶
Η επιλογή --help παρέχει πληροφορίες για τις διαθέσιμες κατηγορίες εντολών, υποεντολές και επιλογές:
-
Εμφάνιση γενικής βοήθειας:
-
Λήψη βοήθειας για συγκεκριμένες κατηγορίες και εντολές:
Η έξοδος περιλαμβάνει: - Περιγραφή εντολής: Σύνοψη του σκοπού της εντολής. - Σύνταξη: Υποχρεωτικά και προαιρετικά ορίσματα. - Επιλογές: Σημαίες και παράμετροι ειδικές για την εντολή.
version¶
Η εντολή version εκτυπώνει την εγκατεστημένη έκδοση του digna. Δεν διαβάζει καμία διαμόρφωση και δεν επικυρώνει καμία άδεια, οπότε λειτουργεί και σε εγκατάσταση όπου το config.toml ή η άδεια λείπει ή είναι άκυρη.
Η έκδοση του προϊόντος είναι ανεξάρτητη από την έκδοση του σχήματος αποθετηρίου που αναφέρει η repo check.
Χρήση εντολής¶
Παράδειγμα εξόδου¶
Διαχείριση διαμόρφωσης¶
config check¶
Η εντολή config check επικυρώνει το αρχείο διαμόρφωσης (config.toml), επαληθεύοντας ότι όλες οι υποχρεωτικές ενότητες και ρυθμίσεις υπάρχουν και είναι σωστά μορφοποιημένες. Κάθε ενότητα επικυρώνεται χωριστά, ώστε μια χαλασμένη ενότητα [app] να μην κρύβει την κατάσταση της [repo].
Οι ενότητες που αναφέρονται είναι:
App config([app])Repository config([repo])Base config([base])Logging config([logging])Encryption config([encryption])OIDC config(s)(oidc_clients) — προαιρετικό· ένα κλειδί που απουσιάζει περνά τον έλεγχο, ενώ μια λίστα που υπάρχει αλλά είναι κακοδιατυπωμένη αποτυγχάνει
Η εντολή σκόπιμα δεν φορτώνει τη διαμόρφωση της εφαρμογής όπως κάνουν οι υπόλοιπες εντολές, ώστε να μπορεί να διαγνώσει ένα config.toml που θα εμπόδιζε το digna ακόμη και να ξεκινήσει.
Χρήση εντολής¶
Επιλογές¶
--configpath,-c: Διαδρομή προς το αρχείο διαμόρφωσης ή προς κατάλογο που περιέχει τοconfig.toml(προεπιλογή./config.toml).--json: Εξάγει την αναφορά επικύρωσης σε μορφή JSON. Υπερισχύει της--quiet.--quiet,-q: Αποκρύπτει την αναφορά και βασίζεται αποκλειστικά στον κωδικό εξόδου.
Παράδειγμα¶
Επικύρωση συγκεκριμένου αρχείου διαμόρφωσης και μορφοποίηση της εξόδου ως JSON:
Παράδειγμα εξόδου¶
Configuration validation report (source: config.toml):
- App config: OK
- Repository config: OK
- Base config: OK
- Logging config: OK
- Encryption config: FAILED
missing field `aes_gcm_key`
- OIDC config(s): OK
Overall: FAILED
Ένα αρχείο που λείπει ή ένα συντακτικό σφάλμα TOML δεν αφήνει τίποτα να επικυρωθεί ενότητα προς ενότητα και αναφέρεται ως ένα μεμονωμένο σφάλμα αντί για αναφορά, ανεξάρτητα από τις --quiet ή --json.
Διαχείριση αποθετηρίου¶
repo check¶
Η εντολή repo check ελέγχει τη σύνδεση με τη βάση δεδομένων και επαληθεύει την εγκατάσταση και την έκδοση του αποθετηρίου. Αποτυγχάνει αν το διαμορφωμένο σχήμα δεν υπάρχει ή αν υπάρχει αλλά δεν περιέχει αποθετήριο digna.
Η έκδοση που αναφέρεται είναι η έκδοση του σχήματος αποθετηρίου, το οποίο εκδίδεται ξεχωριστά από την έκδοση του digna που εκτυπώνει η version.
Χρήση εντολής¶
Παράδειγμα εξόδου¶
repo install¶
Η εντολή repo install εγκαθιστά ένα νέο αποθετήριο digna στο σχήμα που έχει διαμορφωθεί στο config.toml, δημιουργώντας όλες τις απαιτούμενες ακολουθίες, πίνακες, ευρετήρια, περιορισμούς και αρχικές εγγραφές.
Το ίδιο το σχήμα δεν δημιουργείται από αυτή την εντολή — πρέπει να υπάρχει εκ των προτέρων. Η εντολή επίσης αρνείται να εκτελεστεί αν υπάρχει ήδη εγκατεστημένο αποθετήριο σε εκείνο το σχήμα και παραπέμπει στην repo upgrade αν η εγκατεστημένη έκδοση είναι παλαιότερη.
Χρήση εντολής¶
Παράδειγμα εξόδου¶
Installing repo version 3.0.0
✅ Sequences created.
✅ Tables and Indices created.
✅ Constraints created.
✅ Records inserted.
✅ Repo version 3.0.0 successfully installed.
repo upgrade¶
Η εντολή repo upgrade εφαρμόζει μεταναστεύσεις σχήματος βάσης δεδομένων ώστε να φέρει ένα υπάρχον αποθετήριο στην έκδοση που αναμένει η εγκατεστημένη έκδοση. Οι αναβαθμίσεις εφαρμόζονται ένα βήμα έκδοσης τη φορά κατά μήκος μιας σταθερής διαδρομής αναβάθμισης, και κάθε ολοκληρωμένο βήμα καταγράφεται στο αποθετήριο.
Αν το αποθετήριο βρίσκεται ήδη στην αναμενόμενη έκδοση, η εντολή αναφέρει ότι δεν χρειάζεται αναβάθμιση και δεν κάνει καμία αλλαγή.
Χρήση εντολής¶
Παράδειγμα εξόδου¶
Upgrading from 2.3.1 to 2.3.2...
Upgrading from 2.3.2 to 3.0.0...
✅ Repo successfully upgraded to version 3.0.0.
repo prune¶
Η εντολή repo prune αφαιρεί γραμμές που επέζησαν του έργου ή της πηγής δεδομένων στην οποία ανήκαν. Η διαγραφή ενός έργου ή μιας πηγής δεδομένων αφαιρεί το ίδιο το αντικείμενο, αλλά αφήνει πίσω τα προφίλ, τις προβλέψεις, τις καταστάσεις και τους αριθμούς γραμμών του — μια σκόπιμη επιλογή, αφού μια διαγραφή που θα καθάριζε και αυτούς τους πίνακες θα κρατούσε τον χρήστη σε αναμονή. Η repo prune είναι το πέρασμα καθαρισμού που τα αφαιρεί, και μπορεί να εκτελεστεί με ασφάλεια οποιαδήποτε στιγμή: αφαιρεί μόνο γραμμές των οποίων το έργο ή η πηγή δεδομένων δεν υπάρχει πλέον.
Οι γραμμές που έγραψε το Python backend σε πίνακες που η τρέχουσα έκδοση δεν χρησιμοποιεί πλέον δεν αγγίζονται.
Χρήση εντολής¶
Επιλογές¶
--dry-run: Αναφέρει τι θα αφαιρούνταν χωρίς να αφαιρέσει τίποτα.
Εμφανίζονται μόνο οι πίνακες με ορφανές γραμμές. Αν δεν υπάρχουν, η εντολή αναφέρει No orphaned rows found. και τερματίζεται.
Παράδειγμα¶
Παράδειγμα εξόδου¶
"check" 29342
check_profile 29342
check_prediction 29342
check_status 29342
column_status 32
inspection_query 253
---------------------------------------------
total 117854
✅ Removed 117854 orphaned row(s).
Για να δείτε την ίδια αναφορά χωρίς να αφαιρεθεί τίποτα:
Οι αριθμοί γραμμών είναι ίδιοι· διαφέρει μόνο η τελευταία γραμμή:
Διαχείριση κρυπτογράφησης¶
crypt gen-key¶
Η εντολή crypt gen-key δημιουργεί ένα νέο κλειδί κρυπτογράφησης AES-GCM, για χρήση ως κλειδί κρυπτογράφησης στο config.toml. Πρέπει ήδη να υπάρχει ένα config.toml που να μπορεί να φορτωθεί, παρότι το παραγόμενο κλειδί δεν εξαρτάται από αυτό.
Χρήση εντολής¶
Παράδειγμα εξόδου¶
crypt encrypt¶
Η εντολή crypt encrypt κρυπτογραφεί μια συμβολοσειρά (όπως έναν κωδικό πρόσβασης βάσης δεδομένων) χρησιμοποιώντας το κλειδί AES-GCM που έχει διαμορφωθεί στο config.toml και εκτυπώνει το κρυπτογράφημα.
Χρήση εντολής¶
Ορίσματα¶
- VALUE: Η συμβολοσειρά απλού κειμένου προς κρυπτογράφηση (υποχρεωτικό).
Παράδειγμα¶
crypt decrypt¶
Η εντολή crypt decrypt αποκρυπτογραφεί μια συμβολοσειρά κρυπτογραφημένη με AES-GCM χρησιμοποιώντας το κλειδί που έχει διαμορφωθεί στο config.toml και εκτυπώνει το απλό κείμενο.
Χρήση εντολής¶
Ορίσματα¶
- VALUE: Η κρυπτογραφημένη συμβολοσειρά προς αποκρυπτογράφηση (υποχρεωτικό).
Παράδειγμα¶
Διαχείριση χρηστών¶
user add¶
Η εντολή user add δημιουργεί έναν νέο λογαριασμό χρήστη στο αποθετήριο digna. Η εντολή αποτυγχάνει αν υπάρχει ήδη χρήστης με τη δοθείσα διεύθυνση ηλεκτρονικού ταχυδρομείου.
Χρήση εντολής¶
Ορίσματα¶
- EMAIL: Η διεύθυνση ηλεκτρονικού ταχυδρομείου του χρήστη (υποχρεωτικό).
- PASSWORD: Ο αρχικός κωδικός πρόσβασης του χρήστη (υποχρεωτικό).
- DISPLAY_NAME: Το πλήρες εμφανιζόμενο όνομα του χρήστη (υποχρεωτικό).
Επιλογές¶
--admin,-a: Δημιουργεί τον χρήστη με δικαιώματα διαχειριστή (υπερχρήστη).
Παράδειγμα¶
Για τη δημιουργία λογαριασμού διαχειριστή:
Παράδειγμα εξόδου¶
user list¶
Η εντολή user list παραθέτει όλους τους εγγεγραμμένους χρήστες σε μορφή πίνακα με το αναγνωριστικό, το ηλεκτρονικό ταχυδρομείο, το εμφανιζόμενο όνομα και τη σημαία διαχειριστή.
Χρήση εντολής¶
Παράδειγμα εξόδου¶
ID EMAIL DISPLAY NAME ADMIN
-----------------------------------------------------------------------------------------------
42 jdoe@example.com John Doe false
43 admin@example.com Admin User true
user modify¶
Η εντολή user modify ενημερώνει το εμφανιζόμενο όνομα και τα δικαιώματα διαχειριστή ενός υπάρχοντος λογαριασμού χρήστη, ο οποίος προσδιορίζεται από τη διεύθυνση ηλεκτρονικού ταχυδρομείου.
Τόσο το εμφανιζόμενο όνομα όσο και η σημαία διαχειριστή γράφονται πάντοτε. Η --admin είναι διακόπτης, όχι τιμή: η παράλειψή της αφαιρεί τα δικαιώματα διαχειριστή, οπότε δώστε την κάθε φορά που ο χρήστης πρέπει να τα διατηρήσει ή να τα αποκτήσει.
Χρήση εντολής¶
Ορίσματα¶
- EMAIL: Το ηλεκτρονικό ταχυδρομείο του χρήστη προς τροποποίηση (υποχρεωτικό).
- DISPLAY_NAME: Το ενημερωμένο εμφανιζόμενο όνομα (υποχρεωτικό).
Επιλογές¶
--admin,-a: Παραχωρεί δικαιώματα διαχειριστή. Παραλείψτε την για να τα αφαιρέσετε.--valid-until,-v: Γίνεται δεκτή για λόγους συμβατότητας αλλά δεν εφαρμόζεται προς το παρόν. Η χρήση της εμφανίζει προειδοποίηση και δεν αλλάζει τίποτα.
Παράδειγμα¶
Παράδειγμα εξόδου¶
user modify-pwd¶
Η εντολή user modify-pwd ενημερώνει τον κωδικό πρόσβασης ενός υπάρχοντος λογαριασμού χρήστη.
Χρήση εντολής¶
Ορίσματα¶
- EMAIL: Το ηλεκτρονικό ταχυδρομείο του χρήστη του οποίου ο κωδικός πρόσβασης θα ενημερωθεί (υποχρεωτικό).
- PASSWORD: Ο νέος κωδικός πρόσβασης (υποχρεωτικό).
Παράδειγμα¶
user delete¶
Η εντολή user delete αφαιρεί έναν λογαριασμό χρήστη από το σύστημα.
Χρήση εντολής¶
Ορίσματα¶
- EMAIL: Το ηλεκτρονικό ταχυδρομείο του χρήστη προς διαγραφή (υποχρεωτικό).
Παράδειγμα¶
Διαχείριση έργων και πηγών δεδομένων¶
project list¶
Η εντολή project list παραθέτει όλα τα διαθέσιμα έργα στο αποθετήριο, εμφανίζοντας το αναγνωριστικό, το όνομα και την περιγραφή τους.
Χρήση εντολής¶
Παράδειγμα εξόδου¶
ID NAME DESCRIPTION
------------------------------------------------------------------------------------------------------
7 ProjectA Sales data quality
8 ProjectB Finance data quality
project list-ds¶
Η εντολή project list-ds παραθέτει όλες τις πηγές δεδομένων που σχετίζονται με ένα δεδομένο έργο, εμφανίζοντας το αναγνωριστικό, το όνομα, το είδος, το σχήμα και το όνομα πίνακα.
Χρήση εντολής¶
Ορίσματα¶
- PROJECT_NAME: Το όνομα του έργου του οποίου οι πηγές δεδομένων θα παρατεθούν (υποχρεωτικό). Το όνομα πρέπει να ταιριάζει ακριβώς.
Παράδειγμα¶
Παράδειγμα εξόδου¶
ID NAME KIND SCHEMA TABLE
-------------------------------------------------------------------------------------------------------------
101 orders Table sales orders
102 customers Table sales customers
project export-ds¶
Η εντολή project export-ds εξάγει πηγές δεδομένων από ένα έργο σε ένα έγγραφο JSON.
Αν δεν δοθεί ούτε --table-name ούτε --table-id, εξάγονται όλες οι πηγές δεδομένων του έργου.
Χρήση εντολής¶
Ορίσματα¶
- PROJECT_NAME: Το όνομα του έργου από το οποίο θα εξαχθούν οι πηγές δεδομένων (υποχρεωτικό).
Επιλογές¶
--table-name,-n: Ονόματα πηγών δεδομένων προς εξαγωγή. Μπορούν να δοθούν πολλά ονόματα χωρισμένα με κενά.--table-id,-i: Αναγνωριστικά πηγών δεδομένων προς εξαγωγή. Μπορούν να δοθούν πολλά αναγνωριστικά χωρισμένα με κενά.--exportfile,-f: Διαδρομή αποθήκευσης των εξαγόμενων πηγών δεδομένων (προεπιλογή:data_sources_export.json).
Παράδειγμα¶
Για την εξαγωγή όλων των πηγών δεδομένων από το ProjectA:
Για την εξαγωγή συγκεκριμένων πινάκων:
Παράδειγμα εξόδου¶
project import-ds¶
Η εντολή project import-ds εισάγει πηγές δεδομένων από ένα αρχείο εξαγωγής σε ένα έργο προορισμού και αναφέρει ανά αντικείμενο τι δημιουργήθηκε, ενημερώθηκε ή παραλείφθηκε.
Χρήση εντολής¶
Ορίσματα¶
- PROJECT_NAME: Το όνομα του έργου προορισμού στο οποίο γίνεται η εισαγωγή (υποχρεωτικό).
- EXPORT_FILE: Διαδρομή προς το αρχείο εξαγωγής JSON (υποχρεωτικό).
Επιλογές¶
--output-file,-o: Αρχείο στο οποίο γράφεται η αναφορά εισαγωγής. Χωρίς αυτό, η αναφορά πηγαίνει στο stdout.--output-format,-f: Μορφή της αναφοράς εισαγωγής —table,jsonήcsv(προεπιλογή:table).
Παράδειγμα¶
Για τη λήψη αναφοράς αναγνώσιμης από μηχανή:
digna project import-ds ProjectB my_export.json --output-format json --output-file import_report.json
Η αναφορά καλύπτει τέσσερα επίπεδα αντικειμένων — πηγή δεδομένων, ορισμό συνόλου δεδομένων, χαρακτηριστικό και κανόνα επικύρωσης — καθένα με την ενέργεια εισαγωγής, το αποτέλεσμα, το αναγνωριστικό του προκύπτοντος αντικειμένου και τυχόν πρόσθετες πληροφορίες.
project plan-import-ds¶
Η εντολή project plan-import-ds προεπισκοπεί μια εισαγωγή πηγών δεδομένων σε ένα έργο προορισμού, δείχνοντας ποια αντικείμενα θα δημιουργούνταν, θα ενημερώνονταν ή θα παραλείπονταν, χωρίς να αλλάζει τίποτα. Δέχεται το ίδιο αρχείο εξαγωγής και τις ίδιες επιλογές αναφοράς με την project import-ds και προσθέτει έναν αριθμό βήματος ανά προγραμματισμένο αντικείμενο.
Χρήση εντολής¶
Ορίσματα¶
- PROJECT_NAME: Το όνομα του έργου προορισμού (υποχρεωτικό).
- EXPORT_FILE: Διαδρομή προς το αρχείο εξαγωγής (υποχρεωτικό).
Επιλογές¶
--output-file,-o: Αρχείο στο οποίο γράφεται το σχέδιο εισαγωγής. Χωρίς αυτό, το σχέδιο πηγαίνει στο stdout.--output-format,-f: Μορφή του σχεδίου εισαγωγής —table,jsonήcsv(προεπιλογή:table).
Παράδειγμα¶
project cleanup¶
Η εντολή project cleanup αφαιρεί τα αποτελέσματα επιθεωρήσεων που συσσώρευσε ένα έργο σε ένα εύρος ημερομηνιών — προφίλ, προβλέψεις, αριθμούς γραμμών και κάθε κατάσταση ελέγχου, χαρακτηριστικού, συνόλου δεδομένων και πηγής δεδομένων. Αφαιρεί ακριβώς ό,τι έγραψε μια επιθεώρηση αυτών των ημερομηνιών, ώστε το εύρος να μπορεί στη συνέχεια να επιθεωρηθεί ξανά για να αναδημιουργηθεί.
Το ιστορικό Timeliness και Schema Tracker δεν αφαιρείται: καταγράφει τι παρατήρησε το digna σε μια συγκεκριμένη ημέρα και όχι ένα αποτέλεσμα που προέκυψε από αυτό, οπότε ο καθαρισμός ενός παρελθοντικού εύρους ημερομηνιών το αφήνει ανέπαφο.
Κάθε πηγή δεδομένων καθαρίζεται στη δική της συναλλαγή, οπότε μια διακοπείσα εκτέλεση αφήνει ολόκληρες πηγές δεδομένων και όχι μια μισοκαθαρισμένη.
Χρήση εντολής¶
Ορίσματα¶
- PROJECT_NAME: Το έργο που θα καθαριστεί (υποχρεωτικό). Ένα έργο ανά κλήση.
- FROM_DATE: Η πρώτη ημερομηνία για την οποία αφαιρούνται αποτελέσματα,
YYYY-MM-DD(υποχρεωτικό). - TO_DATE: Η τελευταία ημερομηνία για την οποία αφαιρούνται αποτελέσματα, συμπεριλαμβανομένης,
YYYY-MM-DD(υποχρεωτικό).
Επιλογές¶
--table-name,-n: Περιορίζει τον καθαρισμό σε αυτές τις πηγές δεδομένων. Μπορούν να δοθούν πολλά ονόματα χωρισμένα με κενά.--table-filter: Περιορίζει τον καθαρισμό σε πηγές δεδομένων των οποίων το όνομα περιέχει αυτή την υποσυμβολοσειρά.--dry-run: Εμφανίζει τις πηγές δεδομένων που θα καθαρίζονταν χωρίς να αφαιρέσει τίποτα.--timing: Εμφανίζει πόσο διήρκεσε ο καθαρισμός.
Τα --table-name και --table-filter συνδυάζονται ως OR — μια πηγή δεδομένων καθαρίζεται αν κατονομάζεται ή αν ταιριάζει η υποσυμβολοσειρά. Η εντολή αποτυγχάνει αν δεν ταιριάζει καμία πηγή δεδομένων, αντί να αναφέρει επιτυχία για έναν καθαρισμό που δεν έκανε τίποτα.
Παράδειγμα¶
Περιορισμένο σε μία πηγή δεδομένων:
Παράδειγμα εξόδου¶
Cleaning up project 'ProjectA' from 2026-01-01 to 2026-06-30:
- Table1
- Table2
- Table3
✅ Cleaned up 3 data source(s).
Για να δείτε ποιες πηγές δεδομένων θα καθαρίζονταν χωρίς να αφαιρεθεί τίποτα:
Κάθε γραμμή επισημαίνεται, ώστε μια δοκιμαστική εκτέλεση να μην μπορεί να συγχυστεί με μια πραγματική:
Cleaning up project 'ProjectA' from 2026-01-01 to 2026-06-30:
- Table1 (dry run, nothing removed)
- Table2 (dry run, nothing removed)
- Table3 (dry run, nothing removed)
Dry run - 3 data source(s) would be cleaned up.
Διαχείριση επιθεωρήσεων¶
inspection run¶
Η εντολή inspection run δημιουργεί ένα αίτημα επιθεώρησης για ένα έργο και ένα εύρος ημερομηνιών και στη συνέχεια — ανάλογα με τις επιλογές που δόθηκαν — είτε περιμένει το αποτέλεσμα, είτε επιστρέφει αμέσως, είτε το εκτελεί εντός της ίδιας διεργασίας.
Οι τρεις τρόποι εκτέλεσης είναι:
- Προεπιλογή (χωρίς σημαία): το αίτημα τοποθετείται σε ουρά για το backend και το CLI το ελέγχει κάθε δύο δευτερόλεπτα, εκτυπώνοντας την πρόοδο των εργασιών μέχρι η επιθεώρηση να φτάσει σε τελική κατάσταση. Απαιτείται ένα
digna serveσε εκτέλεση, διαφορετικά κανείς δεν παραλαμβάνει το αίτημα. --async-mode: το αίτημα τοποθετείται σε ουρά και το αναγνωριστικό του εκτυπώνεται αμέσως. Χρησιμοποιήστε τηνinspection statusγια να το παρακολουθήσετε.--bypass-backend: η επιθεώρηση εκτελείται από την ίδια τη διεργασία του CLI και δεν τοποθετείται σε ουρά, οπότε δεν απαιτείται διακομιστής σε εκτέλεση.
Οι --async-mode και --bypass-backend είναι αμοιβαία αποκλειόμενες.
Σε κάθε τρόπο λειτουργίας, η εντολή τερματίζει με μη μηδενικό κωδικό εξόδου αν η επιθεώρηση δεν ολοκληρώθηκε επιτυχώς.
Χρήση εντολής¶
Ορίσματα¶
- PROJECT_NAME: Το όνομα του έργου προορισμού (υποχρεωτικό). Το όνομα πρέπει να ταιριάζει ακριβώς.
- START_DATE: Ημερομηνία έναρξης του εύρους σε μορφή
YYYY-MM-DD(υποχρεωτικό). - END_DATE: Ημερομηνία λήξης του εύρους σε μορφή
YYYY-MM-DD(υποχρεωτικό).
Επιλογές¶
--table-name: Περιορίζει την επιθεώρηση σε μία μόνο πηγή δεδομένων του έργου, δοσμένη με το όνομα της πηγής δεδομένων. Χωρίς αυτήν, επιθεωρούνται όλες οι πηγές δεδομένων του έργου.--async-mode: Τοποθετεί την επιθεώρηση σε ουρά και εκτυπώνει το αναγνωριστικό του αιτήματος αντί να την περιμένει. Δεν συνδυάζεται με την--bypass-backend.--bypass-backend: Εκτελεί την επιθεώρηση απευθείας στη διεργασία του CLI αντί να την τοποθετήσει σε ουρά για το backend. Δεν συνδυάζεται με την--async-mode.
Παράδειγμα¶
Για την υποβολή ασύγχρονης επιθεώρησης:
Για την επιθεώρηση μίας μόνο πηγής δεδομένων:
Παράδειγμα εξόδου¶
Προεπιλεγμένος τρόπος:
Inspection request submitted. Waiting for completion (Request ID: 1024)...
Progress: 3/10 tasks completed (0 failed)
Progress: 10/10 tasks completed (0 failed)
Inspection completed successfully.
Inspection successful for project: ProjectA
Ασύγχρονος τρόπος:
inspection status¶
Η εντολή inspection status ζητά την κατάσταση και την πρόοδο εργασιών ενός αιτήματος επιθεώρησης με βάση το αναγνωριστικό του αιτήματος.
Χρήση εντολής¶
Ορίσματα¶
- INSPECTION_REQUEST_ID: Το αριθμητικό αναγνωριστικό του αιτήματος επιθεώρησης (υποχρεωτικό).
Παράδειγμα¶
Παράδειγμα εξόδου¶
Inspection Request ID: 1024
Status: Running
Project ID: 7
Date Range: 2024-01-01 to 2024-01-31
Progress: 3/10 tasks completed (0 failed)
inspection abort¶
Η εντολή inspection abort ζητά την ακύρωση αιτημάτων επιθεώρησης που εκτελούνται ή εκκρεμούν. Καταγράφει ένα συμβάν διακοπής για κάθε επηρεαζόμενο αίτημα· το backend ενεργεί βάσει αυτού, οπότε η ματαίωση είναι αίτημα διακοπής και όχι άμεσος τερματισμός.
Χρήση εντολής¶
Ορίσματα¶
- INSPECTION_REQUEST_ID: Το αναγνωριστικό του αιτήματος επιθεώρησης προς ματαίωση. Υποχρεωτικό εκτός αν δοθεί η
--killall.
Επιλογές¶
--killall: Ματαιώνει όλα τα αιτήματα επιθεώρησης που εκτελούνται και εκκρεμούν αυτή τη στιγμή. Υπερισχύει έναντι αναγνωριστικού αιτήματος που δίνεται παράλληλα.
Παράδειγμα¶
Για τη ματαίωση συγκεκριμένου αιτήματος:
Για τη ματαίωση όλων των ενεργών και σε ουρά επιθεωρήσεων:
Παράδειγμα εξόδου¶
Η --killall αναφέρει τι έκανε· η ματαίωση μεμονωμένου αιτήματος δεν παράγει έξοδο και δηλώνει την επιτυχία μέσω του κωδικού εξόδου της.
Διαχείριση αδειών¶
license check¶
Η εντολή license check επικυρώνει το license.toml, επαληθεύοντας την υπογραφή του έναντι του δημόσιου κλειδιού που συνοδεύει την εγκατάσταση και ελέγχοντας ότι δεν έχει λήξει. Δεν διαβάζει καμία διαμόρφωση εφαρμογής, οπότε λειτουργεί και πριν ρυθμιστεί το config.toml.
Χρήση εντολής¶
Παράδειγμα εξόδου¶
Μια άκυρη υπογραφή και μια ληγμένη άδεια αναφέρονται ως διακριτά σφάλματα, αμφότερα με κωδικό εξόδου 1.
Διακομιστής και υπηρεσίες παρασκηνίου¶
serve¶
Η εντολή serve εκκινεί τον διακομιστή REST API του digna μαζί με τον χρονοπρογραμματιστή επιθεωρήσεων παρασκηνίου και τον διαχειριστή επιθεωρήσεων. Κατά την εκκίνηση, θέτει επίσης σε κατάσταση αποτυχίας κάθε επιθεώρηση που το αποθετήριο εξακολουθεί να καταγράφει ως εκτελούμενη, καθώς τίποτα δεν μπορεί να έχει επιβιώσει από προηγούμενη διεργασία.
Η εντολή εκτελείται στο προσκήνιο μέχρι να διακοπεί.
Χρήση εντολής¶
Επιλογές¶
--address: Διεύθυνση δικτύου στην οποία δεσμεύεται ο διακομιστής API (προεπιλογή:127.0.0.1).--port: Αριθμός θύρας ακρόασης (προεπιλογή:8000).
Παράδειγμα¶
Παράδειγμα εξόδου¶
Διαχείριση υπηρεσίας Windows¶
Διαθέσιμο μόνο στα Windows. Οι εντολές εγγράφουν το backend του digna στη διαχείριση υπηρεσιών των Windows και το ελέγχουν· η ίδια η υπηρεσία εκτελεί την serve στο παρασκήνιο. Κάθε εντολή πρέπει να εκτελείται από Command Prompt με αυξημένα δικαιώματα, και καθεμία δέχεται την επιλογή --name, ώστε να μπορεί να απευθυνθεί σε υπηρεσία εγγεγραμμένη με μη προεπιλεγμένο όνομα.
windows install¶
Η εντολή windows install εγγράφει το digna ως υπηρεσία Windows.
Η διεύθυνση και η θύρα που δίνονται εδώ καταγράφονται στην εγγραφή της υπηρεσίας και σε αυτές δεσμεύεται η υπηρεσία — δεν διαβάζονται από το config.toml. Για να τις αλλάξετε αργότερα, απεγκαταστήστε την υπηρεσία και εγκαταστήστε την ξανά.
Χρήση εντολής¶
Επιλογές¶
--name: Όνομα με το οποίο εγγράφεται η υπηρεσία (προεπιλογή:digna).--display-name: Όνομα που εμφανίζεται στο services.msc (προεπιλογή:digna).--description: Περιγραφή που εμφανίζεται στο services.msc (προεπιλογή:digna data quality backend).--address: Διεύθυνση στην οποία η υπηρεσία δεσμεύει το API της (προεπιλογή:127.0.0.1).--port: Θύρα στην οποία η υπηρεσία δεσμεύει το API της (προεπιλογή:8000).--working-dir: Κατάλογος που περιέχει ταconfig.tomlκαιlicense.toml, τον οποίο η υπηρεσία χρησιμοποιεί ως κατάλογο εργασίας (προεπιλογή: ο κατάλογος του εκτελέσιμουdigna).--start-type: Πότε ξεκινά η υπηρεσία —autoμαζί με τα Windows,manualμόνο όταν ζητηθεί,disabledεγγεγραμμένη αλλά αρνείται να ξεκινήσει (προεπιλογή:auto).--account: Λογαριασμός με τον οποίο εκτελείται, π.χ.DOMAIN\userή.\user(προεπιλογή:LocalSystem).--password: Κωδικός πρόσβασης του--account.
Παράδειγμα¶
Εγγραφή με δεύτερο όνομα, με εκτέλεση υπό λογαριασμό domain:
digna windows install --name digna-test --display-name "digna (test)" --account DOMAIN\svc_digna --password <password>
windows start¶
Η εντολή windows start ξεκινά μια εγγεγραμμένη υπηρεσία.
Χρήση εντολής¶
Επιλογές¶
--name: Όνομα με το οποίο είναι εγγεγραμμένη η υπηρεσία (προεπιλογή:digna).
windows stop¶
Η εντολή windows stop σταματά μια υπηρεσία που εκτελείται. Σταματήστε την υπηρεσία πριν αντικαταστήσετε οποιοδήποτε αρχείο της εφαρμογής.
Χρήση εντολής¶
Επιλογές¶
--name: Όνομα με το οποίο είναι εγγεγραμμένη η υπηρεσία (προεπιλογή:digna).
windows uninstall¶
Η εντολή windows uninstall αφαιρεί την εγγραφή της υπηρεσίας. Σταματήστε την πρώτα.
Χρήση εντολής¶
Επιλογές¶
--name: Όνομα με το οποίο είναι εγγεγραμμένη η υπηρεσία (προεπιλογή:digna).