trigger.dev 0.0.0-beta-20240327140635 → 0.0.0-cli-e2e-20240910161832

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 (234) hide show
  1. package/dist/esm/apiClient.d.ts +187 -0
  2. package/dist/esm/apiClient.js +231 -0
  3. package/dist/esm/apiClient.js.map +1 -0
  4. package/dist/esm/build/buildWorker.d.ts +67 -0
  5. package/dist/esm/build/buildWorker.js +156 -0
  6. package/dist/esm/build/buildWorker.js.map +1 -0
  7. package/dist/esm/build/bundle.d.ts +36 -0
  8. package/dist/esm/build/bundle.js +194 -0
  9. package/dist/esm/build/bundle.js.map +1 -0
  10. package/dist/esm/build/extensions.d.ts +15 -0
  11. package/dist/esm/build/extensions.js +158 -0
  12. package/dist/esm/build/extensions.js.map +1 -0
  13. package/dist/esm/build/externals.d.ts +13 -0
  14. package/dist/esm/build/externals.js +271 -0
  15. package/dist/esm/build/externals.js.map +1 -0
  16. package/dist/esm/build/instrumentation.d.ts +2 -0
  17. package/dist/esm/build/instrumentation.js +19 -0
  18. package/dist/esm/build/instrumentation.js.map +1 -0
  19. package/dist/esm/build/manifests.d.ts +2 -0
  20. package/dist/esm/build/manifests.js +22 -0
  21. package/dist/esm/build/manifests.js.map +1 -0
  22. package/dist/esm/build/packageModules.d.ts +18 -0
  23. package/dist/esm/build/packageModules.js +85 -0
  24. package/dist/esm/build/packageModules.js.map +1 -0
  25. package/dist/esm/build/plugins.d.ts +6 -0
  26. package/dist/esm/build/plugins.js +67 -0
  27. package/dist/esm/build/plugins.js.map +1 -0
  28. package/dist/esm/build/resolveModule.d.ts +1 -0
  29. package/dist/esm/build/resolveModule.js +9 -0
  30. package/dist/esm/build/resolveModule.js.map +1 -0
  31. package/dist/esm/cli/common.d.ts +30 -0
  32. package/dist/esm/cli/common.js +85 -0
  33. package/dist/esm/cli/common.js.map +1 -0
  34. package/dist/esm/cli/index.d.ts +2 -0
  35. package/dist/esm/cli/index.js +27 -0
  36. package/dist/esm/cli/index.js.map +1 -0
  37. package/dist/esm/commands/deploy.d.ts +5 -0
  38. package/dist/esm/commands/deploy.js +399 -0
  39. package/dist/esm/commands/deploy.js.map +1 -0
  40. package/dist/esm/commands/dev.d.ts +37 -0
  41. package/dist/esm/commands/dev.js +128 -0
  42. package/dist/esm/commands/dev.js.map +1 -0
  43. package/dist/esm/commands/init.d.ts +3 -0
  44. package/dist/esm/commands/init.js +415 -0
  45. package/dist/esm/commands/init.js.map +1 -0
  46. package/dist/esm/commands/list-profiles.d.ts +23 -0
  47. package/dist/esm/commands/list-profiles.js +40 -0
  48. package/dist/esm/commands/list-profiles.js.map +1 -0
  49. package/dist/esm/commands/login.d.ts +28 -0
  50. package/dist/esm/commands/login.js +275 -0
  51. package/dist/esm/commands/login.js.map +1 -0
  52. package/dist/esm/commands/logout.d.ts +23 -0
  53. package/dist/esm/commands/logout.js +28 -0
  54. package/dist/esm/commands/logout.js.map +1 -0
  55. package/dist/esm/commands/update.d.ts +24 -0
  56. package/dist/esm/commands/update.js +233 -0
  57. package/dist/esm/commands/update.js.map +1 -0
  58. package/dist/esm/commands/whoami.d.ts +34 -0
  59. package/dist/esm/commands/whoami.js +70 -0
  60. package/dist/esm/commands/whoami.js.map +1 -0
  61. package/dist/esm/config.d.ts +22 -0
  62. package/dist/esm/config.js +185 -0
  63. package/dist/esm/config.js.map +1 -0
  64. package/dist/esm/consts.d.ts +4 -0
  65. package/dist/esm/consts.js +5 -0
  66. package/dist/esm/consts.js.map +1 -0
  67. package/dist/esm/deploy/buildImage.d.ts +69 -0
  68. package/dist/esm/deploy/buildImage.js +472 -0
  69. package/dist/esm/deploy/buildImage.js.map +1 -0
  70. package/dist/esm/deploy/logs.d.ts +19 -0
  71. package/dist/esm/deploy/logs.js +96 -0
  72. package/dist/esm/deploy/logs.js.map +1 -0
  73. package/dist/esm/dev/backgroundWorker.d.ts +114 -0
  74. package/dist/esm/dev/backgroundWorker.js +412 -0
  75. package/dist/esm/dev/backgroundWorker.js.map +1 -0
  76. package/dist/esm/dev/devOutput.d.ts +9 -0
  77. package/dist/esm/dev/devOutput.js +137 -0
  78. package/dist/esm/dev/devOutput.js.map +1 -0
  79. package/dist/esm/dev/devSession.d.ts +17 -0
  80. package/dist/esm/dev/devSession.js +152 -0
  81. package/dist/esm/dev/devSession.js.map +1 -0
  82. package/dist/esm/dev/workerRuntime.d.ts +16 -0
  83. package/dist/esm/dev/workerRuntime.js +259 -0
  84. package/dist/esm/dev/workerRuntime.js.map +1 -0
  85. package/dist/esm/entryPoints/deploy-index-controller.d.ts +1 -0
  86. package/dist/esm/entryPoints/deploy-index-controller.js +86 -0
  87. package/dist/esm/entryPoints/deploy-index-controller.js.map +1 -0
  88. package/dist/esm/entryPoints/deploy-index-worker.d.ts +1 -0
  89. package/dist/esm/entryPoints/deploy-index-worker.js +104 -0
  90. package/dist/esm/entryPoints/deploy-index-worker.js.map +1 -0
  91. package/dist/esm/entryPoints/deploy-run-controller.d.ts +1 -0
  92. package/dist/esm/entryPoints/deploy-run-controller.js +996 -0
  93. package/dist/esm/entryPoints/deploy-run-controller.js.map +1 -0
  94. package/dist/esm/entryPoints/deploy-run-worker.d.ts +1 -0
  95. package/dist/esm/entryPoints/deploy-run-worker.js +297 -0
  96. package/dist/esm/entryPoints/deploy-run-worker.js.map +1 -0
  97. package/dist/esm/entryPoints/dev-index-worker.d.ts +1 -0
  98. package/dist/esm/entryPoints/dev-index-worker.js +104 -0
  99. package/dist/esm/entryPoints/dev-index-worker.js.map +1 -0
  100. package/dist/esm/entryPoints/dev-run-worker.d.ts +1 -0
  101. package/dist/esm/entryPoints/dev-run-worker.js +254 -0
  102. package/dist/esm/entryPoints/dev-run-worker.js.map +1 -0
  103. package/dist/esm/entryPoints/loader.d.ts +1 -0
  104. package/dist/esm/entryPoints/loader.js +16 -0
  105. package/dist/esm/entryPoints/loader.js.map +1 -0
  106. package/dist/esm/executions/taskRunProcess.d.ts +115 -0
  107. package/dist/esm/executions/taskRunProcess.js +254 -0
  108. package/dist/esm/executions/taskRunProcess.js.map +1 -0
  109. package/dist/esm/imports/magicast.d.ts +2 -0
  110. package/dist/esm/imports/magicast.js +5 -0
  111. package/dist/esm/imports/magicast.js.map +1 -0
  112. package/dist/esm/imports/xdg-app-paths.d.ts +2 -0
  113. package/dist/esm/imports/xdg-app-paths.js +3 -0
  114. package/dist/esm/imports/xdg-app-paths.js.map +1 -0
  115. package/dist/{index.d.ts → esm/index.d.ts} +1 -0
  116. package/dist/esm/index.js +17 -0
  117. package/dist/esm/index.js.map +1 -0
  118. package/dist/esm/indexing/indexWorkerManifest.d.ts +85 -0
  119. package/dist/esm/indexing/indexWorkerManifest.js +76 -0
  120. package/dist/esm/indexing/indexWorkerManifest.js.map +1 -0
  121. package/dist/esm/indexing/registerTasks.d.ts +2 -0
  122. package/dist/esm/indexing/registerTasks.js +62 -0
  123. package/dist/esm/indexing/registerTasks.js.map +1 -0
  124. package/dist/esm/package.json +3 -0
  125. package/dist/esm/runtimes/bun.d.ts +2 -0
  126. package/dist/esm/runtimes/bun.js +11 -0
  127. package/dist/esm/runtimes/bun.js.map +1 -0
  128. package/dist/esm/shims/esm.d.ts +1 -0
  129. package/dist/esm/shims/esm.js +9 -0
  130. package/dist/esm/shims/esm.js.map +1 -0
  131. package/dist/esm/sourceDir.d.ts +1 -0
  132. package/dist/esm/sourceDir.js +4 -0
  133. package/dist/esm/sourceDir.js.map +1 -0
  134. package/dist/esm/telemetry/tracing.d.ts +3 -0
  135. package/dist/esm/telemetry/tracing.js +58 -0
  136. package/dist/esm/telemetry/tracing.js.map +1 -0
  137. package/dist/esm/types.d.ts +6 -0
  138. package/dist/esm/types.js +2 -0
  139. package/dist/esm/types.js.map +1 -0
  140. package/dist/esm/utilities/assertExhaustive.d.ts +1 -0
  141. package/dist/esm/utilities/assertExhaustive.js +4 -0
  142. package/dist/esm/utilities/assertExhaustive.js.map +1 -0
  143. package/dist/esm/utilities/buildManifest.d.ts +2 -0
  144. package/dist/esm/utilities/buildManifest.js +9 -0
  145. package/dist/esm/utilities/buildManifest.js.map +1 -0
  146. package/dist/esm/utilities/cliOutput.d.ts +20 -0
  147. package/dist/esm/utilities/cliOutput.js +88 -0
  148. package/dist/esm/utilities/cliOutput.js.map +1 -0
  149. package/dist/esm/utilities/configFiles.d.ts +29 -0
  150. package/dist/esm/utilities/configFiles.js +65 -0
  151. package/dist/esm/utilities/configFiles.js.map +1 -0
  152. package/dist/esm/utilities/createFileFromTemplate.d.ts +16 -0
  153. package/dist/esm/utilities/createFileFromTemplate.js +50 -0
  154. package/dist/esm/utilities/createFileFromTemplate.js.map +1 -0
  155. package/dist/esm/utilities/deployErrors.d.ts +19 -0
  156. package/dist/esm/utilities/deployErrors.js +117 -0
  157. package/dist/esm/utilities/deployErrors.js.map +1 -0
  158. package/dist/esm/utilities/dotEnv.d.ts +4 -0
  159. package/dist/esm/utilities/dotEnv.js +28 -0
  160. package/dist/esm/utilities/dotEnv.js.map +1 -0
  161. package/dist/esm/utilities/eventBus.d.ts +14 -0
  162. package/dist/esm/utilities/eventBus.js +3 -0
  163. package/dist/esm/utilities/eventBus.js.map +1 -0
  164. package/dist/esm/utilities/fileSystem.d.ts +12 -0
  165. package/dist/esm/utilities/fileSystem.js +81 -0
  166. package/dist/esm/utilities/fileSystem.js.map +1 -0
  167. package/dist/esm/utilities/getApiKeyType.d.ts +13 -0
  168. package/dist/esm/utilities/getApiKeyType.js +44 -0
  169. package/dist/esm/utilities/getApiKeyType.js.map +1 -0
  170. package/dist/esm/utilities/initialBanner.d.ts +4 -0
  171. package/dist/esm/utilities/initialBanner.js +82 -0
  172. package/dist/esm/utilities/initialBanner.js.map +1 -0
  173. package/dist/esm/utilities/keyValueBy.d.ts +8 -0
  174. package/dist/esm/utilities/keyValueBy.js +19 -0
  175. package/dist/esm/utilities/keyValueBy.js.map +1 -0
  176. package/dist/esm/utilities/links.d.ts +9 -0
  177. package/dist/esm/utilities/links.js +10 -0
  178. package/dist/esm/utilities/links.js.map +1 -0
  179. package/dist/esm/utilities/linux.d.ts +1 -0
  180. package/dist/esm/utilities/linux.js +24 -0
  181. package/dist/esm/utilities/linux.js.map +1 -0
  182. package/dist/esm/utilities/logger.d.ts +40 -0
  183. package/dist/esm/utilities/logger.js +109 -0
  184. package/dist/esm/utilities/logger.js.map +1 -0
  185. package/dist/esm/utilities/normalizeImportPath.d.ts +1 -0
  186. package/dist/esm/utilities/normalizeImportPath.js +5 -0
  187. package/dist/esm/utilities/normalizeImportPath.js.map +1 -0
  188. package/dist/esm/utilities/obfuscateApiKey.d.ts +1 -0
  189. package/dist/esm/utilities/obfuscateApiKey.js +5 -0
  190. package/dist/esm/utilities/obfuscateApiKey.js.map +1 -0
  191. package/dist/esm/utilities/parseNameAndPath.d.ts +2 -0
  192. package/dist/esm/utilities/parseNameAndPath.js +10 -0
  193. package/dist/esm/utilities/parseNameAndPath.js.map +1 -0
  194. package/dist/esm/utilities/resolveInternalFilePath.d.ts +1 -0
  195. package/dist/esm/utilities/resolveInternalFilePath.js +8 -0
  196. package/dist/esm/utilities/resolveInternalFilePath.js.map +1 -0
  197. package/dist/esm/utilities/runtimeCheck.d.ts +8 -0
  198. package/dist/esm/utilities/runtimeCheck.js +52 -0
  199. package/dist/esm/utilities/runtimeCheck.js.map +1 -0
  200. package/dist/esm/utilities/safeJsonParse.d.ts +1 -0
  201. package/dist/esm/utilities/safeJsonParse.js +12 -0
  202. package/dist/esm/utilities/safeJsonParse.js.map +1 -0
  203. package/dist/esm/utilities/sanitizeEnvVars.d.ts +3 -0
  204. package/dist/esm/utilities/sanitizeEnvVars.js +4 -0
  205. package/dist/esm/utilities/sanitizeEnvVars.js.map +1 -0
  206. package/dist/esm/utilities/session.d.ts +33 -0
  207. package/dist/esm/utilities/session.js +82 -0
  208. package/dist/esm/utilities/session.js.map +1 -0
  209. package/dist/esm/utilities/sourceFiles.d.ts +9 -0
  210. package/dist/esm/utilities/sourceFiles.js +50 -0
  211. package/dist/esm/utilities/sourceFiles.js.map +1 -0
  212. package/dist/esm/utilities/taskFiles.d.ts +6 -0
  213. package/dist/esm/utilities/taskFiles.js +69 -0
  214. package/dist/esm/utilities/taskFiles.js.map +1 -0
  215. package/dist/esm/utilities/tempDirectories.d.ts +16 -0
  216. package/dist/esm/utilities/tempDirectories.js +27 -0
  217. package/dist/esm/utilities/tempDirectories.js.map +1 -0
  218. package/dist/esm/utilities/windows.d.ts +7 -0
  219. package/dist/esm/utilities/windows.js +21 -0
  220. package/dist/esm/utilities/windows.js.map +1 -0
  221. package/dist/esm/version.d.ts +1 -0
  222. package/dist/esm/version.js +2 -0
  223. package/dist/esm/version.js.map +1 -0
  224. package/package.json +84 -84
  225. package/dist/Containerfile.prod +0 -30
  226. package/dist/index.js +0 -5460
  227. package/dist/index.js.map +0 -1
  228. package/dist/templates/examples/simple.ts.template +0 -14
  229. package/dist/templates/trigger.config.ts.template +0 -15
  230. package/dist/workers/dev/worker-facade.js +0 -175
  231. package/dist/workers/dev/worker-setup.js +0 -40
  232. package/dist/workers/prod/entry-point.js +0 -1125
  233. package/dist/workers/prod/worker-facade.js +0 -179
  234. package/dist/workers/prod/worker-setup.js +0 -35
