apify-test-tools 0.10.2-beta.2 → 0.10.2-beta.21

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 (275) hide show
  1. package/.gitattributes +1 -0
  2. package/.github/actionlint.yaml +11 -0
  3. package/.github/actions/checkout-restore-dependencies/action.yaml +58 -6
  4. package/.github/cli/apify-test-tools.mjs +135 -142
  5. package/.github/scripts/mask-config-secrets.sh +17 -0
  6. package/.github/scripts/run-with-apify-tokens.mjs +63 -103
  7. package/.github/workflows/_check_code.yaml +5 -21
  8. package/.github/workflows/_move_major_tag.yaml +2 -2
  9. package/.github/workflows/public_platform-tests-claude-investigate-and-fix.yaml +89 -8
  10. package/.github/workflows/public_platform-tests.yaml +68 -30
  11. package/.github/workflows/public_pr-build-test.yaml +77 -38
  12. package/.github/workflows/public_push-build-latest.yaml +49 -11
  13. package/.github/workflows/public_review.yaml +5 -4
  14. package/.github/workflows/public_stale-issues.yaml +51 -0
  15. package/.husky/pre-commit +4 -4
  16. package/.prettierignore +2 -1
  17. package/CHANGELOG.md +23 -0
  18. package/CONTRIBUTING.md +117 -17
  19. package/README.md +221 -595
  20. package/bin/actor-ids.ts +41 -0
  21. package/bin/affected-actors.ts +211 -0
  22. package/bin/build-from-local.ts +19 -1
  23. package/bin/build.ts +105 -39
  24. package/bin/diff-changes.ts +69 -36
  25. package/bin/diff-json-schema.ts +5 -6
  26. package/bin/git.ts +73 -175
  27. package/bin/main.ts +142 -189
  28. package/bin/notify.ts +198 -0
  29. package/bin/run-tests.ts +182 -0
  30. package/bin/slack.ts +16 -76
  31. package/bin/stdin-input.ts +156 -0
  32. package/bin/test-files-glob.ts +126 -0
  33. package/bin/test-report.ts +141 -140
  34. package/bin/types.ts +4 -7
  35. package/bin/utils/config/load-config.ts +20 -2
  36. package/bin/utils/config/parser.ts +40 -8
  37. package/bin/utils/config/structures/grouped.ts +2 -2
  38. package/bin/utils/config/structures/legacy.ts +1 -1
  39. package/dist/bin/actor-ids.d.ts +15 -0
  40. package/dist/bin/actor-ids.d.ts.map +1 -0
  41. package/dist/bin/actor-ids.js +30 -0
  42. package/dist/bin/actor-ids.js.map +1 -0
  43. package/dist/bin/affected-actors.d.ts +55 -0
  44. package/dist/bin/affected-actors.d.ts.map +1 -0
  45. package/dist/bin/affected-actors.js +142 -0
  46. package/dist/bin/affected-actors.js.map +1 -0
  47. package/dist/bin/build-from-local.d.ts +2 -1
  48. package/dist/bin/build-from-local.d.ts.map +1 -1
  49. package/dist/bin/build-from-local.js +6 -2
  50. package/dist/bin/build-from-local.js.map +1 -1
  51. package/dist/bin/build.d.ts +18 -5
  52. package/dist/bin/build.d.ts.map +1 -1
  53. package/dist/bin/build.js +74 -24
  54. package/dist/bin/build.js.map +1 -1
  55. package/dist/bin/diff-changes.d.ts +21 -5
  56. package/dist/bin/diff-changes.d.ts.map +1 -1
  57. package/dist/bin/diff-changes.js +41 -28
  58. package/dist/bin/diff-changes.js.map +1 -1
  59. package/dist/bin/diff-json-schema.d.ts +2 -2
  60. package/dist/bin/diff-json-schema.d.ts.map +1 -1
  61. package/dist/bin/diff-json-schema.js +1 -4
  62. package/dist/bin/diff-json-schema.js.map +1 -1
  63. package/dist/bin/git.d.ts +26 -34
  64. package/dist/bin/git.d.ts.map +1 -1
  65. package/dist/bin/git.js +60 -143
  66. package/dist/bin/git.js.map +1 -1
  67. package/dist/bin/main.js +126 -140
  68. package/dist/bin/main.js.map +1 -1
  69. package/dist/bin/notify.d.ts +35 -0
  70. package/dist/bin/notify.d.ts.map +1 -0
  71. package/dist/bin/notify.js +131 -0
  72. package/dist/bin/notify.js.map +1 -0
  73. package/dist/bin/run-tests.d.ts +21 -0
  74. package/dist/bin/run-tests.d.ts.map +1 -0
  75. package/dist/bin/run-tests.js +149 -0
  76. package/dist/bin/run-tests.js.map +1 -0
  77. package/dist/bin/slack.d.ts +2 -14
  78. package/dist/bin/slack.d.ts.map +1 -1
  79. package/dist/bin/slack.js +17 -46
  80. package/dist/bin/slack.js.map +1 -1
  81. package/dist/bin/stdin-input.d.ts +79 -0
  82. package/dist/bin/stdin-input.d.ts.map +1 -0
  83. package/dist/bin/stdin-input.js +124 -0
  84. package/dist/bin/stdin-input.js.map +1 -0
  85. package/dist/bin/test-files-glob.d.ts +18 -0
  86. package/dist/bin/test-files-glob.d.ts.map +1 -0
  87. package/dist/bin/test-files-glob.js +108 -0
  88. package/dist/bin/test-files-glob.js.map +1 -0
  89. package/dist/bin/test-report.d.ts +69 -8
  90. package/dist/bin/test-report.d.ts.map +1 -1
  91. package/dist/bin/test-report.js +76 -67
  92. package/dist/bin/test-report.js.map +1 -1
  93. package/dist/bin/types.d.ts +4 -7
  94. package/dist/bin/types.d.ts.map +1 -1
  95. package/dist/bin/utils/config/load-config.d.ts +8 -0
  96. package/dist/bin/utils/config/load-config.d.ts.map +1 -1
  97. package/dist/bin/utils/config/load-config.js +14 -1
  98. package/dist/bin/utils/config/load-config.js.map +1 -1
  99. package/dist/bin/utils/config/parser.d.ts +15 -2
  100. package/dist/bin/utils/config/parser.d.ts.map +1 -1
  101. package/dist/bin/utils/config/parser.js +29 -8
  102. package/dist/bin/utils/config/parser.js.map +1 -1
  103. package/dist/bin/utils/config/structures/grouped.js +2 -2
  104. package/dist/bin/utils/config/structures/grouped.js.map +1 -1
  105. package/dist/bin/utils/config/structures/legacy.js +1 -1
  106. package/dist/bin/utils/config/structures/legacy.js.map +1 -1
  107. package/dist/lib/extend-expect.d.ts.map +1 -1
  108. package/dist/lib/extend-expect.js +37 -218
  109. package/dist/lib/extend-expect.js.map +1 -1
  110. package/dist/lib/lib.d.ts +1 -5
  111. package/dist/lib/lib.d.ts.map +1 -1
  112. package/dist/lib/lib.js +19 -31
  113. package/dist/lib/lib.js.map +1 -1
  114. package/dist/lib/run-checks.d.ts +14 -0
  115. package/dist/lib/run-checks.d.ts.map +1 -0
  116. package/dist/lib/run-checks.js +82 -0
  117. package/dist/lib/run-checks.js.map +1 -0
  118. package/dist/lib/run-test-result.d.ts +3 -6
  119. package/dist/lib/run-test-result.d.ts.map +1 -1
  120. package/dist/lib/run-test-result.js +41 -54
  121. package/dist/lib/run-test-result.js.map +1 -1
  122. package/dist/test/bundle/cli-bundle.test.js +76 -56
  123. package/dist/test/bundle/cli-bundle.test.js.map +1 -1
  124. package/dist/test/bundle/token-wrapper.test.d.ts +2 -0
  125. package/dist/test/bundle/token-wrapper.test.d.ts.map +1 -0
  126. package/dist/test/bundle/token-wrapper.test.js +80 -0
  127. package/dist/test/bundle/token-wrapper.test.js.map +1 -0
  128. package/dist/test/e2e/cli-bundle.e2e.test.js +33 -68
  129. package/dist/test/e2e/cli-bundle.e2e.test.js.map +1 -1
  130. package/dist/test/e2e/git-build-release.e2e.test.d.ts +2 -0
  131. package/dist/test/e2e/git-build-release.e2e.test.d.ts.map +1 -0
  132. package/dist/test/e2e/git-build-release.e2e.test.js +87 -0
  133. package/dist/test/e2e/git-build-release.e2e.test.js.map +1 -0
  134. package/dist/test/e2e/helpers.d.ts +37 -0
  135. package/dist/test/e2e/helpers.d.ts.map +1 -0
  136. package/dist/test/e2e/helpers.js +57 -0
  137. package/dist/test/e2e/helpers.js.map +1 -0
  138. package/dist/test/unit/bin/actor-filtering.test.js +7 -0
  139. package/dist/test/unit/bin/actor-filtering.test.js.map +1 -1
  140. package/dist/test/unit/bin/actor-ids.test.d.ts +2 -0
  141. package/dist/test/unit/bin/actor-ids.test.d.ts.map +1 -0
  142. package/dist/test/unit/bin/actor-ids.test.js +40 -0
  143. package/dist/test/unit/bin/actor-ids.test.js.map +1 -0
  144. package/dist/test/unit/bin/affected-actors-cli.test.d.ts +2 -0
  145. package/dist/test/unit/bin/affected-actors-cli.test.d.ts.map +1 -0
  146. package/dist/test/unit/bin/affected-actors-cli.test.js +224 -0
  147. package/dist/test/unit/bin/affected-actors-cli.test.js.map +1 -0
  148. package/dist/test/unit/bin/affected-actors.test.d.ts +2 -0
  149. package/dist/test/unit/bin/affected-actors.test.d.ts.map +1 -0
  150. package/dist/test/unit/bin/affected-actors.test.js +153 -0
  151. package/dist/test/unit/bin/affected-actors.test.js.map +1 -0
  152. package/dist/test/unit/bin/build-cli.test.d.ts +2 -0
  153. package/dist/test/unit/bin/build-cli.test.d.ts.map +1 -0
  154. package/dist/test/unit/bin/build-cli.test.js +49 -0
  155. package/dist/test/unit/bin/build-cli.test.js.map +1 -0
  156. package/dist/test/unit/bin/build-from-local.test.js +12 -0
  157. package/dist/test/unit/bin/build-from-local.test.js.map +1 -1
  158. package/dist/test/unit/bin/build.test.js +116 -6
  159. package/dist/test/unit/bin/build.test.js.map +1 -1
  160. package/dist/test/unit/bin/compiled-cli.d.ts +6 -0
  161. package/dist/test/unit/bin/compiled-cli.d.ts.map +1 -0
  162. package/dist/test/unit/bin/compiled-cli.js +23 -0
  163. package/dist/test/unit/bin/compiled-cli.js.map +1 -0
  164. package/dist/test/unit/bin/diff-changes.test.js +168 -114
  165. package/dist/test/unit/bin/diff-changes.test.js.map +1 -1
  166. package/dist/test/unit/bin/diff.test.js +25 -28
  167. package/dist/test/unit/bin/diff.test.js.map +1 -1
  168. package/dist/test/unit/bin/git.test.js +67 -288
  169. package/dist/test/unit/bin/git.test.js.map +1 -1
  170. package/dist/test/unit/bin/notify.test.d.ts +2 -0
  171. package/dist/test/unit/bin/notify.test.d.ts.map +1 -0
  172. package/dist/test/unit/bin/notify.test.js +222 -0
  173. package/dist/test/unit/bin/notify.test.js.map +1 -0
  174. package/dist/test/unit/bin/stdin-input.test.d.ts +2 -0
  175. package/dist/test/unit/bin/stdin-input.test.d.ts.map +1 -0
  176. package/dist/test/unit/bin/stdin-input.test.js +92 -0
  177. package/dist/test/unit/bin/stdin-input.test.js.map +1 -0
  178. package/dist/test/unit/bin/test-cli.test.d.ts +2 -0
  179. package/dist/test/unit/bin/test-cli.test.d.ts.map +1 -0
  180. package/dist/test/unit/bin/test-cli.test.js +165 -0
  181. package/dist/test/unit/bin/test-cli.test.js.map +1 -0
  182. package/dist/test/unit/bin/test-files-glob.test.d.ts +2 -0
  183. package/dist/test/unit/bin/test-files-glob.test.d.ts.map +1 -0
  184. package/dist/test/unit/bin/test-files-glob.test.js +102 -0
  185. package/dist/test/unit/bin/test-files-glob.test.js.map +1 -0
  186. package/dist/test/unit/bin/test-report.test.d.ts +2 -0
  187. package/dist/test/unit/bin/test-report.test.d.ts.map +1 -0
  188. package/dist/test/unit/bin/test-report.test.js +100 -0
  189. package/dist/test/unit/bin/test-report.test.js.map +1 -0
  190. package/dist/test/unit/bin/utils/config/load-config.test.js +19 -1
  191. package/dist/test/unit/bin/utils/config/load-config.test.js.map +1 -1
  192. package/dist/test/unit/bin/utils/config/parser.test.js +36 -4
  193. package/dist/test/unit/bin/utils/config/parser.test.js.map +1 -1
  194. package/dist/test/unit/bin/utils/config/structures/grouped.test.js +6 -0
  195. package/dist/test/unit/bin/utils/config/structures/grouped.test.js.map +1 -1
  196. package/dist/test/unit/bin/utils/config/structures/legacy.test.js +1 -0
  197. package/dist/test/unit/bin/utils/config/structures/legacy.test.js.map +1 -1
  198. package/dist/test/unit/github-scripts/mask-config-secrets.test.d.ts +2 -0
  199. package/dist/test/unit/github-scripts/mask-config-secrets.test.d.ts.map +1 -0
  200. package/dist/test/unit/github-scripts/mask-config-secrets.test.js +50 -0
  201. package/dist/test/unit/github-scripts/mask-config-secrets.test.js.map +1 -0
  202. package/dist/test/unit/github-scripts/run-with-apify-tokens.test.d.ts +2 -0
  203. package/dist/test/unit/github-scripts/run-with-apify-tokens.test.d.ts.map +1 -0
  204. package/dist/test/unit/github-scripts/run-with-apify-tokens.test.js +102 -0
  205. package/dist/test/unit/github-scripts/run-with-apify-tokens.test.js.map +1 -0
  206. package/dist/test/unit/run-checks.test.d.ts +2 -0
  207. package/dist/test/unit/run-checks.test.d.ts.map +1 -0
  208. package/dist/test/unit/run-checks.test.js +62 -0
  209. package/dist/test/unit/run-checks.test.js.map +1 -0
  210. package/dist/test/unit/run-test-result.test.d.ts +2 -0
  211. package/dist/test/unit/run-test-result.test.d.ts.map +1 -0
  212. package/dist/test/unit/run-test-result.test.js +34 -0
  213. package/dist/test/unit/run-test-result.test.js.map +1 -0
  214. package/dist/test/unit/should-built-and-test.test.js +41 -38
  215. package/dist/test/unit/should-built-and-test.test.js.map +1 -1
  216. package/dist/tsconfig.tsbuildinfo +1 -1
  217. package/dist/workflow-scripts-src/run-with-apify-tokens.d.ts +3 -0
  218. package/dist/workflow-scripts-src/run-with-apify-tokens.d.ts.map +1 -0
  219. package/dist/workflow-scripts-src/run-with-apify-tokens.js +100 -0
  220. package/dist/workflow-scripts-src/run-with-apify-tokens.js.map +1 -0
  221. package/docs/cli.md +473 -0
  222. package/docs/lib.md +276 -0
  223. package/docs/workflows.md +455 -0
  224. package/eslint.config.mjs +10 -1
  225. package/lib/extend-expect.ts +48 -258
  226. package/lib/lib.ts +25 -34
  227. package/lib/run-checks.ts +101 -0
  228. package/lib/run-test-result.ts +45 -55
  229. package/package.json +4 -2
  230. package/platform-tests-investigate-and-fix/skills/assess-impact/SKILL.md +42 -0
  231. package/platform-tests-investigate-and-fix/skills/measure-flakiness/SKILL.md +4 -2
  232. package/test/bundle/cli-bundle.test.ts +97 -67
  233. package/test/bundle/token-wrapper.test.ts +110 -0
  234. package/test/e2e/cli-bundle.e2e.test.ts +60 -93
  235. package/test/e2e/git-build-release.e2e.test.ts +113 -0
  236. package/test/e2e/helpers.ts +82 -0
  237. package/test/unit/bin/actor-filtering.test.ts +8 -0
  238. package/test/unit/bin/actor-ids.test.ts +47 -0
  239. package/test/unit/bin/affected-actors-cli.test.ts +271 -0
  240. package/test/unit/bin/affected-actors.test.ts +221 -0
  241. package/test/unit/bin/build-cli.test.ts +61 -0
  242. package/test/unit/bin/build-from-local.test.ts +16 -0
  243. package/test/unit/bin/build.test.ts +149 -5
  244. package/test/unit/bin/compiled-cli.ts +23 -0
  245. package/test/unit/bin/diff-changes.test.ts +181 -114
  246. package/test/unit/bin/diff.test.ts +25 -28
  247. package/test/unit/bin/git.test.ts +76 -361
  248. package/test/unit/bin/notify.test.ts +299 -0
  249. package/test/unit/bin/stdin-input.test.ts +120 -0
  250. package/test/unit/bin/test-cli.test.ts +207 -0
  251. package/test/unit/bin/test-files-glob.test.ts +118 -0
  252. package/test/unit/bin/test-report.test.ts +118 -0
  253. package/test/unit/bin/utils/config/load-config.test.ts +26 -1
  254. package/test/unit/bin/utils/config/parser.test.ts +46 -5
  255. package/test/unit/bin/utils/config/structures/grouped.test.ts +12 -0
  256. package/test/unit/bin/utils/config/structures/legacy.test.ts +1 -0
  257. package/test/unit/github-scripts/mask-config-secrets.test.ts +61 -0
  258. package/test/unit/github-scripts/run-with-apify-tokens.test.ts +115 -0
  259. package/test/unit/run-checks.test.ts +76 -0
  260. package/test/unit/run-test-result.test.ts +44 -0
  261. package/test/unit/should-built-and-test.test.ts +46 -39
  262. package/tsconfig.json +1 -1
  263. package/vitest.config.ts +9 -0
  264. package/workflow-scripts-src/run-with-apify-tokens.ts +112 -0
  265. package/.github/scripts/check-major-tag-refs.mjs +0 -72
  266. package/dist/test/unit/bin/logging.test.d.ts +0 -2
  267. package/dist/test/unit/bin/logging.test.d.ts.map +0 -1
  268. package/dist/test/unit/bin/logging.test.js +0 -43
  269. package/dist/test/unit/bin/logging.test.js.map +0 -1
  270. package/dist/test/unit/bin/slack.test.d.ts +0 -2
  271. package/dist/test/unit/bin/slack.test.d.ts.map +0 -1
  272. package/dist/test/unit/bin/slack.test.js +0 -54
  273. package/dist/test/unit/bin/slack.test.js.map +0 -1
  274. package/test/unit/bin/logging.test.ts +0 -52
  275. package/test/unit/bin/slack.test.ts +0 -65
