curl-for-win.yml 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. # Copyright (C) Viktor Szakats
  2. #
  3. # SPDX-License-Identifier: curl
  4. ---
  5. name: curl-for-win
  6. on:
  7. push:
  8. branches:
  9. - master
  10. - '*/ci'
  11. pull_request:
  12. branches:
  13. - master
  14. concurrency:
  15. group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.sha }}
  16. cancel-in-progress: true
  17. permissions: {}
  18. env:
  19. CW_NOGET: 'curl trurl'
  20. CW_MAP: '0'
  21. CW_JOBS: '3'
  22. CW_NOPKG: '1'
  23. DOCKER_CONTENT_TRUST: '1'
  24. jobs:
  25. linux-musl-llvm:
  26. runs-on: ubuntu-latest
  27. timeout-minutes: 30
  28. steps:
  29. - uses: actions/checkout@v4
  30. with:
  31. path: 'curl'
  32. fetch-depth: 8
  33. - name: 'build'
  34. run: |
  35. git clone --depth 1 https://github.com/curl/curl-for-win
  36. mv curl-for-win/* .
  37. export CW_CONFIG='-main-werror-linux-musl-x64'
  38. export CW_REVISION='${{ github.sha }}'
  39. . ./_versions.sh
  40. docker trust inspect --pretty "${DOCKER_IMAGE}"
  41. time docker pull "${DOCKER_IMAGE}"
  42. docker images --digests
  43. time docker run --volume "$(pwd):$(pwd)" --workdir "$(pwd)" \
  44. --env-file <(env | grep -a -E \
  45. '^(CW_|GITHUB_)') \
  46. "${DOCKER_IMAGE}" \
  47. sh -c ./_ci-linux-debian.sh
  48. mac-clang:
  49. runs-on: macos-latest
  50. timeout-minutes: 30
  51. steps:
  52. - uses: actions/checkout@v4
  53. with:
  54. path: 'curl'
  55. fetch-depth: 8
  56. - name: 'build'
  57. run: |
  58. git clone --depth 1 https://github.com/curl/curl-for-win
  59. mv curl-for-win/* .
  60. export CW_CONFIG='-main-werror-mac-x64'
  61. export CW_REVISION='${{ github.sha }}'
  62. sh -c ./_ci-mac-homebrew.sh
  63. win-llvm:
  64. runs-on: ubuntu-latest
  65. steps:
  66. - uses: actions/checkout@v4
  67. with:
  68. path: 'curl'
  69. fetch-depth: 8
  70. - name: 'build'
  71. run: |
  72. git clone --depth 1 https://github.com/curl/curl-for-win
  73. mv curl-for-win/* .
  74. export CW_CONFIG='-main-werror-win-x64'
  75. export CW_REVISION='${{ github.sha }}'
  76. . ./_versions.sh
  77. docker trust inspect --pretty "${DOCKER_IMAGE}"
  78. time docker pull "${DOCKER_IMAGE}"
  79. docker images --digests
  80. time docker run --volume "$(pwd):$(pwd)" --workdir "$(pwd)" \
  81. --env-file <(env | grep -a -E \
  82. '^(CW_|GITHUB_)') \
  83. "${DOCKER_IMAGE}" \
  84. sh -c ./_ci-linux-debian.sh