Skip to content

ci: add Docker image release workflow - #431

Merged
slin1237 merged 1 commit into
mainfrom
ci/docker-release-workflow
Feb 15, 2026
Merged

slin1237 merged 1 commit into
mainfrom
ci/docker-release-workflow

Conversation

@slin1237

@slin1237 slin1237 commented Feb 15, 2026 •

Copy link
Copy Markdown
Member

Summary

Add automated Docker image publishing to Docker Hub for multi-platform builds.

What changed

  • .github/workflows/release-docker.yml: New workflow that:
    • Triggers on push to main when docker/Dockerfile or bindings/python/pyproject.toml changes
    • Supports manual dispatch with optional tag override
    • Builds multi-platform images (linux/amd64, linux/arm64) using QEMU + Docker Buildx
    • Pushes versioned (lightseekorg/smg:<version>) and latest tags to Docker Hub
    • Uses GHA layer caching for faster rebuilds
    • Reads version from pyproject.toml by default

Prerequisites

GitHub secrets DOCKERHUB_USERNAME and DOCKERHUB_TOKEN have been configured on the repo.

Test plan

  • Trigger workflow manually via workflow_dispatch to verify build and push
  • Verify both lightseekorg/smg:<version> and lightseekorg/smg:latest appear on Docker Hub
  • Verify multi-platform manifest includes both amd64 and arm64

Summary by CodeRabbit

  • Chores
    • Established automated Docker image building and publishing to container registry with multi-architecture support (AMD64, ARM64)
    • Configured for automatic triggering on main branch updates with manual activation capability
    • Integrated build caching mechanisms to optimize performance and reduce release cycle times

Add automated Docker image publishing to Docker Hub on push to main
when Dockerfile or pyproject.toml changes. Supports manual dispatch
with optional tag override.

- .github/workflows/release-docker.yml: new workflow that builds
  multi-platform images (linux/amd64, linux/arm64) using QEMU and
  Docker Buildx, pushes versioned and latest tags to
  lightseekorg/smg on Docker Hub, with GHA layer caching

Signed-off-by: Simo Lin <simo.lin@oracle.com>
@gemini-code-assist

Copy link
Copy Markdown
Contributor

Note

Gemini is unable to generate a summary for this pull request due to the file types involved not being currently supported.

@github-actions github-actions Bot added the ci CI/CD configuration changes label Feb 15, 2026
@coderabbitai

coderabbitai Bot commented Feb 15, 2026 •

Copy link
Copy Markdown
📝 Walkthrough

Walkthrough

A new GitHub Actions workflow is introduced that automates building and pushing multi-architecture Docker images to Docker Hub when code is pushed to main or manually triggered, with version extraction from tags or pyproject.toml.

Changes

Cohort / File(s) Summary
Docker Release Workflow
.github/workflows/release-docker.yml
New CI workflow for building and pushing multi-arch Docker images (linux/amd64, linux/arm64) with QEMU/Buildx support, version extraction, Docker Hub authentication, and GitHub Actions caching.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~12 minutes

Possibly related issues

  • Setup Docker Release workflow #5: Directly implements the requested .github/workflows/release-docker.yml workflow for multi-arch Docker image building and pushing with version/tag configuration.

Suggested labels

ci

Suggested reviewers

  • CatherineSue
  • key4ng
  • XinyueZhang369

Poem

🐰 Hops with delight

A workflow so bright, now we can build,
Docker images pushed with care fulfilled,
Multi-arch magic, amd64 and arm,
No more manual builds—we're transformed! ✨

🚥 Pre-merge checks | ✅ 4
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly describes the main change: adding a Docker image release workflow to the CI pipeline.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Merge Conflict Detection ✅ Passed ✅ No merge conflicts detected when merging into main

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch ci/docker-release-workflow

No actionable comments were generated in the recent review. 🎉


Comment @coderabbitai help to get the list of available commands and usage tips.

@mergify mergify Bot mentioned this pull request Feb 15, 2026
3 tasks
@slin1237
slin1237 merged commit 3764681 into main Feb 15, 2026
38 of 39 checks passed
@slin1237
slin1237 deleted the ci/docker-release-workflow branch February 15, 2026 18:37
ppraneth pushed a commit that referenced this pull request Feb 18, 2026
Signed-off-by: Simo Lin <linsimo.mark@gmail.com>
Signed-off-by: ppraneth <pranethparuchuri@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ci CI/CD configuration changes

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant