Skip to content

Latest commit

 

History

History
161 lines (125 loc) · 5.39 KB

File metadata and controls

161 lines (125 loc) · 5.39 KB

BuildKit RISC-V64 Implementation - GitHub Issues Summary

This document tracks the GitHub issues created for the BuildKit RISC-V64 implementation project.

Created Issues

Phase 1: Build BuildKit Binaries

Issue: #207 Title: feat(buildkit): build native BuildKit binaries for RISC-V64 (Phase 1) URL: #207 Labels: enhancement, infrastructure, buildkit Status: Open Dependencies: None (entry point)

Key Deliverables:

  • BuildKit submodule integration
  • RISC-V64 native build script
  • buildkitd and buildctl binaries
  • Weekly build workflow
  • Binary testing on RISC-V64 hardware (self-hosted runner)

Phase 2: Create Container Image

Issue: #208 Title: feat(buildkit): create BuildKit container image with tini integration (Phase 2) URL: #208 Labels: enhancement, infrastructure, buildkit Status: Open Dependencies: Blocked by #207

Key Deliverables:

  • Dockerfile for BuildKit container
  • Tini integration for signal handling
  • Runtime dependencies configuration
  • Container image testing
  • Registry deployment

Phase 3: Testing and Validation

Issue: #209 Title: test(buildkit): validate standalone and Docker Buildx integration (Phase 3) URL: #209 Labels: enhancement, infrastructure, buildkit Status: Open Dependencies: Blocked by #208

Key Deliverables:

  • Standalone daemon testing
  • Docker Buildx integration testing
  • Multi-platform build validation (BuildKit on RISC-V64 building FOR other platforms)
  • Rootless mode testing
  • Performance benchmarks

Important Note: Multi-platform testing means BuildKit running ON RISC-V64 will BUILD images FOR other platforms (amd64, arm64), not cross-compiling BuildKit itself.


Phase 4: Automation and Documentation

Issue: #210 Title: ci(buildkit): add automation workflows and documentation (Phase 4) URL: #210 Labels: enhancement, infrastructure, buildkit, workflows Status: Open Dependencies: Blocked by #209

Key Deliverables:

  • Weekly build workflow (runs on self-hosted RISC-V64 runner)
  • Release tracking workflow
  • UpdateCLI configuration
  • Comprehensive documentation
  • Optional: Debian/RPM packages

Dependency Chain

#207 (Phase 1: Binaries)
  ↓
#208 (Phase 2: Container)
  ↓
#209 (Phase 3: Testing)
  ↓
#210 (Phase 4: Automation)

Each phase must be completed and closed before starting the next phase.

Native Compilation Approach

IMPORTANT: This project uses native compilation only:

  • All builds happen on the self-hosted RISC-V64 runner (self-hosted runner)
  • NO cross-compilation from amd64 to riscv64
  • BuildKit binaries are compiled natively on RISC-V64 hardware
  • BuildKit's multi-platform capability allows it to BUILD container images FOR other platforms while running on RISC-V64

Success Criteria

The BuildKit RISC-V64 project is considered successful when:

  1. ✅ BuildKit binaries compile and run on RISC-V64 hardware
  2. ✅ Container image deployed successfully in production
  3. ✅ Docker Buildx integration tested and working
  4. ✅ Automated workflows maintain builds without manual intervention
  5. ✅ Community can install and use BuildKit from documentation
  6. ✅ Project follows all conventions in CLAUDE.md
  7. ✅ All 4 phase issues closed with acceptance criteria met

Known Challenges

These challenges are documented in the phase issues:

  1. Tini Path: BuildKit expects tini at /usr/bin/tini (addressed in #208)
  2. Container Privileges: May need --privileged or specific capabilities (tested in #209)
  3. Storage Configuration: Proper storage driver for RISC-V64 (validated in #209)
  4. Multi-Platform Builds: Testing BuildKit's ability to build FOR other platforms FROM RISC-V64 (validated in #209)

Quick Links

Issue Management Guidelines

  • ✅ All issues use conventional commit format in titles
  • ✅ Issues follow project labeling conventions
  • ✅ Dependencies clearly documented in each issue
  • ✅ Each issue includes detailed acceptance criteria
  • ✅ Testing steps provided for validation
  • ⏳ Regular status updates in issue comments
  • ⏳ Close issues only after acceptance criteria met
  • ⏳ Update this summary when issues are closed

Next Steps

  1. Start Phase 1 (#207):

    • Add BuildKit as git submodule
    • Create initial build script for native RISC-V64 compilation
    • Test binary compilation locally on self-hosted runner
  2. Monitor Progress:

    • Check weekly build results
    • Update issue comments with findings
    • Document any blockers or challenges
  3. Update Documentation:

    • Keep BUILDKIT-ISSUES-SUMMARY.md current
    • Update CLAUDE.md when workflows are added
    • Add BuildKit section to README.md

Last Updated: 2025-12-09 Issues Created: 2025-12-09 Status: All phases ready to start (Phase 1 #207 is entry point) Compilation Approach: Native RISC-V64 only (no cross-compilation)