buildkite / test-engine-client

Buildkite Test Engine Client (bktec) is an open source tool to orchestrate your test suites. It uses your Buildkite Test Engine suite data to intelligently partition and parallelise your tests.
MIT License
9 stars 1 forks source link

Create more sophisticated release pipeline for tsc #131

Closed nprizal closed 3 months ago

nprizal commented 3 months ago

Description

Use goreleaser to build binaries, build and push docker image, and create GitHub release. This PR also enables us to release a pre-release version.

There will be a "Prepare Release" step at the beginning of every build in Test Splitter Client - Release pipeline that will determine the next available versions for the release, and create a block step before eventually creating the release. The block step is optional, and skipping the step will not create a release.

Screenshot 2024-07-24 at 5 25 56 PM

After selecting the version, it will create the release using goreleaser that will do the followings:

Caveat The GitHub release needs to be mark as latest manually, because goreleaser cannot set the GitHub release only for stable version.

Verification

This is a fully working build that I triggered manually, and these are the releases that were created by that build.

niceking commented 3 months ago

This is really awesome work @nprizal 🥳