Patterns For Accessing Build Artifacts
Last modified: 20 April 2023This section covers:
Obtaining Artifacts
Use the following patterns to download artifacts:
To download artifacts of the latest builds (last finished, successful or pinned) use the following paths:
/repository/download/BUILD_TYPE_ID/.lastFinished/ARTIFACT_PATH
/repository/download/BUILD_TYPE_ID/.lastSuccessful/ARTIFACT_PATH
/repository/download/BUILD_TYPE_ID/.lastPinned/ARTIFACT_PATH
To download artifacts by build id use this path:
/repository/download/BUILD_TYPE_ID/BUILD_ID:id/ARTIFACT_PATH
To download artifacts by build number the following path should be used:
/repository/download/BUILD_TYPE_ID/BUILD_NUMBER/ARTIFACT_PATH
where
BUILD_TYPE_ID is a build configuration ID
BUILD_NUMBER is a build number
BUILD_ID is a build ID
ARTIFACT_PATH is a path to artifact in TeamCity server. This path may contain a {build.number} pattern , this pattern will be replaced with build number of the build whose artifact is retrieved.
Obtaining Artifacts from an Archive
TeamCity allows to obtain a file from any zip/jar archive from the build artifacts directory, using one of the following URL patterns:
Pattern 1
/repository/archive/<zip or jar archive>/buildTypeId/BUILD_TYPE_ID/buildId/(lastFinished|lastSuccessful|lastPinned)/index.html
where:
BUILD_TYPE_ID is a build configuration ID
lastFinished | lastSuccessful | lastPinned is an identifier for the build instance
Pattern 2
/repository/archive/<zip or jar archive>/buildTypeId/BUILD_TYPE_ID/buildNumber/BUILD_NUMBER/index.html
where
BUILD_TYPE_ID is a build configuration ID
BUILD_NUMBER is a build number
Obtaining Artifacts from a Build Script
It is often required to download artifacts of some build configuration by tools like wget or another downloader which does not support HTML login page. TeamCity asks for authentication if you accessing artifacts repository.
To authenticate correctly from a build script, you have to change URLs (add /httpAuth/
prefix to the URL):
/httpAuth/repository/download/BUILD_TYPE_ID/.lastFinished/ARTIFACT_PATH
Basic authentication is required for accessing artifacts by this URLs with /httpAuth/
prefix. You can use existing TeamCity username and password in basic authentication settings.
To enable downloading an artifact with guest login, you can use either way:
Use old URLs without
/httpAuth/
prefix, but with addedguest=1
parameter. For example:/repository/download/BUILD_TYPE_ID/.lastFinished/ARTIFACT_PATH?guest=1
Add the
/guestAuth
prefix to the URLs, instead of usingguest=1
parameter. For example:/guestAuth/repository/download/BUILD_TYPE_ID/.lastFinished/ARTIFACT_PATH
In this case you will not be asked for authentication.
Links to the Artifacts Containing the TeamCity Build Number
You can use {build.number} as a shortcut to current build number in the artifact file name. For example:
http://teamcity.yourdomain.com/repository/download/bt222/.lastFinished/TeamCity-{build.number}.exe
Thanks for your feedback!