DevOps·Hacker News·0 lượt xem

The RISE RISC-V Runners: CI RISC-V gốc, miễn phí trên GitHub

The RISE RISC-V Runners: free, native RISC-V CI on GitHub

AI Summary

RISE đang cung cấp các GitHub Actions runner miễn phí, được quản lý cho phần cứng RISC-V. Điều này giúp các dự án open-source có thể thực hiện testing trực tiếp trên chip vật lý, không cần giả lập (emulation) hay tự quản lý hạ tầng. Sáng kiến này giải quyết một rào cản lớn trong việc áp dụng RISC-V bằng cách tạo điều kiện dễ dàng để truy cập phần cứng thực cho CI. Nhờ vậy, developer có thể phát hiện các vấn đề đặc thù của kiến trúc mà trình giả lập có thể bỏ sót. Để bắt đầu, các bạn chỉ cần cài đặt GitHub App và cập nhật nhãn `runs-on` trong workflow của mình. Các runner này cung cấp môi trường sạch và hỗ trợ sẵn Docker, rất lý tưởng cho việc testing toàn diện.

của Ludovic Henry, RISE Hôm nay, chúng tôi vui mừng thông báo về tính khả dụng sớm của RISE RISC-V Runners, một dịch vụ chạy GitHub Actions miễn phí, được quản lý, cung cấp cho mọi dự án nguồn mở quyền truy cập vào...

của Ludovic Henry, RISE

Hôm nay, chúng tôi vui mừng thông báo về tính khả dụng sớm của RISC-V Runners, một dịch vụ chạy GitHub Actions miễn phí, được quản lý, cung cấp cho mọi dự án nguồn mở quyền truy cập vào phần cứng RISC-V thực trong quy trình CI của họ. Không có mô phỏng, không có hack biên dịch chéo, không có danh sách chờ. Cài đặt Ứng dụng GitHub, thay đổi một dòng trong quy trình làm việc của bạn và công việc của bạn sẽ chạy trên bảng RISC-V vật lý.

Tại sao điều này lại quan trọng

Một trong những rào cản chính đối với việc áp dụng RISC-V là vấn đề con gà và quả trứng kinh điển: các dự án phần mềm sẽ không bổ sung hỗ trợ RISC-V nếu không có phần cứng để thử nghiệm và việc áp dụng phần cứng sẽ chậm lại khi hệ sinh thái phần mềm chưa sẵn sàng. Các trình giả lập như QEMU rất có giá trị cho sự phát triển, nhưng chúng không thể nắm bắt được các vấn đề trong thế giới thực (hồi quy hiệu suất, lỗi trình biên dịch theo kiến trúc cụ thể, các vấn đề về nhân) chỉ xuất hiện trên silicon thực tế.

Cho đến nay, hầu hết các dự án nguồn mở muốn thử nghiệm trên phần cứng RISC-V đều phải tự tìm nguồn bo mạch, quản lý cơ sở hạ tầng của riêng mình hoặc dựa vào các tài nguyên chia sẻ có giới hạn và được đăng ký quá mức. Đó là rất nhiều điều cần hỏi đối với người bảo trì, những người chỉ muốn biết liệu thư viện của họ có xây dựng và vượt qua các bài kiểm tra trên riscv64 hay không.

RISE RISC-V Runners loại bỏ hoàn toàn rào cản đó. Là một phần trong sứ mệnh của Dự án RISE nhằm tăng tốc hệ sinh thái phần mềm RISC-V, chúng tôi đang cung cấp dịch vụ này miễn phí cho bất kỳ dự án nguồn mở nào trên GitHub.

Cách thức hoạt động

Việc bắt đầu chỉ mất vài phút. Có hai Ứng dụng GitHub tùy thuộc vào nơi bạn muốn sử dụng trình chạy:

Cài đặt phiên bản phù hợp với thiết lập của bạn, sau đó sử dụng nhãn `ubuntu-24.04-riscv` trong quy trình làm việc của bạn:

công việc:
xây dựng:
  đang chạy: ubuntu-24.04-riscv
    các bước:
    - sử dụng: hành động/checkout@v4
    - chạy: uname -m   # print riscv64

