backend: require confirmation for signed channel updates [CI]
This commit is contained in:
1 parent
7160de2a36
commit
84f9d211bc
62 files changed
+1717
-70
No files matched your search
@@ -21,6 +21,23 @@ export interface paths {
|
||||
patch?: never;
|
||||
trace?: never;
|
||||
};
|
||||
"/api/public/ipv6": {
|
||||
parameters: {
|
||||
query?: never;
|
||||
header?: never;
|
||||
path?: never;
|
||||
cookie?: never;
|
||||
};
|
||||
/** IPv6 configuration and collector diagnostics without addresses */
|
||||
get: operations["ipv6_get"];
|
||||
put?: never;
|
||||
post?: never;
|
||||
delete?: never;
|
||||
options?: never;
|
||||
head?: never;
|
||||
patch?: never;
|
||||
trace?: never;
|
||||
};
|
||||
"/api/public/lines/{line_id}": {
|
||||
parameters: {
|
||||
query?: never;
|
||||
@@ -851,6 +868,41 @@ export interface paths {
|
||||
patch?: never;
|
||||
trace?: never;
|
||||
};
|
||||
"/api/admin/backend/update": {
|
||||
parameters: {
|
||||
query?: never;
|
||||
header?: never;
|
||||
path?: never;
|
||||
cookie?: never;
|
||||
};
|
||||
/** Current channel and host-verified backend update */
|
||||
get: operations["backend_update_get"];
|
||||
put?: never;
|
||||
/** Confirm one verified backend release before the host restarts it */
|
||||
post: operations["backend_update_confirm"];
|
||||
delete?: never;
|
||||
options?: never;
|
||||
head?: never;
|
||||
patch?: never;
|
||||
trace?: never;
|
||||
};
|
||||
"/api/admin/backend/update/live": {
|
||||
parameters: {
|
||||
query?: never;
|
||||
header?: never;
|
||||
path?: never;
|
||||
cookie?: never;
|
||||
};
|
||||
/** Server-sent backend update notifications */
|
||||
get: operations["backend_update_live"];
|
||||
put?: never;
|
||||
post?: never;
|
||||
delete?: never;
|
||||
options?: never;
|
||||
head?: never;
|
||||
patch?: never;
|
||||
trace?: never;
|
||||
};
|
||||
"/api/admin/links": {
|
||||
parameters: {
|
||||
query?: never;
|
||||
@@ -1011,6 +1063,13 @@ export interface components {
|
||||
ipv6_host: string;
|
||||
/** @default false */
|
||||
ipv6_supported: boolean;
|
||||
ipv6?: null | components["schemas"]["Ipv6DiagnosticDto"];
|
||||
};
|
||||
AgentIpv6Dto: {
|
||||
agent_id: string;
|
||||
name: string;
|
||||
online: boolean;
|
||||
ipv6: components["schemas"]["Ipv6DiagnosticDto"];
|
||||
};
|
||||
AgentPatchRequest: {
|
||||
name: null | string;
|
||||
@@ -1030,6 +1089,15 @@ export interface components {
|
||||
/** Format: date-time */
|
||||
revoked_at: unknown;
|
||||
};
|
||||
BackendUpdateDto: {
|
||||
channel: string;
|
||||
enabled: boolean;
|
||||
state: string;
|
||||
current_tag: null | string;
|
||||
current_digest: null | string;
|
||||
available: null | components["schemas"]["ReleaseDto"];
|
||||
error: null | string;
|
||||
};
|
||||
BlocksDto: {
|
||||
transport: string;
|
||||
pacer: string;
|
||||
@@ -1046,6 +1114,7 @@ export interface components {
|
||||
BuildInfoDto: {
|
||||
backend: components["schemas"]["BuildDto"];
|
||||
nodes: components["schemas"]["NodeBuildDto"][];
|
||||
backend_update?: null | components["schemas"]["BackendUpdateDto"];
|
||||
};
|
||||
ChangePasswordRequest: {
|
||||
password: string;
|
||||
@@ -1074,6 +1143,10 @@ export interface components {
|
||||
[key: string]: null | number | string;
|
||||
};
|
||||
};
|
||||
ConfirmBackendUpdateRequest: {
|
||||
/** Format: int64 */
|
||||
seq: number | string;
|
||||
};
|
||||
ConnectedProbeDto: {
|
||||
probe_id: string;
|
||||
version: null | string;
|
||||
@@ -1253,6 +1326,18 @@ export interface components {
|
||||
macos: string;
|
||||
windows: string;
|
||||
};
|
||||
Ipv6DiagnosticDto: {
|
||||
address_configured: null | boolean;
|
||||
socket_supported: boolean;
|
||||
listening: null | boolean;
|
||||
has_global_address: null | boolean;
|
||||
has_default_route: null | boolean;
|
||||
state: string;
|
||||
/** @default unknown */
|
||||
network_scope: string;
|
||||
host_has_global_address?: null | boolean;
|
||||
host_has_default_route?: null | boolean;
|
||||
};
|
||||
JoinTokenDto: {
|
||||
id: string;
|
||||
note: null | string;
|
||||
@@ -1426,6 +1511,10 @@ export interface components {
|
||||
items: components["schemas"]["AgentDto"][];
|
||||
next_cursor: null | string;
|
||||
};
|
||||
PageDtoOfAgentIpv6Dto: {
|
||||
items: components["schemas"]["AgentIpv6Dto"][];
|
||||
next_cursor: null | string;
|
||||
};
|
||||
PageDtoOfApiTokenDto: {
|
||||
items: components["schemas"]["ApiTokenDto"][];
|
||||
next_cursor: null | string;
|
||||
@@ -1553,6 +1642,7 @@ export interface components {
|
||||
revoked: boolean;
|
||||
online: boolean;
|
||||
connections: components["schemas"]["ProbeConnectionDto"][];
|
||||
ipv6?: null | components["schemas"]["Ipv6DiagnosticDto"];
|
||||
};
|
||||
ProbeIdentityDto: {
|
||||
probe_id: string;
|
||||
@@ -1624,6 +1714,8 @@ export interface components {
|
||||
tag: string;
|
||||
version: string;
|
||||
digest: string;
|
||||
/** @default release */
|
||||
channel: string;
|
||||
};
|
||||
ScoreDto: {
|
||||
/** Format: double */
|
||||
@@ -1836,6 +1928,35 @@ export interface operations {
|
||||
};
|
||||
};
|
||||
};
|
||||
ipv6_get: {
|
||||
parameters: {
|
||||
query?: never;
|
||||
header?: never;
|
||||
path?: never;
|
||||
cookie?: never;
|
||||
};
|
||||
requestBody?: never;
|
||||
responses: {
|
||||
/** @description OK */
|
||||
200: {
|
||||
headers: {
|
||||
[name: string]: unknown;
|
||||
};
|
||||
content: {
|
||||
"application/json": components["schemas"]["PageDtoOfAgentIpv6Dto"];
|
||||
};
|
||||
};
|
||||
/** @description Forbidden */
|
||||
403: {
|
||||
headers: {
|
||||
[name: string]: unknown;
|
||||
};
|
||||
content: {
|
||||
"application/problem+json": components["schemas"]["ProblemDto"];
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
lines_get: {
|
||||
parameters: {
|
||||
query?: never;
|
||||
@@ -4834,6 +4955,140 @@ export interface operations {
|
||||
};
|
||||
};
|
||||
};
|
||||
backend_update_get: {
|
||||
parameters: {
|
||||
query?: never;
|
||||
header?: never;
|
||||
path?: never;
|
||||
cookie?: never;
|
||||
};
|
||||
requestBody?: never;
|
||||
responses: {
|
||||
/** @description OK */
|
||||
200: {
|
||||
headers: {
|
||||
[name: string]: unknown;
|
||||
};
|
||||
content: {
|
||||
"application/json": components["schemas"]["BackendUpdateDto"];
|
||||
};
|
||||
};
|
||||
/** @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_confirm: {
|
||||
parameters: {
|
||||
query?: never;
|
||||
header?: never;
|
||||
path?: never;
|
||||
cookie?: never;
|
||||
};
|
||||
requestBody: {
|
||||
content: {
|
||||
"application/json": components["schemas"]["ConfirmBackendUpdateRequest"];
|
||||
};
|
||||
};
|
||||
responses: {
|
||||
/** @description No Content */
|
||||
204: {
|
||||
headers: {
|
||||
[name: string]: unknown;
|
||||
};
|
||||
content: {
|
||||
"application/json": unknown;
|
||||
};
|
||||
};
|
||||
/** @description Bad Request */
|
||||
400: {
|
||||
headers: {
|
||||
[name: string]: unknown;
|
||||
};
|
||||
content: {
|
||||
"application/problem+json": components["schemas"]["ProblemDto"];
|
||||
};
|
||||
};
|
||||
/** @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"];
|
||||
};
|
||||
};
|
||||
/** @description Precondition Failed */
|
||||
412: {
|
||||
headers: {
|
||||
[name: string]: unknown;
|
||||
};
|
||||
content: {
|
||||
"application/problem+json": components["schemas"]["ProblemDto"];
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
backend_update_live: {
|
||||
parameters: {
|
||||
query?: never;
|
||||
header?: never;
|
||||
path?: never;
|
||||
cookie?: never;
|
||||
};
|
||||
requestBody?: never;
|
||||
responses: {
|
||||
/** @description OK */
|
||||
200: {
|
||||
headers: {
|
||||
[name: string]: unknown;
|
||||
};
|
||||
content?: never;
|
||||
};
|
||||
/** @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"];
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
links_list: {
|
||||
parameters: {
|
||||
query?: never;
|
||||
|
||||
@@ -7,6 +7,7 @@ type NarrowValue<V> = unknown extends V ? string : number extends V ? Exclude<V,
|
||||
type Narrow<T> = { [K in keyof T]: NarrowValue<T[K]> }
|
||||
|
||||
export type AgentDto = Narrow<S['AgentDto']>
|
||||
export type AgentIpv6Dto = Narrow<S['AgentIpv6Dto']>
|
||||
export type ConnectedProbeDto = Narrow<S['ConnectedProbeDto']>
|
||||
export type ProbeDto = Narrow<S['ProbeDto']>
|
||||
export type ProbeConnectionDto = Narrow<S['ProbeConnectionDto']>
|
||||
@@ -16,6 +17,7 @@ export type NodeInfoDto = Narrow<S['NodeInfoDto']>
|
||||
export type AboutDto = Narrow<S['AboutDto']>
|
||||
export type BuildDto = Narrow<S['BuildDto']>
|
||||
export type BuildInfoDto = Narrow<S['BuildInfoDto']>
|
||||
export type BackendUpdateDto = Narrow<S['BackendUpdateDto']>
|
||||
export type NodeBuildDto = Narrow<S['NodeBuildDto']>
|
||||
export type NodeUpdateDto = Narrow<S['NodeUpdateDto']>
|
||||
export type ReleaseDto = Narrow<S['ReleaseDto']>
|
||||
|
||||
Reference in new issue
Block a user