name: Build-Ubuntu

on: workflow_dispatch

jobs:

  ubuntu:
    runs-on: ubuntu-18.04

    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: 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: apt-get update
      run: sudo apt-get update

    - name: apt-get install libgtk-3-dev
      run: sudo apt-get install libgtk-3-dev

    - name: apt-get install libwebkit2gtk-4.0-dev
      run: sudo apt-get install libwebkit2gtk-4.0-dev

    - name: Build Linux server and app
      run: make server-linux-package linux-app
      env:
        BUILD_NUMBER: ${{ github.run_id }}

    - name: Upload server package
      uses: actions/upload-artifact@v1
      with:
        name: focalboard-server-linux-amd64.tar.gz
        path: ${{ github.workspace }}/dist/focalboard-server-linux-amd64.tar.gz

    - name: Upload app package
      uses: actions/upload-artifact@v1
      with:
        name: focalboard-linux.tar.gz
        path: ${{ github.workspace }}/linux/dist/focalboard-linux.tar.gz
