From eca875ba4e54af3ee90d0f0151f4018d3a0f99e8 Mon Sep 17 00:00:00 2001 From: Egor Tensin Date: Sun, 14 Mar 2021 00:01:14 +0300 Subject: workflows: _really_ fix Boost caching?.. actions/cache@v2 doesn't work on windows-2016 images, since those contain the GNU tar, which cannot work with \ as path separator. This was fixed in package @actions/cache v1.0.5, which is used by action actions/cache@v2.1.4 [1][2]. In addition, it simply couldn't find tar.exe on those images thanks to my action cleanup-path, which removed the corresponding directory (I think it was Git's bin/) from PATH. It worked for windows-2019 images thanks to them containing tar.exe in System32. Solved by turning cleanup-path into a JavaScript action with a "post" step, which restores the original PATH value. [1]: https://github.com/actions/virtual-environments/issues/480 [2]: https://github.com/actions/toolkit/issues/632 --- .github/workflows/basic.yml | 4 ++-- .github/workflows/boost_clang_windows.yml | 6 +++--- .github/workflows/boost_toolsets.yml | 6 +++--- .github/workflows/ci_appveyor.yml | 4 ++-- .github/workflows/ci_github.yml | 4 ++-- .github/workflows/ci_travis.yml | 4 ++-- .github/workflows/cygwin_static_libstdc++.yml | 2 +- .github/workflows/example_toolsets.yml | 2 +- 8 files changed, 16 insertions(+), 16 deletions(-) (limited to '.github/workflows') diff --git a/.github/workflows/basic.yml b/.github/workflows/basic.yml index 89c2fc0..d3a9d92 100644 --- a/.github/workflows/basic.yml +++ b/.github/workflows/basic.yml @@ -37,10 +37,10 @@ jobs: python-version: '3.x' - name: Cache Boost - uses: actions/cache@v2 + uses: actions/cache@v2.1.4 with: path: boost_*.tar.gz - key: ${{ runner.os }}-boost-1.72.0 + key: boost-1.72.0 - name: Build Boost run: | diff --git a/.github/workflows/boost_clang_windows.yml b/.github/workflows/boost_clang_windows.yml index 69160f3..5a9b58e 100644 --- a/.github/workflows/boost_clang_windows.yml +++ b/.github/workflows/boost_clang_windows.yml @@ -35,13 +35,13 @@ jobs: uses: actions/checkout@v2 - name: Cache Boost - uses: actions/cache@v2 + uses: actions/cache@v2.1.4 with: path: '${{ runner.workspace }}/boost/boost_*.tar.gz' - key: '${{ runner.os }}-boost-${{ matrix.boost-version }}' + key: 'boost-${{ matrix.boost-version }}' - name: Clean up PATH - uses: egor-tensin/cleanup-path@v1 + uses: egor-tensin/cleanup-path@v2 if: runner.os == 'Windows' - name: Set common variables diff --git a/.github/workflows/boost_toolsets.yml b/.github/workflows/boost_toolsets.yml index 8653316..876d0e7 100644 --- a/.github/workflows/boost_toolsets.yml +++ b/.github/workflows/boost_toolsets.yml @@ -111,13 +111,13 @@ jobs: uses: actions/checkout@v2 - name: Cache Boost - uses: actions/cache@v2 + uses: actions/cache@v2.1.4 with: path: '${{ runner.workspace }}/boost/boost_*.tar.gz' - key: '${{ runner.os }}-boost-${{ matrix.boost-version }}' + key: 'boost-${{ matrix.boost-version }}' - name: Clean up PATH - uses: egor-tensin/cleanup-path@v1 + uses: egor-tensin/cleanup-path@v2 if: runner.os == 'Windows' - name: Set common variables diff --git a/.github/workflows/ci_appveyor.yml b/.github/workflows/ci_appveyor.yml index a88dc7d..6b66455 100644 --- a/.github/workflows/ci_appveyor.yml +++ b/.github/workflows/ci_appveyor.yml @@ -46,10 +46,10 @@ jobs: python-version: '3.x' - name: Cache Boost - uses: actions/cache@v2 + uses: actions/cache@v2.1.4 with: path: C:\projects\boost_*.tar.gz - key: '${{ runner.os }}-boost-${{ env.boost_version }}' + key: 'boost-${{ env.boost_version }}' - name: Create C:\projects run: mkdir C:\projects diff --git a/.github/workflows/ci_github.yml b/.github/workflows/ci_github.yml index 54a9a04..877e885 100644 --- a/.github/workflows/ci_github.yml +++ b/.github/workflows/ci_github.yml @@ -46,10 +46,10 @@ jobs: python-version: '3.x' - name: Cache Boost - uses: actions/cache@v2 + uses: actions/cache@v2.1.4 with: path: '${{ runner.workspace }}/boost_*.tar.gz' - key: '${{ runner.os }}-boost-${{ env.boost_version }}' + key: 'boost-${{ env.boost_version }}' - name: Build Boost run: python -m project.ci.boost -- --with-filesystem diff --git a/.github/workflows/ci_travis.yml b/.github/workflows/ci_travis.yml index c78143a..32123a6 100644 --- a/.github/workflows/ci_travis.yml +++ b/.github/workflows/ci_travis.yml @@ -43,10 +43,10 @@ jobs: python-version: '3.x' - name: Cache Boost - uses: actions/cache@v2 + uses: actions/cache@v2.1.4 with: path: '${{ env.HOME }}/boost_*.tar.gz' - key: '${{ runner.os }}-boost-${{ env.boost_version }}' + key: 'boost-${{ env.boost_version }}' - name: Build Boost run: python -m project.ci.travis.boost -- --with-filesystem diff --git a/.github/workflows/cygwin_static_libstdc++.yml b/.github/workflows/cygwin_static_libstdc++.yml index 8964595..36c55c2 100644 --- a/.github/workflows/cygwin_static_libstdc++.yml +++ b/.github/workflows/cygwin_static_libstdc++.yml @@ -30,7 +30,7 @@ jobs: uses: actions/checkout@v2 - name: Clean up PATH - uses: egor-tensin/cleanup-path@v1 + uses: egor-tensin/cleanup-path@v2 if: runner.os == 'Windows' - name: Set common variables diff --git a/.github/workflows/example_toolsets.yml b/.github/workflows/example_toolsets.yml index cb336aa..c4d0eaf 100644 --- a/.github/workflows/example_toolsets.yml +++ b/.github/workflows/example_toolsets.yml @@ -75,7 +75,7 @@ jobs: uses: actions/checkout@v2 - name: Clean up PATH - uses: egor-tensin/cleanup-path@v1 + uses: egor-tensin/cleanup-path@v2 if: runner.os == 'Windows' - name: Set common variables -- cgit v1.2.3