TeamCity 4.0 Help

Patterns For Accessing Build Artifacts

This section covers URL patterns that you may use to download build artifacts from outside of TeamCity. You may also download artifacts from TeamCity using Configuring Dependencies dependency manager. If you need to access the artifacts in your builds, consider using TeamCity's built-in Dependent Build feature.

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:

/repository/download/BUILD_TYPE_ID/BUILD_ID:id/ARTIFACT_PATH

To download artifacts by build number, use:

/repository/download/BUILD_TYPE_ID/BUILD_NUMBER/ARTIFACT_PATH

where

  • BUILD_TYPE_ID is a Build Configuration or build configuration full name, that is, <project name>::<build configuration name>

  • 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 user login, you can use either of the following methods:

  • 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.

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

Obtaining all artifacts in a single archive

TeamCity allows to download all artifacts packed in a zip archive using any of the following links:

http://teamcity.yourdomain.com/downloadArtifacts.html?buildId={build.number} http://teamcity.yourdomain.com/downloadArtifacts.html?buildTypeId={build.type}&buildId=(lastFinished|lastSuccessful|lastPinned)

where {build.number} and {build.type} denote the build id and build configuration id respectively.

Last modified: 20 April 2023