Skip to content
Latchkey

JFrog "jf rt build-publish failed" in CI

The jf CLI could not publish build info to Artifactory. Either nothing was collected for the build name and number, or the publish request was rejected by auth or permissions.

What this error means

A jf rt build-publish <name> <number> step fails, sometimes with "No build info was found" or an auth error on the publish request.

jf
[Error] Failed to publish build info:
Build 'my-build'/'12' doesn't exist. Make sure to collect build info before publishing.

Common causes

No build parts were collected before publish

Uploads and dependency collection must record against the same build name and number; if none did, publish finds nothing to send.

Auth or permission failure on the publish

The publish call needs a valid token with permission to write build info; a 401/403 there fails the publish.

How to fix it

Collect against the build, then publish

  1. Pass the same --build-name and --build-number on the upload/collect steps.
  2. Publish the build info with the identical name and number.
  3. Keep the build number stable (for example github.run_number).
Terminal
jf rt upload "build/*.jar" libs-release-local/ \
  --build-name=my-build --build-number=${{ github.run_number }}
jf rt build-publish my-build ${{ github.run_number }}

Confirm token permission to write build info

Ensure the CI token can publish build info; a 403 here is a permission gap, not a collection problem.

How to prevent it

  • Use one build name and number across all collect and publish steps.
  • Derive the build number from the CI run so it stays consistent.
  • Verify the token can write build info before the publish step.

Related guides

Tired of flaky CI? Latchkey auto-heals failed jobs and retries them for you. Start free →