1# Copyright (C) Viktor Szakats 2# 3# SPDX-License-Identifier: curl 4--- 5name: curl-for-win 6 7'on': 8 push: 9 branches: 10 - master 11 - '*/ci' 12 paths-ignore: 13 - '**/*.md' 14 - '.circleci/**' 15 - 'appveyor.*' 16 - 'packages/**' 17 - 'plan9/**' 18 - 'projects/**' 19 - 'winbuild/**' 20 pull_request: 21 branches: 22 - master 23 paths-ignore: 24 - '**/*.md' 25 - '.circleci/**' 26 - 'appveyor.*' 27 - 'packages/**' 28 - 'plan9/**' 29 - 'projects/**' 30 - 'winbuild/**' 31 32concurrency: 33 group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.sha }} 34 cancel-in-progress: true 35 36permissions: {} 37 38env: 39 CW_NOGET: 'curl trurl' 40 CW_MAP: '0' 41 CW_JOBS: '5' 42 CW_NOPKG: '1' 43 44jobs: 45 linux-glibc-llvm: 46 runs-on: ubuntu-latest 47 timeout-minutes: 30 48 steps: 49 - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4 50 with: 51 path: 'curl' 52 fetch-depth: 8 53 - name: 'build' 54 run: | 55 git clone --depth 1 https://github.com/curl/curl-for-win 56 mv curl-for-win/* . 57 export CW_CONFIG='-main-werror-linux-a64-x64' 58 export CW_REVISION='${{ github.sha }}' 59 DOCKER_IMAGE='debian:bookworm-slim' 60 DOCKER_CONTENT_TRUST=1 61 export CW_CCSUFFIX='-15' 62 export CW_GCCSUFFIX='-12' 63 docker trust inspect --pretty "${DOCKER_IMAGE}" 64 time docker pull "${DOCKER_IMAGE}" 65 docker images --digests 66 time docker run --volume "$(pwd):$(pwd)" --workdir "$(pwd)" \ 67 --env-file <(env | grep -a -E \ 68 '^(CW_|GITHUB_)') \ 69 "${DOCKER_IMAGE}" \ 70 sh -c ./_ci-linux-debian.sh 71 72 linux-musl-llvm: 73 runs-on: ubuntu-latest 74 timeout-minutes: 30 75 steps: 76 - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4 77 with: 78 path: 'curl' 79 fetch-depth: 8 80 - name: 'build' 81 run: | 82 git clone --depth 1 https://github.com/curl/curl-for-win 83 mv curl-for-win/* . 84 export CW_CONFIG='-main-werror-linux-musl-r64-x64' 85 export CW_REVISION='${{ github.sha }}' 86 . ./_versions.sh 87 docker trust inspect --pretty "${DOCKER_IMAGE}" 88 time docker pull "${DOCKER_IMAGE}" 89 docker images --digests 90 time docker run --volume "$(pwd):$(pwd)" --workdir "$(pwd)" \ 91 --env-file <(env | grep -a -E \ 92 '^(CW_|GITHUB_)') \ 93 "${DOCKER_IMAGE}" \ 94 sh -c ./_ci-linux-debian.sh 95 96 mac-clang: 97 runs-on: macos-latest 98 timeout-minutes: 30 99 env: 100 CW_JOBS: '4' 101 steps: 102 - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4 103 with: 104 path: 'curl' 105 fetch-depth: 8 106 - name: 'build' 107 run: | 108 git clone --depth 1 https://github.com/curl/curl-for-win 109 mv curl-for-win/* . 110 export CW_CONFIG='-main-werror-mac-x64' 111 export CW_REVISION='${{ github.sha }}' 112 sh -c ./_ci-mac-homebrew.sh 113 114 win-llvm: 115 runs-on: ubuntu-latest 116 steps: 117 - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4 118 with: 119 path: 'curl' 120 fetch-depth: 8 121 - name: 'build' 122 run: | 123 git clone --depth 1 https://github.com/curl/curl-for-win 124 mv curl-for-win/* . 125 export CW_CONFIG='-main-werror-win-x64' 126 export CW_REVISION='${{ github.sha }}' 127 . ./_versions.sh 128 docker trust inspect --pretty "${DOCKER_IMAGE}" 129 time docker pull "${DOCKER_IMAGE}" 130 docker images --digests 131 time docker run --volume "$(pwd):$(pwd)" --workdir "$(pwd)" \ 132 --env-file <(env | grep -a -E \ 133 '^(CW_|GITHUB_)') \ 134 "${DOCKER_IMAGE}" \ 135 sh -c ./_ci-linux-debian.sh 136