Artifacts ManagementBlackie Tsai
Agenda
• Artifacts Introduction
• on-premise Tools Introduction• JFrog Artifactory
• TFS
• ProGet
• Maven
• DevOps with Artifacts Management
Artifacts Introduction
What is Artifacts?
• Artifact(US) or artefact
• noun ar·ti·fact \ˈär-ti-ˌfakt\
• Artifact (archaeology), an object formed by humans, particularly one of interest to archaeologists
• Artifact (software development), one of many kinds of tangible by products produced during the development of software
What is REAL Artifacts in Software Development?
Artifacts in Software Development Life Cycle
Artifacts Management during Software Development• Documentation => Version Control
• The source code => Source Code Version Control
• The compiled application => Dependency Management
• A deployable package => Provisioning and Configuration Management
Version Control
Dependency Management
• .NET : NuGet
• JavaScript : npm, Yarn
• Front-end : Bower
• Java : Maven
• iOS : CocoaPods, Carthage
And many many…
Provisioning & Configuration Management
• Provisioning Management• Docker
• Vagrant
• …
• Configuration/Orchestration Management• Chef
• Puppet
• Ansible
• SaltStack
• …Chef vs Puppet vs Ansible vs SaltStack | Configuration Management Tools Comparison
Artifact Management Main Features
• Versioning support
• Retention
• Access control
• Promotion
• Act as a native repository for the artifacts
on-premise Tools Introduction
JFrog Artifactory
• JFrog Artifactory is an open source repository manager.
• License charge per Server.
• Have OSS, Pro, Enterprise and SaaS version.
• OSS version DO NOT support below feeds:• NuGet
• npm
• CocoaPods
JFrog - Universal Artifact Repository Manager
Team Foundation Server(TFS)
• It provides source code management, reporting, requirements management, project management, automated builds, lab management, testing and release management capabilities. It covers the entire application lifecycle, and enables DevOps capabilities.
• License charge per User.
• First 5 users free.
• Have SaaS version(VSTS)
• Only support• NuGet• npm• Maven(preview)
Using Package from Maven and Package Management in TFS2017
ProGet
• ProGet is a Package Management System allows users to host and manage personal or enterprise-wide package.
• License charge per Server.
• Have Free, Basic, Pro and SaaS version.
• Free support all feeds include:• NuGet
• npm
• Maven
Another Free Universal Package Manager - ProGet
Sonatype Nexus Repository Manager
• Repository manager with FREE support for popular formats. GET REPOSITORY OSS
• License charge per User.
• Have OSS, Enterprise version
• Free support• NuGet
• npm
• Maven
Other Feature Matrix
Binary Repository Manager Feature Matrix
DevOps with Artifacts Management
References
• https://en.wikipedia.org/wiki/Artifact
• http://files.zend.com/help/Zend-Studio/content/git_and_github.htm
• https://www.jfrog.com/
• https://www.visualstudio.com/tfs/
Top Related