Skip to content

chore(inkless:release): add gh workflows to release inkless artifacts#489

Merged
viktorsomogyi merged 4 commits intomainfrom
jeqo/release-workflow
Feb 3, 2026
Merged

chore(inkless:release): add gh workflows to release inkless artifacts#489
viktorsomogyi merged 4 commits intomainfrom
jeqo/release-workflow

Conversation

@jeqo
Copy link
Copy Markdown
Contributor

@jeqo jeqo commented Jan 20, 2026

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:
    • Manual trigger for main releases (inkless-release-X.Y)
    • Auto trigger for Kafka-base releases (inkless-4.x.y-*)
    • Multi-arch builds (amd64, arm64)
    • Binary distribution uploads to GitHub Releases
  • inkless-edge.yml - Edge/development builds on every push to main

Makefile:

  • Unified docker_build target supporting both local and CI usage
  • Optional parameters: PLATFORM, DOCKER_TAGS, PUSH, CACHE_FROM, CACHE_TO
  • Deterministic DIST_VERSION selection with sort -V
  • Portable date format (works on macOS/BSD)
  • GITHUB_USER validation in docker_login

Docker Image Tags

Tag Description
latest Latest stable Inkless release
X.Y Specific Inkless version (e.g., 0.33)
A.B.C-X.Y Kafka + Inkless version (e.g., 4.1.0-0.33)
A.B-latest Latest patch for Kafka minor (e.g., 4.1-latest)
edge Latest development build from main

Testing

# Build locally
make docker_build

Follow-up

Demo and documentation updates are in a separate PR: #497

@jeqo jeqo force-pushed the jeqo/release-workflow branch 2 times, most recently from 0d459b9 to a4ca68b Compare January 20, 2026 21:26
@jeqo jeqo requested a review from Copilot January 21, 2026 09:58
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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.

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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.

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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.

@jeqo jeqo marked this pull request as ready for review January 21, 2026 11:39
@jeqo jeqo requested a review from Copilot February 2, 2026 13:39
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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.

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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.

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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.

@jeqo jeqo force-pushed the jeqo/release-workflow branch 3 times, most recently from 5ff073b to 76e6633 Compare February 2, 2026 17:40
@jeqo jeqo requested a review from Copilot February 2, 2026 17:41
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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.

@jeqo jeqo force-pushed the jeqo/release-workflow branch 2 times, most recently from 74a430a to c965dc7 Compare February 2, 2026 18:56
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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.

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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.

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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.

jeqo added 2 commits February 3, 2026 11:46
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
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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; \
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No strictly related to your change but should it be an absolute path instead? As I see other similar commands consistently use that.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We can also fix this in a separate PR, I found a few other similar pathing issues anyway.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

viktorsomogyi
viktorsomogyi previously approved these changes Feb 3, 2026
@jeqo
Copy link
Copy Markdown
Contributor Author

jeqo commented Feb 3, 2026

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.

@viktorsomogyi viktorsomogyi merged commit 79da621 into main Feb 3, 2026
5 checks passed
@viktorsomogyi viktorsomogyi deleted the jeqo/release-workflow branch February 3, 2026 11:38
jeqo added a commit that referenced this pull request Feb 6, 2026
…#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
jeqo added a commit that referenced this pull request Feb 6, 2026
…#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
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants