Environment Variables

Screwdriver exports a set of environment variables that you can rely on during build runtime.

Note: Environment variables set in one job cannot be accessed in another job. To pass variables between jobs, use metadata.

Build Specific


Name Description
SD_BUILD_ID The ID of the build
SD_EVENT_ID The ID of the event
SD_JOB_ID The ID of the job
SD_JOB_NAME Job name (e.g.: main)
SD_PARENT_BUILD_ID Build(s) that trigger(s) this build
SD_PARENT_EVENT_ID ID of the parent event if this was a restart
SD_PR_PARENT_JOB_ID ID of the real job of PR. For example, in PR-1:main build, this ENV references the ID of main job
SD_PIPELINE_ID The ID of the pipeline
SD_PIPELINE_NAME The name of the pipeline (e.g.: d2lam/myPipeline)
SD_PULL_REQUEST Pull Request number (e.g.: 1; blank if non-PR)
SD_TEMPLATE_FULLNAME Full template name the job is using (e.g.: d2lam/myTemplate; blank if not using template)
SD_TEMPLATE_NAME Name of the template the job is using (e.g.: myTemplate; blank if not using template)
SD_TEMPLATE_NAMESPACE Namespace of the template the job is using (e.g.: d2lam; blank if not using template)
SD_TEMPLATE_VERSION Version of the template the job is using (blank if not using template)
SD_TOKEN JWT token for the build

User configurable

Name Default Value Description
SD_ZIP_ARTIFACTS false Options: (true/false)

Compresses and uploads artifacts in a single ZIP file.

Use case: If you’re using Amazon S3 for your store, the zip file can be unzipped on the store end using AWS Lambda. Reduces upload time when your build has a lot of artifacts but there’s an upper limit to the size and number of files in the zip file you upload, since the compute resources on Lambda are limited per build. If the upload fails, it’s likely that you have more artifacts or that the zip is larger than Lambda can handle.

Note: Consult with your cluster admin to see if this option is available.
USER_SHELL_BIN sh The user shell bin to run the build in. Can also be the full path such as /bin/bash.
GIT_SHALLOW_CLONE true Options: (true/false)

Shallow clones source repository.
GIT_SHALLOW_CLONE_DEPTH 50 Shallow clone with a history truncated to the specified number of commits
GIT_SHALLOW_CLONE_SINCE   Shallow clone with a history truncated starting from the specified datetime (inclusive). If set, this has priority over GIT_SHALLOW_CLONE_DEPTH.

This uses --shallow-since which accepts both absolute dates (e.g.: 2019-04-01) and relative dates (e.g.: 4 weeks ago).
GIT_SHALLOW_CLONE_SINGLE_BRANCH   If set to true, it will use --single-branch option for shallow clone. Otherwise, --no-single-branch option is used.


These environment variables may or may not be available depending on what plugins are installed.

Coverage (Sonar)

Name Description
SD_SONAR_AUTH_URL Screwdriver API authentication URL that will return a Sonar access token


Name Description
SD_ARTIFACTS_DIR Location of built/generated files
SD_META_PATH Location of the metadata file
SD_ROOT_DIR Location of workspace (e.g.: /sd/workspace)
SD_SOURCE_DIR Location of checked-out code (e.g.: sd/workspace/src/github.com/d2lam/myPipeline)
SD_SOURCE_PATH Location of source path which triggered current build. See Source Paths.
SD_CONFIG_DIR Location of parent pipeline’s repository (only set for child pipelines) (e.g.: sd/workspace/config)

Environment Variables

Name Description
<environment_variable> Environment variable specified under the “environment” section in your screwdriver.yaml

Source Code

Name Description
SCM_URL SCM URL that was checked out (e.g.: https://github.com/d2lam/myPipeline)
GIT_URL SCM URL that was checked out with .git appended (e.g.: https://github.com/d2lam/myPipeline.git)
CONFIG_URL SCM URL of the parent pipeline repository (only set for child pipelines)
GIT_BRANCH Reference for PR or the branch (e.g.: origin/refs/${PRREF} or origin/${BRANCH})
SD_BUILD_SHA The Git commit SHA (e.g.: b5a94cdabf23b21303a0e6d5be5e96bd6300847a)


Name Description
SD_API_URL Link to the Screwdriver API URL (e.g.: https://api.screwdriver.cd/v4/)
SD_BUILD_URL Link to the Screwdriver build API URL (e.g.: https://api.screwdriver.cd/v4/builds/1)
SD_STORE_URL Link to the Screwdriver Store URL (e.g.: https://store.screwdriver.cd/v1/)
SD_UI_URL Link to the Screwdriver UI URL (e.g.: https://cd.screwdriver.cd/)

Continuous Integration

Name Description
CI true