@kitsi/core 0.0.2

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 (293) hide show
  1. package/dist/check-results.d.ts +30 -0
  2. package/dist/check-results.d.ts.map +1 -0
  3. package/dist/check-results.js +34 -0
  4. package/dist/check-results.js.map +1 -0
  5. package/dist/dsl/analysis.d.ts +17 -0
  6. package/dist/dsl/analysis.d.ts.map +1 -0
  7. package/dist/dsl/analysis.js +186 -0
  8. package/dist/dsl/analysis.js.map +1 -0
  9. package/dist/dsl/image.d.ts +14 -0
  10. package/dist/dsl/image.d.ts.map +1 -0
  11. package/dist/dsl/image.js +14 -0
  12. package/dist/dsl/image.js.map +1 -0
  13. package/dist/dsl/index.d.ts +21 -0
  14. package/dist/dsl/index.d.ts.map +1 -0
  15. package/dist/dsl/index.js +12 -0
  16. package/dist/dsl/index.js.map +1 -0
  17. package/dist/dsl/kit.d.ts +20 -0
  18. package/dist/dsl/kit.d.ts.map +1 -0
  19. package/dist/dsl/kit.js +34 -0
  20. package/dist/dsl/kit.js.map +1 -0
  21. package/dist/dsl/module.d.ts +4 -0
  22. package/dist/dsl/module.d.ts.map +1 -0
  23. package/dist/dsl/module.js +4 -0
  24. package/dist/dsl/module.js.map +1 -0
  25. package/dist/dsl/plan-repository.d.ts +10 -0
  26. package/dist/dsl/plan-repository.d.ts.map +1 -0
  27. package/dist/dsl/plan-repository.js +24 -0
  28. package/dist/dsl/plan-repository.js.map +1 -0
  29. package/dist/dsl/plan.d.ts +46 -0
  30. package/dist/dsl/plan.d.ts.map +1 -0
  31. package/dist/dsl/plan.js +95 -0
  32. package/dist/dsl/plan.js.map +1 -0
  33. package/dist/dsl/registry.d.ts +6 -0
  34. package/dist/dsl/registry.d.ts.map +1 -0
  35. package/dist/dsl/registry.js +4 -0
  36. package/dist/dsl/registry.js.map +1 -0
  37. package/dist/dsl/service.d.ts +24 -0
  38. package/dist/dsl/service.d.ts.map +1 -0
  39. package/dist/dsl/service.js +20 -0
  40. package/dist/dsl/service.js.map +1 -0
  41. package/dist/dsl/step.d.ts +10 -0
  42. package/dist/dsl/step.d.ts.map +1 -0
  43. package/dist/dsl/step.js +17 -0
  44. package/dist/dsl/step.js.map +1 -0
  45. package/dist/dsl/task.d.ts +38 -0
  46. package/dist/dsl/task.d.ts.map +1 -0
  47. package/dist/dsl/task.js +66 -0
  48. package/dist/dsl/task.js.map +1 -0
  49. package/dist/dsl/types.d.ts +12 -0
  50. package/dist/dsl/types.d.ts.map +1 -0
  51. package/dist/dsl/types.js +2 -0
  52. package/dist/dsl/types.js.map +1 -0
  53. package/dist/dsl/utils.d.ts +2 -0
  54. package/dist/dsl/utils.d.ts.map +1 -0
  55. package/dist/dsl/utils.js +7 -0
  56. package/dist/dsl/utils.js.map +1 -0
  57. package/dist/engine/cache/analyze.d.ts +12 -0
  58. package/dist/engine/cache/analyze.d.ts.map +1 -0
  59. package/dist/engine/cache/analyze.js +103 -0
  60. package/dist/engine/cache/analyze.js.map +1 -0
  61. package/dist/engine/cache/coordinator.d.ts +99 -0
  62. package/dist/engine/cache/coordinator.d.ts.map +1 -0
  63. package/dist/engine/cache/coordinator.js +794 -0
  64. package/dist/engine/cache/coordinator.js.map +1 -0
  65. package/dist/engine/cache/hasher.d.ts +9 -0
  66. package/dist/engine/cache/hasher.d.ts.map +1 -0
  67. package/dist/engine/cache/hasher.js +50 -0
  68. package/dist/engine/cache/hasher.js.map +1 -0
  69. package/dist/engine/cache/inference.d.ts +3 -0
  70. package/dist/engine/cache/inference.d.ts.map +1 -0
  71. package/dist/engine/cache/inference.js +43 -0
  72. package/dist/engine/cache/inference.js.map +1 -0
  73. package/dist/engine/cache/serialize.d.ts +2 -0
  74. package/dist/engine/cache/serialize.d.ts.map +1 -0
  75. package/dist/engine/cache/serialize.js +21 -0
  76. package/dist/engine/cache/serialize.js.map +1 -0
  77. package/dist/engine/cache/store.d.ts +75 -0
  78. package/dist/engine/cache/store.d.ts.map +1 -0
  79. package/dist/engine/cache/store.js +208 -0
  80. package/dist/engine/cache/store.js.map +1 -0
  81. package/dist/engine/executor/command-runner.d.ts +26 -0
  82. package/dist/engine/executor/command-runner.d.ts.map +1 -0
  83. package/dist/engine/executor/command-runner.js +151 -0
  84. package/dist/engine/executor/command-runner.js.map +1 -0
  85. package/dist/engine/executor/executor.d.ts +6 -0
  86. package/dist/engine/executor/executor.d.ts.map +1 -0
  87. package/dist/engine/executor/executor.js +29 -0
  88. package/dist/engine/executor/executor.js.map +1 -0
  89. package/dist/engine/executor/file-system.d.ts +5 -0
  90. package/dist/engine/executor/file-system.d.ts.map +1 -0
  91. package/dist/engine/executor/file-system.js +50 -0
  92. package/dist/engine/executor/file-system.js.map +1 -0
  93. package/dist/engine/executor/index.d.ts +3 -0
  94. package/dist/engine/executor/index.d.ts.map +1 -0
  95. package/dist/engine/executor/index.js +2 -0
  96. package/dist/engine/executor/index.js.map +1 -0
  97. package/dist/engine/executor/plan-runner.d.ts +37 -0
  98. package/dist/engine/executor/plan-runner.d.ts.map +1 -0
  99. package/dist/engine/executor/plan-runner.js +427 -0
  100. package/dist/engine/executor/plan-runner.js.map +1 -0
  101. package/dist/engine/executor/types.d.ts +73 -0
  102. package/dist/engine/executor/types.d.ts.map +1 -0
  103. package/dist/engine/executor/types.js +2 -0
  104. package/dist/engine/executor/types.js.map +1 -0
  105. package/dist/engine/executor/value-resolver.d.ts +14 -0
  106. package/dist/engine/executor/value-resolver.d.ts.map +1 -0
  107. package/dist/engine/executor/value-resolver.js +63 -0
  108. package/dist/engine/executor/value-resolver.js.map +1 -0
  109. package/dist/engine/handlers/annotate-handler.d.ts +8 -0
  110. package/dist/engine/handlers/annotate-handler.d.ts.map +1 -0
  111. package/dist/engine/handlers/annotate-handler.js +8 -0
  112. package/dist/engine/handlers/annotate-handler.js.map +1 -0
  113. package/dist/engine/handlers/artifact-download-handler.d.ts +8 -0
  114. package/dist/engine/handlers/artifact-download-handler.d.ts.map +1 -0
  115. package/dist/engine/handlers/artifact-download-handler.js +38 -0
  116. package/dist/engine/handlers/artifact-download-handler.js.map +1 -0
  117. package/dist/engine/handlers/artifact-upload-handler.d.ts +8 -0
  118. package/dist/engine/handlers/artifact-upload-handler.d.ts.map +1 -0
  119. package/dist/engine/handlers/artifact-upload-handler.js +26 -0
  120. package/dist/engine/handlers/artifact-upload-handler.js.map +1 -0
  121. package/dist/engine/handlers/bind-service-handler.d.ts +8 -0
  122. package/dist/engine/handlers/bind-service-handler.d.ts.map +1 -0
  123. package/dist/engine/handlers/bind-service-handler.js +8 -0
  124. package/dist/engine/handlers/bind-service-handler.js.map +1 -0
  125. package/dist/engine/handlers/cache-mount-handler.d.ts +8 -0
  126. package/dist/engine/handlers/cache-mount-handler.d.ts.map +1 -0
  127. package/dist/engine/handlers/cache-mount-handler.js +16 -0
  128. package/dist/engine/handlers/cache-mount-handler.js.map +1 -0
  129. package/dist/engine/handlers/command-handler.d.ts +10 -0
  130. package/dist/engine/handlers/command-handler.d.ts.map +1 -0
  131. package/dist/engine/handlers/command-handler.js +11 -0
  132. package/dist/engine/handlers/command-handler.js.map +1 -0
  133. package/dist/engine/handlers/emit-handler.d.ts +8 -0
  134. package/dist/engine/handlers/emit-handler.d.ts.map +1 -0
  135. package/dist/engine/handlers/emit-handler.js +8 -0
  136. package/dist/engine/handlers/emit-handler.js.map +1 -0
  137. package/dist/engine/handlers/env-handler.d.ts +8 -0
  138. package/dist/engine/handlers/env-handler.d.ts.map +1 -0
  139. package/dist/engine/handlers/env-handler.js +9 -0
  140. package/dist/engine/handlers/env-handler.js.map +1 -0
  141. package/dist/engine/handlers/handler.d.ts +18 -0
  142. package/dist/engine/handlers/handler.d.ts.map +1 -0
  143. package/dist/engine/handlers/handler.js +2 -0
  144. package/dist/engine/handlers/handler.js.map +1 -0
  145. package/dist/engine/handlers/http-handler.d.ts +8 -0
  146. package/dist/engine/handlers/http-handler.d.ts.map +1 -0
  147. package/dist/engine/handlers/http-handler.js +77 -0
  148. package/dist/engine/handlers/http-handler.js.map +1 -0
  149. package/dist/engine/handlers/pack-handler.d.ts +8 -0
  150. package/dist/engine/handlers/pack-handler.d.ts.map +1 -0
  151. package/dist/engine/handlers/pack-handler.js +16 -0
  152. package/dist/engine/handlers/pack-handler.js.map +1 -0
  153. package/dist/engine/handlers/registry.d.ts +9 -0
  154. package/dist/engine/handlers/registry.d.ts.map +1 -0
  155. package/dist/engine/handlers/registry.js +14 -0
  156. package/dist/engine/handlers/registry.js.map +1 -0
  157. package/dist/engine/handlers/report-handler.d.ts +8 -0
  158. package/dist/engine/handlers/report-handler.d.ts.map +1 -0
  159. package/dist/engine/handlers/report-handler.js +13 -0
  160. package/dist/engine/handlers/report-handler.js.map +1 -0
  161. package/dist/engine/handlers/summary-handler.d.ts +8 -0
  162. package/dist/engine/handlers/summary-handler.d.ts.map +1 -0
  163. package/dist/engine/handlers/summary-handler.js +8 -0
  164. package/dist/engine/handlers/summary-handler.js.map +1 -0
  165. package/dist/engine/handlers/unpack-handler.d.ts +12 -0
  166. package/dist/engine/handlers/unpack-handler.d.ts.map +1 -0
  167. package/dist/engine/handlers/unpack-handler.js +31 -0
  168. package/dist/engine/handlers/unpack-handler.js.map +1 -0
  169. package/dist/engine/handlers/use-handler.d.ts +12 -0
  170. package/dist/engine/handlers/use-handler.d.ts.map +1 -0
  171. package/dist/engine/handlers/use-handler.js +29 -0
  172. package/dist/engine/handlers/use-handler.js.map +1 -0
  173. package/dist/engine/index.d.ts +11 -0
  174. package/dist/engine/index.d.ts.map +1 -0
  175. package/dist/engine/index.js +7 -0
  176. package/dist/engine/index.js.map +1 -0
  177. package/dist/engine/providers/artifact.d.ts +5 -0
  178. package/dist/engine/providers/artifact.d.ts.map +1 -0
  179. package/dist/engine/providers/artifact.js +2 -0
  180. package/dist/engine/providers/artifact.js.map +1 -0
  181. package/dist/engine/providers/cache.d.ts +6 -0
  182. package/dist/engine/providers/cache.d.ts.map +1 -0
  183. package/dist/engine/providers/cache.js +2 -0
  184. package/dist/engine/providers/cache.js.map +1 -0
  185. package/dist/engine/providers/index.d.ts +5 -0
  186. package/dist/engine/providers/index.d.ts.map +1 -0
  187. package/dist/engine/providers/index.js +2 -0
  188. package/dist/engine/providers/index.js.map +1 -0
  189. package/dist/engine/providers/local.d.ts +16 -0
  190. package/dist/engine/providers/local.d.ts.map +1 -0
  191. package/dist/engine/providers/local.js +81 -0
  192. package/dist/engine/providers/local.js.map +1 -0
  193. package/dist/engine/providers/types.d.ts +20 -0
  194. package/dist/engine/providers/types.d.ts.map +1 -0
  195. package/dist/engine/providers/types.js +2 -0
  196. package/dist/engine/providers/types.js.map +1 -0
  197. package/dist/errors/index.d.ts +60 -0
  198. package/dist/errors/index.d.ts.map +1 -0
  199. package/dist/errors/index.js +66 -0
  200. package/dist/errors/index.js.map +1 -0
  201. package/dist/index.d.ts +8 -0
  202. package/dist/index.d.ts.map +1 -0
  203. package/dist/index.js +7 -0
  204. package/dist/index.js.map +1 -0
  205. package/dist/ops/annotate.d.ts +28 -0
  206. package/dist/ops/annotate.d.ts.map +1 -0
  207. package/dist/ops/annotate.js +34 -0
  208. package/dist/ops/annotate.js.map +1 -0
  209. package/dist/ops/artifact.d.ts +49 -0
  210. package/dist/ops/artifact.d.ts.map +1 -0
  211. package/dist/ops/artifact.js +77 -0
  212. package/dist/ops/artifact.js.map +1 -0
  213. package/dist/ops/base.d.ts +22 -0
  214. package/dist/ops/base.d.ts.map +1 -0
  215. package/dist/ops/base.js +2 -0
  216. package/dist/ops/base.js.map +1 -0
  217. package/dist/ops/bind.d.ts +18 -0
  218. package/dist/ops/bind.d.ts.map +1 -0
  219. package/dist/ops/bind.js +25 -0
  220. package/dist/ops/bind.js.map +1 -0
  221. package/dist/ops/bundle.d.ts +48 -0
  222. package/dist/ops/bundle.d.ts.map +1 -0
  223. package/dist/ops/bundle.js +70 -0
  224. package/dist/ops/bundle.js.map +1 -0
  225. package/dist/ops/cache.d.ts +74 -0
  226. package/dist/ops/cache.d.ts.map +1 -0
  227. package/dist/ops/cache.js +103 -0
  228. package/dist/ops/cache.js.map +1 -0
  229. package/dist/ops/env.d.ts +22 -0
  230. package/dist/ops/env.d.ts.map +1 -0
  231. package/dist/ops/env.js +63 -0
  232. package/dist/ops/env.js.map +1 -0
  233. package/dist/ops/errors.d.ts +36 -0
  234. package/dist/ops/errors.d.ts.map +1 -0
  235. package/dist/ops/errors.js +41 -0
  236. package/dist/ops/errors.js.map +1 -0
  237. package/dist/ops/http.d.ts +50 -0
  238. package/dist/ops/http.d.ts.map +1 -0
  239. package/dist/ops/http.js +108 -0
  240. package/dist/ops/http.js.map +1 -0
  241. package/dist/ops/index.d.ts +34 -0
  242. package/dist/ops/index.d.ts.map +1 -0
  243. package/dist/ops/index.js +17 -0
  244. package/dist/ops/index.js.map +1 -0
  245. package/dist/ops/operation-base.d.ts +14 -0
  246. package/dist/ops/operation-base.d.ts.map +1 -0
  247. package/dist/ops/operation-base.js +18 -0
  248. package/dist/ops/operation-base.js.map +1 -0
  249. package/dist/ops/operation.d.ts +40 -0
  250. package/dist/ops/operation.d.ts.map +1 -0
  251. package/dist/ops/operation.js +14 -0
  252. package/dist/ops/operation.js.map +1 -0
  253. package/dist/ops/output.d.ts +58 -0
  254. package/dist/ops/output.d.ts.map +1 -0
  255. package/dist/ops/output.js +74 -0
  256. package/dist/ops/output.js.map +1 -0
  257. package/dist/ops/param.d.ts +4 -0
  258. package/dist/ops/param.d.ts.map +1 -0
  259. package/dist/ops/param.js +3 -0
  260. package/dist/ops/param.js.map +1 -0
  261. package/dist/ops/ref.d.ts +21 -0
  262. package/dist/ops/ref.d.ts.map +1 -0
  263. package/dist/ops/ref.js +23 -0
  264. package/dist/ops/ref.js.map +1 -0
  265. package/dist/ops/report.d.ts +20 -0
  266. package/dist/ops/report.d.ts.map +1 -0
  267. package/dist/ops/report.js +24 -0
  268. package/dist/ops/report.js.map +1 -0
  269. package/dist/ops/secret.d.ts +4 -0
  270. package/dist/ops/secret.d.ts.map +1 -0
  271. package/dist/ops/secret.js +2 -0
  272. package/dist/ops/secret.js.map +1 -0
  273. package/dist/ops/shell.d.ts +42 -0
  274. package/dist/ops/shell.d.ts.map +1 -0
  275. package/dist/ops/shell.js +73 -0
  276. package/dist/ops/shell.js.map +1 -0
  277. package/dist/ops/summary.d.ts +19 -0
  278. package/dist/ops/summary.d.ts.map +1 -0
  279. package/dist/ops/summary.js +23 -0
  280. package/dist/ops/summary.js.map +1 -0
  281. package/dist/ops/template.d.ts +26 -0
  282. package/dist/ops/template.d.ts.map +1 -0
  283. package/dist/ops/template.js +83 -0
  284. package/dist/ops/template.js.map +1 -0
  285. package/dist/ops/types.d.ts +23 -0
  286. package/dist/ops/types.d.ts.map +1 -0
  287. package/dist/ops/types.js +5 -0
  288. package/dist/ops/types.js.map +1 -0
  289. package/dist/version.d.ts +2 -0
  290. package/dist/version.d.ts.map +1 -0
  291. package/dist/version.js +2 -0
  292. package/dist/version.js.map +1 -0
  293. package/package.json +54 -0
