@ninedeploy/sdk 0.18.4 → 0.18.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/resources/auth.d.ts +20 -1
- package/dist/resources/auth.d.ts.map +1 -1
- package/dist/resources/auth.js +9 -0
- package/dist/resources/auth.js.map +1 -1
- package/dist/resources/databases.d.ts +6 -1
- package/dist/resources/databases.d.ts.map +1 -1
- package/dist/resources/databases.js +4 -0
- package/dist/resources/databases.js.map +1 -1
- package/dist/resources/deploys.d.ts +34 -1
- package/dist/resources/deploys.d.ts.map +1 -1
- package/dist/resources/deploys.js +11 -0
- package/dist/resources/deploys.js.map +1 -1
- package/dist/resources/domains.d.ts +16 -1
- package/dist/resources/domains.d.ts.map +1 -1
- package/dist/resources/domains.js +9 -0
- package/dist/resources/domains.js.map +1 -1
- package/dist/resources/servers.d.ts +65 -1
- package/dist/resources/servers.d.ts.map +1 -1
- package/dist/resources/servers.js +35 -0
- package/dist/resources/servers.js.map +1 -1
- package/dist/resources/services.d.ts +78 -1
- package/dist/resources/services.d.ts.map +1 -1
- package/dist/resources/services.js +47 -0
- package/dist/resources/services.js.map +1 -1
- package/dist/resources/settings.d.ts +47 -2
- package/dist/resources/settings.d.ts.map +1 -1
- package/dist/resources/settings.js +6 -0
- package/dist/resources/settings.js.map +1 -1
- package/dist/resources/sources.d.ts +6 -1
- package/dist/resources/sources.d.ts.map +1 -1
- package/dist/resources/sources.js +5 -0
- package/dist/resources/sources.js.map +1 -1
- package/dist/resources/system.d.ts +30 -1
- package/dist/resources/system.d.ts.map +1 -1
- package/dist/resources/system.js +13 -0
- package/dist/resources/system.js.map +1 -1
- package/dist/resources/traefik.d.ts +9 -0
- package/dist/resources/traefik.d.ts.map +1 -1
- package/dist/resources/traefik.js +4 -0
- package/dist/resources/traefik.js.map +1 -1
- package/package.json +2 -2
- package/src/index.ts +2 -2
- package/src/resources/auth.ts +25 -0
- package/src/resources/databases.ts +11 -0
- package/src/resources/deploys.ts +37 -0
- package/src/resources/domains.ts +30 -0
- package/src/resources/servers.ts +102 -0
- package/src/resources/services.ts +138 -0
- package/src/resources/settings.ts +45 -1
- package/src/resources/sources.ts +12 -0
- package/src/resources/system.ts +41 -1
- package/src/resources/traefik.ts +9 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"system.d.ts","sourceRoot":"","sources":["../../src/resources/system.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,aAAa,EACb,SAAS,EACT,oBAAoB,EACpB,qBAAqB,EACrB,iBAAiB,EACjB,YAAY,EACZ,cAAc,EACd,eAAe,EACf,YAAY,EACZ,qBAAqB,EACrB,kBAAkB,EAClB,yBAAyB,EACzB,aAAa,EACb,aAAa,EACb,iBAAiB,EACjB,gBAAgB,EAChB,0BAA0B,EAC1B,eAAe,EACf,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,EAClB,wBAAwB,EACxB,iBAAiB,
|
|
1
|
+
{"version":3,"file":"system.d.ts","sourceRoot":"","sources":["../../src/resources/system.ts"],"names":[],"mappings":"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"}
|
package/dist/resources/system.js
CHANGED
|
@@ -1,6 +1,14 @@
|
|
|
1
1
|
export function systemApi(t) {
|
|
2
2
|
const { get, send, request } = t;
|
|
3
3
|
return {
|
|
4
|
+
gitops: {
|
|
5
|
+
get: () => get('/v1/gitops'),
|
|
6
|
+
configure: (input) => send('PUT', '/v1/gitops', input),
|
|
7
|
+
remove: () => send('DELETE', '/v1/gitops'),
|
|
8
|
+
check: () => send('POST', '/v1/gitops/check'),
|
|
9
|
+
apply: () => send('POST', '/v1/gitops/apply'),
|
|
10
|
+
export: () => get('/v1/gitops/export?format=json'),
|
|
11
|
+
},
|
|
4
12
|
system: {
|
|
5
13
|
resources: () => get('/v1/system/resources'),
|
|
6
14
|
pruneImages: () => send('POST', '/v1/system/prune-images'),
|
|
@@ -40,6 +48,11 @@ export function systemApi(t) {
|
|
|
40
48
|
},
|
|
41
49
|
metrics: (serviceId, opts) => get(`/v1/services/${serviceId}/metrics?kind=${opts?.kind ?? 'cpu'}&minutes=${opts?.minutes ?? 60}`),
|
|
42
50
|
},
|
|
51
|
+
usage: {
|
|
52
|
+
report: (opts) => get(`/v1/usage?days=${opts?.days ?? 30}`),
|
|
53
|
+
costs: () => get('/v1/usage/costs'),
|
|
54
|
+
setCosts: (input) => send('PUT', '/v1/usage/costs', input),
|
|
55
|
+
},
|
|
43
56
|
topology: {
|
|
44
57
|
get: () => get('/v1/topology'),
|
|
45
58
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"system.js","sourceRoot":"","sources":["../../src/resources/system.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"system.js","sourceRoot":"","sources":["../../src/resources/system.ts"],"names":[],"mappings":"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"}
|
|
@@ -87,6 +87,15 @@ export interface TraefikApi {
|
|
|
87
87
|
ok: boolean;
|
|
88
88
|
}>;
|
|
89
89
|
};
|
|
90
|
+
/** G5.7: give node proxies the panel's ACME certificates for the hosts they route (operator; off by default). */
|
|
91
|
+
sharedCertificates: {
|
|
92
|
+
get: () => Promise<{
|
|
93
|
+
enabled: boolean;
|
|
94
|
+
}>;
|
|
95
|
+
set: (enabled: boolean) => Promise<{
|
|
96
|
+
enabled: boolean;
|
|
97
|
+
}>;
|
|
98
|
+
};
|
|
90
99
|
};
|
|
91
100
|
}
|
|
92
101
|
export declare function traefikApi(t: Transport): TraefikApi;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"traefik.d.ts","sourceRoot":"","sources":["../../src/resources/traefik.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"traefik.d.ts","sourceRoot":"","sources":["../../src/resources/traefik.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,kBAAkB,EAClB,yBAAyB,EACzB,0BAA0B,EAC1B,WAAW,EACX,aAAa,EACb,mBAAmB,EACnB,0BAA0B,EAC1B,6BAA6B,EAC7B,iBAAiB,EACjB,wBAAwB,EACxB,sBAAsB,EACtB,uBAAuB,EACxB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAC5E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAEjD,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE;QACP,GAAG,EAAE,MAAM,OAAO,CAAC,WAAW,CAAC,CAAC;QAChC,MAAM,EAAE,MAAM,OAAO,CAAC,aAAa,CAAC,CAAC;QACrC,YAAY,EAAE,MAAM,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAAC;QAClD;;;;;;;;WAQG;QACH,oBAAoB,EAAE,CAAC,IAAI,CAAC,EAAE;YAAE,SAAS,CAAC,EAAE,MAAM,CAAA;SAAE,KAAK,OAAO,CAAC,0BAA0B,CAAC,CAAC;QAC7F;;;;WAIG;QACH,oBAAoB,EAAE,CAAC,IAAI,CAAC,EAAE;YAAE,IAAI,CAAC,EAAE,MAAM,CAAA;SAAE,KAAK,OAAO,CAAC;YAAE,SAAS,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAC;YAAC,YAAY,EAAE,yBAAyB,EAAE,CAAA;SAAE,CAAC,CAAC;QAC7I,IAAI,EAAE,CAAC,KAAK,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC;YAAE,IAAI,EAAE,MAAM,EAAE,CAAA;SAAE,CAAC,CAAC;QACtD,OAAO,EAAE,MAAM,OAAO,CAAC;YAAE,EAAE,EAAE,OAAO,CAAC;YAAC,OAAO,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;QAC1D,sEAAsE;QACtE,WAAW,EAAE,MAAM,OAAO,CAAC;YAAE,EAAE,EAAE,OAAO,CAAC;YAAC,UAAU,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;QAChE,sFAAsF;QACtF,MAAM,EAAE,MAAM,OAAO,CAAC,oBAAoB,CAAC,CAAC;QAC5C,+DAA+D;QAC/D,OAAO,EAAE,MAAM,OAAO,CAAC,kBAAkB,CAAC,CAAC;QAC3C;;;;WAIG;QACH,MAAM,EAAE,MAAM,OAAO,CAAC;YAAE,EAAE,EAAE,OAAO,CAAC;YAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;SAAE,CAAC,CAAC;QAClE;;;WAGG;QACH,sGAAsG;QACtG,KAAK,EAAE;YACL,GAAG,EAAE,MAAM,OAAO,CAAC;gBAAE,OAAO,EAAE,OAAO,CAAA;aAAE,CAAC,CAAC;YACzC,GAAG,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC;gBAAE,OAAO,EAAE,OAAO,CAAA;aAAE,CAAC,CAAC;SAC1D,CAAC;QACF,YAAY,EAAE;YACZ,GAAG,EAAE,MAAM,OAAO,CAAC,mBAAmB,CAAC,CAAC;YACxC,uBAAuB;YACvB,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,6BAA6B,CAAC,CAAC;YACtE,GAAG,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,0BAA0B,CAAC,CAAC;YAC9D,KAAK,EAAE,MAAM,OAAO,CAAC;gBAAE,EAAE,EAAE,OAAO,CAAC;gBAAC,OAAO,EAAE,OAAO,CAAA;aAAE,CAAC,CAAC;SACzD,CAAC;QACF,0FAA0F;QAC1F,kBAAkB,EAAE;YAClB,IAAI,EAAE,MAAM,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAAC;YACzC,MAAM,EAAE,CAAC,KAAK,EAAE,uBAAuB,KAAK,OAAO,CAAC,sBAAsB,CAAC,CAAC;YAC5E,OAAO,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,wBAAwB,KAAK,OAAO,CAAC,sBAAsB,CAAC,CAAC;YAC1F,MAAM,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC;gBAAE,EAAE,EAAE,OAAO,CAAA;aAAE,CAAC,CAAC;SAClD,CAAC;QACF,iHAAiH;QACjH,kBAAkB,EAAE;YAClB,GAAG,EAAE,MAAM,OAAO,CAAC;gBAAE,OAAO,EAAE,OAAO,CAAA;aAAE,CAAC,CAAC;YACzC,GAAG,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC;gBAAE,OAAO,EAAE,OAAO,CAAA;aAAE,CAAC,CAAC;SAC1D,CAAC;KACH,CAAC;CACH;AAED,wBAAgB,UAAU,CAAC,CAAC,EAAE,SAAS,GAAG,UAAU,CA+CnD"}
|
|
@@ -33,6 +33,10 @@ export function traefikApi(t) {
|
|
|
33
33
|
replace: (id, input) => send('PUT', `/v1/traefik/certificates/custom/${id}`, input),
|
|
34
34
|
delete: (id) => send('DELETE', `/v1/traefik/certificates/custom/${id}`),
|
|
35
35
|
},
|
|
36
|
+
sharedCertificates: {
|
|
37
|
+
get: () => get('/v1/traefik/certificates/shared'),
|
|
38
|
+
set: (enabled) => send('PUT', '/v1/traefik/certificates/shared', { enabled }),
|
|
39
|
+
},
|
|
36
40
|
},
|
|
37
41
|
};
|
|
38
42
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"traefik.js","sourceRoot":"","sources":["../../src/resources/traefik.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"traefik.js","sourceRoot":"","sources":["../../src/resources/traefik.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ninedeploy/sdk",
|
|
3
|
-
"version": "0.18.
|
|
3
|
+
"version": "0.18.11",
|
|
4
4
|
"description": "Official TypeScript SDK for NineDeploy PaaS",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
}
|
|
26
26
|
},
|
|
27
27
|
"dependencies": {
|
|
28
|
-
"@ninedeploy/schemas": "0.18.
|
|
28
|
+
"@ninedeploy/schemas": "0.18.11",
|
|
29
29
|
"js-yaml": "^4.3.1"
|
|
30
30
|
},
|
|
31
31
|
"devDependencies": {
|
package/src/index.ts
CHANGED
|
@@ -116,7 +116,7 @@ export type {
|
|
|
116
116
|
|
|
117
117
|
export { createClient } from './client.js';
|
|
118
118
|
export type { NineDeployClient } from './client.js';
|
|
119
|
-
export type { AutoUrlMode, AutoUrlEffective, AutoUrlSettings, OnboardingStatus, OnboardingStepId } from './resources/settings.js';
|
|
120
|
-
export type { SourceUpload } from './resources/services.js';
|
|
119
|
+
export type { AutoUrlMode, AutoUrlEffective, AutoUrlSettings, OnboardingStatus, OnboardingStepId, DnsCredentialProviderName, DnsProviderSettings } from './resources/settings.js';
|
|
120
|
+
export type { RegistryHookView, SourceUpload } from './resources/services.js';
|
|
121
121
|
export type { HostIpEntry } from './resources/network.js';
|
|
122
122
|
export type { MonitorCheckNowResult } from './resources/uptime.js';
|
package/src/resources/auth.ts
CHANGED
|
@@ -37,6 +37,9 @@ import type {
|
|
|
37
37
|
AccessGrantUpdate,
|
|
38
38
|
AccessMe,
|
|
39
39
|
ProjectAccessEntry,
|
|
40
|
+
TwoFactorRequirementView,
|
|
41
|
+
WorkspaceTwoFactorInput,
|
|
42
|
+
WorkspaceTwoFactorView,
|
|
40
43
|
} from '@ninedeploy/schemas';
|
|
41
44
|
import { apiGetUrl } from '../apiPath.js';
|
|
42
45
|
import type { TokenIntrospection } from '../types.js';
|
|
@@ -85,6 +88,8 @@ export interface AuthApi {
|
|
|
85
88
|
status: () => Promise<{ totpEnabled: boolean; remaining: number }>;
|
|
86
89
|
regenerate: (input: { code: string; password?: string }) => Promise<{ recoveryCodes: string[] }>;
|
|
87
90
|
};
|
|
91
|
+
/** G1.4: what the workspace 2FA policies ask of this session (403 `two_factor_required` elsewhere until enrolled). */
|
|
92
|
+
requirement: () => Promise<TwoFactorRequirementView>;
|
|
88
93
|
};
|
|
89
94
|
me: () => Promise<PublicUser>;
|
|
90
95
|
tokens: {
|
|
@@ -113,6 +118,12 @@ export interface AuthApi {
|
|
|
113
118
|
list: () => Promise<ActiveSession[]>;
|
|
114
119
|
revoke: (id: number) => Promise<{ ok: boolean }>;
|
|
115
120
|
};
|
|
121
|
+
/** G3.6: SAML providers for the sign-in page; start each `authUrl` like an OIDC one. */
|
|
122
|
+
saml: {
|
|
123
|
+
publicProviders: () => Promise<Array<{ id: number; name: string; authUrl: string }>>;
|
|
124
|
+
/** Link a SAML identity to the signed-in account: open the answer's `authUrl`. */
|
|
125
|
+
link: (id: number) => Promise<{ authUrl: string }>;
|
|
126
|
+
};
|
|
116
127
|
oidc: {
|
|
117
128
|
publicProviders: () => Promise<OidcPublicProvider[]>;
|
|
118
129
|
link: (slug: string) => Promise<{ authUrl: string }>;
|
|
@@ -133,6 +144,11 @@ export interface AuthApi {
|
|
|
133
144
|
create: (input: WorkspaceCreateInput) => Promise<WorkspaceEntry>;
|
|
134
145
|
update: (id: number, input: WorkspaceUpdateInput) => Promise<WorkspaceEntry>;
|
|
135
146
|
delete: (id: number) => Promise<{ ok: boolean }>;
|
|
147
|
+
/** G1.4: require TOTP or a passkey of every member (admins and owners). */
|
|
148
|
+
twoFactor: {
|
|
149
|
+
get: (id: number) => Promise<WorkspaceTwoFactorView>;
|
|
150
|
+
set: (id: number, input: WorkspaceTwoFactorInput) => Promise<WorkspaceTwoFactorView>;
|
|
151
|
+
};
|
|
136
152
|
/**
|
|
137
153
|
* Add a member by email. r604: only an instance operator gets a direct
|
|
138
154
|
* add (a `WorkspaceMemberEntry`) for a registered address; for everyone
|
|
@@ -253,6 +269,7 @@ export function authApi(t: Transport): AuthApi {
|
|
|
253
269
|
status: () => get<{ totpEnabled: boolean; remaining: number }>('/v1/auth/2fa/recovery-codes'),
|
|
254
270
|
regenerate: (input) => send<{ recoveryCodes: string[] }>('POST', '/v1/auth/2fa/recovery-codes', input),
|
|
255
271
|
},
|
|
272
|
+
requirement: () => get<TwoFactorRequirementView>('/v1/auth/2fa/requirement'),
|
|
256
273
|
},
|
|
257
274
|
me: () => get<PublicUser>('/v1/auth/me'),
|
|
258
275
|
tokens: {
|
|
@@ -283,6 +300,10 @@ export function authApi(t: Transport): AuthApi {
|
|
|
283
300
|
list: () => get<ActiveSession[]>('/v1/auth/sessions'),
|
|
284
301
|
revoke: (id) => send<{ ok: boolean }>('DELETE', `/v1/auth/sessions/${id}`),
|
|
285
302
|
},
|
|
303
|
+
saml: {
|
|
304
|
+
publicProviders: () => get<Array<{ id: number; name: string; authUrl: string }>>('/v1/auth/saml/providers/public'),
|
|
305
|
+
link: (id) => send<{ authUrl: string }>('POST', `/v1/auth/saml/${id}/link`, {}),
|
|
306
|
+
},
|
|
286
307
|
oidc: {
|
|
287
308
|
publicProviders: () => get<OidcPublicProvider[]>('/v1/auth/oidc/providers/public'),
|
|
288
309
|
link: (slug) => request<{ authUrl: string }>(`/v1/auth/oidc/${encodeURIComponent(slug)}/link`, { method: 'POST', credentials: 'include' }),
|
|
@@ -302,6 +323,10 @@ export function authApi(t: Transport): AuthApi {
|
|
|
302
323
|
get: (id) => get<WorkspaceDetail>(`/v1/workspaces/${id}`),
|
|
303
324
|
create: (input) => send<WorkspaceEntry>('POST', '/v1/workspaces', input),
|
|
304
325
|
update: (id, input) => send<WorkspaceEntry>('PATCH', `/v1/workspaces/${id}`, input),
|
|
326
|
+
twoFactor: {
|
|
327
|
+
get: (id) => get<WorkspaceTwoFactorView>(`/v1/workspaces/${id}/two-factor`),
|
|
328
|
+
set: (id, input) => send<WorkspaceTwoFactorView>('PUT', `/v1/workspaces/${id}/two-factor`, input),
|
|
329
|
+
},
|
|
305
330
|
delete: (id) => send<{ ok: boolean }>('DELETE', `/v1/workspaces/${id}`),
|
|
306
331
|
addMember: (id, input) =>
|
|
307
332
|
send<WorkspaceMemberEntry | WorkspaceMemberInviteEntry>('POST', `/v1/workspaces/${id}/members`, input),
|
|
@@ -16,6 +16,8 @@ import type {
|
|
|
16
16
|
DatabaseImport,
|
|
17
17
|
DatabaseImportCreate,
|
|
18
18
|
BackupDestinationObject,
|
|
19
|
+
BackupReplica,
|
|
20
|
+
BackupReplicasView,
|
|
19
21
|
} from '@ninedeploy/schemas';
|
|
20
22
|
import type { ImportWaitOptions, ImportFileData, ImportFileOptions } from '../databaseImport.js';
|
|
21
23
|
import type { BackupDrillResult, BackupDrillEntry, PgbouncerStatus, DatabaseCredentialsWithPublic } from '../types.js';
|
|
@@ -115,6 +117,11 @@ export interface DatabasesApi {
|
|
|
115
117
|
getPolicy: (databaseId: number) => Promise<BackupPolicy>;
|
|
116
118
|
/** 0.12: save (replace) the database's backup schedule, retention and destination. */
|
|
117
119
|
setPolicy: (databaseId: number, input: BackupPolicyInput) => Promise<BackupPolicy>;
|
|
120
|
+
/** G3.3: more destinations for the scheduled dumps, each with its own retention (operators set them). */
|
|
121
|
+
replicas: {
|
|
122
|
+
get: (databaseId: number) => Promise<BackupReplicasView>;
|
|
123
|
+
set: (databaseId: number, replicas: BackupReplica[]) => Promise<BackupReplicasView>;
|
|
124
|
+
};
|
|
118
125
|
};
|
|
119
126
|
backupDestinations: {
|
|
120
127
|
list: () => Promise<Array<{ id: number; name: string; endpoint: string; region: string; bucket: string; prefix: string; active: boolean; createdAt: string }>>;
|
|
@@ -201,6 +208,10 @@ export function databasesApi(t: Transport): DatabasesApi {
|
|
|
201
208
|
downloadUrl: (backupId) => `/v1/backups/${backupId}/download`,
|
|
202
209
|
getPolicy: (databaseId) => get<BackupPolicy>(`/v1/databases/${databaseId}/backup-policy`),
|
|
203
210
|
setPolicy: (databaseId, input) => send<BackupPolicy>('PUT', `/v1/databases/${databaseId}/backup-policy`, input),
|
|
211
|
+
replicas: {
|
|
212
|
+
get: (databaseId) => get<BackupReplicasView>(`/v1/databases/${databaseId}/backup-replicas`),
|
|
213
|
+
set: (databaseId, replicas) => send<BackupReplicasView>('PUT', `/v1/databases/${databaseId}/backup-replicas`, { replicas }),
|
|
214
|
+
},
|
|
204
215
|
},
|
|
205
216
|
backupDestinations: {
|
|
206
217
|
list: () => get('/v1/backup-destinations'),
|
package/src/resources/deploys.ts
CHANGED
|
@@ -17,6 +17,11 @@ import type {
|
|
|
17
17
|
TriggerDeploy,
|
|
18
18
|
Webhook,
|
|
19
19
|
ImageTransfer,
|
|
20
|
+
DeployFreeze,
|
|
21
|
+
DeployFreezeCreate,
|
|
22
|
+
ImageScanPolicy,
|
|
23
|
+
ImageScanPolicyPatch,
|
|
24
|
+
ImageScanResult,
|
|
20
25
|
} from '@ninedeploy/schemas';
|
|
21
26
|
import type { JobKind, ScheduledJob, JobRun } from '../types.js';
|
|
22
27
|
import type { Transport } from '../transport.js';
|
|
@@ -144,11 +149,43 @@ export interface DeploysApi {
|
|
|
144
149
|
*/
|
|
145
150
|
analyzeLogs: (serviceId: number, input?: { tail?: number }) => Promise<RuntimeLogAnalysis>;
|
|
146
151
|
};
|
|
152
|
+
/**
|
|
153
|
+
* G5.5 deploy freezes (operator only). A freeze holds every deploy of the
|
|
154
|
+
* instance, a workspace, a project or an environment in the queue until it
|
|
155
|
+
* ends (`until`) or is lifted; held deploys then start.
|
|
156
|
+
*/
|
|
157
|
+
deployFreezes: {
|
|
158
|
+
list: () => Promise<DeployFreeze[]>;
|
|
159
|
+
create: (input: DeployFreezeCreate) => Promise<DeployFreeze>;
|
|
160
|
+
lift: (id: string) => Promise<DeployFreeze>;
|
|
161
|
+
};
|
|
162
|
+
/**
|
|
163
|
+
* G5.1 image vulnerability scanning (Trivy on the panel host). The policy is
|
|
164
|
+
* operator only; a service's latest scan is readable by its viewers, and
|
|
165
|
+
* `scan` (service admin) starts a scan of what runs now in the background.
|
|
166
|
+
*/
|
|
167
|
+
imageScans: {
|
|
168
|
+
policy: () => Promise<{ policy: ImageScanPolicy; trivyImage: string }>;
|
|
169
|
+
setPolicy: (patch: ImageScanPolicyPatch) => Promise<{ policy: ImageScanPolicy; trivyImage: string }>;
|
|
170
|
+
get: (serviceId: number) => Promise<{ result: ImageScanResult | null; scanning: boolean }>;
|
|
171
|
+
scan: (serviceId: number) => Promise<{ started: true; imageId: string | null }>;
|
|
172
|
+
};
|
|
147
173
|
}
|
|
148
174
|
|
|
149
175
|
export function deploysApi(t: Transport): DeploysApi {
|
|
150
176
|
const { get, send, request } = t;
|
|
151
177
|
return {
|
|
178
|
+
imageScans: {
|
|
179
|
+
policy: () => get<{ policy: ImageScanPolicy; trivyImage: string }>('/v1/image-scanning'),
|
|
180
|
+
setPolicy: (patch) => send<{ policy: ImageScanPolicy; trivyImage: string }>('PUT', '/v1/image-scanning', patch),
|
|
181
|
+
get: (serviceId) => get<{ result: ImageScanResult | null; scanning: boolean }>(`/v1/services/${serviceId}/image-scan`),
|
|
182
|
+
scan: (serviceId) => send<{ started: true; imageId: string | null }>('POST', `/v1/services/${serviceId}/image-scan`),
|
|
183
|
+
},
|
|
184
|
+
deployFreezes: {
|
|
185
|
+
list: () => get<DeployFreeze[]>('/v1/deploy-freezes'),
|
|
186
|
+
create: (input) => send<DeployFreeze>('POST', '/v1/deploy-freezes', input),
|
|
187
|
+
lift: (id) => send<DeployFreeze>('DELETE', `/v1/deploy-freezes/${encodeURIComponent(id)}`),
|
|
188
|
+
},
|
|
152
189
|
deploys: {
|
|
153
190
|
trigger: (serviceId, input) =>
|
|
154
191
|
send<{ deploymentId: number; alreadyInProgress?: boolean }>('POST', `/v1/services/${serviceId}/deploys`, input ?? {}),
|
package/src/resources/domains.ts
CHANGED
|
@@ -2,6 +2,12 @@
|
|
|
2
2
|
// Split out of the former single-file SDK entry (src/index.ts); the public
|
|
3
3
|
// surface is re-exported unchanged from there.
|
|
4
4
|
import type {
|
|
5
|
+
ComposeRoute,
|
|
6
|
+
ComposeRouteView,
|
|
7
|
+
ForwardAuthConfig,
|
|
8
|
+
ForwardAuthGrant,
|
|
9
|
+
ForwardAuthGrantInput,
|
|
10
|
+
ForwardAuthView,
|
|
5
11
|
CreateDomainInput,
|
|
6
12
|
Domain,
|
|
7
13
|
DomainPatch,
|
|
@@ -12,6 +18,21 @@ import type { Transport } from '../transport.js';
|
|
|
12
18
|
|
|
13
19
|
export interface DomainsApi {
|
|
14
20
|
domains: {
|
|
21
|
+
/**
|
|
22
|
+
* G2.3: panel sign-in in front of a domain. `set(id, null)` takes it off;
|
|
23
|
+
* `grant` is what the panel's /forward-auth page calls to send a signed-in
|
|
24
|
+
* user back to the protected domain.
|
|
25
|
+
*/
|
|
26
|
+
forwardAuth: {
|
|
27
|
+
get: (domainId: number) => Promise<ForwardAuthView>;
|
|
28
|
+
set: (domainId: number, forwardAuth: Partial<ForwardAuthConfig> | null) => Promise<ForwardAuthView>;
|
|
29
|
+
grant: (input: ForwardAuthGrantInput) => Promise<ForwardAuthGrant>;
|
|
30
|
+
};
|
|
31
|
+
/** G2.1: route a compose stack's domain to another service of the stack (null for the main service). */
|
|
32
|
+
composeRoute: {
|
|
33
|
+
get: (domainId: number) => Promise<ComposeRouteView>;
|
|
34
|
+
set: (domainId: number, route: ComposeRoute | null) => Promise<ComposeRouteView>;
|
|
35
|
+
};
|
|
15
36
|
list: (serviceId: number) => Promise<Domain[]>;
|
|
16
37
|
/** Add a domain. A non-operator's hostname outside the instance zone comes back `pending` with a TXT `verification` challenge. */
|
|
17
38
|
create: (serviceId: number, input: CreateDomainInput) => Promise<CreatedDomain>;
|
|
@@ -100,6 +121,15 @@ export function domainsApi(t: Transport): DomainsApi {
|
|
|
100
121
|
const { get, send, request } = t;
|
|
101
122
|
return {
|
|
102
123
|
domains: {
|
|
124
|
+
forwardAuth: {
|
|
125
|
+
get: (domainId) => get<ForwardAuthView>(`/v1/domains/${domainId}/forward-auth`),
|
|
126
|
+
set: (domainId, forwardAuth) => send<ForwardAuthView>('PUT', `/v1/domains/${domainId}/forward-auth`, { forwardAuth }),
|
|
127
|
+
grant: (input) => send<ForwardAuthGrant>('POST', '/v1/forward-auth/grant', input),
|
|
128
|
+
},
|
|
129
|
+
composeRoute: {
|
|
130
|
+
get: (domainId) => get<ComposeRouteView>(`/v1/domains/${domainId}/compose-route`),
|
|
131
|
+
set: (domainId, route) => send<ComposeRouteView>('PUT', `/v1/domains/${domainId}/compose-route`, { route }),
|
|
132
|
+
},
|
|
103
133
|
list: (serviceId) => get<Domain[]>(`/v1/services/${serviceId}/domains`),
|
|
104
134
|
create: (serviceId, input) => send<CreatedDomain>('POST', `/v1/services/${serviceId}/domains`, input),
|
|
105
135
|
verify: (serviceId, domainId) =>
|
package/src/resources/servers.ts
CHANGED
|
@@ -10,12 +10,25 @@ import type {
|
|
|
10
10
|
SwarmInitInput,
|
|
11
11
|
SwarmSettingsInput,
|
|
12
12
|
SwarmStatus,
|
|
13
|
+
OsUpdateStatus,
|
|
14
|
+
CloudServer,
|
|
15
|
+
DigitalOceanOptions,
|
|
16
|
+
DigitalOceanServerCreate,
|
|
17
|
+
DigitalOceanStatus,
|
|
18
|
+
HetznerOptions,
|
|
19
|
+
HetznerServerCreate,
|
|
20
|
+
HetznerStatus,
|
|
21
|
+
VultrOptions,
|
|
22
|
+
VultrServerCreate,
|
|
23
|
+
VultrStatus,
|
|
13
24
|
} from '@ninedeploy/schemas';
|
|
14
25
|
import type { ServerListEntry, ServerRolesResult, SwarmJoinResult, SwarmLeaveResult } from '../types.js';
|
|
15
26
|
import type { Transport } from '../transport.js';
|
|
16
27
|
|
|
17
28
|
/** Long Swarm calls: a leave drains for up to 5 minutes; init and join run Docker on two hosts. */
|
|
18
29
|
const SWARM_CALL_TIMEOUT_MS = 10 * 60_000;
|
|
30
|
+
/** G4.2: a refresh or an install of unattended-upgrades / dnf-automatic can take minutes. */
|
|
31
|
+
const OS_UPDATE_CALL_TIMEOUT_MS = 18 * 60_000;
|
|
19
32
|
|
|
20
33
|
export interface ServersApi {
|
|
21
34
|
servers: {
|
|
@@ -69,6 +82,50 @@ export interface ServersApi {
|
|
|
69
82
|
/** Enable (step-up; 409 `swarm_not_manager`) or disable Swarm deploys. */
|
|
70
83
|
settings: (input: SwarmSettingsInput) => Promise<SwarmStatus>;
|
|
71
84
|
};
|
|
85
|
+
/**
|
|
86
|
+
* G4.2 OS security updates (operator only). `serverId` null is the panel
|
|
87
|
+
* host. `refresh` refreshes the package lists first. Nothing here reboots.
|
|
88
|
+
*/
|
|
89
|
+
osUpdates: {
|
|
90
|
+
get: (serverId: number | null, options?: { refresh?: boolean }) => Promise<OsUpdateStatus>;
|
|
91
|
+
/** Turn automatic security updates on or off; answers the status read afterwards. */
|
|
92
|
+
setAuto: (serverId: number | null, enabled: boolean) => Promise<OsUpdateStatus>;
|
|
93
|
+
};
|
|
94
|
+
/**
|
|
95
|
+
* G4.3 cloud servers (operator only). The Hetzner Cloud token is write-only;
|
|
96
|
+
* a created server bootstraps the agent itself and turns online when it answers.
|
|
97
|
+
*/
|
|
98
|
+
cloud: {
|
|
99
|
+
digitalocean: {
|
|
100
|
+
status: () => Promise<DigitalOceanStatus>;
|
|
101
|
+
setToken: (token: string) => Promise<DigitalOceanStatus>;
|
|
102
|
+
deleteToken: () => Promise<DigitalOceanStatus>;
|
|
103
|
+
options: () => Promise<DigitalOceanOptions>;
|
|
104
|
+
servers: () => Promise<CloudServer[]>;
|
|
105
|
+
createServer: (input: DigitalOceanServerCreate) => Promise<{ serverId: number; providerServerId: number; ipv4: string }>;
|
|
106
|
+
deleteServer: (serverId: number) => Promise<{ ok: boolean }>;
|
|
107
|
+
};
|
|
108
|
+
hetzner: {
|
|
109
|
+
status: () => Promise<HetznerStatus>;
|
|
110
|
+
setToken: (token: string) => Promise<HetznerStatus>;
|
|
111
|
+
deleteToken: () => Promise<HetznerStatus>;
|
|
112
|
+
options: () => Promise<HetznerOptions>;
|
|
113
|
+
servers: () => Promise<CloudServer[]>;
|
|
114
|
+
createServer: (input: HetznerServerCreate) => Promise<{ serverId: number; providerServerId: number; ipv4: string }>;
|
|
115
|
+
/** Delete the VM and its node (409 while the node hosts anything). */
|
|
116
|
+
deleteServer: (serverId: number) => Promise<{ ok: boolean }>;
|
|
117
|
+
};
|
|
118
|
+
vultr: {
|
|
119
|
+
status: () => Promise<VultrStatus>;
|
|
120
|
+
setToken: (token: string) => Promise<VultrStatus>;
|
|
121
|
+
deleteToken: () => Promise<VultrStatus>;
|
|
122
|
+
options: () => Promise<VultrOptions>;
|
|
123
|
+
servers: () => Promise<CloudServer[]>;
|
|
124
|
+
/** Vultr names its instances by UUID. */
|
|
125
|
+
createServer: (input: VultrServerCreate) => Promise<{ serverId: number; providerServerId: string; ipv4: string }>;
|
|
126
|
+
deleteServer: (serverId: number) => Promise<{ ok: boolean }>;
|
|
127
|
+
};
|
|
128
|
+
};
|
|
72
129
|
orchestrators: {
|
|
73
130
|
/** Every `IOrchestrator` the running kernel has registered. G-10 PR-A. */
|
|
74
131
|
list: () => Promise<{
|
|
@@ -122,6 +179,51 @@ export function serversApi(t: Transport): ServersApi {
|
|
|
122
179
|
init: (input) => request<SwarmStatus>('/v1/swarm/init', { method: 'POST', body: input }, SWARM_CALL_TIMEOUT_MS),
|
|
123
180
|
settings: (input) => send<SwarmStatus>('PUT', '/v1/swarm/settings', input),
|
|
124
181
|
},
|
|
182
|
+
osUpdates: {
|
|
183
|
+
get: (serverId, options) =>
|
|
184
|
+
request<OsUpdateStatus>(
|
|
185
|
+
`${serverId == null ? '/v1/os-updates' : `/v1/servers/${serverId}/os-updates`}${options?.refresh ? '?refresh=1' : ''}`,
|
|
186
|
+
{ method: 'GET' },
|
|
187
|
+
OS_UPDATE_CALL_TIMEOUT_MS,
|
|
188
|
+
),
|
|
189
|
+
setAuto: (serverId, enabled) =>
|
|
190
|
+
request<OsUpdateStatus>(
|
|
191
|
+
serverId == null ? '/v1/os-updates/auto' : `/v1/servers/${serverId}/os-updates/auto`,
|
|
192
|
+
{ method: 'POST', body: { enabled } },
|
|
193
|
+
OS_UPDATE_CALL_TIMEOUT_MS,
|
|
194
|
+
),
|
|
195
|
+
},
|
|
196
|
+
cloud: {
|
|
197
|
+
digitalocean: {
|
|
198
|
+
status: () => get<DigitalOceanStatus>('/v1/cloud/digitalocean'),
|
|
199
|
+
setToken: (token) => send<DigitalOceanStatus>('PUT', '/v1/cloud/digitalocean/token', { token }),
|
|
200
|
+
deleteToken: () => send<DigitalOceanStatus>('DELETE', '/v1/cloud/digitalocean/token'),
|
|
201
|
+
options: () => get<DigitalOceanOptions>('/v1/cloud/digitalocean/options'),
|
|
202
|
+
servers: () => get<CloudServer[]>('/v1/cloud/digitalocean/servers'),
|
|
203
|
+
createServer: (input) =>
|
|
204
|
+
send<{ serverId: number; providerServerId: number; ipv4: string }>('POST', '/v1/cloud/digitalocean/servers', input),
|
|
205
|
+
deleteServer: (serverId) => send<{ ok: boolean }>('DELETE', `/v1/cloud/digitalocean/servers/${serverId}`),
|
|
206
|
+
},
|
|
207
|
+
hetzner: {
|
|
208
|
+
status: () => get<HetznerStatus>('/v1/cloud/hetzner'),
|
|
209
|
+
setToken: (token) => send<HetznerStatus>('PUT', '/v1/cloud/hetzner/token', { token }),
|
|
210
|
+
deleteToken: () => send<HetznerStatus>('DELETE', '/v1/cloud/hetzner/token'),
|
|
211
|
+
options: () => get<HetznerOptions>('/v1/cloud/hetzner/options'),
|
|
212
|
+
servers: () => get<CloudServer[]>('/v1/cloud/hetzner/servers'),
|
|
213
|
+
createServer: (input) =>
|
|
214
|
+
send<{ serverId: number; providerServerId: number; ipv4: string }>('POST', '/v1/cloud/hetzner/servers', input),
|
|
215
|
+
deleteServer: (serverId) => send<{ ok: boolean }>('DELETE', `/v1/cloud/hetzner/servers/${serverId}`),
|
|
216
|
+
},
|
|
217
|
+
vultr: {
|
|
218
|
+
status: () => get<VultrStatus>('/v1/cloud/vultr'),
|
|
219
|
+
setToken: (token) => send<VultrStatus>('PUT', '/v1/cloud/vultr/token', { token }),
|
|
220
|
+
deleteToken: () => send<VultrStatus>('DELETE', '/v1/cloud/vultr/token'),
|
|
221
|
+
options: () => get<VultrOptions>('/v1/cloud/vultr/options'),
|
|
222
|
+
servers: () => get<CloudServer[]>('/v1/cloud/vultr/servers'),
|
|
223
|
+
createServer: (input) => send<{ serverId: number; providerServerId: string; ipv4: string }>('POST', '/v1/cloud/vultr/servers', input),
|
|
224
|
+
deleteServer: (serverId) => send<{ ok: boolean }>('DELETE', `/v1/cloud/vultr/servers/${serverId}`),
|
|
225
|
+
},
|
|
226
|
+
},
|
|
125
227
|
orchestrators: {
|
|
126
228
|
list: () => get<{
|
|
127
229
|
orchestrators: Array<{ name: string; stacks: Array<{ name: string; serviceCount: number }> }>;
|