Vậy đó. Phía sau, khi quy trình làm việc của bạn kích hoạt, một webhook sẽ được gửi đến chương trình phụ trợ của chúng tôi, nơi cung cấp một nhóm Kubernetes mới trên nút RISC-V chuyên dụng. Nhóm đăng ký như một trình chạy GitHub Actions tạm thời, thực thi công việc của bạn và được dọn dẹp tự động sau đó. Mọi công việc đều có một môi trường sạch sẽ và Docker-in-Docker có sẵn ngay lập tức, vì vậy docker build, docker run, Docker Compose và Buildx đều hoạt động như mong đợi.

Không có quy trình phê duyệt và không có danh sách cho phép. Nếu dự án của bạn trên GitHub, bạn có thể bắt đầu sử dụng trình chạy RISC-V ngay hôm nay.

Có gì ẩn giấu

Các trình chạy thực thi trên các máy chủ RISC-V kim loại trần được cung cấp bởi Scaleway, nơi các phiên bản EM-RV1 đóng vai trò trung tâm trong nỗ lực cơ sở hạ tầng của RISE. Mỗi nút chỉ chạy tối đa một công việc tại một thời điểm, đảm bảo hiệu suất nhất quán và có thể dự đoán được cho mỗi lần chạy.

Toàn bộ nền tảng là nguồn mở và bao gồm bốn kho lưu trữ:

  • riscv-runner-app: trình xử lý webhook và trình xử lý nền của Ứng dụng GitHub
  • riscv-runner-device-plugin: plugin thiết bị Kubernetes và trình gắn nhãn nút thực thi lập lịch một công việc cho mỗi nút
  • riscv-runner-images: Á hậu và hình ảnh vùng chứa Docker-in-Docker, được xây dựng lại hàng ngày
  • riscv-runner-sample: kho lưu trữ mẫu để xem nó hoạt động

Cái này dành cho ai?

Nếu bạn duy trì một dự án nguồn mở và từng thắc mắc “dự án này có hoạt động trên RISC-V không?” thì dịch vụ này là dành cho bạn. Cho dù bạn duy trì dự án nào thì việc thêm công việc CI RISC-V giờ đây cũng đơn giản như việc thêm mục nhập mới vào ma trận quy trình làm việc của bạn.

Chúng tôi đã thiết kế môi trường trình chạy gần giống nhất với các trình chạy được lưu trữ tiêu chuẩn của GitHub, vì vậy, quy trình làm việc hiện tại sẽ yêu cầu những thay đổi tối thiểu ngoài nhãn chạy trên.

Bắt đầu và tham gia

Chúng tôi muốn hệ sinh thái phần mềm RISC-V phát triển và điều đó bắt đầu bằng việc giúp các dự án dễ dàng thử nghiệm trên phần cứng thực. Sau đây là cách bạn có thể trợ giúp:

  • Hãy dùng thử. Cài đặt Ứng dụng GitHub trên tổ chức hoặc tài khoản cá nhân của bạn và thêm chạy: ubuntu-24.04-riscv vào CI của bạn.
  • Thêm CI RISC-V vào các dự án yêu thích của bạn. Nếu bạn đóng góp cho một dự án nguồn mở, hãy cân nhắc mở một PR để thêm công việc RISC-V vào quy trình Hành động GitHub của họ. Càng nhiều dự án thử nghiệm trên RISC-V thì hệ sinh thái càng trở nên mạnh mẽ hơn.
  • Đóng góp. Toàn bộ nền tảng là nguồn mở. Tìm thấy một lỗi? Bạn có ý tưởng về nhãn hoặc tính năng dành cho người chạy mới? Thiếu gói trong hình ảnh cơ sở? Mở một sự cố hoặc một yêu cầu kéo trên kho lưu trữ riscv-runner.
  • Truyền bá. Gắn dấu sao cho kho lưu trữ , chia sẻ bài đăng này và thông báo cho những người bảo trì khác biết rằng RISC-V CI miễn phí hiện đã có sẵn.

Tài liệu đầy đủ, bao gồm hướng dẫn cài đặt, cấu hình quy trình làm việc, nhãn trình chạy và chi tiết về kiến trúc, có sẵn tại riseproject-dev.github.io/riscv-runner.

Chúng tôi tin rằng cơ sở hạ tầng CI có thể truy cập là một trong những điều quan trọng mà chúng tôi có thể cung cấp để đẩy nhanh việc áp dụng RISC-V. Chúng tôi rất mong được xem những gì bạn xây dựng và những gì bạn phá vỡ trên RISC-V.

Tác giả: thebeardisred

#discussion