{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://jfrog.com/schemas/repository", "title": "JFrog Repository", "description": "Represents a repository configuration in JFrog Artifactory, defining how artifacts are stored, proxied, or aggregated from multiple sources.", "type": "object", "properties": { "key": { "type": "string", "description": "Unique identifier for the repository", "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._-]*$", "examples": [ "libs-release-local", "npm-remote", "maven-virtual" ] }, "rclass": { "type": "string", "description": "Repository class defining its behavior", "enum": [ "local", "remote", "virtual", "federated" ] }, "packageType": { "type": "string", "description": "Type of packages stored in this repository", "enum": [ "maven", "gradle", "ivy", "sbt", "helm", "cocoapods", "opkg", "rpm", "nuget", "cran", "gems", "npm", "bower", "debian", "composer", "pypi", "docker", "vagrant", "gitlfs", "go", "yum", "conan", "chef", "puppet", "generic", "conda", "p2", "swift", "terraform", "cargo", "oci" ] }, "description": { "type": "string", "description": "Free-text description of the repository" }, "notes": { "type": "string", "description": "Internal notes about the repository" }, "includesPattern": { "type": "string", "description": "Artifact include pattern", "default": "**/*" }, "excludesPattern": { "type": "string", "description": "Artifact exclude pattern", "default": "" }, "repoLayoutRef": { "type": "string", "description": "Repository layout reference", "examples": [ "maven-2-default", "npm-default", "simple-default" ] }, "handleReleases": { "type": "boolean", "description": "Whether to handle release artifacts" }, "handleSnapshots": { "type": "boolean", "description": "Whether to handle snapshot artifacts" }, "maxUniqueSnapshots": { "type": "integer", "description": "Maximum number of unique snapshots to retain", "minimum": 0 }, "suppressPomConsistencyChecks": { "type": "boolean", "description": "Whether to suppress POM consistency checks" }, "blackedOut": { "type": "boolean", "description": "Whether the repository is blacked out (disabled)" }, "xrayIndex": { "type": "boolean", "description": "Whether the repository is indexed by Xray for scanning" }, "propertySets": { "type": "array", "description": "Property sets associated with the repository", "items": { "type": "string" } }, "dockerApiVersion": { "type": "string", "description": "Docker API version (V1 or V2)", "enum": [ "V1", "V2" ] }, "url": { "type": "string", "format": "uri", "description": "URL of the remote repository (remote repos only)" }, "username": { "type": "string", "description": "Username for remote repository authentication" }, "environments": { "type": "array", "description": "Environments this repository is associated with", "items": { "type": "string", "examples": [ "DEV", "PROD" ] } }, "projectKey": { "type": "string", "description": "Project key if the repository belongs to a project" } }, "required": [ "key", "rclass", "packageType" ] }