LR_07_002: Rust lang CI loop setup
About
This work item:
- Aims to add the riscv64gc-unknown-linux-gnu Rust Language target triplet to the Rust Language github CI runner infrastructure.
- Aims to use the same target platform and target root file-system assets as used in LR_07_001.
- Aims to use an experimental branch in the upstream CI runner infrastructure. This is expected to be the case until Tier-1 attainment.
Upon successful implementation, the riscv64gc-unknown-linux-gnu Rust Language target triplet will automatically get tested upon every commit to the Rust Language github repository's main branch. This essentially paves the way for Tier-1 attainment.
Updates
- Here's the PR tracking the CI loop enablement.
- While exploring options, a remote test variant was chosen. This limits testing to "target" support, and skips "host tools" support.
- This is because using Rust's normal testing infrastructure (Docker), the test suite required for a "Tier 1 with Host Tools" test is significantly over 6 hours, even on quite powerful hardware.
- The Dockerfile tested is located here.
- According to the Target Tier policy, such long test times alone are enough to disqualify a target from reaching Tier 1.
- In the interim, we are pursuing "Tier 1 (without host tools)".
- This will ensure that the target tests (aka the functionality of artefacts produced by the x86_64 platform to be executed on the riscv64gc platform) would pass, without requiring the tools to be passing.
- Alongside that work, we are pursuing successful (and fast) full host test suite runs in partnership with Scaleway.