mirror of
https://github.com/curl/curl.git
synced 2026-04-11 12:01:42 +08:00
GHA: switch 12 Linux jobs to arm64
More cost-effective and seems as fast or faster than Intel. In particular, valgrind seems to be almost 2x fast. So fast the job pair could fit under 10 minutes if merged again (but would be the longest in GHA/Linux.) Installing packages is slightly slower. The package repo is Ubuntu's which is slower than the Azure mirror used on Intel (unless Azure is broken, which happened a lot last year). To add to more jobs, the locally built deps also need to be migrated. Also: - add workaround for failing sshd server on Linux arm runners, caused by world-writable `HOME` directory. Closes #20231
This commit is contained in:
parent
91c24d3e10
commit
2b0d8dcc16
2
.github/workflows/appveyor-status.yml
vendored
2
.github/workflows/appveyor-status.yml
vendored
@ -16,7 +16,7 @@ permissions: {}
|
||||
jobs:
|
||||
split:
|
||||
name: 'split'
|
||||
runs-on: ubuntu-latest
|
||||
runs-on: ubuntu-24.04-arm
|
||||
if: ${{ github.event.sender.login == 'appveyor[bot]' }}
|
||||
permissions:
|
||||
statuses: write # To update build statuses
|
||||
|
||||
4
.github/workflows/checkdocs.yml
vendored
4
.github/workflows/checkdocs.yml
vendored
@ -118,7 +118,7 @@ jobs:
|
||||
|
||||
badwords-synopsis:
|
||||
name: 'badwords, synopsis'
|
||||
runs-on: ubuntu-latest
|
||||
runs-on: ubuntu-24.04-arm
|
||||
steps:
|
||||
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
with:
|
||||
@ -132,7 +132,7 @@ jobs:
|
||||
|
||||
man-examples:
|
||||
name: 'man-examples'
|
||||
runs-on: ubuntu-latest
|
||||
runs-on: ubuntu-24.04-arm
|
||||
steps:
|
||||
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
with:
|
||||
|
||||
2
.github/workflows/checksrc.yml
vendored
2
.github/workflows/checksrc.yml
vendored
@ -34,7 +34,7 @@ permissions: {}
|
||||
jobs:
|
||||
checksrc:
|
||||
name: 'checksrc'
|
||||
runs-on: ubuntu-latest
|
||||
runs-on: ubuntu-24.04-arm
|
||||
steps:
|
||||
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
with:
|
||||
|
||||
2
.github/workflows/checkurls.yml
vendored
2
.github/workflows/checkurls.yml
vendored
@ -25,7 +25,7 @@ jobs:
|
||||
linkcheck:
|
||||
if: ${{ github.repository_owner == 'curl' || github.event_name != 'schedule' }}
|
||||
name: 'linkcheck'
|
||||
runs-on: ubuntu-latest
|
||||
runs-on: ubuntu-24.04-arm
|
||||
steps:
|
||||
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
with:
|
||||
|
||||
17
.github/workflows/linux.yml
vendored
17
.github/workflows/linux.yml
vendored
@ -172,24 +172,26 @@ jobs:
|
||||
configure: --with-openssl --enable-debug --disable-unity
|
||||
|
||||
- name: 'openssl libssh2 sync-resolver valgrind 1'
|
||||
image: ubuntu-24.04-arm
|
||||
install_packages: libidn2-dev libssh2-1-dev libnghttp2-dev libldap-dev valgrind
|
||||
tflags: '--min=920 1 to 950'
|
||||
generate: -DENABLE_DEBUG=ON -DENABLE_THREADED_RESOLVER=OFF
|
||||
|
||||
- name: 'openssl libssh2 sync-resolver valgrind 2'
|
||||
image: ubuntu-24.04-arm
|
||||
install_packages: libidn2-dev libssh2-1-dev libnghttp2-dev libldap-dev valgrind
|
||||
tflags: '--min=910 951 to 9999'
|
||||
generate: -DENABLE_DEBUG=ON -DENABLE_THREADED_RESOLVER=OFF
|
||||
|
||||
- name: 'openssl'
|
||||
- name: 'openssl intel'
|
||||
install_packages: libssh-dev
|
||||
install_steps: pytest
|
||||
configure: CFLAGS=-std=gnu89 --with-openssl --with-libssh --enable-debug
|
||||
|
||||
- name: 'openssl arm'
|
||||
image: ubuntu-24.04-arm
|
||||
install_steps: pytest
|
||||
configure: CFLAGS=-std=gnu89 --with-openssl --enable-debug --disable-verbose
|
||||
image: 'ubuntu-24.04-arm'
|
||||
|
||||
- name: 'openssl -O3 libssh valgrind 1'
|
||||
install_packages: libssh-dev valgrind
|
||||
@ -209,15 +211,18 @@ jobs:
|
||||
configure: CC=clang --enable-static --disable-shared --with-openssl --with-gssapi --enable-debug --disable-docs --disable-manual --with-ldap=/home/runner/openldap-static --with-ldap-lib=ldap --with-lber-lib=lber
|
||||
|
||||
- name: 'openssl clang krb5 LTO'
|
||||
image: ubuntu-24.04-arm
|
||||
install_packages: libssh2-1-dev libkrb5-dev clang
|
||||
install_steps: skiprun pytest
|
||||
CC: clang
|
||||
generate: -DCURL_USE_OPENSSL=ON -DCURL_USE_GSSAPI=ON -DENABLE_DEBUG=ON -DCURL_LTO=ON
|
||||
|
||||
- name: 'openssl !ipv6 !--libcurl !--digest-auth'
|
||||
image: ubuntu-24.04-arm
|
||||
configure: --with-openssl --disable-ipv6 --enable-debug --disable-unity --disable-libcurl-option --disable-digest-auth
|
||||
|
||||
- name: 'openssl https-only'
|
||||
image: ubuntu-24.04-arm
|
||||
tflags: '--min=1150'
|
||||
configure: >-
|
||||
--with-openssl --enable-debug --disable-unity
|
||||
@ -250,6 +255,7 @@ jobs:
|
||||
--with-openssl --with-librtmp --with-libssh2 --with-libidn2 --enable-ares --enable-debug
|
||||
|
||||
- name: '!ssl !http !smtp !imap'
|
||||
image: ubuntu-24.04-arm
|
||||
tflags: '--min=475'
|
||||
configure: --without-ssl --enable-debug --disable-http --disable-smtp --disable-imap --disable-unity
|
||||
|
||||
@ -347,6 +353,7 @@ jobs:
|
||||
tflags: '-n --test-event --min=1350'
|
||||
|
||||
- name: 'duphandle'
|
||||
image: ubuntu-24.04-arm
|
||||
install_packages: libssh-dev
|
||||
configure: --enable-debug --enable-static --disable-shared --disable-threaded-resolver --with-libssh --with-openssl
|
||||
tflags: '-n --test-duphandle'
|
||||
@ -409,6 +416,12 @@ jobs:
|
||||
if [ -n "${INSTALL_PACKAGES_BREW}" ]; then
|
||||
HOMEBREW_NO_AUTO_UPDATE=1 /home/linuxbrew/.linuxbrew/bin/brew install ${INSTALL_PACKAGES_BREW}
|
||||
fi
|
||||
# Workaround for ubuntu-24.04-arm images having 0777 for /home/runner,
|
||||
# which breaks the test sshd server used in pytest.
|
||||
if [[ "$(uname -m)" = *'aarch64'* ]]; then
|
||||
ls -l /home
|
||||
chmod 0755 /home/runner
|
||||
fi
|
||||
|
||||
- name: 'install prereqs (i686)'
|
||||
if: ${{ contains(matrix.build.name, 'i686') }}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user