• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1name: Windows
2
3on:
4  pull_request:
5  push:
6  release:
7    types: published
8
9jobs:
10  build:
11    runs-on: windows-latest
12
13    steps:
14    - uses: actions/checkout@v2
15
16    - name: Install dependencies
17      run: choco install re2c
18
19    - name: Build ninja
20      shell: bash
21      run: |
22        cmake -DCMAKE_BUILD_TYPE=Release -B build
23        cmake --build build --parallel --config Release
24
25    - name: Test ninja
26      run: .\ninja_test.exe
27      working-directory: build/Release
28
29    - name: Create ninja archive
30      shell: bash
31      run: |
32        mkdir artifact
33        7z a artifact/ninja-win.zip ./build/Release/ninja.exe
34
35    # Upload ninja binary archive as an artifact
36    - name: Upload artifact
37      uses: actions/upload-artifact@v1
38      with:
39        name: ninja-binary-archives
40        path: artifact
41
42    - name: Upload release asset
43      if: github.event.action == 'published'
44      uses: actions/upload-release-asset@v1.0.1
45      env:
46        GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
47      with:
48        upload_url: ${{ github.event.release.upload_url }}
49        asset_path: ./artifact/ninja-win.zip
50        asset_name: ninja-win.zip
51        asset_content_type: application/zip
52