@kadi.build/deploy-ability 0.0.7 → 0.0.8

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.
Files changed (38) hide show
  1. package/.env-example +72 -0
  2. package/README.md +240 -0
  3. package/dist/targets/akash/deployer.d.ts +64 -3
  4. package/dist/targets/akash/deployer.d.ts.map +1 -1
  5. package/dist/targets/akash/deployer.js +158 -4
  6. package/dist/targets/akash/deployer.js.map +1 -1
  7. package/dist/targets/akash/index.d.ts +86 -2
  8. package/dist/targets/akash/index.d.ts.map +1 -1
  9. package/dist/targets/akash/index.js +49 -2
  10. package/dist/targets/akash/index.js.map +1 -1
  11. package/dist/targets/akash/secrets-provider.d.ts +189 -0
  12. package/dist/targets/akash/secrets-provider.d.ts.map +1 -0
  13. package/dist/targets/akash/secrets-provider.js +249 -0
  14. package/dist/targets/akash/secrets-provider.js.map +1 -0
  15. package/dist/targets/akash/types.d.ts +96 -0
  16. package/dist/targets/akash/types.d.ts.map +1 -1
  17. package/dist/targets/akash/wallet-manager.d.ts +21 -3
  18. package/dist/targets/akash/wallet-manager.d.ts.map +1 -1
  19. package/dist/targets/akash/wallet-manager.js +137 -8
  20. package/dist/targets/akash/wallet-manager.js.map +1 -1
  21. package/dist/types/index.d.ts +1 -1
  22. package/dist/types/index.d.ts.map +1 -1
  23. package/dist/types/index.js.map +1 -1
  24. package/dist/types/options.d.ts +74 -0
  25. package/dist/types/options.d.ts.map +1 -1
  26. package/dist/utils/registry/manager.d.ts +10 -9
  27. package/dist/utils/registry/manager.d.ts.map +1 -1
  28. package/dist/utils/registry/manager.js +28 -18
  29. package/dist/utils/registry/manager.js.map +1 -1
  30. package/dist/utils/registry/setup.d.ts +2 -2
  31. package/dist/utils/registry/setup.d.ts.map +1 -1
  32. package/dist/utils/registry/setup.js +7 -5
  33. package/dist/utils/registry/setup.js.map +1 -1
  34. package/dist/utils/registry/transformer.d.ts +1 -1
  35. package/dist/utils/registry/transformer.js +1 -1
  36. package/dist/utils/registry/types.d.ts +36 -12
  37. package/dist/utils/registry/types.d.ts.map +1 -1
  38. package/package.json +3 -2
