Es gibt einige Fragen und Antworten , die " künstlich " erwähnen .
Es würde mich nicht wundern, wenn es irgendwie mit Artefakten zusammenhängt .
Meine Fragen :
- Was ist eigentlich ein "Artefakt" (im Kontext von DevOps)?
- Warum werden Artefakte verwendet?
terminology
artifacts
artifactory
Pierre.Vriens
quelle
quelle
Antworten:
Artifactory ist ein Produkt von JFrog, das als Manager für das binäre Repository dient . Das heißt, man wird sehr oft ein "Artefakt" als Synonym für das allgemeinere binäre Repository verwenden, ähnlich wie viele Leute Frigidaire oder Kühlschrank verwenden, um den Kühlschrank zu bezeichnen, unabhängig davon, ob es sich um eine Marke von Frigidaire handelt oder nicht.
Das Binär-Repository ist eine natürliche Erweiterung des Quellcode-Repositorys, indem es das Ergebnis Ihres Erstellungsprozesses speichert, der häufig als Artefakte bezeichnet wird. Meistens wird das Binär-Repository nicht direkt verwendet, sondern über einen Paket-Manager, der mit der ausgewählten Technologie geliefert wird.
In den meisten Fällen werden hier einzelne Anwendungskomponenten gespeichert, die später zu einem vollständigen Produkt zusammengesetzt werden können. Auf diese Weise kann ein Build in kleinere Blöcke aufgeteilt werden, wodurch Ressourcen effizienter genutzt, die Erstellungszeiten verkürzt und die Verfolgung von Binär-Debug-Datenbanken usw. verbessert werden.
Hier sind einige der beliebtesten Paketmanager, die mit einem Binär-Repository verwaltet werden können:
Diese Liste ist alles andere als vollständig, sie gibt nur einen Überblick darüber, was da draußen ist.
Das Binär-Repository kann es ermöglichen, alle diese Dateien unter einem Dach zu hosten, was die Verwaltung für Teams erheblich vereinfacht. Beachten Sie, dass Sie kein sehr großes Team benötigen, um von der Verwaltung von Binärpaketen zu profitieren. Die anfängliche Investition ist nicht sehr groß und die Vorteile sind sofort zu spüren. Gerade jetzt, wo immer mehr Plattformen, Frameworks und Sprachen dieses Abhängigkeitsmanagement direkt in sie integrieren. Der größte Vorteil, den ich gefunden habe, war jedoch, eine Umgebung zu schaffen, die Ihre Programmierer als natürlich und komfortabel empfinden, sodass sie unverzichtbar ist. Es hilft Ihnen als Entwickler, eine solide Werkzeugkette zu erstellen, und es hilft Ihnen, das Gesamterlebnis auf natürliche Weise in den Stapel Ihrer Wahl zu integrieren.
Wie ich bereits sagte, gibt es viele Produkte , die als Manager von Binärpaketen dienen können. Einige sind generischer als andere, was die Zielnutzung anbelangt, und variieren auch in Bezug auf Zugänglichkeit und Preise erheblich.
Meine persönliche Meinung ist, dass binäre Repositorys genauso wichtig für ein gut gestaltetes Devop-Setup sind wie das Quellcode-Repository oder die kontinuierliche Integration.
quelle
Der Unterschied zwischen dem Quellcode-Repository und dem Binär-Repository bestand zunächst darin, wie folgt zu denken: * Github oder Bitbucket sind nützlich, um den gesamten 'Code' zu verwalten bis ich mit diesen Begriffen zufrieden war!
Die Bedeutung von Artifactory kann auch im Zusammenhang mit der DevOps-Philosophie "Einmal erstellen, immer bereitstellen" verstanden werden. In Continuous Integration ist es ein langer Weg, Ihre Binärdatei einmal zu erstellen, in Artifactory zu platzieren und dann von dort aufzurufen, um sie in allen verschiedenen Umgebungen bereitzustellen. Auf diese Weise sind wir sicher, dass der Code, der in Dev funktioniert, derjenige ist, der an Prod gesendet wurde und dort funktionieren wird.
quelle
Artifactory ist ein Binary Repository Manager- Produkt von Jfrog .
Sie haben Recht - als Binär-Repository-Manager wird er normalerweise zum Verwalten der Speicherung von Artefakten verwendet, die im Softwareentwicklungsprozess generiert und verwendet werden.
Von der Hauptwebseite von Artifactory :
Die von Ihnen genannten Verwendungszwecke lassen vermuten, dass sie für eine generische Marke in DevOps populär genug sind .
quelle
Ich denke, Dinge zu komplizieren ist das, wofür heutzutage jeder geschätzt wird. Ich werde versuchen, diese Frage kurz zu beantworten.
Source Repository wird zum Speichern von Code und seiner Versionen verwendet, während Artifactory zum Speichern der ausführbaren Programme verwendet wird, die Ausgaben dieses Codes sind [Binärdateien - DLL-, JAR-, WAR-, EAR-, MSI-, EXE-Dateien usw.].
Der Grund, warum Sie sie separat in einem Repo ablegen möchten, das sich von Ihrem Code unterscheidet, könnte vielfältig sein - direkt vom sicheren Zugriff über das Hacken von Bedrohungen und das Einchecken bösartiger Codes bis hin zu einer separaten Möglichkeit für die Kunden, die nur das benötigen Binärdateien.
Die Technologie von SCM hätte sich darauf auswirken können, zwei Arten von Benutzern zu erstellen (eine mit Entwicklerrechten, die auf den Quellcode zugreifen können, und eine andere als Client, der nur auf Binärdateien zugreifen kann). Aber diesen Weg hat es nicht genommen! Jetzt haben wir also Artefakteure.
quelle
Ein Artefakt
Ist etwas, das aus einem bestimmten Prozess hergestellt / erzeugt / hergestellt wird
Ein Repository
Ist ein Behälter, in dem die Dinge bestehen bleiben
Theoretisch ein Artefakt - ory wäre ein Repository von Artefakt sein , wo sie beibehalten werden und während ihres gesamten Lebenszyklus verwaltet.
Im Kontext von DevOps ist Artifactory ein Produkt, das binäre Artefakte verwaltet. Es speichert und verwaltet verschiedene Typen (Jar-, Python- und npm-Pakete usw.), die Sie aus Ihren Builds erstellen und zum Zeitpunkt der Kompilierung oder Bereitstellung wiederverwenden.
quelle