Binärartefakte und Artefakte
Dieser Beitrag ist eine Begriffserklärung zu Artefakten und Binärartefakten – inklusive Prüfungsfragen, Kernkomponenten und Tags.
In a Nutshell
- Ein Artefakt ist jedes Projektergebnis (Doku, Modell, Testprotokoll, Code).
- Ein Binärartefakt ist das maschinenlesbare Produkt eines Builds (Executable, Bibliothek, Paket, Container-Image).
Kompakte Fachbeschreibung
Binärartefakte entstehen durch Kompilieren/Linken/Paketieren/Image-Builds, z.B.:
- JAR, DLL, EXE
- NPM-Paket, Python Wheel
- Docker/OCI Image
Sie werden versioniert in einem Artefakt-Repository abgelegt – mit Metadaten (Version, Commit, Buildnummer), Prüfsummen und idealerweise Signaturen.
Wichtige Prinzipien:
- Unveränderlichkeit: Releases nicht überschreiben.
- Build once, promote: dasselbe Artefakt wandert Dev → Staging → Prod.
- Supply-Chain-Security: SBOM, Scans, Attestierungen.
Prüfungsrelevante Stichpunkte
- Artefakt vs Binärartefakt sauber trennen
- Release vs Snapshot
- Semantische Versionierung
- Checksummen/Signaturen/SBOM als Nachweise
- Reproduzierbare Builds (Lockfiles, feste Toolchain)
- Policies vor Deployment (Scans, Signaturprüfung)
- Retention/Archivierung (Compliance)
Kernkomponenten
- Quellartefakte (Code, IaC, Doku)
- Buildsystem/Packager/Image Builder
- Binärartefakt-Formate
- Metadaten (Version/Commit)
- Qualitätsberichte (Tests/Coverage/Linter)
- Security (SBOM/Scan/Signatur)
- Artefakt-Repository/Registry
- Promotion-Pfad
- Konsum (Paketmanager/Lockfiles)
- Governance (Retention/ACL)
Praxisbeispiel (Container-Release)
1) CI baut JAR + Container-Image v1.4.0
2) SBOM erzeugen + SHA256 + Signatur
3) Push in Registry/Artefakt-Repo
4) Deploy nach Staging, Tests
5) Freigabe -> Promotion nach Prod (gleiches Artefakt)
6) Release Notes + Retention (z.B. 12 Monate)
Vorteile und Nachteile
Vorteile
- Nachvollziehbarkeit + Reproduzierbarkeit
- Security durch Signaturen/SBOM
- saubere Releases + Rollbacks
Nachteile
- Storage- und Governance-Aufwand
- Tool-Komplexität bei vielen Formaten
Typische Prüfungsfragen (mit Kurzantwort)
- Artefakt vs Binärartefakt? Artefakt = jedes Ergebnis; Binärartefakt = Build-Produkt.
- Warum immutable Releases? Reproduzierbarkeit und Sicherheit.
- Wozu SBOM? Komponenten-/Lizenz-/Vulnerability-Transparenz.