|
27 | 27 | include:
|
28 | 28 | - channel: nightly
|
29 | 29 | target: i686-pc-windows-gnu
|
30 |
| - mingw-7z-path: mingw |
31 | 30 |
|
32 | 31 | env:
|
33 | 32 | CFG_RELEASE_CHANNEL: nightly
|
|
41 | 40 | - name: checkout
|
42 | 41 | uses: actions/checkout@v2
|
43 | 42 |
|
44 |
| - # The Windows runners do not (yet) have a proper msys/mingw environment |
45 |
| - # pre-configured like AppVeyor does, though they will likely be added in the future. |
46 |
| - # https://github.com/actions/virtual-environments/issues/30 |
47 |
| - # |
48 |
| - # In the interim, this ensures mingw32 is installed and available on the PATH |
49 |
| - # for the i686-pc-windows-gnu target. This approach is used because it's common in |
50 |
| - # other rust projects and there are issues/limitations with the msys2 chocolatey nuget |
51 |
| - # package and numworks/setup-msys2 action. |
52 |
| - # https://github.com/rust-lang/rust/blob/master/src/ci/scripts/install-mingw.sh#L59 |
53 |
| - # https://github.com/rust-lang/rustup/blob/master/appveyor.yml |
54 |
| - # |
55 |
| - # Use GitHub Actions cache support to avoid downloading the .7z file every time |
56 |
| - # to be cognizant of the AWS egress cost impacts |
57 |
| - # https://help.github.com/en/actions/automating-your-workflow-with-github-actions/caching-dependencies-to-speed-up-workflows#usage-limits-and-eviction-policy |
58 |
| - - name: cache mingw.7z |
59 |
| - id: cache-mingw |
60 |
| - with: |
61 |
| - path: ${{ matrix.mingw-7z-path }} |
62 |
| - key: ${{ matrix.channel }}-${{ matrix.target }}-mingw |
63 |
| - uses: actions/cache@v1 |
64 |
| - if: matrix.target == 'i686-pc-windows-gnu' && matrix.channel == 'nightly' |
65 |
| - - name: download mingw.7z |
66 |
| - run: | |
67 |
| - # Disable the download progress bar which can cause perf issues |
68 |
| - $ProgressPreference = "SilentlyContinue" |
69 |
| - md -Force ${{ matrix.mingw-7z-path }} |
70 |
| - Invoke-WebRequest https://ci-mirrors.rust-lang.org/rustc/i686-6.3.0-release-posix-dwarf-rt_v5-rev2.7z -OutFile ${{ matrix.mingw-7z-path }}/mingw.7z |
71 |
| - if: matrix.target == 'i686-pc-windows-gnu' && matrix.channel == 'nightly' && steps.cache-mingw.outputs.cache-hit != 'true' |
72 |
| - shell: powershell |
73 |
| - - name: install mingw32 |
74 |
| - run: | |
75 |
| - 7z x -y ${{ matrix.mingw-7z-path }}/mingw.7z -oC:\msys64 | Out-Null |
76 |
| - echo ::add-path::C:\msys64\mingw32\bin |
77 |
| - if: matrix.target == 'i686-pc-windows-gnu' && matrix.channel == 'nightly' |
78 |
| - shell: powershell |
79 |
| - |
80 | 43 | # Run build
|
81 | 44 | - name: setup
|
82 | 45 | uses: actions-rs/toolchain@v1
|
|
0 commit comments