void }) {
- if (!binary) return 未绑定
- const short = binary.sha256.slice(0, 10)
- return (
-
- {binary.violation ? 不符 : {binary.signed ? '已签名' : '首次绑定'}}
- {short}
- {binary.violation ? (
-
- ) : null}
-
- )
-}
-
function UpdateCell({ update, busy, onUpdate }: { update?: NodeUpdateDto | null; busy: boolean; onUpdate: () => void }) {
if (!update) return —
const s = UPDATE_STATE[update.state] ?? { text: update.state, tone: '' as const }
@@ -310,7 +290,6 @@ function Versions() {
| 构建时间 |
系统 |
更新 |
- 二进制 |
属主 |
@@ -333,9 +312,6 @@ function Versions() {
requestUpdate([n.id])} />
|
-
- void run(async () => { await api.del(`/api/admin/nodes/${n.id}/binary`); info.reload() }, '已清除绑定,节点下一次连接时重新绑定')} />
- |
|
diff --git a/web/shared/api/schema.ts b/web/shared/api/schema.ts
index 4102822..edb3947 100644
--- a/web/shared/api/schema.ts
+++ b/web/shared/api/schema.ts
@@ -389,7 +389,7 @@ export interface paths {
/** The latest signed release manifest of each component */
get: operations["releases_list"];
put?: never;
- /** Register a CI-signed release manifest; online nodes get it right away (their updaters verify the signature). Admin or release tokens */
+ /** Register a CI-signed release manifest (the signature is checked against the release key); online nodes get it right away. Admin or release tokens */
post: operations["releases_publish"];
delete?: never;
options?: never;
@@ -1006,23 +1006,6 @@ export interface paths {
patch?: never;
trace?: never;
};
- "/api/admin/nodes/{id}/binary": {
- parameters: {
- query?: never;
- header?: never;
- path?: never;
- cookie?: never;
- };
- get?: never;
- put?: never;
- post?: never;
- /** Accept the node's current binary: clear its binding so the next handshake binds it again */
- delete: operations["nodes_binary_clear"];
- options?: never;
- head?: never;
- patch?: never;
- trace?: never;
- };
"/api/admin/backend/update": {
parameters: {
query?: never;
@@ -1715,17 +1698,6 @@ export interface components {
version: number | string;
needs: string[];
};
- NodeBinaryDto: {
- sha256: string;
- signed: boolean;
- /** Format: int64 */
- seq: number | string;
- /** Format: date-time */
- bound_at: unknown;
- violation: null | string;
- /** Format: date-time */
- violation_at: unknown;
- };
NodeBuildDto: {
id: string;
kind: string;
@@ -1737,7 +1709,6 @@ export interface components {
commit: null | string;
built_at: null | string;
update?: null | components["schemas"]["NodeUpdateDto"];
- binary?: null | components["schemas"]["NodeBinaryDto"];
owners?: null | components["schemas"]["NodeOwnerDto"][];
};
NodeInfoDto: {
@@ -5736,46 +5707,6 @@ export interface operations {
};
};
};
- nodes_binary_clear: {
- parameters: {
- query?: never;
- header?: never;
- path: {
- id: string;
- };
- cookie?: never;
- };
- requestBody?: never;
- responses: {
- /** @description No Content */
- 204: {
- headers: {
- [name: string]: unknown;
- };
- content: {
- "application/json": unknown;
- };
- };
- /** @description Unauthorized */
- 401: {
- headers: {
- [name: string]: unknown;
- };
- content: {
- "application/problem+json": components["schemas"]["ProblemDto"];
- };
- };
- /** @description Forbidden */
- 403: {
- headers: {
- [name: string]: unknown;
- };
- content: {
- "application/problem+json": components["schemas"]["ProblemDto"];
- };
- };
- };
- };
backend_update_get: {
parameters: {
query?: never;
diff --git a/web/shared/api/types.ts b/web/shared/api/types.ts
index 618df03..1448d77 100644
--- a/web/shared/api/types.ts
+++ b/web/shared/api/types.ts
@@ -19,7 +19,6 @@ export type BuildInfoDto = Narrow
export type BackendUpdateDto = Narrow
export type NodeBuildDto = Narrow
export type NodeUpdateDto = Narrow
-export type NodeBinaryDto = Narrow
export type NodeOwnerDto = Narrow
export type ReleaseDto = Narrow
export type LinkDto = Narrow