NewBuildkite hosted agents. Check out the Q1 Release for the latest features, including managed CI/CD offerings for Mac and Linux.

Block step input fields


Getting data into pipelines can be hard. Instead of wrangling APIs and chatops, you can now add custom forms directly to your Buildkite pipelines πŸ™ŒπŸ» Getting input from your team has never been easier.

Screenshot of the Buildkite Secret Santa block step input fields

Sounds great, but what can I actually use this for?

  • πŸ–₯ Choosing an environment before running a deployment script
  • πŸ’­ Dynamic questions based on pull request content
  • πŸ“‘ Automation of team onboarding, offboarding, and other workflows
  • πŸ’₯ Checking that you really do want to go through with that Friday afternoon deployment
  • πŸš€ Adding a name, version, and changelog to a release

We even used it to automate our team’s Secret Santa πŸ˜„πŸŽ„πŸŽ…πŸΌ

Adding an input field to your pipeline

  1. Add a block step to your pipeline.yml file.
  2. Provide it with a prompt attribute, and at least one field attribute. For example:
- block: "Question!" prompt: "Please answer this important question" fields: - text: "What day is it today?" key: "day-of-the-week"
  1. Create and run a new build on your updated pipeline!

The data that the user enters into the form is then available on subsequent steps from the build meta-data! 😱

Screenshot of the block step input field example

To explore a pipeline with a block step and input fields, take a look at our example repository:

Check out all of the available input field options over in our documentation. We’d love to hear what you think! Say hi on twitter, or send us an email.