File tree Expand file tree Collapse file tree 2 files changed +80
-0
lines changed Expand file tree Collapse file tree 2 files changed +80
-0
lines changed Original file line number Diff line number Diff line change 1+ name : ' Install CMake'
2+ description : ' Download and configure CMake'
3+ inputs :
4+ url :
5+ description : " URL of CMake bundle to download"
6+ hash :
7+ description : " Expected bundle hash"
8+ install_dir :
9+ description : " Location where to install the CMake bundle"
10+ default : /tmp/cmake
11+
12+ outputs :
13+ cmake :
14+ description : " Path to the installed CMake executable."
15+ value : ${{ steps.unpack-cmake.outputs.cmake-path }}
16+ ctest :
17+ description : " Path to the installed CMake ctest executable."
18+ value : ${{ steps.unpack-cmake.outputs.ctest-path }}
19+ runs :
20+ using : " composite"
21+ steps :
22+ - name : Download CMake
23+ shell : bash
24+ run : |
25+ curl -Llo /tmp/cmake.tar.gz "${{ inputs.url }}"
26+ - name : Verify CMake
27+ shell : bash
28+ run :
29+ echo "${{ inputs.hash }} /tmp/cmake.tar.gz" | shasum -a 256 -c-
30+ - name : Unpack CMake
31+ shell : bash
32+ id : unpack-cmake
33+ run : |
34+ mkdir "${{ inputs.install_dir }}"
35+ tar xf /tmp/cmake.tar.gz --strip-components=1 -C "${{ inputs.install_dir }}"
36+ echo "cmake-path=${{ inputs.install_dir }}/bin/cmake" >> "$GITHUB_OUTPUT"
37+ echo "ctest-path=${{ inputs.install_dir }}/bin/ctest" >> "$GITHUB_OUTPUT"
Original file line number Diff line number Diff line change 1+ name : Pull Request
2+ on :
3+ pull_request :
4+ branches :
5+ - main
6+ types :
7+ - opened
8+ - reopened
9+ - synchronize
10+
11+ jobs :
12+ smoke_test :
13+ name : Smoke Test
14+ runs-on : ubuntu-latest
15+ container : swift:6.1-bookworm
16+ strategy :
17+ matrix :
18+ cmake :
19+ - url : " https://github.com/Kitware/CMake/releases/download/v3.22.6/cmake-3.22.6-linux-x86_64.tar.gz"
20+ hash : 09e1b34026c406c5bf4d1b053eadb3a8519cb360e37547ebf4b70ab766d94fbc
21+ - url : " https://github.com/Kitware/CMake/releases/download/v3.26.6/cmake-3.26.6-linux-x86_64.tar.gz"
22+ hash : 2dd48ccd3e3d872ee4cc916f3f4e24812612421007e895f82bf9fc7e49831d62
23+ - url : " https://github.com/Kitware/CMake/releases/download/v3.30.8/cmake-3.30.8-linux-x86_64.tar.gz"
24+ hash : adc81f2944e6f86b44e86acea3abea1651ed7890206933484b8b74ac1280314f
25+ steps :
26+ - name : Clone Repo
27+ uses : actions/checkout@v4
28+ with :
29+ path : ./swift-cmake-examples
30+ - name : Install Dependencies
31+ shell : bash
32+ run : apt update && apt install -y curl ninja-build
33+ - name : Setup CMake
34+ id : install-cmake
35+ uses : ./swift-cmake-examples/.github/actions/cmake-action
36+ with :
37+ url : ${{ matrix.cmake.url }}
38+ hash : ${{ matrix.cmake.hash }}
39+ - name : Run Tests
40+ shell : bash
41+ run : |
42+ "${{ steps.install-cmake.outputs.cmake }}" -G Ninja -B test -S swift-cmake-examples -DCMAKE_BUILD_TYPE=Release
43+ "${{ steps.install-cmake.outputs.ctest }}" --output-on-failure --test-timeout 150 --test-dir test -j
You can’t perform that action at this time.
0 commit comments