Add automated image release workflow#187
Conversation
Co-authored-by: JesseStutler <38534065+JesseStutler@users.noreply.github.com>
Co-authored-by: JesseStutler <38534065+JesseStutler@users.noreply.github.com>
There was a problem hiding this comment.
Pull request overview
This pull request adds automated Docker image release functionality to the volcano-sh/dashboard repository, enabling continuous deployment of Docker images to Docker Hub on merges to main or release tag pushes. The workflow mirrors the pattern used in the main volcano-sh/volcano project, ensuring consistency across the volcano ecosystem.
Key Changes:
- Added GitHub Actions workflow for automated Docker image builds and publishing
- Multi-platform support (linux/amd64, linux/arm64) for both frontend and backend images
- Intelligent tagging:
latestfor main branch commits, semantic version tags for releases
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
@copilot Thanks, Before merging this PR, can we test whether it can upload correctly to Docker Hub? |
Co-authored-by: JesseStutler <38534065+JesseStutler@users.noreply.github.com>
I've added a To test the Docker Hub upload:
The workflow is validated and ready:
After running, verify images at: |
Co-authored-by: JesseStutler <38534065+JesseStutler@users.noreply.github.com>
Co-authored-by: JesseStutler <38534065+JesseStutler@users.noreply.github.com>
Co-authored-by: JesseStutler <38534065+JesseStutler@users.noreply.github.com>
|
Since it hasn't been merged into the main branch yet, I can't see this workflow, so I'll merge it first and then check for any issues. |
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: JesseStutler The full list of commands accepted by this bot can be found here. DetailsNeeds approval from an approver in each of these files:Approvers can indicate their approval by writing |
Adds GitHub Actions workflow to automatically build and publish Docker images to DockerHub on merge to
mainor release tags, matching the release automation pattern used in volcano-sh/volcano. The workflow is named "Image Release" for future extensibility to support additional container registries like GCR.Workflow Details
mainbranch, tags matchingv*.*.*, or manual dispatchvolcanosh/vc-dashboard-frontendvolcanosh/vc-dashboard-backendlinux/amd64,linux/arm64latestfor main branch and manual runs, version tag for releases (e.g.,v1.0.0)DOCKERHUB_USERNAMEandDOCKERHUB_TOKENsecretsImplementation
The workflow uses Docker Buildx for multi-platform builds, pointing to existing Dockerfiles in
deployment/build/. Tag selection is handled via simplified environment variable logic that detects branch vs. tag pushes vs. manual dispatch in a single step.Testing
The workflow includes
workflow_dispatchtrigger for manual testing before merging. To test:DOCKERHUB_USERNAMEandDOCKERHUB_TOKENsecretsOriginal prompt
💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.