tricorder-observability / Starship

Starship: next-generation Observability platform built with eBPF+WASM
GNU Affero General Public License v3.0
164 stars 25 forks source link

Create github workflow for releasing Starship container images #155

Closed nascentcore-eng closed 1 year ago

nascentcore-eng commented 1 year ago

The current situation, motivation for this task There is already a github workflow to build and upload container images for each push to main branch. https://github.com/tricorder-observability/Starship/blob/main/.github/workflows/release-images.yaml For each pushed commit to main branch, a new image tag is built, with the commit as the container images' tag For example: https://github.com/tricorder-observability/Starship/pkgs/container/api-server/74954717?tag=920f0bc054d0bb94b46c26f849a389718c8775bc

Also a github workflow to release helm-charts https://github.com/tricorder-observability/Starship/blob/main/.github/workflows/release-chart.yaml

We need a workflow to release both and apply app version directly according to the helm-chart version

Describe the solution We need to trigger release of container images and helm-charts in one workflow Apply the helm-charts' tag as the container image version's tag The key is to figure out how to apply the helm-charts version and label the pre-built container images with this tag I.e., given a released container image tag: https://github.com/tricorder-observability/Starship/pkgs/container/api-server/74954717?tag=920f0bc054d0bb94b46c26f849a389718c8775bc Apply a new tag as the helm-charts applied tag: https://github.com/tricorder-observability/Starship/tree/starship-0.0.44 Both should match

Describe alternatives considered N/A

Additional context N/A

nascentcore-eng commented 1 year ago

We already have a workflow to release container images to docker.io and github package registry. https://github.com/tricorder-observability/Starship/blob/main/.github/workflows/release-images.yaml