@junobuild/config 2.14.2 → 2.15.0

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.
@@ -53,6 +53,10 @@ export interface EmulatorSatellite {
53
53
  */
54
54
  ports?: EmulatorPorts;
55
55
  }
56
+ /**
57
+ * A non-empty hostname string.
58
+ */
59
+ export type Hostname = string;
56
60
  /**
57
61
  * Shared options for all runner variants.
58
62
  */
@@ -84,6 +88,25 @@ export interface EmulatorRunner {
84
88
  * The platform to use when running the emulator container.
85
89
  */
86
90
  platform?: 'linux/amd64' | 'linux/arm64';
91
+ /**
92
+ * Additional host-to-IP mappings to inject into the container via `--add-host`.
93
+ * Each entry is a `[hostname, destination]` tuple where destination is an IPv4
94
+ * address, an IPv6 address, `"host-gateway"`, or an arbitrary host string.
95
+ *
96
+ * This is useful for making host-machine services (e.g. a local Ethereum RPC
97
+ * node) reachable from within the container under a stable DNS name such as
98
+ * `host.docker.internal`.
99
+ *
100
+ * @example
101
+ * ```ts
102
+ * runner: {
103
+ * extraHosts: [['host.docker.internal', 'host-gateway']]
104
+ * }
105
+ * ```
106
+ *
107
+ * @see https://docs.docker.com/reference/cli/docker/container/run/#add-host
108
+ */
109
+ extraHosts?: [Hostname, string | 'host-gateway' | Hostname][];
87
110
  }
88
111
  /**
89
112
  * Network services that can be enabled in the emulator.
@@ -158,6 +181,7 @@ export declare const EmulatorConfigSchema: z.ZodUnion<readonly [z.ZodObject<{
158
181
  "linux/amd64": "linux/amd64";
159
182
  "linux/arm64": "linux/arm64";
160
183
  }>>;
184
+ extraHosts: z.ZodOptional<z.ZodArray<z.ZodTuple<[z.ZodString, z.ZodUnion<readonly [z.ZodIPv4, z.ZodIPv6, z.ZodLiteral<"host-gateway">, z.ZodString]>], null>>>;
161
185
  }, z.core.$strict>>;
162
186
  network: z.ZodOptional<z.ZodObject<{
163
187
  services: z.ZodObject<{
@@ -193,6 +217,7 @@ export declare const EmulatorConfigSchema: z.ZodUnion<readonly [z.ZodObject<{
193
217
  "linux/amd64": "linux/amd64";
194
218
  "linux/arm64": "linux/arm64";
195
219
  }>>;
220
+ extraHosts: z.ZodOptional<z.ZodArray<z.ZodTuple<[z.ZodString, z.ZodUnion<readonly [z.ZodIPv4, z.ZodIPv6, z.ZodLiteral<"host-gateway">, z.ZodString]>], null>>>;
196
221
  }, z.core.$strict>>;
197
222
  network: z.ZodOptional<z.ZodObject<{
198
223
  services: z.ZodObject<{
@@ -236,6 +261,7 @@ export declare const EmulatorConfigSchema: z.ZodUnion<readonly [z.ZodObject<{
236
261
  "linux/amd64": "linux/amd64";
237
262
  "linux/arm64": "linux/arm64";
238
263
  }>>;
264
+ extraHosts: z.ZodOptional<z.ZodArray<z.ZodTuple<[z.ZodString, z.ZodUnion<readonly [z.ZodIPv4, z.ZodIPv6, z.ZodLiteral<"host-gateway">, z.ZodString]>], null>>>;
239
265
  }, z.core.$strict>>;
240
266
  network: z.ZodOptional<z.ZodObject<{
241
267
  services: z.ZodObject<{
@@ -307,6 +307,7 @@ export declare const JunoConfigSchema: z.ZodObject<{
307
307
  "linux/amd64": "linux/amd64";
308
308
  "linux/arm64": "linux/arm64";
309
309
  }>>;
310
+ extraHosts: z.ZodOptional<z.ZodArray<z.ZodTuple<[z.ZodString, z.ZodUnion<readonly [z.ZodIPv4, z.ZodIPv6, z.ZodLiteral<"host-gateway">, z.ZodString]>], null>>>;
310
311
  }, z.core.$strict>>;
311
312
  network: z.ZodOptional<z.ZodObject<{
312
313
  services: z.ZodObject<{
@@ -342,6 +343,7 @@ export declare const JunoConfigSchema: z.ZodObject<{
342
343
  "linux/amd64": "linux/amd64";
343
344
  "linux/arm64": "linux/arm64";
344
345
  }>>;
346
+ extraHosts: z.ZodOptional<z.ZodArray<z.ZodTuple<[z.ZodString, z.ZodUnion<readonly [z.ZodIPv4, z.ZodIPv6, z.ZodLiteral<"host-gateway">, z.ZodString]>], null>>>;
345
347
  }, z.core.$strict>>;
346
348
  network: z.ZodOptional<z.ZodObject<{
347
349
  services: z.ZodObject<{
@@ -376,6 +378,7 @@ export declare const JunoConfigSchema: z.ZodObject<{
376
378
  "linux/amd64": "linux/amd64";
377
379
  "linux/arm64": "linux/arm64";
378
380
  }>>;
381
+ extraHosts: z.ZodOptional<z.ZodArray<z.ZodTuple<[z.ZodString, z.ZodUnion<readonly [z.ZodIPv4, z.ZodIPv6, z.ZodLiteral<"host-gateway">, z.ZodString]>], null>>>;
379
382
  }, z.core.$strict>>;
380
383
  network: z.ZodOptional<z.ZodObject<{
381
384
  services: z.ZodObject<{
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@junobuild/config",
3
- "version": "2.14.2",
3
+ "version": "2.15.0",
4
4
  "description": "Configuration options for Juno CLI",
5
5
  "author": "David Dal Busco (https://daviddalbusco.com)",
6
6
  "license": "MIT",