TeamCity
 
You are viewing the documentation for an earlier version of TeamCity.

Patterns For Accessing Build Artifacts

Last modified: 20 April 2023

This 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:

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 added guest=1 parameter. For example: /repository/download/BUILD_TYPE_ID/.lastFinished/ARTIFACT_PATH?guest=1

  • Add the /guestAuth prefix to the URLs, instead of using guest=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