@@ -41,7 +41,7 @@ export interface RegistryContext {
41
41
  * Local images have been replaced with public registry URLs.
42
42
  * For example:
43
43
  * - Original: `{ image: "my-app" }`
44
- * - Deployable: `{ image: "abc123.serveo.net/my-app:latest", credentials: {...} }`
44
+ * - Deployable: `{ image: "abc123.tunnel.kadi.build/my-app:latest", credentials: {...} }`
45
45
  *
46
46
  * If no local images were detected, this will be the same as the original profile.
47
47
  */
@@ -92,13 +92,14 @@ export interface RegistryOptions {
92
92
  * The temporary registry runs on localhost and needs to be exposed publicly
93
93
  * so Akash providers can pull images. Choose a tunnel service:
94
94
  *
95
+ * - **kadi**: KĀDI native FRP-based tunnel (recommended, auto-fallback to serveo)
95
96
  * - **ngrok**: Reliable, requires auth token for extended sessions
96
- * - **serveo**: Free, no signup, but less reliable
97
- * - **bore**: Modern alternative, requires bore.pub service
97
+ * - **serveo**: Free SSH-based tunnel, no signup required
98
+ * - **localtunnel**: Open-source alternative
98
99
  *
99
- * @default 'serveo'
100
+ * @default 'kadi'
100
101
  */
101
- tunnelService?: 'ngrok' | 'serveo' | 'bore';
102
+ tunnelService?: 'kadi' | 'ngrok' | 'serveo' | 'localtunnel';
102
103
  /**
103
104
  * How long to keep registry running before auto-shutdown (milliseconds)
104
105
  *
@@ -121,9 +122,10 @@ export interface RegistryOptions {
121
122
  /**
122
123
  * Authentication token for tunnel service
123
124
  *
124
- * Required for ngrok. Optional for other services depending on their features.
125
+ * Required for ngrok. Used by kadi tunnel for FRP authentication.
126
+ * Optional for other services depending on their features.
125
127
  *
126
- * **Environment variable:** Can also be set via NGROK_AUTH_TOKEN
128
+ * **Environment variable:** Can also be set via KADI_TUNNEL_TOKEN or NGROK_AUTH_TOKEN
127
129
  *
128
130
  * @default undefined
129
131
  */
@@ -133,7 +135,7 @@ export interface RegistryOptions {
133
135
  *
134
136
  * For ngrok: 'us', 'eu', 'ap', 'au', 'sa', 'jp', 'in'
135
137
  *
136
- * **Environment variable:** Can also be set via NGROK_REGION
138
+ * **Environment variable:** Can also be set via TUNNEL_REGION or NGROK_REGION
137
139
  *
138
140
  * @default undefined (uses tunnel service default)
139
141
  */
@@ -158,6 +160,28 @@ export interface RegistryOptions {
158
160
  * @default 3000
159
161
  */
160
162
  port?: number;
163
+ /**
164
+ * Tunnel transport protocol
165
+ *
166
+ * Controls how frpc connects to the KĀDI tunnel broker:
167
+ * - **wss**: WebSocket Secure on port 443 (default, works on all networks)
168
+ * - **tcp**: Direct TCP on port 7000 (legacy, may be blocked by firewalls)
169
+ *
170
+ * **Environment variable:** KADI_TUNNEL_TRANSPORT
171
+ *
172
+ * @default 'wss'
173
+ */
174
+ tunnelTransport?: 'wss' | 'tcp';
175
+ /**
176
+ * WSS control host for KĀDI tunnel
177
+ *
178
+ * The hostname used for the WebSocket Secure control channel.
179
+ *
180
+ * **Environment variable:** KADI_TUNNEL_WSS_HOST
181
+ *
182
+ * @default undefined (uses env var or upstream default)
183
+ */
184
+ tunnelWssHost?: string;
161
185
  }
162
186
  /**
163
187
  * Container mapping that tracks original image to registry URL transformation
@@ -170,7 +194,7 @@ export interface ContainerMapping {
170
194
  originalImage: string;
171
195
  /** Service name from profile (e.g., "frontend", "api") */
172
196
  serviceName: string;
173
- /** Full registry URL with credentials host (e.g., "temp-registry.serveo.net/my-app:latest") */
197
+ /** Full registry URL with credentials host (e.g., "temp-registry.tunnel.kadi.build/my-app:latest") */
174
198
  registryUrl: string;
175
199
  /** Repository name extracted from image (e.g., "my-app") */
176
200
  repoName: string;
@@ -186,7 +210,7 @@ export interface ContainerMapping {
186
210
  * These are automatically added to the SDL services section.
187
211
  */
188
212
  export interface RegistryCredentials {
189
- /** Registry host without protocol (e.g., "abc123.serveo.net") */
213
+ /** Registry host without protocol (e.g., "abc123.tunnel.kadi.build") */
190
214
  host: string;
191
215
  /** Username for registry authentication */
192
216
  username: string;
@@ -223,9 +247,9 @@ export interface RegistryUrls {
223
247
  localUrl: string;
224
248
  /** Local domain without protocol (e.g., "localhost:3000") */
225
249
  localDomain: string;
226
- /** Tunnel URL with protocol (e.g., "https://abc123.serveo.net") or null */
250
+ /** Tunnel URL with protocol (e.g., "https://abc123.tunnel.kadi.build") or null */
227
251
  tunnelUrl: string | null;
228
- /** Tunnel domain without protocol (e.g., "abc123.serveo.net") or null */
252
+ /** Tunnel domain without protocol (e.g., "abc123.tunnel.kadi.build") or null */
229
253
  tunnelDomain: string | null;
230
254
  }
231
255
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/utils/registry/types.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AAEtE;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAM,WAAW,eAAe;IAC9B;;;;;;;;;OASG;IACH,QAAQ,CAAC,iBAAiB,EAAE,sBAAsB,CAAC;IAEnD;;;;;;;;;;OAUG;IACH,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9B;AAED;;;;GAIG;AACH,MAAM,WAAW,eAAe;IAC9B;;;;;;;;;;;OAWG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAE5B;;;;;;OAMG;IACH,eAAe,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAC;IAEtC;;;;;;;;;;;OAWG;IACH,aAAa,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,MAAM,CAAC;IAE5C;;;;;;;OAOG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B;;;;;;;;OAQG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB;;;;;;;;OAQG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB;;;;;;;;OAQG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAElC;;;;;;OAMG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;;;;GAKG;AACH,MAAM,WAAW,gBAAgB;IAC/B,8EAA8E;IAC9E,aAAa,EAAE,MAAM,CAAC;IAEtB,0DAA0D;IAC1D,WAAW,EAAE,MAAM,CAAC;IAEpB,+FAA+F;IAC/F,WAAW,EAAE,MAAM,CAAC;IAEpB,4DAA4D;IAC5D,QAAQ,EAAE,MAAM,CAAC;IAEjB,2CAA2C;IAC3C,QAAQ,EAAE,MAAM,CAAC;IAEjB,wDAAwD;IACxD,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;;;;GAKG;AACH,MAAM,WAAW,mBAAmB;IAClC,iEAAiE;IACjE,IAAI,EAAE,MAAM,CAAC;IAEb,2CAA2C;IAC3C,QAAQ,EAAE,MAAM,CAAC;IAEjB,2CAA2C;IAC3C,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;;;GAIG;AACH,MAAM,WAAW,YAAY;IAC3B,sEAAsE;IACtE,GAAG,EAAE,MAAM,CAAC;IAEZ,kEAAkE;IAClE,QAAQ,EAAE,MAAM,CAAC;IAEjB,mDAAmD;IACnD,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,kEAAkE;IAClE,WAAW,CAAC,EAAE;QACZ,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;CACH;AAED;;;;GAIG;AACH,MAAM,WAAW,YAAY;IAC3B,8DAA8D;IAC9D,QAAQ,EAAE,MAAM,CAAC;IAEjB,6DAA6D;IAC7D,WAAW,EAAE,MAAM,CAAC;IAEpB,2EAA2E;IAC3E,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAEzB,yEAAyE;IACzE,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B;AAED;;;;;GAKG;AACH,MAAM,WAAW,aAAa;IAC5B,sEAAsE;IACtE,KAAK,EAAE,MAAM,CAAC;CACf"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/utils/registry/types.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AAEtE;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAM,WAAW,eAAe;IAC9B;;;;;;;;;OASG;IACH,QAAQ,CAAC,iBAAiB,EAAE,sBAAsB,CAAC;IAEnD;;;;;;;;;;OAUG;IACH,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9B;AAED;;;;GAIG;AACH,MAAM,WAAW,eAAe;IAC9B;;;;;;;;;;;OAWG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAE5B;;;;;;OAMG;IACH,eAAe,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAC;IAEtC;;;;;;;;;;;;OAYG;IACH,aAAa,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,aAAa,CAAC;IAE5D;;;;;;;OAOG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B;;;;;;;;OAQG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB;;;;;;;;;OASG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB;;;;;;;;OAQG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAElC;;;;;;OAMG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;;;;;;;;;OAUG;IACH,eAAe,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC;IAEhC;;;;;;;;OAQG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;;;;GAKG;AACH,MAAM,WAAW,gBAAgB;IAC/B,8EAA8E;IAC9E,aAAa,EAAE,MAAM,CAAC;IAEtB,0DAA0D;IAC1D,WAAW,EAAE,MAAM,CAAC;IAEpB,sGAAsG;IACtG,WAAW,EAAE,MAAM,CAAC;IAEpB,4DAA4D;IAC5D,QAAQ,EAAE,MAAM,CAAC;IAEjB,2CAA2C;IAC3C,QAAQ,EAAE,MAAM,CAAC;IAEjB,wDAAwD;IACxD,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;;;;GAKG;AACH,MAAM,WAAW,mBAAmB;IAClC,wEAAwE;IACxE,IAAI,EAAE,MAAM,CAAC;IAEb,2CAA2C;IAC3C,QAAQ,EAAE,MAAM,CAAC;IAEjB,2CAA2C;IAC3C,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;;;GAIG;AACH,MAAM,WAAW,YAAY;IAC3B,sEAAsE;IACtE,GAAG,EAAE,MAAM,CAAC;IAEZ,kEAAkE;IAClE,QAAQ,EAAE,MAAM,CAAC;IAEjB,mDAAmD;IACnD,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,kEAAkE;IAClE,WAAW,CAAC,EAAE;QACZ,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;CACH;AAED;;;;GAIG;AACH,MAAM,WAAW,YAAY;IAC3B,8DAA8D;IAC9D,QAAQ,EAAE,MAAM,CAAC;IAEjB,6DAA6D;IAC7D,WAAW,EAAE,MAAM,CAAC;IAEpB,kFAAkF;IAClF,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAEzB,gFAAgF;IAChF,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B;AAED;;;;;GAKG;AACH,MAAM,WAAW,aAAa;IAC5B,sEAAsE;IACtE,KAAK,EAAE,MAAM,CAAC;CACf"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kadi.build/deploy-ability",
3
- "version": "0.0.7",
3
+ "version": "0.0.8",
4
4
  "description": "Programmatic deployment library for KADI - deploy to Akash Network, local Docker, and other platforms without CLI dependencies",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -58,6 +58,7 @@
58
58
  "files": [
59
59
  "dist/",
60
60
  "docs/",
61
+ ".env-example",
61
62
  "README.md",
62
63
  "LICENSE"
63
64
  ],
@@ -68,7 +69,7 @@
68
69
  "@cosmjs/encoding": "^0.36.1",
69
70
  "@cosmjs/proto-signing": "^0.36.1",
70
71
  "@cosmjs/stargate": "^0.36.1",
71
- "@kadi.build/container-registry-ability": "^0.0.3",
72
+ "@kadi.build/container-registry-ability": "^0.0.6",
72
73
  "@keplr-wallet/wc-client": "^0.12.243",
73
74
  "@keplr-wallet/wc-qrcode-modal": "^0.12.247",
74
75
  "@types/ws": "^8.18.1",