Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(ci): update GitHub Action runners with Linux arm64 host #722

Merged
merged 1 commit into from
Jan 18, 2025

Conversation

cfc4n
Copy link
Member

@cfc4n cfc4n commented Jan 17, 2025

Use the ARM64 architecture system to run GitHub Actions to avoid the execution time-consuming problem of the Docker QEMU simulator.

refer: https://github.blog/changelog/2025-01-16-linux-arm64-hosted-runners-now-available-for-free-in-public-repositories-public-preview/

@cfc4n cfc4n added the enhancement New feature or request label Jan 17, 2025
@cfc4n
Copy link
Member Author

cfc4n commented Jan 17, 2025

/review /improve

Copy link

PR Reviewer Guide 🔍

Here are some key observations to aid the review process:

⏱️ Estimated effort to review: 4 🔵🔵🔵🔵⚪
🧪 No relevant tests
🔒 No security concerns identified
⚡ Recommended focus areas for review

Possible Build Configuration Issue

The runs-on value ubuntu-22.04-arm introduced in the new job build-on-ubuntu2204-arm64 may not be a valid GitHub Actions runner label. It should be verified whether this label is supported or if it should be ubuntu-22.04 with additional configuration for ARM64.

runs-on: ubuntu-22.04-arm
Potential Redundancy in Build Steps

The Install Compilers step includes a complex setup process for tools and kernel headers. It should be validated whether all these steps are necessary or if some can be simplified or removed to streamline the workflow.

- name: Install Compilers
  run: |
    sudo apt-get update
    sudo apt-get install --yes build-essential pkgconf libelf-dev llvm-14 clang-14 flex bison linux-tools-common linux-tools-generic gcc gcc-x86-64-linux-gnu libssl-dev linux-source
    for tool in "clang" "llc" "llvm-strip"
    do
      sudo rm -f /usr/bin/$tool
      sudo ln -s /usr/bin/$tool-14 /usr/bin/$tool
    done
    cd /usr/src
    source_file=$(find . -maxdepth 1 -name "*linux-source*.tar.bz2")
    source_dir=$(echo "$source_file" | sed 's/\.tar\.bz2//g')  
    sudo tar -xf $source_file
    cd $source_dir
    test -f .config || sudo make oldconfig
    sudo make ARCH=x86 CROSS_COMPILE=x86_64-linux-gnu- prepare V=0 > /dev/null
    ls -al /usr/src/$source_dir

@cfc4n cfc4n merged commit 3998f77 into gojue:master Jan 18, 2025
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant