Concourse Lab Creation
Last updated
Last updated
Μάθετε & εξασκηθείτε στο AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Μάθετε & εξασκηθείτε στο GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Αυτό το αρχείο docker-compose απλοποιεί την εγκατάσταση για να κάνετε μερικές δοκιμές με το concourse:
Μπορείτε να κατεβάσετε την γραμμή εντολών fly
για το λειτουργικό σας σύστημα από το διαδίκτυο στο 127.0.0.1:8080
Μπορείτε να αναπτύξετε εύκολα το concourse σε Kubernetes (π.χ. σε minikube) χρησιμοποιώντας το helm-chart: concourse-chart.
Μετά τη δημιουργία του περιβάλλοντος concourse, μπορείτε να δημιουργήσετε ένα μυστικό και να δώσετε πρόσβαση στο SA που εκτελείται στο concourse web για να έχει πρόσβαση στα K8s μυστικά:
Ένα pipeline αποτελείται από μια λίστα Jobs που περιέχει μια ταξινομημένη λίστα Steps.
Μπορούν να χρησιμοποιηθούν διάφοροι τύποι βημάτων:
το set_pipeline
βήμα ρυθμίζει ένα pipeline
το load_var
βήμα φορτώνει μια τιμή σε μια τοπική μεταβλητή
το in_parallel
βήμα εκτελεί βήματα παράλληλα
το do
βήμα εκτελεί βήματα διαδοχικά
ο across
τροποποιητής βήματος εκτελεί ένα βήμα πολλές φορές; μία φορά για κάθε συνδυασμό τιμών μεταβλητών
το try
βήμα προσπαθεί να εκτελέσει ένα βήμα και επιτυγχάνει ακόμη και αν το βήμα αποτύχει
Κάθε βήμα σε ένα σχέδιο εργασίας εκτελείται σε δικό του κοντέινερ. Μπορείτε να εκτελέσετε οτιδήποτε θέλετε μέσα στο κοντέινερ (δηλαδή, να εκτελέσετε τις δοκιμές μου, να εκτελέσετε αυτό το bash script, να κατασκευάσετε αυτή την εικόνα, κ.λπ.). Έτσι, αν έχετε μια εργασία με πέντε βήματα, το Concourse θα δημιουργήσει πέντε κοντέινερ, ένα για κάθε βήμα.
Επομένως, είναι δυνατόν να υποδείξετε τον τύπο του κοντέινερ στο οποίο χρειάζεται να εκτελείται κάθε βήμα.
Ελέγξτε 127.0.0.1:8080 για να δείτε τη ροή της pipeline.
Είναι δυνατόν να αποθηκεύσετε τα αποτελέσματα μιας εργασίας σε ένα αρχείο και να υποδείξετε ότι είναι μια έξοδος και στη συνέχεια να υποδείξετε την είσοδο της επόμενης εργασίας ως την έξοδο της προηγούμενης εργασίας. Αυτό που κάνει το concourse είναι να τοποθετεί τον κατάλογο της προηγούμενης εργασίας στη νέα εργασία όπου μπορείτε να έχετε πρόσβαση στα αρχεία που δημιουργήθηκαν από την προηγούμενη εργασία.
Δεν χρειάζεται να ενεργοποιείτε τις εργασίες χειροκίνητα κάθε φορά που χρειάζεται να τις εκτελέσετε, μπορείτε επίσης να τις προγραμματίσετε να εκτελούνται κάθε φορά:
Κάποιος χρόνος περνά: Time resource
Σε νέες commits στο κύριο branch: Git resource
Νέα PR's: Github-PR resource
Λάβετε ή σπρώξτε την τελευταία εικόνα της εφαρμογής σας: Registry-image resource
Ελέγξτε ένα παράδειγμα YAML pipeline που ενεργοποιείται σε νέες commits στο master στο https://concourse-ci.org/tutorial-resources.html
Μάθετε & εξασκηθείτε στο AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Μάθετε & εξασκηθείτε στο GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)