JFrog platform provides an end-to-end solution to manage and control the flow of your code binaries from build to production.
JFrog platform consists of five products.
JFrog Artifactory - Provides capabilities to manage binaries and artifacts through the application development and delivery process.
JFrog Xray - Provides capabilities to pro-actively identify vulnerabilities in the binaries and artifacts managed by JFrog repository.
JFrog Mission Control - Provides capabilities to manage multiple JFrog platform deployments through a single administrative dashboard.
JFrog Distribution - Provides capabilities for managing release bundles and their distribution process.
JFrog Pipelines - Provides capabilities for end-to-end automation (CI/CD), workflow and tool orchestration.
JFrog Artifactory is a centralized universal repository that can be used to store different kinds of build binaries, and used across the application development and delivery process - enabling faster delivery cycles.
There are four kinds of JFrog repositories.
1. Local repositories - Local repositories contain artifacts that you upload and manage locally.
2. Remote repositories - Remote repositories contain cached artifacts from public cloud repositories like DockerHub, MVNRepository, NPM repository etc.
3. Virtual repositories - Virtual repository aggregates local and remote repositories into one logical repository.
4. Distribution repositories - Distribution repositories contain artifacts that can be easily moved from Artifactory to bintray, for distribution to end users.
JFrog Artifactory provides three key features to support Automation.
1. Rest APIs - Rest APIs that can be used for various Artifactory tasks such as build automations, artifact deployments, and integration with CI/CD automation tools.
2. JFrog CLI - A command line interface to automate and optimize Artifactory tasks. JFrog CLI internally used the Rest APIs to communicate with Artifactory.
3. Plug-in Framework - Plug-is that provide hooks into the Artifactory and automate tasks such as scheduling tasks, managing downloads and uploads, responding to new builds and artifacts etc.
Built-in Integrations - Integration to CI/CD and build tools such as Jenkins, Bamboo etc.