Есть довольно много вопросов и ответов, которые упоминают « артефакт ».
Я не удивлюсь, если это как-то связано с артефактами .
Мои вопросы :
- Что на самом деле является «артефактом» (в контексте DevOps)?
- Почему используются артефакты?
terminology
artifacts
artifactory
Pierre.Vriens
источник
источник
Ответы:
Artifactory - это продукт JFrog, который служит менеджером бинарных репозиториев . При этом очень часто можно использовать «артефакт» в качестве синонима более общего бинарного хранилища, так же как многие люди используют Frigidaire или холодильник для обозначения холодильника независимо от того, является ли он брендом Frigidaire или нет.
Бинарный репозиторий является естественным расширением репозитория исходного кода в том смысле, что он будет хранить результаты вашего процесса сборки, часто обозначаемые как артефакты. В большинстве случаев бинарный репозиторий можно использовать не напрямую, а через менеджер пакетов, который поставляется с выбранной технологией.
В большинстве случаев они будут хранить отдельные компоненты приложения, которые впоследствии могут быть собраны в полноценный продукт, что позволит разбить сборку на более мелкие фрагменты, более эффективно использовать ресурсы, сократить время сборки, улучшить отслеживание бинарных отладочных баз данных и т. Д.
Вот некоторые из наиболее популярных менеджеров пакетов, которыми можно управлять с помощью бинарного репозитория:
Этот список далеко не полный, просто дает представление о том, что там.
Бинарный репозиторий может позволить разместить все это под одной крышей, что значительно упрощает их управление для команд. Обратите внимание, что вам не нужна очень большая команда, чтобы начать получать выгоды от управления бинарными пакетами. Первоначальные инвестиции не очень велики, и выгоды ощущаются сразу. Особенно сейчас, когда все больше платформ, сред и языков интегрируют это управление зависимостями непосредственно в них. Однако самое большое их преимущество, которое я обнаружил, заключалось в том, чтобы создать среду, которую ваши программисты найдут естественной и комфортной, что сделает ее необходимой. Это помогает вам, как разработчикам, создать прочную цепочку инструментов, и помогает им сделать общий опыт естественным образом подходящим для их стека.
Как я уже говорил ранее, существует множество продуктов , которые могут служить менеджерами бинарных пакетов, некоторые из них более универсальны, чем другие по своему целевому назначению, также сильно различаясь по доступности и ценам.
Мое личное мнение состоит в том, что бинарные репозитории являются столь же важной частью хорошо спроектированной установки devops, как репозиторий исходного кода или непрерывная интеграция.
источник
То, как это помогло мне понять изначально, разница между хранилищем исходного кода и двоичным хранилищем заключалась в том, чтобы думать о нем следующим образом: * Github или Bitbucket полезен для поддержки всего «кода» * Jfrog Artifactory полезен для поддержки встроенного «двоичного» По крайней мере пока я не освоился с этими условиями!
Кроме того, важность Artifactory может быть понята в связи с философией DevOps «Построй один раз, разверни всегда». В Continuous Integration достаточно пройти долгий путь, чтобы один раз собрать свой двоичный файл, поместить его в Artifactory, а затем вызвать его оттуда для развертывания во всех различных средах. Таким образом, мы уверены, что код, который работает в Dev, передается в Prod и будет работать там.
источник
Artifactory является продуктом Binary Repository Manager от Jfrog .
Вы правы - будучи менеджером бинарных репозиториев, он обычно используется для управления хранилищем артефактов, созданных и используемых в процессе разработки программного обеспечения.
С главной страницы Артефактуры :
Упоминания, которые вы упомянули, предполагают, что он может быть достаточно популярным для универсального товарного знака в DevOps.
источник
Я думаю, что все усложняют то, за что сегодня все ценят. Я постараюсь ответить на этот вопрос вкратце.
Source Repository используется для хранения кода и его версий, в то время как artifactory используется для хранения исполняемых программ, которые являются выходами этого кода [binaries - dll, jar, war, ear, msi, exe файлы и т. Д.]
Теперь причина, по которой вы хотите разместить их отдельно в репозитории, который отличается от вашего кода, может быть многочисленной - прямо от безопасного доступа, хакерских угроз, проверок вредоносного кода или просто для того, чтобы клиенты, которым просто нужны двоичные файлы.
Технология SCM могла бы раскрыться для создания двух типов пользователей (один с привилегиями разработчика, который сможет получить доступ к исходному коду, а другой - как клиент, который просто сможет получить доступ к двоичным файлам). Но это не взял этот путь! Так что теперь у нас есть артефакты.
источник
Артефакт
Это то, что производится / генерируется / создается из определенного процесса
Хранилище
Является ли сосуд, где вещи сохраняются
В теории , артефакт - это хранилище артефактов, где они сохраняются и управляются на протяжении всего их жизненного цикла.
В контексте DevOps, Artifactory - это продукт, который управляет бинарными артефактами. Он хранит и управляет различными типами (пакеты Jar, Python и npm и т. Д.), Которые вы создаете из своих сборок и повторно используете во время компиляции или развертывания.
источник