Update

Build header step contrast improvements

You can now more easily identify steps that are pending or in an unexpected state while a build is running.

This change came from customer feedback about the build header placing too much prominence on steps that don’t cause pipelines to fail, such as steps that have passed or soft failed. Steps in these states are expected and generally don’t require immediate attention.

Update

Thank you to the customers who worked alongside us on this small but impactful improvement. Please continue to reach out with your feedback and suggestions!

Brett


Update

Build row UI uplift

The build row is now easier to parse with updates to where key details appear, including:

  • Showing the running time under the build status.
  • Displaying the build number under the heading.
  • Adding profile pictures to user details.
  • Making the expansion areas on each row clearer with more defined click areas.

Previously, the build list looked like:

Old build list view

The new build list looks like:

New Build list view

Liam


Update

Better visibility of missing dependencies

You can now view missing dependencies in job rows. This allows you to quickly debug your pipeline configuration while the build is running or after it fails.

When a build is running, and a job has a dependency that doesn't exist yet, you'll see the following message:

Job row warning for missing dependency

You can expand the job row to see the names of the missing dependencies:

Detailed missing dependency warning in expanded job row

If the step dependency is not resolved and the build fails, you'll see an error message:

Job row error for failed job due to missing dependency

When you expand the job row, you'll see the names of the missing dependencies:

Detailed missing dependency error in expanded job row

Liam


Update

Support for line breaks in block and input steps

You can now add line breaks to your block and input steps in Buildkite Pipelines. For example, see the prompt and hint fields in the following pipeline definition:

Adding line breaks to your block steps in your pipeline YAML

These fields are displayed in the UI as follows:

Example of a block step using line breaks

Liam


Update

UI improvements for links and long commands on jobs

When viewing jobs, the links to agent and queue details now take up less space, and you can see the full command on hover when it's truncated.

A recent change added links from jobs to agent and queue details, but the links took up a significant portion of the job row. We've made the links more compact so you can see more of the job name and command while keeping direct links to the agent and queue details:

A job row shows the agent and queue information in a dropdown

When a longer job command is truncated, you can now see the full command on hover:

A job row shows a full command in a hover state

Liam


Feature

Retry failed jobs while builds are running

You can now retry failed builds directly from the build view.

If any jobs fail while a build is running, you will now see a Retry failed jobs button in the build header. This allows you to retry all failed jobs at once rather than selecting Retry on individual jobs.

The Retry failed jobs button displays on a running build after a job fails.

After a build finishes, the Retry failed jobs button now displays directly in the build header rather than under the Rebuild menu.

The Retry failed jobs button displays on a build that's finished.

Liam


Feature

Test search in Test Analytics

You can now search for tests by name, scope, and location from the Tests page. Test Analytics allows users to search their tests by name, scope and location

Katie


Feature

Search flaky tests from the UI or API

You can now search for flaky tests by test name, scope, and location using the Test Analytics UI or API. Test Analytics allows users to search their flaky tests on the Flaky test page and API

To learn more, check out the API documentation.

Katie


Feature

Introducing: Flaky test assignment in Test Analytics

Users on our Pro and Enterprise plans can assign flaky tests to teams in their organization. Use flaky test assignment to signal to other teams that a flaky test is being worked on.

Test Analytics shows the flaky tests assigned to a user

To learn more, check out the documentation.

Katie


Update

Linking to jobs from waterfall view

The waterfall view has been updated to help you debug builds faster.

You can now go directly from a job in the waterfall view:

Screenshot 2024-03-07 at 6.12.08 pm.png

To its log output:

Screenshot 2024-03-07 at 6.13.50 pm.png

Liam


Feature

Introducing: Teams REST API

Buildkite Teams can be accessed programmatically through the REST API, improving parity with our existing GraphQL API.

Explore further details and learn how to integrate with our API documentation.

Jason


Feature

Cypress support for Test Analytics

