Merge pull request #2556 from pikasTech/feat/2552-hwpod-experience-v2
Pipelines as Code CI / hwlab-nc01-v03-ci-poll- Success
Pipelines as Code CI / hwlab-nc01-v03-ci-poll- Success
fix(web): 完成 HWPOD 设备与节点体验收口
This commit is contained in:
@@ -61,7 +61,7 @@ const formatSize = (value: number): string =>
|
||||
v-if="metadata?.artifact.downloadUrl"
|
||||
class="download-button"
|
||||
:href="metadata.artifact.downloadUrl"
|
||||
download="hwlab-node.py"
|
||||
:download="metadata.artifact.fileName"
|
||||
>下载 Python 单文件</a>
|
||||
<p v-else class="download-blocked">发布 artifact 当前不可用。</p>
|
||||
|
||||
@@ -92,11 +92,10 @@ const formatSize = (value: number): string =>
|
||||
<ol class="install-steps">
|
||||
<li>
|
||||
<strong>下载并固定文件</strong>
|
||||
<p>将单文件保存到用户可写目录,不要从浏览器临时目录长期运行。</p>
|
||||
<p>将单文件保存到 owning YAML 允许的用户可写目录,不要从浏览器临时目录长期运行。</p>
|
||||
<details>
|
||||
<summary>查看文件建议</summary>
|
||||
<code>mkdir C:\HWLAB</code>
|
||||
<code>move .\{{ metadata?.artifact.fileName || "hwlab-node.py" }} C:\HWLAB\hwlab-node.py</code>
|
||||
<summary>查看配置边界</summary>
|
||||
<span>实际运行目录、交互用户和工作区根由 owning YAML 与受控节点配置拥有,网页不猜测目标路径。</span>
|
||||
</details>
|
||||
</li>
|
||||
<li>
|
||||
@@ -104,16 +103,16 @@ const formatSize = (value: number): string =>
|
||||
<p>将本机结果与页面上方发布 SHA 完整比对,不一致时停止运行并重新下载。</p>
|
||||
<details>
|
||||
<summary>查看 PowerShell 命令</summary>
|
||||
<code>Get-FileHash C:\HWLAB\hwlab-node.py -Algorithm SHA256</code>
|
||||
<code>Get-FileHash .\{{ metadata?.artifact.fileName || "hwlab-node.py" }} -Algorithm SHA256</code>
|
||||
</details>
|
||||
</li>
|
||||
<li>
|
||||
<strong>在交互用户会话启动</strong>
|
||||
<p>使用本机 Python 3 启动图形节点,保持窗口或托盘程序运行。</p>
|
||||
<p>使用 owning YAML 选择的 Windows 交互用户与原生 Python 启动图形节点,保持窗口或托盘程序运行。</p>
|
||||
<details>
|
||||
<summary>查看启动命令</summary>
|
||||
<code>py -3 C:\HWLAB\hwlab-node.py</code>
|
||||
<code>python C:\HWLAB\hwlab-node.py</code>
|
||||
<code>python .\{{ metadata?.artifact.fileName || "hwlab-node.py" }}</code>
|
||||
<span>在已选定的安装目录中执行;不得使用 WSL Python、SSH 辅助解释器、Bun 运行器或非交互 Windows 服务。</span>
|
||||
</details>
|
||||
</li>
|
||||
<li>
|
||||
|
||||
@@ -17,6 +17,7 @@ defineProps<{ stages: HwpodNodeReadinessStage[] }>();
|
||||
<strong>{{ stage.label }}</strong>
|
||||
<small>{{ stage.authority }}</small>
|
||||
<p v-if="stage.blocker">{{ stage.blocker.summary }}</p>
|
||||
<p v-if="stage.nextAction" class="stage-action"><strong>下一步</strong>{{ stage.nextAction.label }}</p>
|
||||
</div>
|
||||
<span class="stage-status">{{ stage.status === 'ready' ? '已就绪' : stage.status === 'blocked' ? '阻塞' : '待观测' }}</span>
|
||||
</li>
|
||||
@@ -33,6 +34,8 @@ li[data-status="blocked"] .stage-index { border-color: #b46b4b; background: #fff
|
||||
.readiness-rail strong { display: block; color: #1d302c; font-size: .86rem; }
|
||||
.readiness-rail small { color: #71807b; font: .67rem/1.4 ui-monospace, SFMono-Regular, Consolas, monospace; }
|
||||
.readiness-rail p { margin: 4px 0 0; color: #79503b; font-size: .75rem; line-height: 1.4; }
|
||||
.stage-action { display: grid; gap: 2px; color: #31564d !important; }
|
||||
.stage-action strong { font-size: .7rem; }
|
||||
.stage-status { margin-top: 4px; color: #5e6f69; font-size: .7rem; font-weight: 800; }
|
||||
li[data-status="ready"] .stage-status { color: #2c7567; }
|
||||
li[data-status="blocked"] .stage-status { color: #9b4f2d; }
|
||||
|
||||
Reference in New Issue
Block a user