diff --git a/.github/workflows/cross-platform-build-manual.yml b/.github/workflows/cross-platform-build-manual.yml index dcc1e0618..8ed1ce31c 100644 --- a/.github/workflows/cross-platform-build-manual.yml +++ b/.github/workflows/cross-platform-build-manual.yml @@ -11,8 +11,28 @@ env: CARGO_INCREMENTAL: 0 jobs: + web: + name: Build Web Dashboard + runs-on: ubuntu-latest + timeout-minutes: 10 + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 + with: + node-version: 22 + cache: npm + cache-dependency-path: web/package-lock.json + - name: Build web dashboard + run: cd web && npm ci && npm run build + - uses: actions/upload-artifact@v4 + with: + name: web-dist + path: web/dist/ + retention-days: 1 + build: name: Build ${{ matrix.target }} + needs: [web] runs-on: ${{ matrix.os }} timeout-minutes: 40 strategy: @@ -37,15 +57,10 @@ jobs: - uses: Swatinem/rust-cache@v2 if: runner.os != 'Windows' - - name: Set up Node.js - uses: actions/setup-node@v4 + - uses: actions/download-artifact@v4 with: - node-version: 22 - cache: npm - cache-dependency-path: web/package-lock.json - - - name: Build web dashboard - run: cd web && npm ci && npm run build + name: web-dist + path: web/dist/ - name: Install cross compiler if: matrix.cross_compiler diff --git a/.github/workflows/release-beta-on-push.yml b/.github/workflows/release-beta-on-push.yml index ff3561594..4fd18dce1 100644 --- a/.github/workflows/release-beta-on-push.yml +++ b/.github/workflows/release-beta-on-push.yml @@ -37,9 +37,28 @@ jobs: echo "tag=${beta_tag}" >> "$GITHUB_OUTPUT" echo "Beta release: ${beta_tag}" + web: + name: Build Web Dashboard + runs-on: ubuntu-latest + timeout-minutes: 10 + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 + with: + node-version: 22 + cache: npm + cache-dependency-path: web/package-lock.json + - name: Build web dashboard + run: cd web && npm ci && npm run build + - uses: actions/upload-artifact@v4 + with: + name: web-dist + path: web/dist/ + retention-days: 1 + build: name: Build ${{ matrix.target }} - needs: [version] + needs: [version, web] runs-on: ${{ matrix.os }} timeout-minutes: 40 strategy: @@ -74,15 +93,10 @@ jobs: - uses: Swatinem/rust-cache@v2 if: runner.os != 'Windows' - - name: Set up Node.js - uses: actions/setup-node@v4 + - uses: actions/download-artifact@v4 with: - node-version: 22 - cache: npm - cache-dependency-path: web/package-lock.json - - - name: Build web dashboard - run: cd web && npm ci && npm run build + name: web-dist + path: web/dist/ - name: Install cross compiler if: matrix.cross_compiler diff --git a/.github/workflows/release-stable-manual.yml b/.github/workflows/release-stable-manual.yml index 3b40db253..a54fb2f7b 100644 --- a/.github/workflows/release-stable-manual.yml +++ b/.github/workflows/release-stable-manual.yml @@ -55,9 +55,28 @@ jobs: echo "tag=${tag}" >> "$GITHUB_OUTPUT" + web: + name: Build Web Dashboard + runs-on: ubuntu-latest + timeout-minutes: 10 + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 + with: + node-version: 22 + cache: npm + cache-dependency-path: web/package-lock.json + - name: Build web dashboard + run: cd web && npm ci && npm run build + - uses: actions/upload-artifact@v4 + with: + name: web-dist + path: web/dist/ + retention-days: 1 + build: name: Build ${{ matrix.target }} - needs: [validate] + needs: [validate, web] runs-on: ${{ matrix.os }} timeout-minutes: 40 strategy: @@ -92,15 +111,10 @@ jobs: - uses: Swatinem/rust-cache@v2 if: runner.os != 'Windows' - - name: Set up Node.js - uses: actions/setup-node@v4 + - uses: actions/download-artifact@v4 with: - node-version: 22 - cache: npm - cache-dependency-path: web/package-lock.json - - - name: Build web dashboard - run: cd web && npm ci && npm run build + name: web-dist + path: web/dist/ - name: Install cross compiler if: matrix.cross_compiler