name: build client

on:
  workflow_dispatch:

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3
      - name: Use Node.js 18
        uses: actions/setup-node@v3
        with:
          node-version: 18.x
          cache: 'npm'
      - run: npm ci
      - name: pkg edge tunnel client
        run: npx nx run edge-bypass-client:pkg
      - name: copy config file
        run: cp dist/apps/edge-bypass-client/assets/config.json dist/pkg/edge-tunnel-client
      - name: linux arm64 package
        uses: actions/upload-artifact@v3
        with:
          name: edgetunnel-linux-arm64
          path: |
            dist/pkg/edge-tunnel-client/edgetunnel-linux-arm64
            dist/pkg/edge-tunnel-client/config.json
      - name: linux x64 package
        uses: actions/upload-artifact@v3
        with:
          name: edgetunnel-linux-x64
          path: |
            dist/pkg/edge-tunnel-client/edgetunnel-linux-x64
            dist/pkg/edge-tunnel-client/config.json
      - name: macos x64 package
        uses: actions/upload-artifact@v3
        with:
          name: edgetunnel-macos-x64
          path: |
            dist/pkg/edge-tunnel-client/edgetunnel-macos-x64
            dist/pkg/edge-tunnel-client/config.json
      - name: win x64 package
        uses: actions/upload-artifact@v3
        with:
          name: edgetunnel-win-x64
          path: |
            dist/pkg/edge-tunnel-client/edgetunnel-win-x64.exe
            dist/pkg/edge-tunnel-client/config.json
