We have a requirement where we need to develop a custom product where the software component life cycle needs to be managed i.e. upload, download, recall etc. one option is to go with Custom API leveraging Azure Artifacts and the other option is to go with Artifactory. Can we have some insight on what are the Pros and Cons of these two solution. some of the links which provides info are https://www.g2.com/products/azure-artifacts/competitors/alternatives In addition to that i would also like to understand how is their support towards package managers mainly cocoapods, maven etc
JFrog Artifactory pros
Artifactory supports 25+ package types, while Azure supports only Maven, npm, NuGet and Python. You can get Docker and Helm with Azure Container Registry but it’s a separate tool.
Artifactory is fully hybrid - available both for on-premise installations and as SaaS - with full parity between the versions.
With Artifactory you can avoid vendor lock-in - not depending just on one cloud vendor for all of your needs. That also means not being limited to any vendor’s stack for your database, access management, etc. Proxy any remote repository - not just the official ones (like Maven Central and PyPI.org)
Artifactory is optimized for multi-site operations - Supports any network topology, over multiple, geographically distant sites and data centers, through different options for replication including pull, push, event-based and multi-push replication.
Rich metadata & AQL - Artifactory provides full metadata capabilities for all major package formats for both artifacts and folders – including custom metadata. Users can tag artifacts and folders with searchable properties. Artifactory also collects build information for build artifacts as part of the CI server integration (see below). AQL gives you unprecedented flexibility in how you search for artifacts. It offers a simple way to formulate complex queries that specify any number of search criteria, filters, sorting options and output fields.
Build info - Artifactory stores exhaustive metadata for all build artifacts deployed to it. With this “bill of materials” it is easy to faithfully reproduce a build, and trace the cause of issues to reduce time to resolution (TTR), even if the build is already in production.
Azure Artifacts pros
if your CI is already built on Azure DevOps, the initial set up for Azure Artifacts may be a bit quicker. The basic functionality of hosting artifacts, so that they can be resolved by other builds will work for you.
Disclaimer: I'm a JFrog employee.
Microsoft Artifact makes a lot of sense if you are using other Microsoft Azure products such as their DevOps solutions. If you are using Azure, Microsoft Artifact will integrate well with the rest of the platform, have better support (only 1 vendor to deal with), and should have better performance since the data will all be in their network. Additionally, you would not be billed for a data out transfer to create and store the artifact.
On the other hand Artifactory is designed to be more technologically agnostic. It will integrate with major cloud providers (Azure, Google, AWS) and supports many different types of technologies. However, there will be some setup and configuration to get it up and running if using the On-Prem version.