Buildkite Quickstart

Getting Started

You can use the analytics test uploader within your Buildkite workflows to upload test your test results.

The trunk analytics test uploader currently only supports Linux x64. If you have another use case, please get in touch with support at For the best results, you'll need to validate that your test invocation doesn't use cached test results and doesn't automatically retry failing tests.

  1. Create a Buildkite workflow that runs the tests you want to monitor. In order for us to use the results, these tests must produces a test report in JUnit XML format.

  2. Find your organization slug. First you'll need to navigate to Once logged in, you will be automatically redirected to a URL similar to

  3. Store your trunk token in a secret named TRUNK_TOKEN. You can find your Trunk token by navigating to Settings → Manage Organization → Organization API Token and clicking "View."

  4. Update your Buildkite workflow to download and run the test uploader binary after you've run your tests:

Sample Buildkite workflow steps:

  - label: "Run tests"
    command: echo "hello world"
    key: tests
  - label: "Upload test results"
      - "curl -fsSL --retry 3 -o ./trunk-analytics-uploader"
      - "chmod +x ./trunk-analytics-uploader"
      - "./trunk-analytics-uploader upload --junit-paths *.xml --org-url-slug trunk --token $$TRUNK_TOKEN"
    key: upload
       - tests

The trunk-analytics-uploader binary should be run from the repository root. If you need to run the binary from another location, you must provide the path to the repo root using the --repo-rootargument. The --junit-paths argument accepts the xml file locations as both a list of globs or absolute paths.

If you're interested in better understanding this binary or want to contribute to it, you can find the open source repo here.

Last updated