build(ci): migrate CI from Docker image to devcontainers/ci#196
Merged
MRNIU merged 1 commit intoSimple-XX:mainfrom Mar 19, 2026
Merged
build(ci): migrate CI from Docker image to devcontainers/ci#196MRNIU merged 1 commit intoSimple-XX:mainfrom
MRNIU merged 1 commit intoSimple-XX:mainfrom
Conversation
Replace addnab/docker-run-action with devcontainers/ci@v0.3 to use the project's .devcontainer/Dockerfile (GCC 14) instead of the outdated ptrnull233/simple_kernel:latest image (GCC 13). Fixes build failures caused by C++23 deducing-this requiring GCC 14+. Signed-off-by: Niu Zhihong <zhihong@nzhnb.com>
There was a problem hiding this comment.
Pull request overview
This PR updates the GitHub Actions CI workflow to build inside the repository’s Dev Container (GCC 14) instead of a prebuilt Docker image (GCC 13), aligning CI with the local development environment and unblocking C++23 builds (e.g., “deducing this”).
Changes:
- Replace
addnab/docker-run-action@v3+ external image withdevcontainers/ci@v0.3. - Run the existing CMake presets (
build_x86_64,build_riscv64,build_aarch64) inside the devcontainer. - Remove workflow-level
CMAKE_BUILD_TYPE/DOCKER_IMAGEenv config (relying on preset configuration).
Comment on lines
24
to
30
| - name: x86_64 | ||
| uses: addnab/docker-run-action@v3 | ||
| uses: devcontainers/ci@v0.3 | ||
| with: | ||
| image: ${{ env.DOCKER_IMAGE }} | ||
| options: -v ${{ github.workspace }}:/root -e CMAKE_BUILD_TYPE=${{ env.CMAKE_BUILD_TYPE }} | ||
| run: | | ||
| runCmd: | | ||
| cmake --preset=build_x86_64 | ||
| cmake --build build_x86_64 --target SimpleKernel unit-test coverage docs | ||
|
|
Comment on lines
+25
to
29
| uses: devcontainers/ci@v0.3 | ||
| with: | ||
| image: ${{ env.DOCKER_IMAGE }} | ||
| options: -v ${{ github.workspace }}:/root -e CMAKE_BUILD_TYPE=${{ env.CMAKE_BUILD_TYPE }} | ||
| run: | | ||
| runCmd: | | ||
| cmake --preset=build_x86_64 | ||
| cmake --build build_x86_64 --target SimpleKernel unit-test coverage docs |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
addnab/docker-run-action+ptrnull233/simple_kernel:latest(GCC 13)迁移到devcontainers/ci@v0.3.devcontainer/Dockerfile(GCC 14),与本地开发环境一致Motivation
PR #195 合入后 CI 构建失败,因为代码使用了 C++23 deducing this(
this auto self)语法,需要 GCC 14+,但旧 Docker 镜像仅包含 GCC 13。Changes
addnab/docker-run-action@v3devcontainers/ci@v0.3ptrnull233/simple_kernel:latest(GCC 13).devcontainer/Dockerfile(GCC 14)CMAKE_BUILD_TYPE