Marketplace News TeamCity

Introducing TeamCity Recipes: Reusable CI/CD Building Blocks

Build steps are often repeated over and over – within a single project or team, or even across a whole organization. These patterns tend to get copy-pasted, manually adapted, and maintained in parallel. This can lead to inconsistencies and extra maintenance work.

With the latest TeamCity release, we’re addressing that problem head-on. Say hello to TeamCity recipes: customizable build steps that can be reused, versioned, and published on the JetBrains Marketplace (or used internally in your organization).

Whether you’re managing dozens of pipelines or just want to save time setting up repeatable build logic, recipes are designed to streamline your CI/CD workflows. Let’s take a closer look at what recipes are about.

What are TeamCity recipes?

Recipes are build steps you can save and reuse whenever you need to repeat the same setup. They help you avoid reinventing the wheel by letting you define and reuse common build logic.

TeamCity recipes on JetBrains Marketplace

Recipes can be:

Each recipe can include configurable parameters, documentation, and versioning, making them easy to integrate and maintain.

For more information about what recipes are and how they’re different from meta runners, please refer to our documentation.

What’s new in this release?

Public contributions via the JetBrains Marketplace

For the first time, external users can publish their own recipes to the JetBrains Marketplace. This opens the door to a community-driven ecosystem of reusable build logic, maintained and shared by TeamCity users around the world.

To upload your own recipes to the Marketplace, follow these steps.

Redesigned recipe installation UI

Our new interface provides a more user-friendly installation experience:

  • View author details and recipe versions.
  • Install specific versions.
  • Preview source code before installing.
Example of a TeamCity recipe

This transparency ensures that users can review and trust third-party contributions.

YAML support for private recipes

Previously known as meta runners, private recipes can now be written in YAML. This modern syntax improves readability and maintainability. While XML is still supported for backward compatibility, YAML is now the recommended format.

Unified UI for recipe management

Manage both public and private recipes from a single interface:

  • Upload and organize private recipes at the project level.
  • View usage across build configurations and templates (including private recipes).
  • Detect outdated or unavailable recipes that could break builds.

Why use TeamCity recipes?

Whether you’re reusing steps within your organization or using recipes created within your organization or outside of it, this feature offers a practical way to reduce duplication and simplify maintenance.

Public recipes give you access to a growing library of build steps created by the TeamCity community. Because each recipe is a small, self-contained file with visible source code, you can review what it does before using it. 

Private recipes, on the other hand, help teams standardize their internal workflows. Written in YAML, they’re easier to read, edit, and debug compared to older XML-based meta runners. And because they’re scoped to your TeamCity project or organization, they stay private and secure.

Both public and private recipes are easier to create and share than full-fledged plugins, lowering the barrier to contribution.

Built for safety

The idea behind recipes might feel familiar: many CI tools offer reusable build logic. But with TeamCity Recipes, we’ve taken a more opinionated approach to how they’re configured, shared, and executed, focusing strongly on security, transparency, and ease of use.

Unlike some other ecosystems, TeamCity doesn’t default to using floating versions like latest, which can introduce unintentional changes into your builds. When you install a recipe, you choose a specific version, giving you more control and predictability.

When a new version becomes available, TeamCity will notify you, but won’t auto-upgrade anything without your knowledge and permission.

Every public recipe comes with visible source code you can inspect directly from the TeamCity UI before installing and from the overview page after the installation. Once installed, the build step editor automatically adapts to the Recipe’s parameters, presenting clear controls and descriptions instead of relying on manual text input. 

This makes Recipes not only easier to trust, but also easier to configure and debug, especially for teams that value visibility and safety.

How to publish a recipe

Publishing a recipe is simple:

  1. Log in to the JetBrains Marketplace.
  2. Choose “TeamCity Recipes” as the plugin type.
  3. Upload your recipe with metadata and namespace (to avoid naming collisions). Namespaces allow multiple users to publish recipes with the same name under different scopes.

Please also refer to our documentation for more information on how to upload a new recipe.

Give it a try

Recipes are now live in TeamCity. Browse the Marketplace, experiment with public recipes, or create your own to simplify and supercharge your CI/CD pipelines.

We believe this feature will help foster a more vibrant, collaborative TeamCity community, and we can’t wait to see what you build 🚀

Stay tuned for upcoming tutorials and videos showcasing what’s possible with recipes!

image description