You can now use Test Analytics to manage your Cypress test suites. With the JavaScript test collector configured, Cypress test results are automatically sent to Test Analytics to give you insights into your test suite.

Check out the docs to learn more about configuring Test Analytics with Cypress.

Naufan


Update

Clusters Generally Available

Clusters is a Buildkite feature used to manage and organize agents and queues, which:

  • allows teams to self-manage their Buildkite agent pools,
  • allows admins to create isolated sets of agents and pipelines within within a single Buildkite organization,
  • helps make agents and queues more discoverable across your organization,
  • gives you more control over your agents and queues like pausing them, and
  • provides easily accessible queue metrics.

All existing agents can now be accessed through Unclustered grouping on the agents page.

Learn more about clusters

Liam


Feature

Linking to agents from jobs

You can now go directly from jobs to agent details. When viewing a build, you'll see each job with its agent's name and a link to the agent details:

link-to-agent.png

If you're using clusters, you'll see a link to the queue for the job while waiting for an agent to be assigned:

link-to-queue.png

Once the job is assigned to an agent, you'll see the agent details alongside the queue:

link-to-agent-and-queue.png

Kalo


Update

Lower Agent Timeouts

We have reduced agent timeouts from 5 minutes to just 3 minutes, and improved the lost agent cleanup service from 5 minutes to 1 minute! This enhancement offers significant benefits to our customers, particularly those utilizing spot instances for their agents.

With shorter timeouts, jobs now fail faster when spot instances can't compete on price, slashing the time it takes for pipelines to detect and recover from failures from 10 minutes to just 4 minutes. This means faster feedback loops, streamlined pipelines, and ultimately, accelerated development cycles.

Learn more about it

Oz


Feature

Clusters Generally Available

Clusters will be enabled for all organizations on 26 February, 2024.

Clusters is a Buildkite feature used to manage and organize agents and queues, which:

  • allows teams to self-manage their Buildkite agent pools,
  • allows admins to create isolated sets of agents and pipelines within within a single Buildkite organization,
  • helps make agents and queues more discoverable across your organization, and
  • provides easily accessible queue metrics.

After the release all existing agents can be accessed through Unclustered grouping on the agents page.

Learn more about clusters

Liam


Feature

Agent Job Tokens

Access tokens for agents will now be limited to the lifetime of the job. There is now a unique BUILDKITE_AGENT_ACCESS_TOKEN for each job that is run, which will stop working once the job finishes. This reduces the period of impact to the lifetime of the job if a BUILDKITE_AGENT_ACCESS_TOKEN is leaked from the agent’s environment.

Ensure you are running Buildkite Agent version v3.39.0 or later to take advantage of these tokens and v3.62.0 for all the latest improvements.

For more details, see the documentation.

Tessa


Update

REST API Rate Limit Changes

Today, we updated our REST API rate limits. ​This update will improve performance, enhance security, and ensure fair usage.

For more information on rate limits please consult our documentation.

Himal


Update

Docs updates to Pipelines landing page, GraphQL cookbook, and visual style

pipelines-landing-new.png We tackled some quick wins the last week, including:

  • Creating a new landing page for Pipelines. This helps distinguish the product from the feature and provides clearer entry points for new users.
  • Adding a dedicated page to describe Pipelines' hybrid architecture.
  • Highlighting H3s when scrolling on a page.
  • Splitting the GraphQL cookbook into multiple pages to make it easier to navigate.
  • Updating the search component.
  • Applying general style updates across the site, from typography and tables to page layout and spacing.

And many more small changes. See the documentation to check them all out. ✨

Michael


Update

Enforce edit permissions check when accessing pipeline provider webhook URLs

Pipeline edit permissions are now required to view pipeline.provider.webhook_url. If the user does not have the correct permissions, a blank string will be shown in place of the webhook URL.

This change will also affect webhook payloads containing pipeline data. To ensure the greatest level of security, pipeline.provider.webhook_url will no longer be visible in these payloads.

Read more about the REST API

Laura