Artifacts Management
Blackie 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/

Artifacts management with DevOps

  • 1.
  • 2.
    Agenda • Artifacts Introduction •on-premise Tools Introduction • JFrog Artifactory • TFS • ProGet • Maven • DevOps with Artifacts Management
  • 3.
  • 4.
    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
  • 5.
    What is REALArtifacts in Software Development?
  • 6.
    Artifacts in SoftwareDevelopment Life Cycle
  • 7.
    Artifacts Management duringSoftware Development • Documentation => Version Control • The source code => Source Code Version Control • The compiled application => Dependency Management • A deployable package => Provisioning and Configuration Management
  • 8.
  • 9.
    Dependency Management • .NET: NuGet • JavaScript : npm, Yarn • Front-end : Bower • Java : Maven • iOS : CocoaPods, Carthage And many many…
  • 10.
    Provisioning & ConfigurationManagement • Provisioning Management • Docker • Vagrant • … • Configuration/Orchestration Management • Chef • Puppet • Ansible • SaltStack • … Chef vs Puppet vs Ansible vs SaltStack | Configuration Management Tools Comparison
  • 11.
    Artifact Management MainFeatures • Versioning support • Retention • Access control • Promotion • Act as a native repository for the artifacts
  • 12.
  • 13.
    JFrog Artifactory • JFrogArtifactory 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
  • 14.
    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
  • 15.
    ProGet • ProGet isa 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
  • 16.
    Sonatype Nexus RepositoryManager • Repository manager with FREE support for popular formats. GET REPOSITORY OSS • License charge per User. • Have OSS, Enterprise version • Free support • NuGet • npm • Maven
  • 17.
    Other Feature Matrix BinaryRepository Manager Feature Matrix
  • 18.
  • 24.