@ninedeploy/schemas 0.16.3 → 0.16.5

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.
@@ -4,13 +4,16 @@ import { z } from 'zod';
4
4
  * appended in this order after the 0.15 list so the 0.15 prefix check holds.
5
5
  * The agent's `AGENT_CAPABILITIES` must end with exactly this list.
6
6
  */
7
- export declare const MULTI_NODE_CAPABILITIES: readonly ['stream', 'docker.runSpec', 'volume.manage', 'image.manage', 'build.nixpacks', 'build.railpack', 'git.sshkey', 'db.manage', 'swarm', 'docker.ports'];
7
+ export declare const MULTI_NODE_CAPABILITIES: readonly ['stream', 'docker.runSpec', 'volume.manage', 'image.manage', 'build.nixpacks', 'build.railpack', 'git.sshkey', 'db.manage', 'swarm', 'docker.ports', 'docker.userLabels', 'docker.healthCmd', 'docker.fileMounts'];
8
8
  export declare const multiNodeCapability: z.ZodEnum<{
9
9
  "build.nixpacks": "build.nixpacks";
10
10
  "build.railpack": "build.railpack";
11
11
  "db.manage": "db.manage";
12
+ "docker.fileMounts": "docker.fileMounts";
13
+ "docker.healthCmd": "docker.healthCmd";
12
14
  "docker.ports": "docker.ports";
13
15
  "docker.runSpec": "docker.runSpec";
16
+ "docker.userLabels": "docker.userLabels";
14
17
  "git.sshkey": "git.sshkey";
15
18
  "image.manage": "image.manage";
16
19
  stream: "stream";
@@ -133,6 +136,24 @@ export declare const servicePlacementView: z.ZodObject<{
133
136
  export type ServicePlacementView = z.infer<typeof servicePlacementView>;
134
137
  /** The build placement a stored value means: NULL is today's `target`. */
135
138
  export declare function effectiveBuildOn(value: BuildOn | null | undefined): BuildOn;
139
+ /**
140
+ * 0.16.5: where a service's image is built when its `build_on` is not chosen.
141
+ * NULL is `target` — except a node docker service built from a repository
142
+ * with Git LFS on: its LFS files are fetched into the panel's checkout (a
143
+ * node's own clone would hold pointer files), so it builds on the panel and
144
+ * the image is shipped to the node, as a fan-out target's already is. Such a
145
+ * deploy was refused before. A chosen placement is always kept.
146
+ */
147
+ export declare function serviceBuildOn(service: {
148
+ buildOn?: string | null;
149
+ gitLfs?: boolean | null;
150
+ serverId?: number | null;
151
+ type?: string | null;
152
+ repoUrl?: string | null;
153
+ image?: string | null;
154
+ }): BuildOn;
155
+ /** Whether {@link serviceBuildOn} moves this service's build to the panel for Git LFS. */
156
+ export declare function lfsBuildsOnPanel(service: Parameters<typeof serviceBuildOn>[0]): boolean;
136
157
  /** The orchestrator a stored value means: NULL is today's `container`. */
137
158
  export declare function effectiveOrchestrator(value: ServiceOrchestrator | null | undefined): ServiceOrchestrator;
138
159
  /** `PATCH /v1/servers/:id` (operator): the build-server role. */
@@ -1 +1 @@
1
- {"version":3,"file":"multiNode.d.ts","sourceRoot":"","sources":["../src/multiNode.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"multiNode.d.ts","sourceRoot":"","sources":["../src/multiNode.ts"],"names":[],"mappings":"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"}
package/dist/multiNode.js CHANGED
@@ -29,6 +29,11 @@ export const MULTI_NODE_CAPABILITIES = [
29
29
  'swarm',
30
30
  // 0.16.1: `docker.runSpec` takes `ports` (UDP, ranges, a host IP).
31
31
  'docker.ports',
32
+ // 0.16.4: `docker.runSpec` takes `userLabels` (custom labels) and `healthCmd` (the command healthcheck).
33
+ 'docker.userLabels',
34
+ 'docker.healthCmd',
35
+ // 0.16.5: `docker.runSpec` takes `fileMounts`, written by `file.writeMount`.
36
+ 'docker.fileMounts',
32
37
  ];
33
38
  export const multiNodeCapability = z.enum(MULTI_NODE_CAPABILITIES);
34
39
  /**
@@ -151,6 +156,28 @@ export const servicePlacementView = z.object({
151
156
  export function effectiveBuildOn(value) {
152
157
  return value ?? 'target';
153
158
  }
159
+ /**
160
+ * 0.16.5: where a service's image is built when its `build_on` is not chosen.
161
+ * NULL is `target` — except a node docker service built from a repository
162
+ * with Git LFS on: its LFS files are fetched into the panel's checkout (a
163
+ * node's own clone would hold pointer files), so it builds on the panel and
164
+ * the image is shipped to the node, as a fan-out target's already is. Such a
165
+ * deploy was refused before. A chosen placement is always kept.
166
+ */
167
+ export function serviceBuildOn(service) {
168
+ if (lfsBuildsOnPanel(service))
169
+ return 'panel';
170
+ return effectiveBuildOn((service.buildOn ?? null));
171
+ }
172
+ /** Whether {@link serviceBuildOn} moves this service's build to the panel for Git LFS. */
173
+ export function lfsBuildsOnPanel(service) {
174
+ return (service.buildOn == null &&
175
+ service.gitLfs === true &&
176
+ service.serverId != null &&
177
+ (service.type ?? 'docker') === 'docker' &&
178
+ !!service.repoUrl &&
179
+ !service.image);
180
+ }
154
181
  /** The orchestrator a stored value means: NULL is today's `container`. */
155
182
  export function effectiveOrchestrator(value) {
156
183
  return value ?? 'container';
@@ -1 +1 @@
1
- {"version":3,"file":"multiNode.js","sourceRoot":"","sources":["../src/multiNode.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"multiNode.js","sourceRoot":"","sources":["../src/multiNode.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"serviceFiles.d.ts","sourceRoot":"","sources":["../src/serviceFiles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB;;;;;GAKG;AAEH,yBAAyB;AACzB,eAAO,MAAM,iBAAiB,KAAK,CAAC;AACpC,8BAA8B;AAC9B,eAAO,MAAM,sBAAsB,QAAa,CAAC;AASjD,kDAAkD;AAClD,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAMlE;AAED,eAAO,MAAM,eAAe,aAG1B,CAAC;AAEH,yEAAyE;AACzE,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAO/C;AAED,0EAA0E;AAC1E,eAAO,MAAM,cAAc;;;iBAMzB,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAE5D,iFAAiF;AACjF,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;CACnB;AACD,MAAM,WAAW,WAAY,SAAQ,gBAAgB;IACnD,OAAO,EAAE,MAAM,CAAC;CACjB"}
1
+ {"version":3,"file":"serviceFiles.d.ts","sourceRoot":"","sources":["../src/serviceFiles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB;;;;;GAKG;AAEH,yBAAyB;AACzB,eAAO,MAAM,iBAAiB,KAAK,CAAC;AACpC,8BAA8B;AAC9B,eAAO,MAAM,sBAAsB,QAAa,CAAC;AASjD,kDAAkD;AAClD,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAQlE;AAED,eAAO,MAAM,eAAe,aAG1B,CAAC;AAEH,yEAAyE;AACzE,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAO/C;AAED,0EAA0E;AAC1E,eAAO,MAAM,cAAc;;;iBAMzB,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAE5D,iFAAiF;AACjF,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;CACnB;AACD,MAAM,WAAW,WAAY,SAAQ,gBAAgB;IACnD,OAAO,EAAE,MAAM,CAAC;CACjB"}
@@ -20,6 +20,9 @@ const RESERVED = ['/proc', '/sys', '/dev', '/etc/hosts', '/etc/hostname', '/etc/
20
20
  export function serviceFilePathProblem(path) {
21
21
  if (path === '/' || path.endsWith('/'))
22
22
  return 'must name a file, not a directory';
23
+ // 0.16.5: `docker run -v host:container:ro` splits on ':', so such a path never mounted.
24
+ if (path.includes(':'))
25
+ return 'must not contain ":"';
23
26
  for (const r of RESERVED) {
24
27
  if (path === r || path.startsWith(`${r}/`))
25
28
  return `${r} is managed by Docker and cannot be a file mount`;
@@ -1 +1 @@
1
- {"version":3,"file":"serviceFiles.js","sourceRoot":"","sources":["../src/serviceFiles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C;;;;;GAKG;AAEH,yBAAyB;AACzB,MAAM,CAAC,MAAM,iBAAiB,GAAG,EAAE,CAAC;AACpC,8BAA8B;AAC9B,MAAM,CAAC,MAAM,sBAAsB,GAAG,GAAG,GAAG,IAAI,CAAC;AAEjD;;;;GAIG;AACH,MAAM,QAAQ,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,eAAe,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,kBAAkB,CAAC,CAAC;AAE1I,kDAAkD;AAClD,MAAM,UAAU,sBAAsB,CAAC,IAAY;IACjD,IAAI,IAAI,KAAK,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,OAAO,mCAAmC,CAAC;IACnF,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;QACzB,IAAI,IAAI,KAAK,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,OAAO,GAAG,CAAC,kDAAkD,CAAC;IAC5G,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,CAAC,MAAM,eAAe,GAAG,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE;IAC3E,MAAM,OAAO,GAAG,sBAAsB,CAAC,CAAC,CAAC,CAAC;IAC1C,IAAI,OAAO;QAAE,GAAG,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;AAClE,CAAC,CAAC,CAAC;AAEH,yEAAyE;AACzE,MAAM,UAAU,UAAU,CAAC,IAAY;IACrC,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,KAAK,MAAM,EAAE,IAAI,IAAI,EAAE,CAAC;QACtB,MAAM,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,CAAC,CAAE,CAAC;QAC9B,KAAK,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACjE,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,0EAA0E;AAC1E,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC;IACrC,IAAI,EAAE,eAAe;IACrB,OAAO,EAAE,CAAC;SACP,MAAM,EAAE;SACR,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,sBAAsB,EAAE,WAAW,sBAAsB,GAAG,IAAI,MAAM,CAAC;SACtG,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,6BAA6B,CAAC;CACnE,CAAC,CAAC"}
1
+ {"version":3,"file":"serviceFiles.js","sourceRoot":"","sources":["../src/serviceFiles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C;;;;;GAKG;AAEH,yBAAyB;AACzB,MAAM,CAAC,MAAM,iBAAiB,GAAG,EAAE,CAAC;AACpC,8BAA8B;AAC9B,MAAM,CAAC,MAAM,sBAAsB,GAAG,GAAG,GAAG,IAAI,CAAC;AAEjD;;;;GAIG;AACH,MAAM,QAAQ,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,eAAe,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,kBAAkB,CAAC,CAAC;AAE1I,kDAAkD;AAClD,MAAM,UAAU,sBAAsB,CAAC,IAAY;IACjD,IAAI,IAAI,KAAK,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,OAAO,mCAAmC,CAAC;IACnF,yFAAyF;IACzF,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,OAAO,sBAAsB,CAAC;IACtD,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;QACzB,IAAI,IAAI,KAAK,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,OAAO,GAAG,CAAC,kDAAkD,CAAC;IAC5G,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,CAAC,MAAM,eAAe,GAAG,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE;IAC3E,MAAM,OAAO,GAAG,sBAAsB,CAAC,CAAC,CAAC,CAAC;IAC1C,IAAI,OAAO;QAAE,GAAG,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;AAClE,CAAC,CAAC,CAAC;AAEH,yEAAyE;AACzE,MAAM,UAAU,UAAU,CAAC,IAAY;IACrC,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,KAAK,MAAM,EAAE,IAAI,IAAI,EAAE,CAAC;QACtB,MAAM,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,CAAC,CAAE,CAAC;QAC9B,KAAK,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACjE,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,0EAA0E;AAC1E,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC;IACrC,IAAI,EAAE,eAAe;IACrB,OAAO,EAAE,CAAC;SACP,MAAM,EAAE;SACR,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,sBAAsB,EAAE,WAAW,sBAAsB,GAAG,IAAI,MAAM,CAAC;SACtG,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,6BAA6B,CAAC;CACnE,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ninedeploy/schemas",
3
- "version": "0.16.3",
3
+ "version": "0.16.5",
4
4
  "description": "Shared Zod schemas and validation types for NineDeploy",
5
5
  "license": "MIT",
6
6
  "repository": {
package/src/multiNode.ts CHANGED
@@ -32,6 +32,11 @@ export const MULTI_NODE_CAPABILITIES = [
32
32
  'swarm',
33
33
  // 0.16.1: `docker.runSpec` takes `ports` (UDP, ranges, a host IP).
34
34
  'docker.ports',
35
+ // 0.16.4: `docker.runSpec` takes `userLabels` (custom labels) and `healthCmd` (the command healthcheck).
36
+ 'docker.userLabels',
37
+ 'docker.healthCmd',
38
+ // 0.16.5: `docker.runSpec` takes `fileMounts`, written by `file.writeMount`.
39
+ 'docker.fileMounts',
35
40
  ] as const;
36
41
  export const multiNodeCapability = z.enum(MULTI_NODE_CAPABILITIES);
37
42
  export type MultiNodeCapability = z.infer<typeof multiNodeCapability>;
@@ -175,6 +180,38 @@ export function effectiveBuildOn(value: BuildOn | null | undefined): BuildOn {
175
180
  return value ?? 'target';
176
181
  }
177
182
 
183
+ /**
184
+ * 0.16.5: where a service's image is built when its `build_on` is not chosen.
185
+ * NULL is `target` — except a node docker service built from a repository
186
+ * with Git LFS on: its LFS files are fetched into the panel's checkout (a
187
+ * node's own clone would hold pointer files), so it builds on the panel and
188
+ * the image is shipped to the node, as a fan-out target's already is. Such a
189
+ * deploy was refused before. A chosen placement is always kept.
190
+ */
191
+ export function serviceBuildOn(service: {
192
+ buildOn?: string | null;
193
+ gitLfs?: boolean | null;
194
+ serverId?: number | null;
195
+ type?: string | null;
196
+ repoUrl?: string | null;
197
+ image?: string | null;
198
+ }): BuildOn {
199
+ if (lfsBuildsOnPanel(service)) return 'panel';
200
+ return effectiveBuildOn((service.buildOn ?? null) as BuildOn | null);
201
+ }
202
+
203
+ /** Whether {@link serviceBuildOn} moves this service's build to the panel for Git LFS. */
204
+ export function lfsBuildsOnPanel(service: Parameters<typeof serviceBuildOn>[0]): boolean {
205
+ return (
206
+ service.buildOn == null &&
207
+ service.gitLfs === true &&
208
+ service.serverId != null &&
209
+ (service.type ?? 'docker') === 'docker' &&
210
+ !!service.repoUrl &&
211
+ !service.image
212
+ );
213
+ }
214
+
178
215
  /** The orchestrator a stored value means: NULL is today's `container`. */
179
216
  export function effectiveOrchestrator(value: ServiceOrchestrator | null | undefined): ServiceOrchestrator {
180
217
  return value ?? 'container';
@@ -23,6 +23,8 @@ const RESERVED = ['/proc', '/sys', '/dev', '/etc/hosts', '/etc/hostname', '/etc/
23
23
  /** Why `path` cannot be a file mount, or null. */
24
24
  export function serviceFilePathProblem(path: string): string | null {
25
25
  if (path === '/' || path.endsWith('/')) return 'must name a file, not a directory';
26
+ // 0.16.5: `docker run -v host:container:ro` splits on ':', so such a path never mounted.
27
+ if (path.includes(':')) return 'must not contain ":"';
26
28
  for (const r of RESERVED) {
27
29
  if (path === r || path.startsWith(`${r}/`)) return `${r} is managed by Docker and cannot be a file mount`;
28
30
  }