@@ -0,0 +1,142 @@
1
+ import { getChangedActors } from './diff-changes.js';
2
+ import { findCommitSha, getChangedFilesBetween, getChangelogAdditions, getCommitsBetween, getMergeBase, resolveCommitSha, resolveReleaseBaseCommit, } from './git.js';
3
+ import { logger } from './logger.js';
4
+ import { readConfigFile, readRepoSettings } from './utils/config/load-config.js';
5
+ // The range always ends at the checked-out commit: check out what you want to inspect
6
+ const HEAD = 'HEAD';
7
+ const names = (configs) => configs.map(({ actorFullName }) => ({ actorFullName }));
8
+ /** The branch's last validated commit, unless it can't narrow anything down. */
9
+ const findValidatedSha = async (since, headSha) => {
10
+ const sinceSha = await findCommitSha(since);
11
+ if (!sinceSha) {
12
+ logger.info(`Last validated commit ${since} is not in the local history (force-push?), checking the whole branch`);
13
+ return undefined;
14
+ }
15
+ if (sinceSha === headSha) {
16
+ logger.info('Last validated commit is HEAD, so this is a rerun: checking the whole branch from scratch');
17
+ return undefined;
18
+ }
19
+ return sinceSha;
20
+ };
21
+ /**
22
+ * This is Juan's magical algorithm where we need just 2 git diffs to determine functional changes on Actors.
23
+ *
24
+ * Naively, we could just check branch HEAD changes vs base or parent of first commit and be done but
25
+ * we do this jiu-jitsu code to apply 2 optimizations:
26
+ * 1. On our PR branch, we track last validated commit (since) that was tested and so we only need to test new commits.
27
+ * 2. We also merge changes from the base branch (usually master) and we can consider those already validated as well.
28
+ *
29
+ * But there is annoying problem: even if both our branch and base are validated, they could have novel interactions and
30
+ * we need to retest those.
31
+ *
32
+ * So we look at:
33
+ * 1. The changes introduced by our branch since the last validated commit (`since..HEAD`).
34
+ * 2. The changes introduced by the branch compared to the base branch (`base...HEAD`). The important part is that this
35
+ * diff does check the whole branch, discarding the last validated commit (since) so it checks those novel interactions problem.
36
+ *
37
+ * The magic is that both need to contain changes for an Actor to be retested:
38
+ * 1. If we have changes only in since..HEAD (and not in base...HEAD), it means those changes came from merging the base alone
39
+ * which is already validated and there were actually no real changes introduced by our branch alone.
40
+ * 2. If we have changes only in base...HEAD (and not in since..HEAD), it means there are no new changes on our branch
41
+ * since it was last validated. base...HEAD has changes that we already validated.
42
+ *
43
+ * This enables to simply do those 2 diffs for each Actor's context separately and only Actors that have changes
44
+ * in both diffs need to be retested.
45
+ *
46
+ * THIS ASSUMES BRANCH IS UP TO DATE WITH BASE WHEN IT MERGES, which we currently require. Only then is HEAD what lands on
47
+ * base, and base's commits validated. Otherwise what lands is HEAD combined with base's newer commits, which nobody
48
+ * tested, however the Actors are picked.
49
+ *
50
+ * In each example the branch's functional change to Actor A was validated at `since`, then one more push follows:
51
+ *
52
+ * Example scenarios:
53
+ * - Our own branch only: a commit changes A's README and B's code.
54
+ * `since..HEAD`: A cosmetic, B functional. `base...HEAD`: A and B functional.
55
+ * → A cosmetic, B functional: only B is tested, A's code is still the validated one.
56
+ * - Cosmetic merge: the branch merges base, which only changed READMEs and the CHANGELOG.
57
+ * `since..HEAD`: every Actor cosmetic (CHANGELOG counts for all). `base...HEAD`: A functional, since the merged
58
+ * files now match base and drop out of it.
59
+ * → A cosmetic, the other Actors left out: nothing is tested.
60
+ * - Functional merge: the branch merges base, which changed code of A and of C.
61
+ * `since..HEAD`: A and C functional. `base...HEAD`: A functional.
62
+ * → A functional, C left out: A is tested, since base's change can interact with the branch's, while C only has
63
+ * base's change, which base already validated.
64
+ */
65
+ const intersectChangedInBranchVsSince = (branch, sinceValidated) => {
66
+ const narrowed = {
67
+ functional: [],
68
+ cosmetic: [],
69
+ // The same rule for tests: the branch changed them, and they changed again since they were last validated
70
+ test: branch.test.filter((actor) => sinceValidated.test.includes(actor)),
71
+ };
72
+ // All checks are done for each Actor separately, that's cleanest and most accurate
73
+ for (const actor of [...branch.functional, ...branch.cosmetic]) {
74
+ // base...HEAD
75
+ const changedFunctionallyOnBranch = branch.functional.includes(actor);
76
+ // since..HEAD
77
+ const changedFunctionallySince = sinceValidated.functional.includes(actor);
78
+ // changedSince is used for release. Release cares also about cosmetic.
79
+ const changedSince = changedFunctionallySince || sinceValidated.cosmetic.includes(actor);
80
+ // Nothing changed since the last validation, so the branch's change to this Actor is already validated
81
+ if (!changedSince)
82
+ continue;
83
+ // As we said, only intersection counts as functional, otherwise it's cosmetic
84
+ if (changedFunctionallyOnBranch && changedFunctionallySince) {
85
+ narrowed.functional.push(actor);
86
+ }
87
+ else {
88
+ narrowed.cosmetic.push(actor);
89
+ }
90
+ }
91
+ return narrowed;
92
+ };
93
+ /**
94
+ * Finds the Actors whose context changed in the given range. `base` selects the branch's own changes
95
+ * (a PR), `since` the changes after a known commit (a release, or the last validated commit of a PR).
96
+ */
97
+ export const getAffectedActors = async ({ base, since: sinceOption, actors, ignore, }) => {
98
+ // An empty --since (e.g. an empty cache file) means the same as not passing it
99
+ const since = sinceOption || undefined;
100
+ if (!base && !since) {
101
+ throw new Error('Pass --base, --since, or both to select the commits to inspect.');
102
+ }
103
+ const actorConfigs = await readConfigFile({ actors, ignore });
104
+ const { platformTestsGlob } = await readRepoSettings();
105
+ const getChangedInRange = async (range) => {
106
+ const changedFiles = await getChangedFilesBetween(range.fromRef, range.toRef);
107
+ return {
108
+ changedFiles,
109
+ changedActors: await getChangedActors({
110
+ filepathsChanged: changedFiles,
111
+ actorConfigs,
112
+ range,
113
+ platformTestsGlob,
114
+ }),
115
+ };
116
+ };
117
+ const headSha = await resolveCommitSha(HEAD);
118
+ const rangeVsBase = {
119
+ // merge base = PR, release base = push to master (release)
120
+ fromRef: base ? await getMergeBase(base, HEAD) : await resolveReleaseBaseCommit(since),
121
+ toRef: headSha,
122
+ };
123
+ // Falls back to rangeVsBase.fromRef when there's no (usable) last validated commit — same as
124
+ // intersecting the branch's changes with themselves, which is a no-op (see this function's docs).
125
+ const validatedSha = base && since ? await findValidatedSha(since, headSha) : undefined;
126
+ const sinceFromRef = validatedSha ?? rangeVsBase.fromRef;
127
+ const { changedFiles, changedActors: changedVsBase } = await getChangedInRange(rangeVsBase);
128
+ const { changedActors: changedSinceActors } = await getChangedInRange({ fromRef: sinceFromRef, toRef: headSha });
129
+ // See this function's docs to understand the algorithm: only intersection counts as functional, otherwise it's cosmetic.
130
+ const changedActors = intersectChangedInBranchVsSince(changedVsBase, changedSinceActors);
131
+ return {
132
+ version: 1,
133
+ head: headSha,
134
+ commits: await getCommitsBetween(rangeVsBase.fromRef, rangeVsBase.toRef),
135
+ changedFiles,
136
+ changelog: await getChangelogAdditions(rangeVsBase.fromRef, rangeVsBase.toRef, changedFiles),
137
+ functionallyChangedActors: names(changedActors.functional),
138
+ cosmeticallyChangedActors: names(changedActors.cosmetic),
139
+ testChangedActors: names(changedActors.test),
140
+ };
141
+ };
142
+ //# sourceMappingURL=affected-actors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"affected-actors.js","sourceRoot":"","sources":["../../bin/affected-actors.ts"],"names":[],"mappings":"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"}
@@ -15,9 +15,10 @@ type LocalBuildPlan = {
15
15
  fileCount: number;
16
16
  zipSizeBytes: number;
17
17
  };