@@ -0,0 +1,187 @@
1
+ import { CreateBackgroundWorkerRequestBody, InitializeDeploymentRequestBody, StartDeploymentIndexingRequestBody, ImportEnvironmentVariablesRequestBody, FailDeploymentRequestBody, FinalizeDeploymentRequestBody } from "@trigger.dev/core/v3";
2
+ export declare class CliApiClient {
3
+ readonly apiURL: string;
4
+ readonly accessToken?: string | undefined;
5
+ constructor(apiURL: string, accessToken?: string | undefined);
6
+ createAuthorizationCode(): Promise<ApiResult<{
7
+ url: string;
8
+ authorizationCode: string;
9
+ }>>;
10
+ getPersonalAccessToken(authorizationCode: string): Promise<ApiResult<{
11
+ token: {
12
+ token: string;
13
+ obfuscatedToken: string;
14
+ } | null;
15
+ }>>;
16
+ whoAmI(): Promise<ApiResult<{
17
+ userId: string;
18
+ email: string;
19
+ dashboardUrl: string;
20
+ }>>;
21
+ getProject(projectRef: string): Promise<ApiResult<{
22
+ id: string;
23
+ externalRef: string;
24
+ name: string;
25
+ slug: string;
26
+ createdAt: Date;
27
+ organization: {
28
+ id: string;
29
+ slug: string;
30
+ createdAt: Date;
31
+ title: string;
32
+ };
33
+ }>>;
34
+ getProjects(): Promise<ApiResult<{
35
+ id: string;
36
+ externalRef: string;
37
+ name: string;
38
+ slug: string;
39
+ createdAt: Date;
40
+ organization: {
41
+ id: string;
42
+ slug: string;
43
+ createdAt: Date;
44
+ title: string;
45
+ };
46
+ }[]>>;
47
+ createBackgroundWorker(projectRef: string, body: CreateBackgroundWorkerRequestBody): Promise<ApiResult<{
48
+ id: string;
49
+ contentHash: string;
50
+ version: string;
51
+ }>>;
52
+ createTaskRunAttempt(runFriendlyId: string): Promise<ApiResult<{
53
+ organization: {
54
+ id: string;
55
+ name: string;
56
+ slug: string;
57
+ };
58
+ queue: {
59
+ id: string;
60
+ name: string;
61
+ };
62
+ task: {
63
+ id: string;
64
+ filePath: string;
65
+ exportName: string;
66
+ };
67
+ project: {
68
+ id: string;
69
+ name: string;
70
+ slug: string;
71
+ ref: string;
72
+ };
73
+ environment: {
74
+ type: "PRODUCTION" | "STAGING" | "DEVELOPMENT" | "PREVIEW";
75
+ id: string;
76
+ slug: string;
77
+ };
78
+ attempt: {
79
+ number: number;
80
+ status: string;
81
+ id: string;
82
+ startedAt: Date;
83
+ backgroundWorkerId: string;
84
+ backgroundWorkerTaskId: string;
85
+ };
86
+ run: {
87
+ id: string;
88
+ createdAt: Date;
89
+ payload: string;
90
+ payloadType: string;
91
+ tags: string[];
92
+ startedAt: Date;
93
+ isTest: boolean;
94
+ costInCents: number;
95
+ baseCostInCents: number;
96
+ durationMs: number;
97
+ context?: any;
98
+ idempotencyKey?: string | undefined;
99
+ maxAttempts?: number | undefined;
100
+ version?: string | undefined;
101
+ };
102
+ batch?: {
103
+ id: string;
104
+ } | undefined;
105
+ machine?: {
106
+ name: "micro" | "small-1x" | "small-2x" | "medium-1x" | "medium-2x" | "large-1x" | "large-2x";
107
+ cpu: number;
108
+ memory: number;
109
+ centsPerMs: number;
110
+ } | undefined;
111
+ }>>;
112
+ getProjectEnv({ projectRef, env }: {
113
+ projectRef: string;
114
+ env: string;
115
+ }): Promise<ApiResult<{
116
+ name: string;
117
+ apiKey: string;
118
+ apiUrl: string;
119
+ projectId: string;
120
+ }>>;
121
+ getEnvironmentVariables(projectRef: string): Promise<ApiResult<{
122
+ variables: Record<string, string>;
123
+ }>>;
124
+ importEnvVars(projectRef: string, slug: string, params: ImportEnvironmentVariablesRequestBody): Promise<ApiResult<{
125
+ success: boolean;
126
+ }>>;
127
+ initializeDeployment(body: InitializeDeploymentRequestBody): Promise<ApiResult<{
128
+ id: string;
129
+ contentHash: string;
130
+ version: string;
131
+ shortCode: string;
132
+ imageTag: string;
133
+ externalBuildData?: {
134
+ projectId: string;
135
+ buildId: string;
136
+ buildToken: string;
137
+ } | null | undefined;
138
+ registryHost?: string | undefined;
139
+ }>>;
140
+ createDeploymentBackgroundWorker(deploymentId: string, body: CreateBackgroundWorkerRequestBody): Promise<ApiResult<{
141
+ id: string;
142
+ contentHash: string;
143
+ version: string;
144
+ }>>;
145
+ failDeployment(id: string, body: FailDeploymentRequestBody): Promise<ApiResult<{
146
+ id: string;
147
+ }>>;
148
+ finalizeDeployment(id: string, body: FinalizeDeploymentRequestBody): Promise<ApiResult<{
149
+ id: string;
150
+ }>>;
151
+ startDeploymentIndexing(deploymentId: string, body: StartDeploymentIndexingRequestBody): Promise<ApiResult<{
152
+ id: string;
153
+ contentHash: string;
154
+ }>>;
155
+ getDeployment(deploymentId: string): Promise<ApiResult<{
156
+ status: "PENDING" | "CANCELED" | "FAILED" | "BUILDING" | "DEPLOYING" | "DEPLOYED" | "TIMED_OUT";
157
+ id: string;
158
+ contentHash: string;
159
+ version: string;
160
+ shortCode: string;
161
+ imageReference?: string | null | undefined;
162
+ errorData?: {
163
+ message: string;
164
+ name: string;
165
+ stack?: string | undefined;
166
+ stderr?: string | undefined;
167
+ } | null | undefined;
168
+ worker?: {
169
+ id: string;
170
+ tasks: {
171
+ id: string;
172
+ slug: string;
173
+ filePath: string;
174
+ exportName: string;
175
+ }[];
176
+ version: string;
177
+ } | undefined;
178
+ }>>;
179
+ }
180
+ type ApiResult<TSuccessResult> = {
181
+ success: true;
182
+ data: TSuccessResult;
183
+ } | {
184
+ success: false;
185
+ error: string;
186
+ };
187
+ export {};
@@ -0,0 +1,231 @@
1
+ import { CreateAuthorizationCodeResponseSchema, GetPersonalAccessTokenResponseSchema, WhoAmIResponseSchema, CreateBackgroundWorkerResponse, StartDeploymentIndexingResponseBody, GetProjectEnvResponse, GetEnvironmentVariablesResponseBody, InitializeDeploymentResponseBody, GetDeploymentResponseBody, GetProjectsResponseBody, GetProjectResponseBody, EnvironmentVariableResponseBody, TaskRunExecution, FailDeploymentResponseBody, } from "@trigger.dev/core/v3";
2
+ import { zodfetch, ApiError } from "@trigger.dev/core/v3/zodfetch";
3
+ export class CliApiClient {
4
+ apiURL;
5
+ accessToken;
6
+ constructor(apiURL, accessToken) {
7
+ this.apiURL = apiURL;
8
+ this.accessToken = accessToken;
9
+ this.apiURL = apiURL.replace(/\/$/, "");
10
+ }
11
+ async createAuthorizationCode() {
12
+ return wrapZodFetch(CreateAuthorizationCodeResponseSchema, `${this.apiURL}/api/v1/authorization-code`, {
13
+ method: "POST",
14
+ });
15
+ }
16
+ async getPersonalAccessToken(authorizationCode) {
17
+ return wrapZodFetch(GetPersonalAccessTokenResponseSchema, `${this.apiURL}/api/v1/token`, {
18
+ method: "POST",
19
+ body: JSON.stringify({
20
+ authorizationCode,
21
+ }),
22
+ });
23
+ }
24
+ async whoAmI() {
25
+ if (!this.accessToken) {
26
+ throw new Error("whoAmI: No access token");
27
+ }
28
+ return wrapZodFetch(WhoAmIResponseSchema, `${this.apiURL}/api/v2/whoami`, {
29
+ headers: {
30
+ Authorization: `Bearer ${this.accessToken}`,
31
+ "Content-Type": "application/json",
32
+ },
33
+ });
34
+ }
35
+ async getProject(projectRef) {
36
+ if (!this.accessToken) {
37
+ throw new Error("getProject: No access token");
38
+ }
39
+ return wrapZodFetch(GetProjectResponseBody, `${this.apiURL}/api/v1/projects/${projectRef}`, {
40
+ headers: {
41
+ Authorization: `Bearer ${this.accessToken}`,
42
+ "Content-Type": "application/json",
43
+ },
44
+ });
45
+ }
46
+ async getProjects() {
47
+ if (!this.accessToken) {
48
+ throw new Error("getProjects: No access token");
49
+ }
50
+ return wrapZodFetch(GetProjectsResponseBody, `${this.apiURL}/api/v1/projects`, {
51
+ headers: {
52
+ Authorization: `Bearer ${this.accessToken}`,
53
+ "Content-Type": "application/json",
54
+ },
55
+ });
56
+ }
57
+ async createBackgroundWorker(projectRef, body) {
58
+ if (!this.accessToken) {
59
+ throw new Error("createBackgroundWorker: No access token");
60
+ }
61
+ return wrapZodFetch(CreateBackgroundWorkerResponse, `${this.apiURL}/api/v1/projects/${projectRef}/background-workers`, {
62
+ method: "POST",
63
+ headers: {
64
+ Authorization: `Bearer ${this.accessToken}`,
65
+ "Content-Type": "application/json",
66
+ },
67
+ body: JSON.stringify(body),
68
+ });
69
+ }
70
+ async createTaskRunAttempt(runFriendlyId) {
71
+ if (!this.accessToken) {
72
+ throw new Error("creatTaskRunAttempt: No access token");
73
+ }
74
+ return wrapZodFetch(TaskRunExecution, `${this.apiURL}/api/v1/runs/${runFriendlyId}/attempts`, {
75
+ method: "POST",
76
+ headers: {
77
+ Authorization: `Bearer ${this.accessToken}`,
78
+ "Content-Type": "application/json",
79
+ },
80
+ });
81
+ }
82
+ async getProjectEnv({ projectRef, env }) {
83
+ if (!this.accessToken) {
84
+ throw new Error("getProjectDevEnv: No access token");
85
+ }
86
+ return wrapZodFetch(GetProjectEnvResponse, `${this.apiURL}/api/v1/projects/${projectRef}/${env}`, {
87
+ headers: {
88
+ Authorization: `Bearer ${this.accessToken}`,
89
+ "Content-Type": "application/json",
90
+ },
91
+ });
92
+ }
93
+ async getEnvironmentVariables(projectRef) {
94
+ if (!this.accessToken) {
95
+ throw new Error("getEnvironmentVariables: No access token");
96
+ }
97
+ return wrapZodFetch(GetEnvironmentVariablesResponseBody, `${this.apiURL}/api/v1/projects/${projectRef}/envvars`, {
98
+ headers: {
99
+ Authorization: `Bearer ${this.accessToken}`,
100
+ "Content-Type": "application/json",
101
+ },
102
+ });
103
+ }
104
+ async importEnvVars(projectRef, slug, params) {
105
+ if (!this.accessToken) {
106
+ throw new Error("importEnvVars: No access token");
107
+ }
108
+ return wrapZodFetch(EnvironmentVariableResponseBody, `${this.apiURL}/api/v1/projects/${projectRef}/envvars/${slug}/import`, {
109
+ method: "POST",
110
+ headers: {
111
+ Authorization: `Bearer ${this.accessToken}`,
112
+ "Content-Type": "application/json",
113
+ },
114
+ body: JSON.stringify(params),
115
+ });
116
+ }
117
+ async initializeDeployment(body) {
118
+ if (!this.accessToken) {
119
+ throw new Error("initializeDeployment: No access token");
120
+ }
121
+ return wrapZodFetch(InitializeDeploymentResponseBody, `${this.apiURL}/api/v1/deployments`, {
122
+ method: "POST",
123
+ headers: {
124
+ Authorization: `Bearer ${this.accessToken}`,
125
+ "Content-Type": "application/json",
126
+ },
127
+ body: JSON.stringify(body),
128
+ });
129
+ }
130
+ async createDeploymentBackgroundWorker(deploymentId, body) {
131
+ if (!this.accessToken) {
132
+ throw new Error("createDeploymentBackgroundWorker: No access token");
133
+ }
134
+ return wrapZodFetch(CreateBackgroundWorkerResponse, `${this.apiURL}/api/v1/deployments/${deploymentId}/background-workers`, {
135
+ method: "POST",
136
+ headers: {
137
+ Authorization: `Bearer ${this.accessToken}`,
138
+ "Content-Type": "application/json",
139
+ },
140
+ body: JSON.stringify(body),
141
+ });
142
+ }
143
+ async failDeployment(id, body) {
144
+ if (!this.accessToken) {
145
+ throw new Error("failDeployment: No access token");
146
+ }
147
+ return wrapZodFetch(FailDeploymentResponseBody, `${this.apiURL}/api/v1/deployments/${id}/fail`, {
148
+ method: "POST",
149
+ headers: {
150
+ Authorization: `Bearer ${this.accessToken}`,
151
+ "Content-Type": "application/json",
152
+ },
153
+ body: JSON.stringify(body),
154
+ });
155
+ }
156
+ async finalizeDeployment(id, body) {
157
+ if (!this.accessToken) {
158
+ throw new Error("finalizeDeployment: No access token");
159
+ }
160
+ return wrapZodFetch(FailDeploymentResponseBody, `${this.apiURL}/api/v1/deployments/${id}/finalize`, {
161
+ method: "POST",
162
+ headers: {
163
+ Authorization: `Bearer ${this.accessToken}`,
164
+ "Content-Type": "application/json",
165
+ },
166
+ body: JSON.stringify(body),
167
+ });
168
+ }
169
+ async startDeploymentIndexing(deploymentId, body) {
170
+ if (!this.accessToken) {
171
+ throw new Error("startDeploymentIndexing: No access token");
172
+ }
173
+ return wrapZodFetch(StartDeploymentIndexingResponseBody, `${this.apiURL}/api/v1/deployments/${deploymentId}/start-indexing`, {
174
+ method: "POST",
175
+ headers: {
176
+ Authorization: `Bearer ${this.accessToken}`,
177
+ "Content-Type": "application/json",
178
+ },
179
+ body: JSON.stringify(body),
180
+ });
181
+ }
182
+ async getDeployment(deploymentId) {
183
+ if (!this.accessToken) {
184
+ throw new Error("getDeployment: No access token");
185
+ }
186
+ return wrapZodFetch(GetDeploymentResponseBody, `${this.apiURL}/api/v1/deployments/${deploymentId}`, {
187
+ headers: {
188
+ Authorization: `Bearer ${this.accessToken}`,
189
+ Accept: "application/json",
190
+ },
191
+ });
192
+ }
193
+ }
194
+ async function wrapZodFetch(schema, url, requestInit) {
195
+ try {
196
+ const response = await zodfetch(schema, url, requestInit, {
197
+ retry: {
198
+ minTimeoutInMs: 500,
199
+ maxTimeoutInMs: 5000,
200
+ maxAttempts: 5,
201
+ factor: 2,
202
+ randomize: false,
203
+ },
204
+ });
205
+ return {
206
+ success: true,
207
+ data: response,
208
+ };
209
+ }
210
+ catch (error) {
211
+ if (error instanceof ApiError) {
212
+ return {
213
+ success: false,
214
+ error: error.message,
215
+ };
216
+ }
217
+ else if (error instanceof Error) {
218
+ return {
219
+ success: false,
220
+ error: error.message,
221
+ };
222
+ }
223
+ else {
224
+ return {
225
+ success: false,
226
+ error: String(error),
227
+ };
228
+ }
229
+ }
230
+ }
231
+ //# sourceMappingURL=apiClient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"apiClient.js","sourceRoot":"","sources":["../../src/apiClient.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,67 @@
1
+ import { ResolvedConfig } from "@trigger.dev/core/v3/build";
2
+ import { BuildManifest, BuildTarget } from "@trigger.dev/core/v3/schemas";
3
+ import { BundleResult } from "./bundle.js";
4
+ export type BuildWorkerEventListener = {
5
+ onBundleStart?: () => void;
6
+ onBundleComplete?: (result: BundleResult) => void;
7
+ };
8
+ export type BuildWorkerOptions = {
9
+ destination: string;
10
+ target: BuildTarget;
11
+ environment: string;
12
+ resolvedConfig: ResolvedConfig;
13
+ listener?: BuildWorkerEventListener;
14
+ envVars?: Record<string, string>;
15
+ rewritePaths?: boolean;
16
+ };
17
+ export declare function buildWorker(options: BuildWorkerOptions): Promise<{
18
+ runtime: "node" | "bun";
19
+ build: {
20
+ env?: Record<string, string> | undefined;
21
+ commands?: string[] | undefined;
22
+ };
23
+ deploy: {
24
+ env?: Record<string, string> | undefined;
25
+ sync?: {
26
+ env?: Record<string, string> | undefined;
27
+ } | undefined;
28
+ };
29
+ config: {
30
+ project: string;
31
+ dirs: string[];
32
+ };
33
+ files: {
34
+ out: string;
35
+ entry: string;
36
+ }[];
37
+ target: "deploy" | "dev";
38
+ contentHash: string;
39
+ configPath: string;
40
+ runWorkerEntryPoint: string;
41
+ indexWorkerEntryPoint: string;
42
+ outputPath: string;
43
+ packageVersion: string;
44
+ cliPackageVersion: string;
45
+ environment: string;
46
+ sources: Record<string, {
47
+ contents: string;
48
+ contentHash: string;
49
+ }>;
50
+ runControllerEntryPoint?: string | undefined;
51
+ indexControllerEntryPoint?: string | undefined;
52
+ loaderEntryPoint?: string | undefined;
53
+ externals?: {
54
+ name: string;
55
+ version: string;
56
+ }[] | undefined;
57
+ customConditions?: string[] | undefined;
58
+ image?: {
59
+ pkgs?: string[] | undefined;
60
+ instructions?: string[] | undefined;
61
+ } | undefined;
62
+ otelImportHook?: {
63
+ include?: string[] | undefined;
64
+ exclude?: string[] | undefined;
65
+ } | undefined;
66
+ }>;
67
+ export declare function rewriteBuildManifestPaths(buildManifest: BuildManifest, destinationDir: string): BuildManifest;
@@ -0,0 +1,156 @@
1
+ import { CORE_VERSION } from "@trigger.dev/core/v3";
2
+ import { DEFAULT_RUNTIME } from "@trigger.dev/core/v3/build";
3
+ import { resolveFileSources } from "../utilities/sourceFiles.js";
4
+ import { VERSION } from "../version.js";
5
+ import { bundleWorker } from "./bundle.js";
6
+ import { createBuildContext, notifyExtensionOnBuildComplete, notifyExtensionOnBuildStart, resolvePluginsForContext, } from "./extensions.js";
7
+ import { createExternalsBuildExtension } from "./externals.js";
8
+ import { getInstrumentedPackageNames } from "./instrumentation.js";
9
+ import { deployIndexController, deployIndexWorker, deployRunController, deployRunWorker, telemetryEntryPoint, } from "./packageModules.js";
10
+ import { join, relative, sep } from "node:path";
11
+ import { generateContainerfile } from "../deploy/buildImage.js";
12
+ import { writeFile } from "node:fs/promises";
13
+ import { buildManifestToJSON } from "../utilities/buildManifest.js";
14
+ import { readPackageJSON, writePackageJSON } from "pkg-types";
15
+ import { writeJSONFile } from "../utilities/fileSystem.js";
16
+ import { isWindows } from "std-env";
17
+ import { pathToFileURL } from "node:url";
18
+ export async function buildWorker(options) {
19
+ const resolvedConfig = options.resolvedConfig;
20
+ const externalsExtension = createExternalsBuildExtension(options.target, resolvedConfig);
21
+ const buildContext = createBuildContext("deploy", resolvedConfig);
22
+ buildContext.prependExtension(externalsExtension);
23
+ await notifyExtensionOnBuildStart(buildContext);
24
+ const pluginsFromExtensions = resolvePluginsForContext(buildContext);
25
+ options.listener?.onBundleStart?.();
26
+ const bundleResult = await bundleWorker({
27
+ target: options.target,
28
+ cwd: resolvedConfig.workingDir,
29
+ destination: options.destination,
30
+ watch: false,
31
+ resolvedConfig,
32
+ plugins: [...pluginsFromExtensions],
33
+ jsxFactory: resolvedConfig.build.jsx.factory,
34
+ jsxFragment: resolvedConfig.build.jsx.fragment,
35
+ jsxAutomatic: resolvedConfig.build.jsx.automatic,
36
+ });
37
+ options.listener?.onBundleComplete?.(bundleResult);
38
+ let buildManifest = {
39
+ contentHash: bundleResult.contentHash,
40
+ runtime: resolvedConfig.runtime ?? DEFAULT_RUNTIME,
41
+ environment: options.environment,
42
+ packageVersion: CORE_VERSION,
43
+ cliPackageVersion: VERSION,
44
+ target: "deploy",
45
+ files: bundleResult.files,
46
+ sources: await resolveFileSources(bundleResult.files, resolvedConfig.workingDir),
47
+ config: {
48
+ project: resolvedConfig.project,
49
+ dirs: resolvedConfig.dirs,
50
+ },
51
+ outputPath: options.destination,
52
+ runControllerEntryPoint: bundleResult.runControllerEntryPoint ?? deployRunController,
53
+ runWorkerEntryPoint: bundleResult.runWorkerEntryPoint ?? deployRunWorker,
54
+ indexControllerEntryPoint: bundleResult.indexControllerEntryPoint ?? deployIndexController,
55
+ indexWorkerEntryPoint: bundleResult.indexWorkerEntryPoint ?? deployIndexWorker,
56
+ loaderEntryPoint: bundleResult.loaderEntryPoint ?? telemetryEntryPoint,
57
+ configPath: bundleResult.configPath,
58
+ customConditions: resolvedConfig.build.conditions ?? [],
59
+ deploy: {
60
+ env: options.envVars ? options.envVars : {},
61
+ },
62
+ build: {},
63
+ otelImportHook: {
64
+ include: getInstrumentedPackageNames(resolvedConfig),
65
+ },
66
+ };
67
+ buildManifest = await notifyExtensionOnBuildComplete(buildContext, buildManifest);
68
+ if (options.target === "deploy") {
69
+ buildManifest = options.rewritePaths
70
+ ? rewriteBuildManifestPaths(buildManifest, options.destination)
71
+ : buildManifest;
72
+ await writeDeployFiles(buildManifest, resolvedConfig, options.destination);
73
+ }
74
+ return buildManifest;
75
+ }
76
+ export function rewriteBuildManifestPaths(buildManifest, destinationDir) {
77
+ return {
78
+ ...buildManifest,
79
+ files: buildManifest.files.map((file) => ({
80
+ ...file,
81
+ entry: cleanEntryPath(file.entry),
82
+ out: rewriteOutputPath(destinationDir, file.out),
83
+ })),
84
+ outputPath: rewriteOutputPath(destinationDir, buildManifest.outputPath),
85
+ configPath: rewriteOutputPath(destinationDir, buildManifest.configPath),
86
+ runControllerEntryPoint: buildManifest.runControllerEntryPoint
87
+ ? rewriteOutputPath(destinationDir, buildManifest.runControllerEntryPoint)
88
+ : undefined,
89
+ runWorkerEntryPoint: rewriteOutputPath(destinationDir, buildManifest.runWorkerEntryPoint),
90
+ indexControllerEntryPoint: buildManifest.indexControllerEntryPoint
91
+ ? rewriteOutputPath(destinationDir, buildManifest.indexControllerEntryPoint)
92
+ : undefined,
93
+ indexWorkerEntryPoint: rewriteOutputPath(destinationDir, buildManifest.indexWorkerEntryPoint),
94
+ loaderEntryPoint: buildManifest.loaderEntryPoint
95
+ ? rewriteOutputPath(destinationDir, buildManifest.loaderEntryPoint)
96
+ : undefined,
97
+ };
98
+ }
99
+ // Remove any query parameters from the entry path
100
+ // For example, src/trigger/ai.ts?sentryProxyModule=true -> src/trigger/ai.ts
101
+ function cleanEntryPath(entry) {
102
+ return entry.split("?")[0];
103
+ }
104
+ function rewriteOutputPath(destinationDir, filePath) {
105
+ if (isWindows) {
106
+ return `/app/${relative(pathToFileURL(destinationDir).pathname, pathToFileURL(filePath).pathname)
107
+ .split(sep)
108
+ .join("/")}`;
109
+ }
110
+ else {
111
+ return `/app/${relative(destinationDir, filePath)}`;
112
+ }
113
+ }
114
+ async function writeDeployFiles(buildManifest, resolvedConfig, outputPath) {
115
+ // Step 1. Read the package.json file
116
+ const packageJson = await readProjectPackageJson(resolvedConfig.packageJsonPath);
117
+ if (!packageJson) {
118
+ throw new Error("Could not read the package.json file");
119
+ }
120
+ const dependencies = buildManifest.externals?.reduce((acc, external) => {
121
+ acc[external.name] = external.version;
122
+ return acc;
123
+ }, {}) ?? {};
124
+ // Step 3: Write the resolved dependencies to the package.json file
125
+ await writePackageJSON(join(outputPath, "package.json"), {
126
+ ...packageJson,
127
+ name: packageJson.name ?? "trigger-project",
128
+ dependencies: {
129
+ ...dependencies,
130
+ },
131
+ trustedDependencies: Object.keys(dependencies),
132
+ devDependencies: {},
133
+ peerDependencies: {},
134
+ scripts: {},
135
+ });
136
+ await writeJSONFile(join(outputPath, "build.json"), buildManifestToJSON(buildManifest));
137
+ await writeContainerfile(outputPath, buildManifest);
138
+ }
139
+ async function readProjectPackageJson(packageJsonPath) {
140
+ const packageJson = await readPackageJSON(packageJsonPath);
141
+ return packageJson;
142
+ }
143
+ async function writeContainerfile(outputPath, buildManifest) {
144
+ if (!buildManifest.runControllerEntryPoint || !buildManifest.indexControllerEntryPoint) {
145
+ throw new Error("Something went wrong with the build. Aborting deployment. [code 7789]");
146
+ }
147
+ const containerfile = await generateContainerfile({
148
+ runtime: buildManifest.runtime,
149
+ entrypoint: buildManifest.runControllerEntryPoint,
150
+ build: buildManifest.build,
151
+ image: buildManifest.image,
152
+ indexScript: buildManifest.indexControllerEntryPoint,
153
+ });
154
+ await writeFile(join(outputPath, "Containerfile"), containerfile);
155
+ }
156
+ //# sourceMappingURL=buildWorker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"buildWorker.js","sourceRoot":"","sources":["../../../src/build/buildWorker.ts"],"names":[],"mappings":"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"}