@@ -0,0 +1,50 @@
1
+ import type { CacheAnalysisContext, CachePlaceholderContext, Operation } from './operation.js';
2
+ import { type TemplateInput, type TemplatePart } from './template.js';
3
+ import type { Interpolatable } from './types.js';
4
+ export type HttpMethod = 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE' | 'HEAD' | 'OPTIONS';
5
+ export interface HttpHeader {
6
+ name: string;
7
+ value: TemplatePart[];
8
+ }
9
+ export interface HttpOp {
10
+ kind: 'http';
11
+ method: HttpMethod;
12
+ url: TemplatePart[];
13
+ headers: HttpHeader[];
14
+ body?: TemplatePart[] | undefined;
15
+ bodyPath?: string | undefined;
16
+ }
17
+ export interface HttpResponse {
18
+ status: number;
19
+ ok: boolean;
20
+ headers: Record<string, string>;
21
+ body: string;
22
+ }
23
+ export declare class HttpBuilder implements Operation<HttpOp> {
24
+ readonly op: HttpOp;
25
+ constructor(op: HttpOp);
26
+ get kind(): HttpOp['kind'];
27
+ toOp(): HttpOp;
28
+ analysisPlaceholder(): unknown;
29
+ extractDependencies(_taskName: string): [];
30
+ extractSecrets(): string[];
31
+ extractRefs(): [];
32
+ cacheNormalize(context: CacheAnalysisContext): unknown;
33
+ cachePlaceholder(context: CachePlaceholderContext): unknown;
34
+ header(name: string, value: TemplateInput, ...values: Interpolatable[]): HttpBuilder;
35
+ headers(values: Record<string, TemplateInput>): HttpBuilder;
36
+ body(value: TemplateInput, ...values: Interpolatable[]): HttpBuilder;
37
+ bodyPath(path: string): HttpBuilder;
38
+ jsonBody(value: unknown): HttpBuilder;
39
+ }
40
+ export declare const http: {
41
+ request: (method: HttpMethod, url: TemplateInput, ...values: Interpolatable[]) => HttpBuilder;
42
+ get: (url: TemplateInput, ...values: Interpolatable[]) => HttpBuilder;
43
+ post: (url: TemplateInput, ...values: Interpolatable[]) => HttpBuilder;
44
+ put: (url: TemplateInput, ...values: Interpolatable[]) => HttpBuilder;
45
+ patch: (url: TemplateInput, ...values: Interpolatable[]) => HttpBuilder;
46
+ delete: (url: TemplateInput, ...values: Interpolatable[]) => HttpBuilder;
47
+ head: (url: TemplateInput, ...values: Interpolatable[]) => HttpBuilder;
48
+ options: (url: TemplateInput, ...values: Interpolatable[]) => HttpBuilder;
49
+ };
50
+ //# sourceMappingURL=http.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../src/ops/http.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC/F,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,YAAY,EAKlB,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEjD,MAAM,MAAM,UAAU,GAAG,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,GAAG,SAAS,CAAC;AAE1F,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,YAAY,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,MAAM;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,UAAU,CAAC;IACnB,GAAG,EAAE,YAAY,EAAE,CAAC;IACpB,OAAO,EAAE,UAAU,EAAE,CAAC;IACtB,IAAI,CAAC,EAAE,YAAY,EAAE,GAAG,SAAS,CAAC;IAClC,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC/B;AAED,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,EAAE,EAAE,OAAO,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,IAAI,EAAE,MAAM,CAAC;CACd;AAKD,qBAAa,WAAY,YAAW,SAAS,CAAC,MAAM,CAAC;IACnD,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;gBAER,EAAE,EAAE,MAAM;IAItB,IAAI,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,CAEzB;IAED,IAAI,IAAI,MAAM;IAId,mBAAmB,IAAI,OAAO;IAI9B,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,EAAE;IAI1C,cAAc,IAAI,MAAM,EAAE;IAY1B,WAAW,IAAI,EAAE;IAIjB,cAAc,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO;IAqBtD,gBAAgB,CAAC,OAAO,EAAE,uBAAuB,GAAG,OAAO;IAK3D,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,GAAG,MAAM,EAAE,cAAc,EAAE,GAAG,WAAW;IAKpF,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,GAAG,WAAW;IAQ3D,IAAI,CAAC,KAAK,EAAE,aAAa,EAAE,GAAG,MAAM,EAAE,cAAc,EAAE,GAAG,WAAW;IAQpE,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW;IAInC,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,WAAW;CAQtC;AAcD,eAAO,MAAM,IAAI;sBACG,UAAU,OAAO,aAAa,aAAa,cAAc,EAAE,KAAG,WAAW;eAEhF,aAAa,aAAa,cAAc,EAAE,KAAG,WAAW;gBAEvD,aAAa,aAAa,cAAc,EAAE,KAAG,WAAW;eAEzD,aAAa,aAAa,cAAc,EAAE,KAAG,WAAW;iBAEtD,aAAa,aAAa,cAAc,EAAE,KAAG,WAAW;kBAEvD,aAAa,aAAa,cAAc,EAAE,KAAG,WAAW;gBAE1D,aAAa,aAAa,cAAc,EAAE,KAAG,WAAW;mBAErD,aAAa,aAAa,cAAc,EAAE,KAAG,WAAW;CAExE,CAAC"}
@@ -0,0 +1,108 @@
1
+ import { collectTemplateMetadata, collectTemplateSecrets, normalizeTemplatePart, templateFromInput, } from './template.js';
2
+ const hasHeader = (headers, name) => headers.some((header) => header.name.toLowerCase() === name.toLowerCase());
3
+ export class HttpBuilder {
4
+ op;
5
+ constructor(op) {
6
+ this.op = op;
7
+ }
8
+ get kind() {
9
+ return this.op.kind;
10
+ }
11
+ toOp() {
12
+ return this.op;
13
+ }
14
+ analysisPlaceholder() {
15
+ return { status: 200, ok: true, headers: {}, body: '' };
16
+ }
17
+ extractDependencies(_taskName) {
18
+ return [];
19
+ }
20
+ extractSecrets() {
21
+ const names = new Set();
22
+ for (const name of collectTemplateSecrets(this.op.url))
23
+ names.add(name);
24
+ for (const header of this.op.headers) {
25
+ for (const name of collectTemplateSecrets(header.value))
26
+ names.add(name);
27
+ }
28
+ if (this.op.body) {
29
+ for (const name of collectTemplateSecrets(this.op.body))
30
+ names.add(name);
31
+ }
32
+ return Array.from(names);
33
+ }
34
+ extractRefs() {
35
+ return [];
36
+ }
37
+ cacheNormalize(context) {
38
+ collectTemplateMetadata(this.op.url, context.addSecret, context.addParam);
39
+ for (const header of this.op.headers) {
40
+ collectTemplateMetadata(header.value, context.addSecret, context.addParam);
41
+ }
42
+ if (this.op.body) {
43
+ collectTemplateMetadata(this.op.body, context.addSecret, context.addParam);
44
+ }
45
+ return {
46
+ kind: this.op.kind,
47
+ method: this.op.method,
48
+ url: this.op.url.map(normalizeTemplatePart),
49
+ headers: this.op.headers.map((header) => ({
50
+ name: header.name,
51
+ value: header.value.map(normalizeTemplatePart),
52
+ })),
53
+ body: this.op.body ? this.op.body.map(normalizeTemplatePart) : null,
54
+ bodyPath: this.op.bodyPath ?? null,
55
+ };
56
+ }
57
+ cachePlaceholder(context) {
58
+ if (!context.isPrimary)
59
+ return undefined;
60
+ return { status: 200, ok: true, headers: {}, body: '' };
61
+ }
62
+ header(name, value, ...values) {
63
+ const next = { name, value: templateFromInput(value, values) };
64
+ return new HttpBuilder({ ...this.op, headers: [...this.op.headers, next] });
65
+ }
66
+ headers(values) {
67
+ let builder = this;
68
+ for (const [name, value] of Object.entries(values)) {
69
+ builder = builder.header(name, value);
70
+ }
71
+ return builder;
72
+ }
73
+ body(value, ...values) {
74
+ return new HttpBuilder({
75
+ ...this.op,
76
+ body: templateFromInput(value, values),
77
+ bodyPath: undefined,
78
+ });
79
+ }
80
+ bodyPath(path) {
81
+ return new HttpBuilder({ ...this.op, bodyPath: path, body: undefined });
82
+ }
83
+ jsonBody(value) {
84
+ const body = JSON.stringify(value);
85
+ let builder = this.body(body);
86
+ if (!hasHeader(builder.op.headers, 'Content-Type')) {
87
+ builder = builder.header('Content-Type', 'application/json');
88
+ }
89
+ return builder;
90
+ }
91
+ }
92
+ const buildRequest = (method, url, values) => new HttpBuilder({
93
+ kind: 'http',
94
+ method,
95
+ url: templateFromInput(url, values),
96
+ headers: [],
97
+ });
98
+ export const http = {
99
+ request: (method, url, ...values) => buildRequest(method, url, values),
100
+ get: (url, ...values) => buildRequest('GET', url, values),
101
+ post: (url, ...values) => buildRequest('POST', url, values),
102
+ put: (url, ...values) => buildRequest('PUT', url, values),
103
+ patch: (url, ...values) => buildRequest('PATCH', url, values),
104
+ delete: (url, ...values) => buildRequest('DELETE', url, values),
105
+ head: (url, ...values) => buildRequest('HEAD', url, values),
106
+ options: (url, ...values) => buildRequest('OPTIONS', url, values),
107
+ };
108
+ //# sourceMappingURL=http.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"http.js","sourceRoot":"","sources":["../../src/ops/http.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,34 @@
1
+ export type { Op, OpError, OpResult } from './base.js';
2
+ export type { OpErrorType } from './errors.js';
3
+ export { OpErrors } from './errors.js';
4
+ export type { Operation, OperationRef, TaskDependency } from './operation.js';
5
+ export { isOperation } from './operation.js';
6
+ export { sh, CommandBuilder } from './shell.js';
7
+ export type { CommandOp, CommandCacheConfig, CommandCacheOptions, TemplatePart, InterpolatedValue, } from './shell.js';
8
+ export { http, HttpBuilder } from './http.js';
9
+ export type { HttpOp, HttpResponse, HttpHeader, HttpMethod } from './http.js';
10
+ export { env } from './env.js';
11
+ export type { EnvOp } from './env.js';
12
+ export { secret } from './secret.js';
13
+ export type { SecretRef } from './secret.js';
14
+ export { param } from './param.js';
15
+ export type { ParamRef } from './param.js';
16
+ export { cache, cacheOr } from './cache.js';
17
+ export type { CacheKey, CacheMountOp, CacheRef, CacheOp, CacheOptions, CacheOrOp, CacheOrOptions, } from './cache.js';
18
+ export { artifact, ArtifactDownloadBuilder, ArtifactUploadBuilder } from './artifact.js';
19
+ export type { ArtifactDownloadOp, ArtifactUploadOp } from './artifact.js';
20
+ export { out, emit, use } from './output.js';
21
+ export type { EmitOp, UseOp, ValueRef } from './output.js';
22
+ export { pack, unpack } from './bundle.js';
23
+ export type { BundleRef, PackOp, UnpackOp } from './bundle.js';
24
+ export { summary } from './summary.js';
25
+ export type { SummaryOp } from './summary.js';
26
+ export { annotate } from './annotate.js';
27
+ export type { AnnotateLocation, AnnotateOp } from './annotate.js';
28
+ export { report } from './report.js';
29
+ export type { ReportOp } from './report.js';
30
+ export { bind } from './bind.js';
31
+ export type { BindServiceOp } from './bind.js';
32
+ export type { AnyRef, BaseRef, Interpolatable, ParseableRef } from './types.js';
33
+ export { isParamRef, isRef, isSecretRef, isValueRef } from './types.js';
34
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ops/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AACvD,YAAY,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,YAAY,EAAE,SAAS,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC9E,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,EAAE,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAChD,YAAY,EACV,SAAS,EACT,kBAAkB,EAClB,mBAAmB,EACnB,YAAY,EACZ,iBAAiB,GAClB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAC9C,YAAY,EAAE,MAAM,EAAE,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAC9E,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAC/B,YAAY,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACtC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,YAAY,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,YAAY,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5C,YAAY,EACV,QAAQ,EACR,YAAY,EACZ,QAAQ,EACR,OAAO,EACP,YAAY,EACZ,SAAS,EACT,cAAc,GACf,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,QAAQ,EAAE,uBAAuB,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACzF,YAAY,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAC1E,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAC7C,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC3D,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAC3C,YAAY,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC/D,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,YAAY,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,YAAY,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAClE,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,YAAY,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,YAAY,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC/C,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAChF,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC"}
@@ -0,0 +1,17 @@
1
+ export { OpErrors } from './errors.js';
2
+ export { isOperation } from './operation.js';
3
+ export { sh, CommandBuilder } from './shell.js';
4
+ export { http, HttpBuilder } from './http.js';
5
+ export { env } from './env.js';
6
+ export { secret } from './secret.js';
7
+ export { param } from './param.js';
8
+ export { cache, cacheOr } from './cache.js';
9
+ export { artifact, ArtifactDownloadBuilder, ArtifactUploadBuilder } from './artifact.js';
10
+ export { out, emit, use } from './output.js';
11
+ export { pack, unpack } from './bundle.js';
12
+ export { summary } from './summary.js';
13
+ export { annotate } from './annotate.js';
14
+ export { report } from './report.js';
15
+ export { bind } from './bind.js';
16
+ export { isParamRef, isRef, isSecretRef, isValueRef } from './types.js';
17
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ops/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,EAAE,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAQhD,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAE9C,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAE/B,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEnC,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAU5C,OAAO,EAAE,QAAQ,EAAE,uBAAuB,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAEzF,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAE7C,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAE3C,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAGjC,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC"}
@@ -0,0 +1,14 @@
1
+ import type { CacheAnalysisContext, CachePlaceholderContext, Operation, OperationRef, TaskDependency } from './operation.js';
2
+ export declare abstract class OperationBase<TOp extends {
3
+ kind: string;
4
+ }> implements Operation<TOp> {
5
+ abstract get kind(): TOp['kind'];
6
+ abstract toOp(): TOp;
7
+ abstract cacheNormalize(context: CacheAnalysisContext): unknown;
8
+ analysisPlaceholder(): undefined;
9
+ extractDependencies(_taskName: string): TaskDependency[];
10
+ extractSecrets(): string[];
11
+ extractRefs(): OperationRef[];
12
+ cachePlaceholder(context: CachePlaceholderContext): unknown;
13
+ }
14
+ //# sourceMappingURL=operation-base.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operation-base.d.ts","sourceRoot":"","sources":["../../src/ops/operation-base.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,oBAAoB,EACpB,uBAAuB,EACvB,SAAS,EACT,YAAY,EACZ,cAAc,EACf,MAAM,gBAAgB,CAAC;AAExB,8BAAsB,aAAa,CAAC,GAAG,SAAS;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAE,YAAW,SAAS,CAAC,GAAG,CAAC;IACzF,QAAQ,KAAK,IAAI,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC;IACjC,QAAQ,CAAC,IAAI,IAAI,GAAG;IACpB,QAAQ,CAAC,cAAc,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO;IAE/D,mBAAmB,IAAI,SAAS;IAIhC,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,cAAc,EAAE;IAIxD,cAAc,IAAI,MAAM,EAAE;IAI1B,WAAW,IAAI,YAAY,EAAE;IAI7B,gBAAgB,CAAC,OAAO,EAAE,uBAAuB,GAAG,OAAO;CAG5D"}
@@ -0,0 +1,18 @@
1
+ export class OperationBase {
2
+ analysisPlaceholder() {
3
+ return undefined;
4
+ }
5
+ extractDependencies(_taskName) {
6
+ return [];
7
+ }
8
+ extractSecrets() {
9
+ return [];
10
+ }
11
+ extractRefs() {
12
+ return [];
13
+ }
14
+ cachePlaceholder(context) {
15
+ return context.value;
16
+ }
17
+ }
18
+ //# sourceMappingURL=operation-base.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operation-base.js","sourceRoot":"","sources":["../../src/ops/operation-base.ts"],"names":[],"mappings":"AAQA,MAAM,OAAgB,aAAa;IAKjC,mBAAmB;QACjB,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,mBAAmB,CAAC,SAAiB;QACnC,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,cAAc;QACZ,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,WAAW;QACT,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,gBAAgB,CAAC,OAAgC;QAC/C,OAAO,OAAO,CAAC,KAAK,CAAC;IACvB,CAAC;CACF"}
@@ -0,0 +1,40 @@
1
+ export interface TaskDependency {
2
+ from: string;
3
+ to: string;
4
+ type: 'needs' | 'use' | 'unpack';
5
+ }
6
+ export type OperationRef = {
7
+ type: 'value' | 'bundle';
8
+ ref: unknown;
9
+ };
10
+ export interface CachePlaceholderContext {
11
+ value: unknown;
12
+ isPrimary: boolean;
13
+ }
14
+ export type StepGeneratorLike = (ctx: StepCtx) => Generator<Operation, unknown, unknown>;
15
+ export interface CacheAnalysisContext {
16
+ addCommandSignature: (signature: string) => void;
17
+ addDependency: (name: string) => void;
18
+ addSecret: (name: string) => void;
19
+ addParam: (name: string) => void;
20
+ analyzeNested: (compute: StepGeneratorLike, resultValue: unknown) => unknown[];
21
+ resultValue: unknown;
22
+ placeholder: CachePlaceholderContext;
23
+ }
24
+ export interface Operation<TOp extends {
25
+ kind: string;
26
+ } = {
27
+ kind: string;
28
+ }> {
29
+ readonly kind: TOp['kind'];
30
+ toOp(): TOp;
31
+ analysisPlaceholder(): unknown;
32
+ extractDependencies(taskName: string): TaskDependency[];
33
+ extractSecrets(): string[];
34
+ extractRefs(): OperationRef[];
35
+ cacheNormalize(context: CacheAnalysisContext): unknown;
36
+ cachePlaceholder(context: CachePlaceholderContext): unknown;
37
+ }
38
+ export declare const isOperation: (value: unknown) => value is Operation;
39
+ import type { StepCtx } from '../dsl/types.js';
40
+ //# sourceMappingURL=operation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operation.d.ts","sourceRoot":"","sources":["../../src/ops/operation.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,OAAO,GAAG,KAAK,GAAG,QAAQ,CAAC;CAClC;AAED,MAAM,MAAM,YAAY,GAAG;IAAE,IAAI,EAAE,OAAO,GAAG,QAAQ,CAAC;IAAC,GAAG,EAAE,OAAO,CAAA;CAAE,CAAC;AAEtE,MAAM,WAAW,uBAAuB;IACtC,KAAK,EAAE,OAAO,CAAC;IACf,SAAS,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,MAAM,iBAAiB,GAAG,CAAC,GAAG,EAAE,OAAO,KAAK,SAAS,CAAC,SAAS,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;AAEzF,MAAM,WAAW,oBAAoB;IACnC,mBAAmB,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IACjD,aAAa,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,SAAS,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACjC,aAAa,EAAE,CAAC,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,OAAO,KAAK,OAAO,EAAE,CAAC;IAC/E,WAAW,EAAE,OAAO,CAAC;IACrB,WAAW,EAAE,uBAAuB,CAAC;CACtC;AAED,MAAM,WAAW,SAAS,CAAC,GAAG,SAAS;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE;IACxE,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3B,IAAI,IAAI,GAAG,CAAC;IACZ,mBAAmB,IAAI,OAAO,CAAC;IAC/B,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,cAAc,EAAE,CAAC;IACxD,cAAc,IAAI,MAAM,EAAE,CAAC;IAC3B,WAAW,IAAI,YAAY,EAAE,CAAC;IAC9B,cAAc,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC;IACvD,gBAAgB,CAAC,OAAO,EAAE,uBAAuB,GAAG,OAAO,CAAC;CAC7D;AAED,eAAO,MAAM,WAAW,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,SAarD,CAAC;AACF,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC"}
@@ -0,0 +1,14 @@
1
+ export const isOperation = (value) => {
2
+ if (!value || typeof value !== 'object')
3
+ return false;
4
+ const op = value;
5
+ return (typeof op.kind === 'string' &&
6
+ typeof op.toOp === 'function' &&
7
+ typeof op.analysisPlaceholder === 'function' &&
8
+ typeof op.extractDependencies === 'function' &&
9
+ typeof op.extractSecrets === 'function' &&
10
+ typeof op.extractRefs === 'function' &&
11
+ typeof op.cacheNormalize === 'function' &&
12
+ typeof op.cachePlaceholder === 'function');
13
+ };
14
+ //# sourceMappingURL=operation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operation.js","sourceRoot":"","sources":["../../src/ops/operation.ts"],"names":[],"mappings":"AAoCA,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,KAAc,EAAsB,EAAE;IAChE,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IACtD,MAAM,EAAE,GAAG,KAAgC,CAAC;IAC5C,OAAO,CACL,OAAO,EAAE,CAAC,IAAI,KAAK,QAAQ;QAC3B,OAAO,EAAE,CAAC,IAAI,KAAK,UAAU;QAC7B,OAAO,EAAE,CAAC,mBAAmB,KAAK,UAAU;QAC5C,OAAO,EAAE,CAAC,mBAAmB,KAAK,UAAU;QAC5C,OAAO,EAAE,CAAC,cAAc,KAAK,UAAU;QACvC,OAAO,EAAE,CAAC,WAAW,KAAK,UAAU;QACpC,OAAO,EAAE,CAAC,cAAc,KAAK,UAAU;QACvC,OAAO,EAAE,CAAC,gBAAgB,KAAK,UAAU,CAC1C,CAAC;AACJ,CAAC,CAAC"}
@@ -0,0 +1,58 @@
1
+ import type { TaskBuilder } from '../dsl/task.js';
2
+ import type { BundleRef } from './bundle.js';
3
+ import type { CacheAnalysisContext, CachePlaceholderContext, Operation } from './operation.js';
4
+ import type { ValueRef } from './types.js';
5
+ export type { ValueRef } from './types.js';
6
+ export interface EmitOp<T> {
7
+ kind: 'emit';
8
+ ref: ValueRef<T>;
9
+ value: T;
10
+ }
11
+ export interface UseOp<T> {
12
+ kind: 'use';
13
+ from: TaskBuilder;
14
+ ref: ValueRef<T>;
15
+ }
16
+ export declare const out: {
17
+ readonly bundle: (name: string) => BundleRef;
18
+ readonly string: (name: string) => ValueRef<string>;
19
+ readonly number: (name: string) => ValueRef<number>;
20
+ readonly boolean: (name: string) => ValueRef<boolean>;
21
+ readonly json: <T>(name: string) => ValueRef<T>;
22
+ };
23
+ export declare const emit: <T>(ref: ValueRef<T>, value: T) => EmitOperation<T>;
24
+ export declare const use: <T>(from: TaskBuilder, ref: ValueRef<T>) => UseOperation<T>;
25
+ export declare class EmitOperation<T> implements Operation<EmitOp<T>> {
26
+ readonly ref: ValueRef<T>;
27
+ readonly value: T;
28
+ constructor(ref: ValueRef<T>, value: T);
29
+ get kind(): EmitOp<T>['kind'];
30
+ toOp(): EmitOp<T>;
31
+ analysisPlaceholder(): unknown;
32
+ extractDependencies(_taskName: string): [];
33
+ extractSecrets(): string[];
34
+ extractRefs(): [];
35
+ cacheNormalize(_context: CacheAnalysisContext): unknown;
36
+ cachePlaceholder(_context: CachePlaceholderContext): unknown;
37
+ }
38
+ export declare class UseOperation<T> implements Operation<UseOp<T>> {
39
+ readonly from: TaskBuilder;
40
+ readonly ref: ValueRef<T>;
41
+ constructor(from: TaskBuilder, ref: ValueRef<T>);
42
+ get kind(): UseOp<T>['kind'];
43
+ toOp(): UseOp<T>;
44
+ analysisPlaceholder(): unknown;
45
+ extractDependencies(taskName: string): Array<{
46
+ from: string;
47
+ to: string;
48
+ type: 'use';
49
+ }>;
50
+ extractSecrets(): string[];
51
+ extractRefs(): Array<{
52
+ type: 'value';
53
+ ref: ValueRef<T>;
54
+ }>;
55
+ cacheNormalize(context: CacheAnalysisContext): unknown;
56
+ cachePlaceholder(context: CachePlaceholderContext): unknown;
57
+ }
58
+ //# sourceMappingURL=output.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"output.d.ts","sourceRoot":"","sources":["../../src/ops/output.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE7C,OAAO,KAAK,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE/F,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAE3C,YAAY,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAE3C,MAAM,WAAW,MAAM,CAAC,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;IACjB,KAAK,EAAE,CAAC,CAAC;CACV;AAED,MAAM,WAAW,KAAK,CAAC,CAAC;IACtB,IAAI,EAAE,KAAK,CAAC;IACZ,IAAI,EAAE,WAAW,CAAC;IAClB,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;CAClB;AAED,eAAO,MAAM,GAAG;4BAEC,MAAM,KAAG,SAAS;;;;;CACzB,CAAC;AAEX,eAAO,MAAM,IAAI,GAAI,CAAC,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,KAAG,aAAa,CAAC,CAAC,CACrC,CAAC;AAEhC,eAAO,MAAM,GAAG,GAAI,CAAC,EAAE,MAAM,WAAW,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAG,YAAY,CAAC,CAAC,CAC9C,CAAC;AAE9B,qBAAa,aAAa,CAAC,CAAC,CAAE,YAAW,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAC3D,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC1B,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;gBAEN,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC;IAKtC,IAAI,IAAI,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAE5B;IAED,IAAI,IAAI,MAAM,CAAC,CAAC,CAAC;IAIjB,mBAAmB,IAAI,OAAO;IAI9B,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,EAAE;IAI1C,cAAc,IAAI,MAAM,EAAE;IAI1B,WAAW,IAAI,EAAE;IAIjB,cAAc,CAAC,QAAQ,EAAE,oBAAoB,GAAG,OAAO;IAIvD,gBAAgB,CAAC,QAAQ,EAAE,uBAAuB,GAAG,OAAO;CAG7D;AAED,qBAAa,YAAY,CAAC,CAAC,CAAE,YAAW,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACzD,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;gBAEd,IAAI,EAAE,WAAW,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC;IAK/C,IAAI,IAAI,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAE3B;IAED,IAAI,IAAI,KAAK,CAAC,CAAC,CAAC;IAIhB,mBAAmB,IAAI,OAAO;IAI9B,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,KAAK,CAAC;QAC3C,IAAI,EAAE,MAAM,CAAC;QACb,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,KAAK,CAAC;KACb,CAAC;IAIF,cAAc,IAAI,MAAM,EAAE;IAI1B,WAAW,IAAI,KAAK,CAAC;QAAE,IAAI,EAAE,OAAO,CAAC;QAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAA;KAAE,CAAC;IAIzD,cAAc,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO;IAKtD,gBAAgB,CAAC,OAAO,EAAE,uBAAuB,GAAG,OAAO;CAG5D"}
@@ -0,0 +1,74 @@
1
+ import { createBundleRef } from './bundle.js';
2
+ import { out as baseOut } from './ref.js';
3
+ export const out = {
4
+ ...baseOut,
5
+ bundle: (name) => createBundleRef(name),
6
+ };
7
+ export const emit = (ref, value) => new EmitOperation(ref, value);
8
+ export const use = (from, ref) => new UseOperation(from, ref);
9
+ export class EmitOperation {
10
+ ref;
11
+ value;
12
+ constructor(ref, value) {
13
+ this.ref = ref;
14
+ this.value = value;
15
+ }
16
+ get kind() {
17
+ return 'emit';
18
+ }
19
+ toOp() {
20
+ return { kind: 'emit', ref: this.ref, value: this.value };
21
+ }
22
+ analysisPlaceholder() {
23
+ return this.value;
24
+ }
25
+ extractDependencies(_taskName) {
26
+ return [];
27
+ }
28
+ extractSecrets() {
29
+ return [];
30
+ }
31
+ extractRefs() {
32
+ return [];
33
+ }
34
+ cacheNormalize(_context) {
35
+ return { kind: this.kind, ref: this.ref.name, value: this.value };
36
+ }
37
+ cachePlaceholder(_context) {
38
+ return this.value;
39
+ }
40
+ }
41
+ export class UseOperation {
42
+ from;
43
+ ref;
44
+ constructor(from, ref) {
45
+ this.from = from;
46
+ this.ref = ref;
47
+ }
48
+ get kind() {
49
+ return 'use';
50
+ }
51
+ toOp() {
52
+ return { kind: 'use', from: this.from, ref: this.ref };
53
+ }
54
+ analysisPlaceholder() {
55
+ return this.ref.parse('');
56
+ }
57
+ extractDependencies(taskName) {
58
+ return [{ from: this.from.config.name, to: taskName, type: 'use' }];
59
+ }
60
+ extractSecrets() {
61
+ return [];
62
+ }
63
+ extractRefs() {
64
+ return [{ type: 'value', ref: this.ref }];
65
+ }
66
+ cacheNormalize(context) {
67
+ context.addDependency(this.from.config.name);
68
+ return { kind: this.kind, from: this.from.config.name, ref: this.ref.name };
69
+ }
70
+ cachePlaceholder(context) {
71
+ return context.isPrimary ? this.ref.parse('') : undefined;
72
+ }
73
+ }
74
+ //# sourceMappingURL=output.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"output.js","sourceRoot":"","sources":["../../src/ops/output.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE9C,OAAO,EAAE,GAAG,IAAI,OAAO,EAAE,MAAM,UAAU,CAAC;AAiB1C,MAAM,CAAC,MAAM,GAAG,GAAG;IACjB,GAAG,OAAO;IACV,MAAM,EAAE,CAAC,IAAY,EAAa,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC;CAClD,CAAC;AAEX,MAAM,CAAC,MAAM,IAAI,GAAG,CAAI,GAAgB,EAAE,KAAQ,EAAoB,EAAE,CACtE,IAAI,aAAa,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;AAEhC,MAAM,CAAC,MAAM,GAAG,GAAG,CAAI,IAAiB,EAAE,GAAgB,EAAmB,EAAE,CAC7E,IAAI,YAAY,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;AAE9B,MAAM,OAAO,aAAa;IACf,GAAG,CAAc;IACjB,KAAK,CAAI;IAElB,YAAY,GAAgB,EAAE,KAAQ;QACpC,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACf,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IAED,IAAI,IAAI;QACN,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,IAAI;QACF,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC;IAC5D,CAAC;IAED,mBAAmB;QACjB,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,mBAAmB,CAAC,SAAiB;QACnC,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,cAAc;QACZ,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,WAAW;QACT,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,cAAc,CAAC,QAA8B;QAC3C,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC;IACpE,CAAC;IAED,gBAAgB,CAAC,QAAiC;QAChD,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;CACF;AAED,MAAM,OAAO,YAAY;IACd,IAAI,CAAc;IAClB,GAAG,CAAc;IAE1B,YAAY,IAAiB,EAAE,GAAgB;QAC7C,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;IACjB,CAAC;IAED,IAAI,IAAI;QACN,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI;QACF,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACzD,CAAC;IAED,mBAAmB;QACjB,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAC5B,CAAC;IAED,mBAAmB,CAAC,QAAgB;QAKlC,OAAO,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IACtE,CAAC;IAED,cAAc;QACZ,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,WAAW;QACT,OAAO,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IAC5C,CAAC;IAED,cAAc,CAAC,OAA6B;QAC1C,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC7C,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;IAC9E,CAAC;IAED,gBAAgB,CAAC,OAAgC;QAC/C,OAAO,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC5D,CAAC;CACF"}
@@ -0,0 +1,4 @@
1
+ import { param } from './ref.js';
2
+ export type { ParamRef } from './types.js';
3
+ export { param };
4
+ //# sourceMappingURL=param.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"param.d.ts","sourceRoot":"","sources":["../../src/ops/param.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAEjC,YAAY,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,KAAK,EAAE,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { param } from './ref.js';
2
+ export { param };
3
+ //# sourceMappingURL=param.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"param.js","sourceRoot":"","sources":["../../src/ops/param.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAGjC,OAAO,EAAE,KAAK,EAAE,CAAC"}
@@ -0,0 +1,21 @@
1
+ import type { ParamRef, ValueRef } from './types.js';
2
+ declare const createRefFactory: <K extends "param" | "value">(kind: K) => {
3
+ readonly string: (name: string) => K extends "param" ? ParamRef<string> : ValueRef<string>;
4
+ readonly number: (name: string) => K extends "param" ? ParamRef<number> : ValueRef<number>;
5
+ readonly boolean: (name: string) => K extends "param" ? ParamRef<boolean> : ValueRef<boolean>;
6
+ readonly json: <T>(name: string) => K extends "param" ? ParamRef<T> : ValueRef<T>;
7
+ };
8
+ export declare const param: {
9
+ readonly string: (name: string) => ParamRef<string>;
10
+ readonly number: (name: string) => ParamRef<number>;
11
+ readonly boolean: (name: string) => ParamRef<boolean>;
12
+ readonly json: <T>(name: string) => ParamRef<T>;
13
+ };
14
+ export declare const out: {
15
+ readonly string: (name: string) => ValueRef<string>;
16
+ readonly number: (name: string) => ValueRef<number>;
17
+ readonly boolean: (name: string) => ValueRef<boolean>;
18
+ readonly json: <T>(name: string) => ValueRef<T>;
19
+ };
20
+ export { createRefFactory };
21
+ //# sourceMappingURL=ref.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ref.d.ts","sourceRoot":"","sources":["../../src/ops/ref.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AASrD,QAAA,MAAM,gBAAgB,GAAI,CAAC,SAAS,OAAO,GAAG,OAAO,EAAE,MAAM,CAAC;4BAS3C,MAAM;4BACN,MAAM;6BACL,MAAM;oBACf,CAAC,QAAQ,MAAM;CAEzB,CAAC;AAEF,eAAO,MAAM,KAAK;4BAPC,MAAM;4BACN,MAAM;6BACL,MAAM;oBACf,CAAC,QAAQ,MAAM;CAIoB,CAAC;AAC/C,eAAO,MAAM,GAAG;4BARG,MAAM;4BACN,MAAM;6BACL,MAAM;oBACf,CAAC,QAAQ,MAAM;CAKkB,CAAC;AAC7C,OAAO,EAAE,gBAAgB,EAAE,CAAC"}
@@ -0,0 +1,23 @@
1
+ const coerce = {
2
+ string: (value) => String(value),
3
+ number: (value) => Number(value),
4
+ boolean: (value) => Boolean(value),
5
+ json: (value) => value,
6
+ };
7
+ const createRefFactory = (kind) => {
8
+ const ref = (name, parse) => ({
9
+ kind,
10
+ name,
11
+ parse,
12
+ });
13
+ return {
14
+ string: (name) => ref(name, coerce.string),
15
+ number: (name) => ref(name, coerce.number),
16
+ boolean: (name) => ref(name, coerce.boolean),
17
+ json: (name) => ref(name, coerce.json),
18
+ };
19
+ };
20
+ export const param = createRefFactory('param');
21
+ export const out = createRefFactory('value');
22
+ export { createRefFactory };
23
+ //# sourceMappingURL=ref.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ref.js","sourceRoot":"","sources":["../../src/ops/ref.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,GAAG;IACb,MAAM,EAAE,CAAC,KAAc,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC;IACzC,MAAM,EAAE,CAAC,KAAc,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC;IACzC,OAAO,EAAE,CAAC,KAAc,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IAC3C,IAAI,EAAE,CAAI,KAAc,EAAE,EAAE,CAAC,KAAU;CAC/B,CAAC;AAEX,MAAM,gBAAgB,GAAG,CAA8B,IAAO,EAAE,EAAE;IAChE,MAAM,GAAG,GAAG,CAAI,IAAY,EAAE,KAA4B,EAAE,EAAE,CAC5D,CAAC;QACC,IAAI;QACJ,IAAI;QACJ,KAAK;KACN,CAAkD,CAAC;IAEtD,OAAO;QACL,MAAM,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC;QAClD,MAAM,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC;QAClD,OAAO,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC;QACpD,IAAI,EAAE,CAAI,IAAY,EAAE,EAAE,CAAC,GAAG,CAAI,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC;KAC5C,CAAC;AACb,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,KAAK,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;AAC/C,MAAM,CAAC,MAAM,GAAG,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;AAC7C,OAAO,EAAE,gBAAgB,EAAE,CAAC"}
@@ -0,0 +1,20 @@
1
+ import { OperationBase } from './operation-base.js';
2
+ import type { CacheAnalysisContext } from './operation.js';
3
+ export interface ReportOp {
4
+ kind: 'report';
5
+ reportType: 'junit' | 'coverage';
6
+ path: string;
7
+ }
8
+ export declare class ReportOperation extends OperationBase<ReportOp> {
9
+ readonly reportType: ReportOp['reportType'];
10
+ readonly path: string;
11
+ constructor(reportType: ReportOp['reportType'], path: string);
12
+ get kind(): ReportOp['kind'];
13
+ toOp(): ReportOp;
14
+ cacheNormalize(_context: CacheAnalysisContext): unknown;
15
+ }
16
+ export declare const report: {
17
+ junit: (path: string) => ReportOperation;
18
+ coverage: (path: string) => ReportOperation;
19
+ };
20
+ //# sourceMappingURL=report.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"report.d.ts","sourceRoot":"","sources":["../../src/ops/report.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAE3D,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,QAAQ,CAAC;IACf,UAAU,EAAE,OAAO,GAAG,UAAU,CAAC;IACjC,IAAI,EAAE,MAAM,CAAC;CACd;AAED,qBAAa,eAAgB,SAAQ,aAAa,CAAC,QAAQ,CAAC;IAC1D,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;IAC5C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;gBAEV,UAAU,EAAE,QAAQ,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,MAAM;IAM5D,IAAa,IAAI,IAAI,QAAQ,CAAC,MAAM,CAAC,CAEpC;IAEQ,IAAI,IAAI,QAAQ;IAIhB,cAAc,CAAC,QAAQ,EAAE,oBAAoB,GAAG,OAAO;CAGjE;AAED,eAAO,MAAM,MAAM;kBACH,MAAM,KAAG,eAAe;qBACrB,MAAM,KAAG,eAAe;CAC1C,CAAC"}
@@ -0,0 +1,24 @@
1
+ import { OperationBase } from './operation-base.js';
2
+ export class ReportOperation extends OperationBase {
3
+ reportType;
4
+ path;
5
+ constructor(reportType, path) {
6
+ super();
7
+ this.reportType = reportType;
8
+ this.path = path;
9
+ }
10
+ get kind() {
11
+ return 'report';
12
+ }
13
+ toOp() {
14
+ return { kind: 'report', reportType: this.reportType, path: this.path };
15
+ }
16
+ cacheNormalize(_context) {
17
+ return { kind: this.kind, reportType: this.reportType, path: this.path };
18
+ }
19
+ }
20
+ export const report = {
21
+ junit: (path) => new ReportOperation('junit', path),
22
+ coverage: (path) => new ReportOperation('coverage', path),
23
+ };
24
+ //# sourceMappingURL=report.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"report.js","sourceRoot":"","sources":["../../src/ops/report.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AASpD,MAAM,OAAO,eAAgB,SAAQ,aAAuB;IACjD,UAAU,CAAyB;IACnC,IAAI,CAAS;IAEtB,YAAY,UAAkC,EAAE,IAAY;QAC1D,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAED,IAAa,IAAI;QACf,OAAO,QAAQ,CAAC;IAClB,CAAC;IAEQ,IAAI;QACX,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;IAC1E,CAAC;IAEQ,cAAc,CAAC,QAA8B;QACpD,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;IAC3E,CAAC;CACF;AAED,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,KAAK,EAAE,CAAC,IAAY,EAAmB,EAAE,CAAC,IAAI,eAAe,CAAC,OAAO,EAAE,IAAI,CAAC;IAC5E,QAAQ,EAAE,CAAC,IAAY,EAAmB,EAAE,CAAC,IAAI,eAAe,CAAC,UAAU,EAAE,IAAI,CAAC;CACnF,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { SecretRef } from './types.js';
2
+ export type { SecretRef } from './types.js';
3
+ export declare const secret: (name: string) => SecretRef;
4
+ //# sourceMappingURL=secret.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"secret.d.ts","sourceRoot":"","sources":["../../src/ops/secret.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,YAAY,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,eAAO,MAAM,MAAM,GAAI,MAAM,MAAM,KAAG,SAAuC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export const secret = (name) => ({ kind: 'secret', name });
2
+ //# sourceMappingURL=secret.js.map