Il y a beaucoup de questions et réponses qui mentionnent " artificiel ".
Je ne serais pas surpris si cela est lié aux artefacts .
Mes questions :
- Qu'est-ce qui est réellement un "artificiel" (dans le contexte de DevOps)?
- Pourquoi utilise-t-on des artefacts?
terminology
artifacts
artifactory
Pierre.Vriens
la source
la source
Réponses:
Artifactory est un produit de JFrog qui sert de gestionnaire de référentiel binaire . Cela dit, très souvent, on utilisera un «artificiel» comme synonyme du référentiel binaire plus général, un peu comme beaucoup de gens utilisent Frigidaire ou réfrigérateur pour désigner le réfrigérateur, qu’il s’agisse d’une marque Frigidaire ou non.
Le référentiel binaire est une extension naturelle du référentiel de code source, en ce sens qu'il stockera le résultat de votre processus de construction, souvent désigné sous le nom d'artefacts. La plupart du temps, le référentiel binaire ne serait pas utilisé directement, mais via un gestionnaire de paquets fourni avec la technologie choisie.
Dans la plupart des cas, ceux-ci stockent des composants d'application individuels qui peuvent ensuite être assemblés dans un produit complet, ce qui permet de diviser une génération en fragments plus petits, d'utiliser plus efficacement les ressources, de réduire les temps de génération, de mieux suivre les bases de données de débogage binaires, etc.
Voici quelques-uns des gestionnaires de paquets les plus populaires pouvant être gérés à l'aide d'un référentiel binaire:
Cette liste est loin d'être complète, elle donne juste une idée de ce qui se passe.
Le référentiel binaire peut permettre d’héberger tous ces éléments sous un même toit, ce qui simplifie considérablement leur gestion pour les équipes. Notez que vous n’avez pas besoin d’une très grande équipe pour commencer à tirer des avantages de la gestion des paquets binaires. L'investissement initial n'est pas très important et les avantages sont ressentis immédiatement. Surtout maintenant que de plus en plus de plates-formes, de frameworks et de langages intègrent directement cette gestion de dépendance. Leur principal avantage, cependant, est de créer un environnement que vos programmeurs trouveront naturel et confortable, ce qui le rend indispensable. En tant que développeur, il vous aide à créer une chaîne d'outils solide et à intégrer naturellement l'expérience globale dans leur pile de choix.
Comme je l’ai dit plus tôt, de nombreux produits peuvent servir de gestionnaires de paquets binaires, certains plus génériques que d’autres dans leur utilisation cible, variant considérablement en termes d’accessibilité et de prix.
Mon opinion personnelle est que les référentiels binaires sont aussi essentiels à une configuration bien conçue de devops que le référentiel de code source ou l'intégration continue.
la source
La façon dont cela m'a aidé à comprendre au début, la différence entre le référentiel de code source et le référentiel binaire était de penser comme suit: * Github ou Bitbucket est utile pour gérer tout le 'code' * Jfrog Artifactory est utile pour conserver le 'binaire' construit jusqu'à ce que je sois à l'aise avec ces termes!
En outre, l’importance d’Artifactory peut être comprise par rapport à la philosophie de DevOps consistant à "Construire une fois, déployer toujours". Dans l’intégration continue, il est très utile de construire votre fichier binaire une fois, de le placer dans Artifactory, puis de l’appeler à partir de là pour le déployer dans tous les environnements. De cette façon, nous sommes sûrs que le code qui fonctionne dans Dev est celui qui est transmis à Prod et qui y fonctionnera.
la source
Artifactory est un produit Binary Repository Manager de Jfrog .
Vous avez raison. En tant que gestionnaire de référentiel binaire, il est généralement utilisé pour gérer le stockage des artefacts générés et utilisés dans le processus de développement logiciel.
De la page principale d'Artifactory :
Les utilisations que vous avez mentionnées suggèrent que cela peut être assez populaire pour une marque générique dans DevOps.
la source
Je pense que la complication est ce que tout le monde est en train d’apprécier pour le moment. Je vais essayer de répondre à cette question en bref.
Le référentiel source est utilisé pour stocker le code et ses versions, tandis que artifactory est utilisé pour stocker les programmes exécutables qui sont les résultats de ce code [fichiers binaires - dll, jar, war, ear, msi, fichiers exe, etc.]
Désormais, la raison pour laquelle vous souhaitez les placer séparément dans un référentiel différent de votre code peut être multiple: accès sécurisé, menace de piratage, archivage de code malveillant ou tout simplement pour les clients qui ont simplement besoin du binaires.
La technologie de SCM aurait pu être divisée en deux types d’utilisateurs (un avec des privilèges de développeur qui pourront accéder au code source et un autre en tant que client qui ne pourra accéder qu’aux binaires). Mais il n'a pas emprunté cette voie! Alors maintenant, nous avons des artefacts.
la source
Un artefact
Est-ce que quelque chose est produit / généré / fabriqué à partir d'un processus spécifique
Un référentiel
Est-ce un réceptacle où les choses persistent?
En théorie, un artefact - ORY serait un dépôt d'artefact où ils sont conservés et gérés tout au long de leur cycle de vie.
Dans le contexte de DevOps, Artifactory est un produit qui gère les artefacts binaires. Il stocke et gère différents types (packages Jar, Python et npm, etc.) que vous produisez à partir de vos versions et que vous réutilisez lors de la compilation ou du déploiement.
la source