Skip to content
BrewingCoder edited this page May 13, 2026 · 6 revisions

Tamp Wiki

Pack the build down tight.

A small-core, plugin-driven build automation framework for .NET. Cross-platform. Honest about resources. Forkable.

This wiki is the developer-facing reference. The main README carries the elevator pitch and the project's design philosophy; everything operational lives here.

Start here

  • Getting Started — install the global tool, scaffold a Build.cs, run your first target. 5 minutes.
  • Build Script Authoring — the fluent target DSL, dependencies, conditionals, failure handlers.
  • Parameter & Secret Injection[Parameter], [Secret], value-injection attributes ([Solution], [GitRepository], [NuGetPackage]).

Modules

  • Module Catalog — the canonical list of all Tamp.* packages + the version-pin convention. 40+ first-party satellites currently published.
    • .NET toolchain: Tamp.NetCli.V8 / V9 / V10, Tamp.DotNetCoverage.V18, Tamp.Coverlet.V6, Tamp.ReportGenerator.V5, Tamp.EFCore.V8/V9/V10, Tamp.GitVersion.V6.
    • Containers / build: Tamp.Docker.V27 (incl. compose + buildx), Tamp.Helm.V3, Tamp.Sccache, Tamp.AdjacentContainer, Tamp.Testcontainers.V4.
    • JS toolchain: Tamp.Yarn.V4, Tamp.Npm.V10, Tamp.Turbo.V2, Tamp.Vite.V5, Tamp.GraphQLCodegen.V5, Tamp.Playwright.V1.
    • Rust + Microsoft Store ship chain: Tamp.Cargo → Tamp.Tauri.V2 → Tamp.Msix → Tamp.MicrosoftStoreCli.
    • Azure / ADO ops: Tamp.AzureCli.V2, Tamp.Bicep, Tamp.Kudu, Tamp.AzureAppService, Tamp.PostgresFlex, Tamp.AzureFunctionsCoreTools.V4, Tamp.AzureStaticWebApps.V2, Tamp.ServiceBus.V7/V8, Tamp.AdoGit, Tamp.AdoRest.V7, Tamp.AdoServiceConnection.V1.
    • Supply-chain security (one focused tool per axis): Tamp.TruffleHog.V3 (secrets), Tamp.CodeQL.V2 (SAST), Tamp.Syft (SBOM), Tamp.Grype (CVEs), Tamp.SonarScanner.V10 (code quality).
    • Source control: Tamp.GitHubCli.V2.
    • Foundation: Tamp.Http (base for satellite HTTP-API wrappers).

Analyzers

  • Tamp.Analyzers (TAMP001–TAMP004) — Roslyn analyzers bundled inside Tamp.Core.nupkg that catch common build-script mistakes at compile time. TAMP004 (1.6.0+) is what makes Secret.Reveal() safe to expose publicly without per-satellite InternalsVisibleTo entries.

Tooling primitives

Execution and observability

CI integration

Migration

  • Migrating from NUKE — concept-by-concept mapping. Where Tamp matches NUKE's surface and where it deliberately diverges.
  • Migrating from Cake — Cake script + addins → Tamp Build.cs + modules.

Reference

  • FAQ
  • Glossary
  • Architecture Decision Records — every load-bearing design choice is recorded under docs/adr/ in the main repo. Read these before proposing a change to the corresponding area.

Project meta

Clone this wiki locally