dapr / community

Governance and community material for Dapr and its open source sub-projects
Apache License 2.0
140 stars 61 forks source link

Proposal for sig-build: a new SIG to focus on tooling for building and releasing Dapr #320

Open shubham1172 opened 1 year ago

shubham1172 commented 1 year ago

Introduction

With each release, the Dapr build system is getting more and more complex. In the past few releases, we have added

  1. Support for Dapr build variants #3168
  2. Support for new Windows Server 2022 images #5644
  3. Build Tools CLI #4729 to manage e2e and perf image builds
  4. Support for nightly builds #4124

There are multiple entry points for configuring build steps, including workflows, scripts, Makefiles, and CLI tools. These work at different parts of the release lifecycle, e.g. when a PR is merged to master, when a release is cut, or when tests are run. This also results in bugs going unnoticed until a release is cut, and then we have to fix them at the eleventh hour - e.g., the following fixes in the 1.11 release

  1. https://github.com/dapr/dapr/pull/6484
  2. https://github.com/dapr/dapr/pull/6482
  3. https://github.com/dapr/dapr/pull/6476

With this sig-build, the objective is to make the build and release process more robust and reliable. It should be easier to introduce enhancements and the process should be less error-prone.

Scope and Responsibilities

The SIG will be responsible for:

  1. Oversight and maintenance of existing build systems
  2. Enhancing the existing build system and making it robust and reliable

The main items in scope are:

  1. Build pipelines: Building Dapr binaries for different os/arch combinations, build flavors (stable, allcomponents), release channels (edge, nightly, rc).
  2. Test builds: Creating build images for e2e and perf test apps and caching of images.

Build enhancements

The first major project of sig-build will be to enhance the existing build pipeline and make it robust.

Here are some potential tooling options -

  1. goreleaser
  2. nix
  3. mage

/cc @artursouza, @JoshVanL

msfussell commented 7 months ago

@shubham1172 - Do you intend to take this proposal and SIG group forward?

mikeee commented 7 months ago

I'd be interested in taking part if this is brought forward 🛠️

shubham1172 commented 7 months ago

Hello @msfussell, I don't have the bandwidth right now to take this up, however I am happy to contribute if @mikeee or anyone else wants to take the SIG forward.