lablup / lablup/backend.ai-webui

chore(WebUI Smoke CLI): SEA/pkg binary build and internal release workflow

Open
#7,386 0 comments 0 reactions 0 assignees View on GitHub
phase-2
Dominant language
TypeScript
Stars
133
Forks
81
Avg merge
1d 12h
Merged PRs (30d)
355

Description

## Parent

- Epic: [FR-2871](https://lablup.atlassian.net/browse/FR-2871)
- Spec Task: [FR-2872](https://lablup.atlassian.net/browse/FR-2872)
- Spec: `.specs/FR-2871-webui-smoke-cli/spec.md` § FR-H

## Goal

Produce platform binaries (linux-x64 / mac-arm64 / win-x64) of `bai-smoke` via Node SEA or `pkg`, package them with the bundled Chromium (FR-G) and tagged tests, and publish to internal artifact storage under the release tag `webui-vX.Y.Z+smoke.N`.

## Acceptance criteria

- [ ] Build scripts produce platform binaries: `bai-smoke-linux-x64`, `bai-smoke-mac-arm64`, `bai-smoke-win-x64.exe`.
- [ ] Bundled artifact is `.tar.gz` (linux/mac) or `.zip` (win) containing the binary + `browsers/` + `tests/` + `LICENSES.md` + `README.md`.
- [ ] Release publishes to **internal artifact storage only** (private GitHub Release with restricted access is acceptable). No public release.
- [ ] Release tag format: `webui-vX.Y.Z+smoke.N`.
- [ ] An engineer with no Node.js installed can extract the archive on each supported platform and run `./bai-smoke run …` successfully.

## In scope

- `packages/backend.ai-webui-smoke-cli/scripts/build-{linux,mac,win}.sh`
- `.github/workflows/webui-smoke-cli-release.yml`
- Release tooling, signing-skip workaround docs (deferred to README — FR-I)

## Out of scope

- macOS / Windows code signing (deferred per spec; README covers quarantine workaround)
- Public distribution

## Test plan

- A fresh VM with no Node.js extracts the linux archive and runs a smoke pass against staging.
- Same on macOS arm64 and Windows x64.

JIRA Issue: FR-2882

[FR-2871]: https://lablup.atlassian.net/browse/FR-2871?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ
[FR-2872]: https://lablup.atlassian.net/browse/FR-2872?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with .specs/FR-2871-webui-smoke-cli/spec.md § FR-H, then inspect the three packages/backend.ai-webui-smoke-cli/scripts/build-{linux,mac,win}.sh files and .github/workflows/webui-smoke-cli-release.yml. Validate against the fresh-VM test plan: each archive should run bai-smoke without Node.js installed, contain the listed files, and publish only under the specified release tag.

Written by the indexing model from the issue text.

Assessment

Tech stack
github-actions, node.js, shell
Domain
build-system, ci-cd, devops, release
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Clearly specified
Newbie friendliness
52/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.