lsd-rs / lsd

The next gen ls command
Apache License 2.0
13.19k stars 430 forks source link

CI: build for aarch64-macos and aarch64-windows #819

Closed CarterLi closed 1 year ago

CarterLi commented 1 year ago

Build for more platforms.

I know very little about rust. Hopefully it works

zwpaper commented 1 year ago

Hi @CarterLi, feel free to raise PRs, it does not have to be familiar with Rust to contribute 😉

codecov-commenter commented 1 year ago

Codecov Report

Merging #819 (dceea92) into master (ea56a7c) will not change coverage. The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #819   +/-   ##
=======================================
  Coverage   86.57%   86.57%           
=======================================
  Files          44       44           
  Lines        4507     4507           
=======================================
  Hits         3902     3902           
  Misses        605      605           

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more

CarterLi commented 1 year ago

Test failed because of incompatible platforms. Maybe we should skip the tests on arm64, but I dont know how to do that

zwpaper commented 1 year ago

hi @CarterLi, lsd could be compiled in the arm platforms, and ci failed because you just added these 2 platforms, it may need some rust and GitHub actions knowledge to fix it

meain commented 1 year ago

@CarterLi I haven't looked into the PR, but here is how we do it for arm.

I haven't tried it, but I think this should work:

diff --git a/.github/workflows/CICD.yml b/.github/workflows/CICD.yml
index a888510..b771d73 100644
--- a/.github/workflows/CICD.yml
+++ b/.github/workflows/CICD.yml
@@ -162,7 +162,7 @@ jobs:
         echo set-output name=CARGO_USE_CROSS::${CARGO_USE_CROSS:-<empty>/false}
         echo ::set-output name=CARGO_USE_CROSS::${CARGO_USE_CROSS}
         # * test only binary for arm-type targets
-        unset CARGO_TEST_OPTIONS ; case ${{ matrix.job.target }} in arm-* | aarch64-*-linux-*) CARGO_TEST_OPTIONS="--bin ${PROJECT_NAME}" ;; esac;
+        unset CARGO_TEST_OPTIONS ; case ${{ matrix.job.target }} in arm-* | aarch64-*) CARGO_TEST_OPTIONS="--bin ${PROJECT_NAME}" ;; esac;
         echo set-output name=CARGO_TEST_OPTIONS::${CARGO_TEST_OPTIONS}
         echo ::set-output name=CARGO_TEST_OPTIONS::${CARGO_TEST_OPTIONS}
         # * strip executable?
CarterLi commented 1 year ago

Thanks @meain, fixed

Didn't work