Buildkite Pipeline Generator
Generate `.buildkite/pipeline.yml` with dynamic steps, manual unblocks, triggers, and parallelism.
Understanding Buildkite Configuration
What is pipeline.yml?
Buildkite is a hybrid CI/CD platform where you host your own build agents, but Buildkite orchestrates the pipelines. Your pipeline configuration is defined in a .buildkite/pipeline.yml file.
Step Types
Buildkite has several different types of steps that allow for complex orchestrations:
command): Runs one or more shell commands on one of your agents. This is where your actual build/test logic lives.wait): Pauses the execution of the pipeline until all previous steps have finished successfully. Often used before deployment steps.block): Pauses the pipeline and waits for human interaction (e.g., clicking a button in the UI) before continuing. Perfect for "Deploy to Production" gates.trigger): Triggers a completely different Buildkite pipeline, optionally passing environment variables to it. Useful for monorepos or microservice architectures.Parallelism and Agents
parallelism attribute. Buildkite will split the job into N parallel tasks (often used with test splitting).agents rule. For example, queue=mac ensures that the step only runs on an agent that is tagged with the Mac queue.Best Practices
buildkite-agent pipeline upload.:rocket: or :hammer: in your step labels to make the UI much easier to read!