name: Dev-Release on: push: branches: [ main, release-** ] pull_request: branches: [ main, release-** ] workflow_dispatch: env: BRANCH_NAME: ${{ github.head_ref || github.ref_name }} EXCLUDE_ENTERPRISE: true jobs: ubuntu: runs-on: ubuntu-22.04 steps: - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 with: path: "focalboard" - name: Replace token 1 server run: sed -i -e "s,placeholder_rudder_dataplane_url,${{ secrets.RUDDER_DATAPLANE_URL }},g" ${{ github.workspace }}/focalboard/server/services/telemetry/telemetry.go - name: Replace token 2 server run: sed -i -e "s,placeholder_rudder_key,${{ secrets.RUDDER_DEV_KEY }},g" ${{ github.workspace }}/focalboard/server/services/telemetry/telemetry.go - name: npm ci run: cd focalboard/webapp; npm ci --no-optional - name: Set up Go uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 with: go-version: 1.21 - name: Setup Node uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 with: node-version: 20.11.0 - name: apt-get update run: sudo apt-get update - name: apt-get install -y libgtk-3-dev run: sudo apt-get install -y libgtk-3-dev - name: apt-get install -y libwebkit2gtk-4.0-dev run: sudo apt-get install -y libwebkit2gtk-4.0-dev - name: Build Linux server and app run: cd focalboard/; make server-linux-package linux-app env: BUILD_NUMBER: ${{ github.run_id }} - name: Upload server package uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 with: name: focalboard-server-linux-amd64.tar.gz path: ${{ github.workspace }}/focalboard/dist/focalboard-server-linux-amd64.tar.gz - name: Upload app package uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 with: name: focalboard-linux.tar.gz path: ${{ github.workspace }}/focalboard/linux/dist/focalboard-linux.tar.gz macos: runs-on: macos-15 steps: - name: Checkout uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 with: path: "focalboard" - name: Replace token 1 server run: sed -i -e "s,placeholder_rudder_dataplane_url,${{ secrets.RUDDER_DATAPLANE_URL }},g" ${{ github.workspace }}/focalboard/server/services/telemetry/telemetry.go - name: Replace token 2 server run: sed -i -e "s,placeholder_rudder_key,${{ secrets.RUDDER_DEV_KEY }},g" ${{ github.workspace }}/focalboard/server/services/telemetry/telemetry.go - name: npm ci run: cd focalboard/webapp; npm ci --no-optional - name: Set up Go uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 with: go-version: 1.21 - name: List Xcode versions run: ls -n /Applications/ | grep Xcode* - name: Build macOS run: cd focalboard; make mac-app env: DEVELOPER_DIR: /Applications/Xcode_16.0.app/Contents/Developer BUILD_NUMBER: ${{ github.run_id }} - name: Upload macOS package uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 with: name: focalboard-mac.zip path: ${{ github.workspace }}/focalboard/mac/dist/focalboard-mac.zip windows: runs-on: windows-2022 steps: - name: Checkout uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 with: path: "focalboard" - name: Replace token 1 server run: sed -i -e "s,placeholder_rudder_dataplane_url,${{ secrets.RUDDER_DATAPLANE_URL }},g" ${{ github.workspace }}/focalboard/server/services/telemetry/telemetry.go - name: Add msbuild to PATH uses: microsoft/setup-msbuild@v1.3 - name: npm ci run: cd focalboard/webapp; npm ci --no-optional - name: Set up Go uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 with: go-version: 1.21 - name: Setup NuGet uses: nuget/setup-nuget@323ab0502cd38fdc493335025a96c8fdb0edc71f with: nuget-version: '5.x' - name: NuGet Restore run: nuget restore focalboard\win-wpf\Focalboard.sln - name: Build Windows WPF app run: cd focalboard; make win-wpf-app env: BUILD_NUMBER: ${{ github.run_id }} - name: Upload app msix package uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 with: name: focalboard.msix path: ${{ github.workspace }}/focalboard/win-wpf/focalboard.msix - name: Upload app zip package uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 with: name: focalboard-win.zip path: ${{ github.workspace }}/focalboard/win-wpf/dist/focalboard-win.zip