18
- export declare const runBuildsFromLocal: ({ actorConfigs, dryRun, }: {
18
+ export declare const runBuildsFromLocal: ({ actorConfigs, dryRun, requireEnvVarsInSync, }: {
19
19
  actorConfigs: ActorConfig[];
20
20
  dryRun: boolean;
21
+ requireEnvVarsInSync?: boolean;
21
22
  }) => Promise<BuildData[] | DryRunPlan<LocalBuildPlan>>;
22
23
  export {};
23
24
  //# sourceMappingURL=build-from-local.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"build-from-local.d.ts","sourceRoot":"","sources":["../../bin/build-from-local.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACrE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE7C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AASjE,eAAO,MAAM,kBAAkB,GAAU,aAAa,WAAW,KAAG,OAAO,CAAC,UAAU,EAAE,CA8BvF,CAAC;AAWF,eAAO,MAAM,sBAAsB,GAAU,kBAAkB,WAAW,EAAE,UAAU,MAAM,KAAG,OAAO,CAAC,MAAM,EAAE,CAc9G,CAAC;AAaF,eAAO,MAAM,sBAAsB,GAC/B,WAAW,MAAM,EACjB,aAAa,MAAM,EACnB,eAAe,MAAM,EACrB,WAAW,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAClC,kBAAkB,MAAM,EAAE,KAC3B,OAAO,CAAC;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,EAAE,CAAA;CAAE,CAyClD,CAAC;AAcF,eAAO,MAAM,qBAAqB,GAC9B,aAAa,MAAM,EACnB,eAAe,MAAM,EACrB,SAAS,MAAM,EACf,WAAW,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KACnC,OAAO,CAAC,IAAI,CAqBd,CAAC;AAEF,KAAK,cAAc,GAAG;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF,eAAO,MAAM,kBAAkB,GAAU,2BAGtC;IACC,YAAY,EAAE,WAAW,EAAE,CAAC;IAC5B,MAAM,EAAE,OAAO,CAAC;CACnB,KAAG,OAAO,CAAC,SAAS,EAAE,GAAG,UAAU,CAAC,cAAc,CAAC,CAgDnD,CAAC"}
1
+ {"version":3,"file":"build-from-local.d.ts","sourceRoot":"","sources":["../../bin/build-from-local.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACrE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE7C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AASjE,eAAO,MAAM,kBAAkB,GAAU,aAAa,WAAW,KAAG,OAAO,CAAC,UAAU,EAAE,CA8BvF,CAAC;AAWF,eAAO,MAAM,sBAAsB,GAAU,kBAAkB,WAAW,EAAE,UAAU,MAAM,KAAG,OAAO,CAAC,MAAM,EAAE,CAc9G,CAAC;AAaF,eAAO,MAAM,sBAAsB,GAC/B,WAAW,MAAM,EACjB,aAAa,MAAM,EACnB,eAAe,MAAM,EACrB,WAAW,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAClC,kBAAkB,MAAM,EAAE,KAC3B,OAAO,CAAC;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,EAAE,CAAA;CAAE,CAyClD,CAAC;AAcF,eAAO,MAAM,qBAAqB,GAC9B,aAAa,MAAM,EACnB,eAAe,MAAM,EACrB,SAAS,MAAM,EACf,WAAW,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KACnC,OAAO,CAAC,IAAI,CAqBd,CAAC;AAEF,KAAK,cAAc,GAAG;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF,eAAO,MAAM,kBAAkB,GAAU,iDAItC;IACC,YAAY,EAAE,WAAW,EAAE,CAAC;IAC5B,MAAM,EAAE,OAAO,CAAC;IAEhB,oBAAoB,CAAC,EAAE,OAAO,CAAC;CAClC,KAAG,OAAO,CAAC,SAAS,EAAE,GAAG,UAAU,CAAC,cAAc,CAAC,CAyDnD,CAAC"}
@@ -3,7 +3,7 @@ import os from 'node:os';
3
3
  import path from 'node:path';
4
4
  import AdmZip from 'adm-zip';
5
5
  import { ActorSourceType } from 'apify-client';
6
- import { ApifyBuilder, LOCAL_SOURCE_VERSION_NUMBER, runAndSummarizeBuilds } from './build.js';
6
+ import { ApifyBuilder, assertEnvVarsMatchDefaultVersion, LOCAL_SOURCE_VERSION_NUMBER, resolveDefaultVersion, runAndSummarizeBuilds, } from './build.js';
7
7
  import { loadDockerIgnore } from './dockerignore.js';
8
8
  import { logger } from './logger.js';
9
9
  import { isPathWithinScope } from './path-utils.js';
@@ -139,11 +139,15 @@ export const rewriteActorJsonPaths = async (absActorDir, contextAbsDir, tempDir,
139
139
  }
140
140
  await fs.writeFile(path.join(newActorDir, 'actor.json'), JSON.stringify(rewritten, null, 4));
141
141
  };
142
- export const runBuildsFromLocal = async ({ actorConfigs, dryRun, }) => {
142
+ export const runBuildsFromLocal = async ({ actorConfigs, dryRun, requireEnvVarsInSync = false, }) => {
143
143
  // Read-only preparation shared with the real build, so a dry run fails on a missing token, an unknown
144
144
  // Actor or unreadable sources just like the build would
145
145
  const preparedBuilds = await Promise.all(actorConfigs.map(async (actorConfig) => {
146
146
  const actorInfo = await ApifyBuilder.fromActorConfig(actorConfig).getActorInfo();
147
+ if (requireEnvVarsInSync) {
148
+ const { defaultVersion } = resolveDefaultVersion(actorConfig.actorFullName, actorInfo);
149
+ assertEnvVarsMatchDefaultVersion(actorConfig.actorFullName, actorInfo, defaultVersion, LOCAL_SOURCE_VERSION_NUMBER);
150
+ }
147
151
  // Zipped and uploaded like `apify push` does, since inline SOURCE_FILES are capped at ~9 MB.
148
152
  const zip = new AdmZip();
149
153
  const sourceFiles = await collectSourceFiles(actorConfig);
@@ -1 +1 @@
1
- {"version":3,"file":"build-from-local.js","sourceRoot":"","sources":["../../bin/build-from-local.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClC,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,MAAM,MAAM,SAAS,CAAC;AAE7B,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE/C,OAAO,EAAE,YAAY,EAAE,2BAA2B,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAC9F,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAGpD,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAGjG,yGAAyG;AACzG,yGAAyG;AACzG,yGAAyG;AACzG,yDAAyD;AACzD,MAAM,kBAAkB,GAAG,CAAC,gBAAgB,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;AACtF,MAAM,YAAY,GAAG,CAAC,QAAgB,EAAW,EAAE,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;AAEjH,MAAM,CAAC,MAAM,kBAAkB,GAAG,KAAK,EAAE,WAAwB,EAAyB,EAAE;IACxF,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC/B,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAE1D,yFAAyF;IACzF,+EAA+E;IAC/E,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAA4B,CAAC;IACpH,MAAM,eAAe,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC;IAEnF,MAAM,UAAU,GAAG,eAAe,CAAC,CAAC,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC;IACvF,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IACpD,MAAM,aAAa,GAAG,MAAM,sBAAsB,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;IAEzE,IAAI,CAAC,eAAe,EAAE,CAAC;QACnB,OAAO,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,CAAC,cAAc,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC;IACvG,CAAC;IAED,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,MAAM,sBAAsB,CACvD,WAAW,CAAC,aAAa,EACzB,WAAW,EACX,aAAa,EACb,SAAS,EACT,aAAa,CAChB,CAAC;IACF,IAAI,CAAC;QACD,OAAO,MAAM,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,CAAC,cAAc,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IACnG,CAAC;YAAS,CAAC;QACP,iFAAiF;QACjF,MAAM,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IAC3D,CAAC;AACL,CAAC,CAAC;AAEF,+FAA+F;AAC/F,gGAAgG;AAChG,gGAAgG;AAChG,+FAA+F;AAC/F,iGAAiG;AACjG,oGAAoG;AACpG,gGAAgG;AAChG,8FAA8F;AAC9F,2FAA2F;AAC3F,MAAM,CAAC,MAAM,sBAAsB,GAAG,KAAK,EAAE,gBAA6B,EAAE,QAAgB,EAAqB,EAAE;IAC/G,MAAM,aAAa,GAAG,MAAM,iBAAiB,CAAC,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC;IACvG,MAAM,YAAY,GAAG,MAAM,kBAAkB,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;IACvE,MAAM,eAAe,GAAG,gBAAgB,CAAC,gBAAgB,CAAC,CAAC;IAE3D,OAAO,aAAa;SACf,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE;QAChB,IAAI,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;YAAE,OAAO,KAAK,CAAC;QACvD,MAAM,eAAe,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC9D,IAAI,eAAe;YAAE,OAAO,IAAI,CAAC;QACjC,IAAI,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC;YAAE,OAAO,KAAK,CAAC;QAC5C,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;IACrC,CAAC,CAAC;SACD,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;AACxD,CAAC,CAAC;AAEF,uFAAuF;AACvF,uFAAuF;AACvF,oEAAoE;AACpE,yFAAyF;AACzF,8FAA8F;AAC9F,+EAA+E;AAC/E,8EAA8E;AAC9E,EAAE;AACF,iFAAiF;AACjF,+EAA+E;AAC/E,iDAAiD;AACjD,MAAM,CAAC,MAAM,sBAAsB,GAAG,KAAK,EACvC,SAAiB,EACjB,WAAmB,EACnB,aAAqB,EACrB,SAAkC,EAClC,gBAA0B,EACuB,EAAE;IACnD,MAAM,CAAC,IAAI,CAAC,IAAI,SAAS,6DAA6D,CAAC,CAAC;IAExF,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,eAAe,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;IACxG,MAAM,SAAS,GAAa,EAAE,CAAC;IAE/B,yFAAyF;IACzF,gDAAgD;IAChD,MAAM,OAAO,CAAC,GAAG,CACb,gBAAgB,CAAC,GAAG,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE;QACvC,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC;QAC1D,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAC7C,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC5D,MAAM,EAAE,CAAC,QAAQ,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;QACzC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC7B,CAAC,CAAC,CACL,CAAC;IAEF,gGAAgG;IAChG,gGAAgG;IAChG,iGAAiG;IACjG,4FAA4F;IAC5F,6FAA6F;IAC7F,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IACtD,MAAM,cAAc,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,iBAAiB,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC,CAAC;IAC9G,MAAM,OAAO,CAAC,GAAG,CACb,cAAc,CAAC,GAAG,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE;QACrC,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC;QACzD,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;QACvD,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC5D,MAAM,EAAE,CAAC,QAAQ,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;QACzC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC7B,CAAC,CAAC,CACL,CAAC;IAEF,0FAA0F;IAC1F,2FAA2F;IAC3F,wDAAwD;IACxD,MAAM,qBAAqB,CAAC,WAAW,EAAE,aAAa,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;IAE5E,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC;AAClC,CAAC,CAAC;AAEF,0FAA0F;AAC1F,iFAAiF;AACjF,EAAE;AACF,iCAAiC;AACjC,+DAA+D;AAC/D,kFAAkF;AAClF,+EAA+E;AAC/E,qFAAqF;AACrF,oEAAoE;AACpE,EAAE;AACF,+EAA+E;AAC/E,gFAAgF;AAChF,MAAM,CAAC,MAAM,qBAAqB,GAAG,KAAK,EACtC,WAAmB,EACnB,aAAqB,EACrB,OAAe,EACf,SAAkC,EACrB,EAAE;IACf,MAAM,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IAC1D,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IACjD,MAAM,UAAU,GAAG,CAAC,YAAY,EAAE,kBAAkB,EAAE,WAAW,EAAE,QAAQ,CAAU,CAAC;IACtF,MAAM,SAAS,GAAG,EAAE,GAAG,SAAS,EAAE,CAAC;IACnC,KAAK,MAAM,KAAK,IAAI,UAAU,EAAE,CAAC;QAC7B,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;QAC/B,IAAI,OAAO,KAAK,KAAK,QAAQ;YAAE,SAAS;QAExC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE,KAAK,CAAC,CAAC;QAEtD,mEAAmE;QACnE,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,gBAAgB,CAAC;YAAE,SAAS;QAEvD,yEAAyE;QACzE,6EAA6E;QAC7E,MAAM,iBAAiB,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;QAChE,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAC;QACzD,SAAS,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;IAC9D,CAAC;IACD,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,YAAY,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AACjG,CAAC,CAAC;AAUF,MAAM,CAAC,MAAM,kBAAkB,GAAG,KAAK,EAAE,EACrC,YAAY,EACZ,MAAM,GAIT,EAAqD,EAAE;IACpD,sGAAsG;IACtG,wDAAwD;IACxD,MAAM,cAAc,GAAG,MAAM,OAAO,CAAC,GAAG,CACpC,YAAY,CAAC,GAAG,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE;QACnC,MAAM,SAAS,GAAG,MAAM,YAAY,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC,YAAY,EAAE,CAAC;QACjF,6FAA6F;QAC7F,MAAM,GAAG,GAAG,IAAI,MAAM,EAAE,CAAC;QACzB,MAAM,WAAW,GAAG,MAAM,kBAAkB,CAAC,WAAW,CAAC,CAAC;QAC1D,KAAK,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,WAAW,EAAE,CAAC;YAC1C,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC/B,CAAC;QACD,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAC;IAChG,CAAC,CAAC,CACL,CAAC;IAEF,IAAI,MAAM,EAAE,CAAC;QACT,MAAM,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAC;QACxD,KAAK,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,cAAc,EAAE,CAAC;YACjE,MAAM,CAAC,IAAI,CACP,KAAK,WAAW,CAAC,aAAa,KAAK,WAAW,CAAC,MAAM,MAAM,SAAS,WAAW,SAAS,CAAC,MAAM,eAAe,CACjH,CAAC;QACN,CAAC;QACD,OAAO;YACH,MAAM,EAAE,IAAI;YACZ,MAAM,EAAE,cAAc,CAAC,GAAG,CAAC,CAAC,EAAE,WAAW,EAAE,SAAS,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,CAAC;gBACnE,aAAa,EAAE,WAAW,CAAC,aAAa;gBACxC,aAAa,EAAE,2BAA2B;gBAC1C,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,IAAI;gBAC/B,SAAS;gBACT,YAAY,EAAE,SAAS,CAAC,MAAM;aACjC,CAAC,CAAC;SACN,CAAC;IACN,CAAC;IAED,MAAM,uBAAuB,GAAG,IAAI,GAAG,CACnC,cAAc,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC,CACnF,CAAC;IAEF,OAAO,qBAAqB,CAAC,YAAY,EAAE,cAAc,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,EAAE;QACtF,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,uBAAuB,CAAC,GAAG,CAAC,WAAW,CAAC,aAAa,CAAE,CAAC;QACzF,MAAM,YAAY,GAAkC;YAChD,aAAa,EAAE,2BAA2B;YAC1C,UAAU,EAAE,MAAM,OAAO,CAAC,eAAe,CAAC,2BAA2B,EAAE,SAAS,CAAC;YACjF,UAAU,EAAE,eAAe,CAAC,OAAO;SACtC,CAAC;QACF,OAAO,OAAO,CAAC,qBAAqB,CAAC,2BAA2B,EAAE,YAAY,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;IACtG,CAAC,CAAC,CAAC;AACP,CAAC,CAAC"}
1
+ {"version":3,"file":"build-from-local.js","sourceRoot":"","sources":["../../bin/build-from-local.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import type * as ApifyClientTypes from 'apify-client';
2
2
  import type { ActorConfig, BuildData, DryRunPlan } from './types.js';
3
3
  export declare const LOCAL_SOURCE_VERSION_NUMBER = "0.98";
4
+ export declare const DEFAULT_VERSION_KEYWORD = "default";
4
5
  /**
5
6
  * Finds the Actor's default version: the one whose build the default build tag points to.
6
7
  * Usually tagged 'latest' but not necessarily (can be e.g. 'version-0').
@@ -19,6 +20,12 @@ export declare const resolveDefaultVersion: (actorFullName: string, actorInfo: A
19
20
  * Actor to a new repository on purpose.
20
21
  */
21
22
  export declare const assertRepoUrlMatchesDefaultVersion: (actorFullName: string, defaultVersion: ApifyClientTypes.ActorVersion | undefined, repoUrl: string) => void;
23
+ /**
24
+ * Guards against testing an Actor with different env vars than users run it with, e.g. a variable added to
25
+ * the default version but not to the test version, which would make the tests pass or fail for the wrong
26
+ * reason. Only names are compared because the API doesn't return secret values.
27
+ */
28
+ export declare const assertEnvVarsMatchDefaultVersion: (actorFullName: string, actorInfo: ApifyClientTypes.Actor, defaultVersion: ApifyClientTypes.ActorVersion | undefined, versionNumber: string) => void;
22
29
  export declare class ApifyBuilder {
23
30
  private readonly apifyClient;
24
31
  private readonly actorFullName;
@@ -47,20 +54,26 @@ export declare const runAndSummarizeBuilds: (actorConfigs: ActorConfig[], label:
47
54
  type GitBuildPlan = {
48
55
  actorFullName: string;
49
56
  versionNumber: string;
50
- buildTag?: string;
51
57
  gitRepoUrl: string;
52
- useDockerCache: boolean;
53
58
  };
54
59
  type RunBuildsOptions = {
55
60
  actorConfigs: ActorConfig[];
56
- isLatest?: boolean;
61
+ versionNumber: string;
57
62
  repoUrl: string;
58
63
  shouldVerifyRepoUrl: boolean;
59
64
  branch: string;
60
65
  dryRun: boolean;
61
- useDockerCache: boolean;
66
+ requireEnvVarsInSync?: boolean;
62
67
  };
63
- export declare const runBuilds: ({ repoUrl, shouldVerifyRepoUrl, branch, actorConfigs, isLatest, dryRun, useDockerCache, }: RunBuildsOptions) => Promise<BuildData[] | DryRunPlan<GitBuildPlan>>;
68
+ export declare const runBuilds: ({ repoUrl, shouldVerifyRepoUrl, branch, actorConfigs, versionNumber, dryRun, requireEnvVarsInSync, }: RunBuildsOptions) => Promise<BuildData[] | DryRunPlan<GitBuildPlan>>;
69
+ type BuildActorsOptions = Omit<RunBuildsOptions, 'repoUrl' | 'shouldVerifyRepoUrl' | 'branch'> & {
70
+ repoUrl?: string;
71
+ };
72
+ /**
73
+ * Builds exactly the given Actors from the checked-out Git branch, as it is on the remote. Fails on a detached HEAD,
74
+ * where there is no branch to build. Used by `build` and the commands built on top of it.
75
+ */
76
+ export declare const buildActors: ({ actorConfigs, repoUrl, ...options }: BuildActorsOptions) => Promise<BuildData[] | DryRunPlan<GitBuildPlan>>;
64
77
  export declare const deleteOldBuilds: (actorConfigs: ActorConfig[], { dryRun }: {
65
78
  dryRun: boolean;
66
79
  }) => Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../../bin/build.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,gBAAgB,MAAM,cAAc,CAAC;AAKtD,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAYrE,eAAO,MAAM,2BAA2B,SAAS,CAAC;AAQlD;;;GAGG;AACH,eAAO,MAAM,qBAAqB,GAAI,eAAe,MAAM,EAAE,WAAW,gBAAgB,CAAC,KAAK;;;;;CAsB7F,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,kCAAkC,GAC3C,eAAe,MAAM,EACrB,gBAAgB,gBAAgB,CAAC,YAAY,GAAG,SAAS,EACzD,SAAS,MAAM,SAoBlB,CAAC;AAEF,qBAAa,YAAY;IAEjB,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,aAAa;IAFlC,OAAO;IAKP,YAAY,QAAa,OAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAQtD;IAEF,uBAAuB;;;;;OAAoF;IAI3G,eAAe,GAAU,eAAe,MAAM,EAAE,KAAK,MAAM,KAAG,OAAO,CAAC,MAAM,CAAC,CAY3E;IAGF,qBAAqB,GACjB,eAAe,MAAM,EACrB,cAAc,gBAAgB,CAAC,YAAY,EAC3C,UAAU,OAAO,EACjB,YAAY,gBAAgB,CAAC,KAAK,KACnC,OAAO,CAAC,SAAS,CAAC,CAmBnB;IAEF,oBAAoB,GAAU,SAAS,MAAM,KAAG,OAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAmB7E;IAEF,MAAM,CAAC,eAAe,GAAI,aAAa,WAAW,KAAG,YAAY,CAQ/D;IAEF;;;OAGG;IACG,eAAe,CAAC,EAAE,MAAM,EAAE,EAAE;QAAE,MAAM,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CA4FxE;AAED,eAAO,MAAM,sBAAsB,GAC/B,eAAe,SAAS,EAAE,EAC1B,aAAa,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,EACtC,OAAO,MAAM,KACd,OAAO,CAAC,SAAS,EAAE,CAkBrB,CAAC;AAEF,eAAO,MAAM,qBAAqB,GAC9B,cAAc,WAAW,EAAE,EAC3B,OAAO,MAAM,EACb,eAAe,CAAC,WAAW,EAAE,WAAW,EAAE,OAAO,EAAE,YAAY,KAAK,OAAO,CAAC,SAAS,CAAC,KACvF,OAAO,CAAC,SAAS,EAAE,CAarB,CAAC;AAEF,KAAK,YAAY,GAAG;IAChB,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,OAAO,CAAC;CAC3B,CAAC;AAEF,KAAK,gBAAgB,GAAG;IACpB,YAAY,EAAE,WAAW,EAAE,CAAC;IAC5B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAEhB,mBAAmB,EAAE,OAAO,CAAC;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,OAAO,CAAC;IAChB,cAAc,EAAE,OAAO,CAAC;CAC3B,CAAC;AAEF,eAAO,MAAM,SAAS,GAAU,2FAQ7B,gBAAgB,KAAG,OAAO,CAAC,SAAS,EAAE,GAAG,UAAU,CAAC,YAAY,CAAC,CAqEnE,CAAC;AAEF,eAAO,MAAM,eAAe,GAAU,cAAc,WAAW,EAAE,EAAE,YAAY;IAAE,MAAM,EAAE,OAAO,CAAA;CAAE,kBAIjG,CAAC"}
1
+ {"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../../bin/build.ts"],"names":[],"mappings":"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"}
package/dist/bin/build.js CHANGED
@@ -1,9 +1,10 @@
1
1
  import { ActorSourceType, ApifyClient } from 'apify-client';
2
- import { normalizeRepoUrl } from './git.js';
2
+ import { getCurrentBranch, normalizeRepoUrl, resolveRepoUrl } from './git.js';
3
3
  import { logger } from './logger.js';
4
4
  // Fixed version number used to build from local source files, since there is no real version to track.
5
5
  export const LOCAL_SOURCE_VERSION_NUMBER = '0.98';
6
- const DEFAULT_TEST_VERSION_NUMBER = '0.99';
6
+ // Stands for each Actor's default version: the one its default build tag points to
7
+ export const DEFAULT_VERSION_KEYWORD = 'default';
7
8
  // Shown whenever an Actor isn't set up the way CI builds need it
8
9
  const ACTOR_SETUP_REQUIREMENT = 'Before using apify-test-tools, every Actor needs at least one build under its default build tag (usually "latest"), ' +
9
10
  'built from a Git repository version whose URL points to this repository. Build it once manually on the platform.';
@@ -50,6 +51,32 @@ export const assertRepoUrlMatchesDefaultVersion = (actorFullName, defaultVersion
50
51
  `or pass --repo-url to build from a different repository on purpose.`);
51
52
  }
52
53
  };
54
+ const getEnvVarNames = (version) => (version?.envVars ?? []).map(({ name }) => name).filter((name) => !!name);
55
+ /**
56
+ * Guards against testing an Actor with different env vars than users run it with, e.g. a variable added to
57
+ * the default version but not to the test version, which would make the tests pass or fail for the wrong
58
+ * reason. Only names are compared because the API doesn't return secret values.
59
+ */
60
+ export const assertEnvVarsMatchDefaultVersion = (actorFullName, actorInfo, defaultVersion, versionNumber) => {
61
+ if (!defaultVersion) {
62
+ throw new Error(`[${actorFullName}] The version of the default build no longer exists. ${ACTOR_SETUP_REQUIREMENT}`);
63
+ }
64
+ const version = actorInfo.versions.find((v) => v.versionNumber === versionNumber);
65
+ const defaultNames = getEnvVarNames(defaultVersion);
66
+ const names = getEnvVarNames(version);
67
+ const missing = defaultNames.filter((name) => !names.includes(name));
68
+ const extra = names.filter((name) => !defaultNames.includes(name));
69
+ if (missing.length === 0 && extra.length === 0)
70
+ return;
71
+ const differences = [
72
+ missing.length > 0 ? `missing ${missing.join(', ')}` : undefined,
73
+ extra.length > 0 ? `extra ${extra.join(', ')}` : undefined,
74
+ ].filter(Boolean);
75
+ throw new Error(`[${actorFullName}] Env vars of version ${versionNumber} are out of sync with default version ` +
76
+ `${defaultVersion.versionNumber} (${differences.join('; ')}). ` +
77
+ `${version ? '' : `Version ${versionNumber} doesn't exist yet, so create it on the platform first. `}` +
78
+ `Add or remove the env vars in version ${versionNumber} so their names match the default version's.`);
79
+ };
53
80
  export class ApifyBuilder {
54
81
  apifyClient;
55
82
  actorFullName;
@@ -154,7 +181,7 @@ export class ApifyBuilder {
154
181
  const DEFAULT_DAYS_BACK_PROD_VERSIONS = 30;
155
182
  const DEFAULT_DAYS_BACK_DEVEL = 7;
156
183
  const actorInfo = await this.getActorInfo();
157
- // 'devel' used to be hardcoded for testing version 0.99, once we get rid of this tag everywhere, we can remove this code
184
+ // A build tagged 'devel' is kept for DEFAULT_DAYS_BACK_DEVEL only. Remove this once no Actor has the tag
158
185
  const taggedDevelBuildNumber = actorInfo.taggedBuilds.devel?.buildNumber;
159
186
  const allTags = Object.keys(actorInfo.taggedBuilds ?? {});
160
187
  const protectedTags = allTags.filter((tag) => PROTECTED_TAGS_PREFIX.some((prefix) => tag.startsWith(prefix)));
@@ -222,14 +249,25 @@ export const runAndSummarizeBuilds = async (actorConfigs, label, buildOneActor)
222
249
  const startedBuilds = await Promise.all(actorConfigs.map(async (actorConfig) => buildOneActor(actorConfig, buildersByActorFullName.get(actorConfig.actorFullName))));
223
250
  return waitAndSummarizeBuilds(startedBuilds, buildersByActorFullName, label);
224
251
  };
225
- export const runBuilds = async ({ repoUrl, shouldVerifyRepoUrl, branch, actorConfigs, isLatest = false, dryRun, useDockerCache, }) => {
252
+ export const runBuilds = async ({ repoUrl, shouldVerifyRepoUrl, branch, actorConfigs, versionNumber, dryRun, requireEnvVarsInSync = false, }) => {
226
253
  // Fetched once per Actor and reused for the checks, the version numbers and the build itself
227
254
  const buildConfigs = await Promise.all(actorConfigs.map(async (actorConfig) => {
228
255
  const actorInfo = await ApifyBuilder.fromActorConfig(actorConfig).getActorInfo();
229
256
  const { defaultVersionNumber, defaultBuildTag, defaultVersion } = resolveDefaultVersion(actorConfig.actorFullName, actorInfo);
257
+ // Builds keep the tags their version gives them, so a default version without the default build tag
258
+ // would build fine but leave users on the previous build
259
+ if (versionNumber === DEFAULT_VERSION_KEYWORD && defaultVersion?.buildTag !== defaultBuildTag) {
260
+ logger.warn(`[${actorConfig.actorFullName}] Default version ${defaultVersionNumber} has build tag ` +
261
+ `"${defaultVersion?.buildTag ?? 'none'}", not "${defaultBuildTag}", so users keep running the previous build. ` +
262
+ 'Set the build tag of the version on the platform to change that.');
263
+ }
230
264
  if (shouldVerifyRepoUrl) {
231
265
  assertRepoUrlMatchesDefaultVersion(actorConfig.actorFullName, defaultVersion, repoUrl);
232
266
  }
267
+ const targetVersionNumber = versionNumber === DEFAULT_VERSION_KEYWORD ? defaultVersionNumber : versionNumber;
268
+ if (requireEnvVarsInSync) {
269
+ assertEnvVarsMatchDefaultVersion(actorConfig.actorFullName, actorInfo, defaultVersion, targetVersionNumber);
270
+ }
233
271
  // Depending on if these are miniactors or standaloneActors
234
272
  let gitRepoUrl = `${repoUrl}#${branch}`;
235
273
  if (!actorConfig.folder.isRoot()) {
@@ -239,38 +277,50 @@ export const runBuilds = async ({ repoUrl, shouldVerifyRepoUrl, branch, actorCon
239
277
  actorConfig,
240
278
  actorInfo,
241
279
  gitRepoUrl,
242
- versionNumber: isLatest ? defaultVersionNumber : DEFAULT_TEST_VERSION_NUMBER,
243
- buildTag: isLatest ? defaultBuildTag : undefined,
244
- useDockerCache,
280
+ versionNumber: targetVersionNumber,
245
281
  };
246
282
  }));
247
283
  // Everything above only reads, so a dry run has checked what the real run would, short of writing
248
284
  if (dryRun) {
249
285
  logger.info('[DRY RUN] Would build:');
250
- for (const { actorConfig, versionNumber, gitRepoUrl } of buildConfigs) {
251
- logger.info(` ${actorConfig.actorFullName} (${versionNumber}) from ${gitRepoUrl}`);
286
+ const builds = buildConfigs.map((buildConfig) => ({
287
+ actorFullName: buildConfig.actorConfig.actorFullName,
288
+ versionNumber: buildConfig.versionNumber,
289
+ gitRepoUrl: buildConfig.gitRepoUrl,
290
+ }));
291
+ for (const build of builds) {
292
+ logger.info(` ${build.actorFullName} (${build.versionNumber}) from ${build.gitRepoUrl}`);
252
293
  }
253
- return {
254
- dryRun: true,
255
- builds: buildConfigs.map(({ actorConfig, versionNumber, buildTag, gitRepoUrl, useDockerCache: useCache }) => ({
256
- actorFullName: actorConfig.actorFullName,
257
- versionNumber,
258
- buildTag,
259
- gitRepoUrl,
260
- useDockerCache: useCache,
261
- })),
262
- };
294
+ return { dryRun: true, builds };
263
295
  }
264
296
  const buildConfigsByActorFullName = new Map(buildConfigs.map((buildConfig) => [buildConfig.actorConfig.actorFullName, buildConfig]));
265
297
  return runAndSummarizeBuilds(actorConfigs, 'BUILDS', async (actorConfig, builder) => {
266
- const { actorInfo, buildTag, versionNumber, gitRepoUrl, useDockerCache: useCache, } = buildConfigsByActorFullName.get(actorConfig.actorFullName);
298
+ const buildConfig = buildConfigsByActorFullName.get(actorConfig.actorFullName);
299
+ // No buildTag: the version keeps the one it has, so its build gets the tag the version already gives it
267
300
  const actorVersion = {
268
- buildTag,
269
- versionNumber,
270
- gitRepoUrl,
301
+ versionNumber: buildConfig.versionNumber,
302
+ gitRepoUrl: buildConfig.gitRepoUrl,
271
303
  sourceType: ActorSourceType.GitRepo,
272
304
  };
273
- return builder.createVersionAndBuild(versionNumber, actorVersion, useCache, actorInfo);
305
+ // Always with the Docker cache: CI always asked for it, and a clean build can still be started on the platform
306
+ return builder.createVersionAndBuild(buildConfig.versionNumber, actorVersion, true, buildConfig.actorInfo);
307
+ });
308
+ };
309
+ /**
310
+ * Builds exactly the given Actors from the checked-out Git branch, as it is on the remote. Fails on a detached HEAD,
311
+ * where there is no branch to build. Used by `build` and the commands built on top of it.
312
+ */
313
+ export const buildActors = async ({ actorConfigs, repoUrl, ...options }) => {
314
+ if (actorConfigs.length === 0) {
315
+ logger.info('No Actors to build');
316
+ // Still the dry-run shape in a dry run, so it can't pass for a real (empty) result
317
+ return options.dryRun ? { dryRun: true, builds: [] } : [];
318
+ }
319
+ return runBuilds({
320
+ ...options,
321
+ ...(await resolveRepoUrl(repoUrl)),
322
+ actorConfigs,
323
+ branch: await getCurrentBranch(),
274
324
  });
275
325
  };
276
326
  export const deleteOldBuilds = async (actorConfigs, { dryRun }) => {
@@ -1 +1 @@
1
- {"version":3,"file":"build.js","sourceRoot":"","sources":["../../bin/build.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"build.js","sourceRoot":"","sources":["../../bin/build.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,27 @@
1
- import type { ActorConfig, Commit } from './types.js';
1
+ import type { ActorConfig, GitRange } from './types.js';
2
2
  interface ShouldBuildAndTestOptions {
3
3
  filepathsChanged: string[];
4
4
  actorConfigs: ActorConfig[];
5
- isLatest?: boolean;
6
- commits: Commit[];
7
- testFilesGlob?: string;
5
+ /** The range the files changed in, to compare `.actor` JSON files across. */
6
+ range: GitRange;
7
+ /**
8
+ * Glob of the platform test files, from the repo root (`platformTestsGlob` in the config). A change to a matching
9
+ * file is a test change, even when .dockerignore lists it.
10
+ */
11
+ platformTestsGlob?: string;
8
12
  }
9
- export declare const getChangedActors: ({ filepathsChanged, actorConfigs, isLatest, commits, testFilesGlob, }: ShouldBuildAndTestOptions) => Promise<ActorConfig[]>;
13
+ export interface ChangedActors {
14
+ /** Actors with at least one functional change. They need a new build and tests. */
15
+ functional: ActorConfig[];
16
+ /** Actors with cosmetic changes and no functional one. They only need a new build when released. */
17
+ cosmetic: ActorConfig[];
18
+ /**
19
+ * Actors with at least one platform test change, whatever else changed. Their tests need to run, but test changes
20
+ * alone need no release. An Actor can be in this list and in one of the others.
21
+ */
22
+ test: ActorConfig[];
23
+ }
24
+ /** Finds the Actors the changed files belong to, split by the most impactful change each Actor has. */
25
+ export declare const getChangedActors: ({ filepathsChanged, actorConfigs, range, platformTestsGlob, }: ShouldBuildAndTestOptions) => Promise<ChangedActors>;
10
26
  export {};
11
27
  //# sourceMappingURL=diff-changes.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"diff-changes.d.ts","sourceRoot":"","sources":["../../bin/diff-changes.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAGtD,UAAU,yBAAyB;IAC/B,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,YAAY,EAAE,WAAW,EAAE,CAAC;IAC5B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,MAAM,EAAE,CAAC;IAElB,aAAa,CAAC,EAAE,MAAM,CAAC;CAC1B;AAuJD,eAAO,MAAM,gBAAgB,GAAU,uEAMpC,yBAAyB,KAAG,OAAO,CAAC,WAAW,EAAE,CAsDnD,CAAC"}
1
+ {"version":3,"file":"diff-changes.d.ts","sourceRoot":"","sources":["../../bin/diff-changes.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAGxD,UAAU,yBAAyB;IAC/B,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,YAAY,EAAE,WAAW,EAAE,CAAC;IAC5B,6EAA6E;IAC7E,KAAK,EAAE,QAAQ,CAAC;IAChB;;;OAGG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAiKD,MAAM,WAAW,aAAa;IAC1B,mFAAmF;IACnF,UAAU,EAAE,WAAW,EAAE,CAAC;IAC1B,oGAAoG;IACpG,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB;;;OAGG;IACH,IAAI,EAAE,WAAW,EAAE,CAAC;CACvB;AAED,uGAAuG;AACvG,eAAO,MAAM,gBAAgB,GAAU,+DAKpC,yBAAyB,KAAG,OAAO,CAAC,aAAa,CA+DnD,CAAC"}