chore(inkless:release): add gh workflows to release inkless artifacts#489
chore(inkless:release): add gh workflows to release inkless artifacts#489viktorsomogyi merged 4 commits intomainfrom
Conversation
0d459b9 to
a4ca68b
Compare
There was a problem hiding this comment.
Pull request overview
This pull request adds GitHub Actions workflows to automate the release process for Inkless artifacts, including Docker images and binary distributions. The PR introduces release automation for both stable releases and development edge builds.
Changes:
- Added GitHub Actions workflows for releasing Inkless artifacts (Docker images to GHCR and binaries to GitHub Releases)
- Created comprehensive documentation explaining how to download and use Inkless releases
- Updated existing documentation with cross-references to the new release documentation
Reviewed changes
Copilot reviewed 5 out of 5 changed files in this pull request and generated 5 comments.
Show a summary per file
| File | Description |
|---|---|
.github/workflows/inkless-release.yml |
Main release workflow that builds multi-architecture Docker images and uploads binary distributions for both main releases and Kafka-base releases |
.github/workflows/inkless-edge.yml |
Development/edge build workflow for continuous integration, creating edge Docker images from the main branch |
docs/inkless/RELEASES.md |
New documentation file explaining Docker image tags, binary distribution naming, download instructions, and platform support |
docs/inkless/VERSIONING-STRATEGY.md |
Added cross-reference to the new RELEASES.md documentation |
docs/inkless/README.md |
Updated documentation index to include link to RELEASES.md |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 5 out of 5 changed files in this pull request and generated 2 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 5 out of 5 changed files in this pull request and generated no new comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 7 out of 7 changed files in this pull request and generated 3 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 10 out of 10 changed files in this pull request and generated 11 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
docker/examples/docker-compose-files/inkless/docker-compose.yml
Outdated
Show resolved
Hide resolved
docker/examples/docker-compose-files/inkless/docker-compose.demo.yml
Outdated
Show resolved
Hide resolved
9aae49f to
3e131c2
Compare
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 11 out of 11 changed files in this pull request and generated 3 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
5ff073b to
76e6633
Compare
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 12 out of 12 changed files in this pull request and generated 8 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
74a430a to
c965dc7
Compare
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 12 out of 12 changed files in this pull request and generated 6 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
9ac5bae to
42c92ee
Compare
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 3 out of 3 changed files in this pull request and generated 5 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
42c92ee to
afa80b6
Compare
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 3 out of 3 changed files in this pull request and generated 4 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Add two workflows for automated Docker image and binary releases: - inkless-edge.yml: Builds and publishes edge images on push to main - Multi-arch support (amd64, arm64) - Tags: edge, edge-<sha> - inkless-release.yml: Handles stable releases - Triggered by kafka-base tags (inkless-4.x.y-*) or manual dispatch - Builds Docker images and binary distributions - Creates GitHub releases with attached binaries - Tags: latest, X.Y, A.B.C-X.Y, A.B-latest Both workflows use native runners per architecture for faster builds and include proper error handling and Buildx setup. Also fixes: - Use sort -V for deterministic DIST_VERSION selection - Use portable date format (works on macOS/BSD) - Add GITHUB_USER validation in docker_login - Add --push to docker_build_multiarch target - Support CI parameters (PLATFORM, DOCKER_TAGS, PUSH, etc.) - Remove KAFKA_VERSION override from demo target
- Add RELEASES.md with Docker tags and binary distribution info - Update VERSIONING-STRATEGY.md with workflow trigger details
a2d648f to
eec1436
Compare
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 7 out of 7 changed files in this pull request and generated 4 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| apk update ; \ | ||
| apk upgrade ; \ | ||
| apk add --no-cache wget gcompat gpg gpg-agent procps bash; \ | ||
| mkdir opt/kafka; \ |
There was a problem hiding this comment.
No strictly related to your change but should it be an absolute path instead? As I see other similar commands consistently use that.
There was a problem hiding this comment.
We can also fix this in a separate PR, I found a few other similar pathing issues anyway.
There was a problem hiding this comment.
Good catch. Yes, I think this inconsistency comes from upstream: https://github.com/apache/kafka/blob/5498eedf92a016e6838bce5383042bda1c798d76/docker/jvm/Dockerfile#L35
|
https://github.com/aiven/inkless/releases/tag/inkless-release-0.33 is fully released now with binaries and docker images -- will have to do 0.34 manually as well as there are mismatch on Dockerfile expectations. After that, we can use the automated flow. |
…#489) Add two workflows for automated Docker image and binary releases: - inkless-edge.yml: Builds and publishes edge images on push to main - Multi-arch support (amd64, arm64) - Tags: edge, edge-<sha> - inkless-release.yml: Handles stable releases - Triggered by kafka-base tags (inkless-4.x.y-*) or manual dispatch - Builds Docker images and binary distributions - Creates GitHub releases with attached binaries - Tags: latest, X.Y, A.B.C-X.Y, A.B-latest Both workflows use native runners per architecture for faster builds and include proper error handling and Buildx setup. Also fixes: - Use sort -V for deterministic DIST_VERSION selection - Use portable date format (works on macOS/BSD) - Add GITHUB_USER validation in docker_login - Add --push to docker_build_multiarch target - Support CI parameters (PLATFORM, DOCKER_TAGS, PUSH, etc.) - Remove KAFKA_VERSION override from demo target - Add RELEASES.md with Docker tags and binary distribution info - Update VERSIONING-STRATEGY.md with workflow trigger details
…#489) Add two workflows for automated Docker image and binary releases: - inkless-edge.yml: Builds and publishes edge images on push to main - Multi-arch support (amd64, arm64) - Tags: edge, edge-<sha> - inkless-release.yml: Handles stable releases - Triggered by kafka-base tags (inkless-4.x.y-*) or manual dispatch - Builds Docker images and binary distributions - Creates GitHub releases with attached binaries - Tags: latest, X.Y, A.B.C-X.Y, A.B-latest Both workflows use native runners per architecture for faster builds and include proper error handling and Buildx setup. Also fixes: - Use sort -V for deterministic DIST_VERSION selection - Use portable date format (works on macOS/BSD) - Add GITHUB_USER validation in docker_login - Add --push to docker_build_multiarch target - Support CI parameters (PLATFORM, DOCKER_TAGS, PUSH, etc.) - Remove KAFKA_VERSION override from demo target - Add RELEASES.md with Docker tags and binary distribution info - Update VERSIONING-STRATEGY.md with workflow trigger details
Add GitHub Actions workflows for automated release and edge builds, with unified docker build process via Makefile.
Changes
GitHub Workflows:
inkless-release.yml- Main release workflow supporting:inkless-release-X.Y)inkless-4.x.y-*)inkless-edge.yml- Edge/development builds on every push tomainMakefile:
docker_buildtarget supporting both local and CI usagePLATFORM,DOCKER_TAGS,PUSH,CACHE_FROM,CACHE_TODIST_VERSIONselection withsort -VGITHUB_USERvalidation indocker_loginDocker Image Tags
latestX.Y0.33)A.B.C-X.Y4.1.0-0.33)A.B-latest4.1-latest)edgemainTesting
# Build locally make docker_buildFollow-up
Demo and documentation updates are in a separate PR: #497