mirror of
https://github.com/curl/curl.git
synced 2025-02-23 15:10:03 +08:00
- run tests via `make test-ci` instead of `make check` with autotools. - add `x86_64` job for FreeBSD, with tests. It matches the existing Cirrus CI job, with these differences: - finishes 3x faster (thanks to parallel tests enabled). - librtmp is not enabled because it's slated for removal by FreeBSD. (already past the removal deadline, thought the package still installs.) - DICT and TELNET servers fail to start. Couldn't figure out why. It means skipping test 1450 and 1452. - it runs more tests, e.g. websockets and ip6-localhost. - no `pkg update -f`. - it misses the `CRYPTOGRAPHY_DONT_BUILD_RUST=1`, `pkg delete curl`, `chmod 777`, `sudo -u nobody` and `sysctl net.inet.tcp.blackhole` tricks. The latter is the default in these runners, the others did not affect results. - set `-j0` for tests in the NetBSD job. Flaky otherwise. Closes #14244
112 lines
2.9 KiB
YAML
112 lines
2.9 KiB
YAML
# Copyright (C) Viktor Szakats
|
|
#
|
|
# SPDX-License-Identifier: curl
|
|
---
|
|
name: curl-for-win
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- master
|
|
- '*/ci'
|
|
paths-ignore:
|
|
- '**/*.md'
|
|
- '.azure-pipelines.yml'
|
|
- '.circleci/**'
|
|
- 'appveyor.*'
|
|
- 'packages/**'
|
|
- 'plan9/**'
|
|
- 'projects/**'
|
|
- 'winbuild/**'
|
|
pull_request:
|
|
branches:
|
|
- master
|
|
paths-ignore:
|
|
- '**/*.md'
|
|
- '.azure-pipelines.yml'
|
|
- '.circleci/**'
|
|
- 'appveyor.*'
|
|
- 'packages/**'
|
|
- 'plan9/**'
|
|
- 'projects/**'
|
|
- 'winbuild/**'
|
|
|
|
concurrency:
|
|
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.sha }}
|
|
cancel-in-progress: true
|
|
|
|
permissions: {}
|
|
|
|
env:
|
|
CW_NOGET: 'curl trurl'
|
|
CW_MAP: '0'
|
|
CW_JOBS: '5'
|
|
CW_NOPKG: '1'
|
|
DOCKER_CONTENT_TRUST: '1'
|
|
|
|
jobs:
|
|
linux-musl-llvm:
|
|
runs-on: ubuntu-latest
|
|
timeout-minutes: 30
|
|
steps:
|
|
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4
|
|
with:
|
|
path: 'curl'
|
|
fetch-depth: 8
|
|
- name: 'build'
|
|
run: |
|
|
git clone --depth 1 https://github.com/curl/curl-for-win
|
|
mv curl-for-win/* .
|
|
export CW_CONFIG='-main-werror-linux-musl-x64'
|
|
export CW_REVISION='${{ github.sha }}'
|
|
. ./_versions.sh
|
|
docker trust inspect --pretty "${DOCKER_IMAGE}"
|
|
time docker pull "${DOCKER_IMAGE}"
|
|
docker images --digests
|
|
time docker run --volume "$(pwd):$(pwd)" --workdir "$(pwd)" \
|
|
--env-file <(env | grep -a -E \
|
|
'^(CW_|GITHUB_)') \
|
|
"${DOCKER_IMAGE}" \
|
|
sh -c ./_ci-linux-debian.sh
|
|
|
|
mac-clang:
|
|
runs-on: macos-latest
|
|
timeout-minutes: 30
|
|
env:
|
|
CW_JOBS: '4'
|
|
steps:
|
|
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4
|
|
with:
|
|
path: 'curl'
|
|
fetch-depth: 8
|
|
- name: 'build'
|
|
run: |
|
|
git clone --depth 1 https://github.com/curl/curl-for-win
|
|
mv curl-for-win/* .
|
|
export CW_CONFIG='-main-werror-mac-x64'
|
|
export CW_REVISION='${{ github.sha }}'
|
|
sh -c ./_ci-mac-homebrew.sh
|
|
|
|
win-llvm:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4
|
|
with:
|
|
path: 'curl'
|
|
fetch-depth: 8
|
|
- name: 'build'
|
|
run: |
|
|
git clone --depth 1 https://github.com/curl/curl-for-win
|
|
mv curl-for-win/* .
|
|
export CW_CONFIG='-main-werror-win-x64'
|
|
export CW_REVISION='${{ github.sha }}'
|
|
. ./_versions.sh
|
|
docker trust inspect --pretty "${DOCKER_IMAGE}"
|
|
time docker pull "${DOCKER_IMAGE}"
|
|
docker images --digests
|
|
time docker run --volume "$(pwd):$(pwd)" --workdir "$(pwd)" \
|
|
--env-file <(env | grep -a -E \
|
|
'^(CW_|GITHUB_)') \
|
|
"${DOCKER_IMAGE}" \
|
|
sh -c ./_ci-linux-debian.sh
|