Repository “/repo” is not available/disabled

JFrog Support
2019-01-22 15:21

The /repo repository is a preconfigured virtual repository that aggregates all of your repositories. We strongly discourage using this repository and from Artifactory version 3.5.3 the /repo repository is disabled by default. For Artifactory SaaS, this repository was disabled by default for new instances starting from version 4.7.6 and will be disabled for all Artifactory SaaS customers on October 4, 2016.


The reason that the global /repo repository is being disabled is that having one virtual repository to expose all the artifacts stored in Artifactory doesn't align with the concept of single-typed repositories introduced in Artifactory 4.0. As a result, using /repo from your builds can cause issues when _making inappropriate requests such as requesting Docker images from an npm repository, searching for npm packages in JCenter and so on. This will also cause issues with resolution order, permissions, performance and timeouts due to the full aggregation of all repositories in Artifactory.


If you are using the /repo repository, you will find that it is no longer available in the UI and any attempts to access it (for example builds that are referenced to retrieve artifacts from /repo) will fail with the following error:



"errors" : [ {

"status" : 403,
  "message" : "Accessing the global virtual repository /repo is disabled!"

} ]



If you wish to have one endpoint that exposes all content stored, or proxied we recommend creating a virtual repository _per package type(e.g., a /docker-repo that includes all Docker repositories).

From Artifactory version 5.0, you can also create your own virtual repository of a specific package format using “repo” as its repository key to aggregate the relevant repositories you want to expose under the "/repo" endpoint. This will allow scripts that use this repository to continue working for the specific package format. For example, you could create a Maven virtual repository named "repo" and aggregate all the required Maven, Gradle and IVY repositories under this virtual repository. This way, any scripts using the "repo" repository would continue working for your Maven environment.