-
Notifications
You must be signed in to change notification settings - Fork 24
Added workflow to build final working docker image and push it to ghcr (x86_64 only) #21
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
There was a problem hiding this 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 PR adds a GitHub Actions workflow to automatically build and publish a complete Docker image for the wrapper application to GitHub Container Registry (GHCR). The workflow targets x86_64 architecture only and triggers on pushes to main, tag pushes, and manual workflow dispatches.
Key Changes:
- Adds a multi-stage Dockerfile that builds the wrapper from source using Android NDK r23b
- Implements a GitHub Actions workflow for automated Docker image building and publishing to GHCR
- Updates README with instructions for using the pre-built GHCR image, moving the legacy manual build instructions to a separate section
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 9 comments.
| File | Description |
|---|---|
| .github/workflows/docker.yml | New workflow that builds and pushes Docker images to GHCR on main branch and tag pushes |
| Dockerfile.x86_image | Multi-stage Dockerfile that builds the wrapper from source with Android NDK and packages it into a slim runtime image |
| README.md | Adds documentation for using the new pre-built GHCR image and reorganizes existing Docker instructions |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
The steps for compiling the arm64 architecture version are the same as those for compiling the x86_64 version, the difference being that gcc-aarch64-linux-gnu is additionally required. For details, please refer to https://github.com/WorldObservationLog/wrapper/blob/arm64/.github/workflows/build-for-arm64.yml |
|
As I can see arm64 branch has a really good Dockerfile, I think it it possible to merge it into main and pass cmake arch so it would create different build for different architectures so we can create single multi arch image based on single Dockerfile |
I tested final image, it works properly, it also builds tagged image on pushed tags.
I do not know how to build arm64 from scratch, I think it needs android-ndk 26th version because there is arm64 toolchain available in 26th, and also CMakeList.txt modifications.