Artifactory generates metadata files in repositories after calculating them. Each teachnology type has different metadata files, for example, package.json for npm, maven-metadata.xml for maven, etc. These are locally generated files, therefore, repository replication or federation will not replicate these metadata files from the source to target Artifactory instances, and these will be calculated by the target Artifactory server once the package is successfully deployed to it, and eventually created.
When a repository is in the process of replication, metadata files will be skipped since they are locally generated. The logs indicating this will looks similar to the following examples:
2023-06-21T14:20:39.160Z [jfrt ] [DEBUG] [96780c06a2d3af4a] [.r.EmptyReplicationRunnable:41] [umer-1687357216917-0] - Replication of DEPLOY skipped Repository test-libs-snapshot-local type Maven path org/jfrog/example/gradle/webservice/1.0-SNAPSHOT/maven-metadata.xml is LocalGenerated. (test-libs-snapshot-local:org/jfrog/example/gradle/webservice/1.0-SNAPSHOT/maven-metadata.xml) 2023-06-21T14:16:10.574Z [jfrt ] [DEBUG] [bf105ff234faa751] [.r.EmptyReplicationRunnable:41] [umer-1687356970402-0] - Replication of DEPLOY skipped Repository dev-npm-local type Npm path .npm/npm-example/package.json is LocalGenerated. (dev-npm-local:.npm/npm-example/package.json)
On the target Artifactory server, a successful deployment of a package (as part of a replication or federation) should trigger the creation of the metadata files after the package’s metadata is calculated. For example, for npm, the artifactory logs will show the following entries:
2023-06-25T04:20:47.719Z [5c0c79eba4d36e5c] [ACCEPTED DEPLOY] dev-npm-local:.npm/ajv/package.json for client : _system_ / . 2023-06-25T04:20:47.676Z [jfrt ] [INFO ] [5c0c79eba4d36e5c] [.NpmPackageMetadataIndexer:408] [69|art-exec-fed-1759] - Preparing to write npm package metadata for repo 'dev-npm-local' on path '.npm/ajv/package.json' 2023-06-25T04:20:47.740Z [jfrt ] [INFO ] [5c0c79eba4d36e5c] [.NpmPackageMetadataIndexer:418] [69|art-exec-fed-1759] - Finished writing npm package metadata for repo 'dev-npm-local' on path '.npm/ajv/package.json'
Note that the deployment of the package.json file is done by the user _system_, e.g. Artifactory