name: Build-Windows-WPF

on: workflow_dispatch

jobs:

  windows:
    runs-on: windows-latest

    steps:
    - name: Checkout
      uses: actions/checkout@v2

    - name: Replace token 1
      run: sed -i -e "s,placeholder_rudder_dataplane_url,${{ secrets.RUDDER_DATAPLANE_URL }},g" ${{ github.workspace }}/server/services/telemetry/telemetry.go

    - name: Replace token 2
      run: sed -i -e "s,placeholder_rudder_key,${{ secrets.RUDDER_DEV_KEY }},g" ${{ github.workspace }}/server/services/telemetry/telemetry.go

    - name: Add msbuild to PATH
      uses: microsoft/setup-msbuild@v1.0.2

    - name: npm install
      run: cd webapp; npm install --no-optional

    - name: Set up Go
      uses: actions/setup-go@v2
      with:
        go-version: 1.16

    - name: Setup Node
      uses: actions/setup-node@v2
      with:
        node-version: 16.1.0

    - name: Setup NuGet
      uses: nuget/setup-nuget@v1
      with:
        nuget-version: '5.x'

    - name: NuGet Restore
      run: nuget restore win-wpf\Focalboard.sln

    - name: Build Windows WPF app
      run: make win-wpf-app
      env:
        BUILD_NUMBER: ${{ github.run_id }}

    - name: Upload app package
      uses: actions/upload-artifact@v1
      with:
        name: focalboard.msix
        path: ${{ github.workspace }}/win-wpf/focalboard.msix
