@quenty/nevermore-cli 4.41.1 → 4.42.1-canary.783.30683193716.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (207) hide show
  1. package/CHANGELOG.md +28 -0
  2. package/dist/args/global-args.d.ts +13 -0
  3. package/dist/args/global-args.d.ts.map +1 -1
  4. package/dist/commands/batch-command/batch-deploy-command.d.ts +3 -0
  5. package/dist/commands/batch-command/batch-deploy-command.d.ts.map +1 -1
  6. package/dist/commands/batch-command/batch-deploy-command.js +90 -1
  7. package/dist/commands/batch-command/batch-deploy-command.js.map +1 -1
  8. package/dist/commands/batch-command/batch-test-command.d.ts.map +1 -1
  9. package/dist/commands/batch-command/batch-test-command.js +25 -4
  10. package/dist/commands/batch-command/batch-test-command.js.map +1 -1
  11. package/dist/commands/deploy-command/deploy-init.js +1 -1
  12. package/dist/commands/deploy-command/deploy-init.js.map +1 -1
  13. package/dist/commands/deploy-command/index.d.ts +3 -0
  14. package/dist/commands/deploy-command/index.d.ts.map +1 -1
  15. package/dist/commands/deploy-command/index.js +297 -60
  16. package/dist/commands/deploy-command/index.js.map +1 -1
  17. package/dist/commands/deploy-command/select-target.js +1 -1
  18. package/dist/commands/deploy-command/select-target.js.map +1 -1
  19. package/dist/commands/deploy-command/version-command.d.ts.map +1 -1
  20. package/dist/commands/deploy-command/version-command.js +138 -12
  21. package/dist/commands/deploy-command/version-command.js.map +1 -1
  22. package/dist/commands/test-command/test-command.d.ts.map +1 -1
  23. package/dist/commands/test-command/test-command.js +23 -11
  24. package/dist/commands/test-command/test-command.js.map +1 -1
  25. package/dist/nevermore.js +17 -0
  26. package/dist/nevermore.js.map +1 -1
  27. package/dist/utils/batch/changed-packages-utils.d.ts +1 -1
  28. package/dist/utils/batch/changed-packages-utils.d.ts.map +1 -1
  29. package/dist/utils/batch/changed-packages-utils.js +1 -1
  30. package/dist/utils/batch/changed-packages-utils.js.map +1 -1
  31. package/dist/utils/build/base-place-resolver-factory.d.ts +25 -0
  32. package/dist/utils/build/base-place-resolver-factory.d.ts.map +1 -0
  33. package/dist/utils/build/base-place-resolver-factory.js +40 -0
  34. package/dist/utils/build/base-place-resolver-factory.js.map +1 -0
  35. package/dist/utils/build/build.d.ts +13 -2
  36. package/dist/utils/build/build.d.ts.map +1 -1
  37. package/dist/utils/build/build.js.map +1 -1
  38. package/dist/utils/build/upload.d.ts +1 -1
  39. package/dist/utils/build/upload.d.ts.map +1 -1
  40. package/dist/utils/deploy/deploy-metadata.d.ts +1 -1
  41. package/dist/utils/deploy/deploy-metadata.d.ts.map +1 -1
  42. package/dist/utils/job-context/base-job-context.d.ts +3 -1
  43. package/dist/utils/job-context/base-job-context.d.ts.map +1 -1
  44. package/dist/utils/job-context/base-job-context.js +45 -6
  45. package/dist/utils/job-context/base-job-context.js.map +1 -1
  46. package/dist/utils/job-context/batch-script-job-context.d.ts +6 -0
  47. package/dist/utils/job-context/batch-script-job-context.d.ts.map +1 -1
  48. package/dist/utils/job-context/batch-script-job-context.js +13 -0
  49. package/dist/utils/job-context/batch-script-job-context.js.map +1 -1
  50. package/dist/utils/job-context/cloud-job-context.d.ts +2 -1
  51. package/dist/utils/job-context/cloud-job-context.d.ts.map +1 -1
  52. package/dist/utils/job-context/cloud-job-context.js +2 -2
  53. package/dist/utils/job-context/cloud-job-context.js.map +1 -1
  54. package/dist/utils/job-context/local-job-context.d.ts +2 -1
  55. package/dist/utils/job-context/local-job-context.d.ts.map +1 -1
  56. package/dist/utils/job-context/local-job-context.js +2 -2
  57. package/dist/utils/job-context/local-job-context.js.map +1 -1
  58. package/dist/utils/open-cloud/open-cloud-client.d.ts +20 -2
  59. package/dist/utils/open-cloud/open-cloud-client.d.ts.map +1 -1
  60. package/dist/utils/open-cloud/open-cloud-client.js +78 -21
  61. package/dist/utils/open-cloud/open-cloud-client.js.map +1 -1
  62. package/dist/utils/open-cloud/open-cloud-client.test.js +89 -12
  63. package/dist/utils/open-cloud/open-cloud-client.test.js.map +1 -1
  64. package/dist/utils/testing/parsers/batch-log-parser.d.ts +13 -5
  65. package/dist/utils/testing/parsers/batch-log-parser.d.ts.map +1 -1
  66. package/dist/utils/testing/parsers/batch-log-parser.js +114 -68
  67. package/dist/utils/testing/parsers/batch-log-parser.js.map +1 -1
  68. package/dist/utils/testing/parsers/batch-log-parser.test.js +57 -5
  69. package/dist/utils/testing/parsers/batch-log-parser.test.js.map +1 -1
  70. package/dist/utils/testing/parsers/traceback-parser.d.ts +31 -0
  71. package/dist/utils/testing/parsers/traceback-parser.d.ts.map +1 -0
  72. package/dist/utils/testing/parsers/traceback-parser.js +91 -0
  73. package/dist/utils/testing/parsers/traceback-parser.js.map +1 -0
  74. package/dist/utils/testing/parsers/traceback-parser.test.d.ts +2 -0
  75. package/dist/utils/testing/parsers/traceback-parser.test.d.ts.map +1 -0
  76. package/dist/utils/testing/parsers/traceback-parser.test.js +45 -0
  77. package/dist/utils/testing/parsers/traceback-parser.test.js.map +1 -0
  78. package/dist/utils/testing/runner/combined-project-generator.d.ts +1 -1
  79. package/dist/utils/testing/runner/combined-project-generator.d.ts.map +1 -1
  80. package/dist/utils/testing/runner/test-runner.d.ts +9 -1
  81. package/dist/utils/testing/runner/test-runner.d.ts.map +1 -1
  82. package/dist/utils/testing/runner/test-runner.js +28 -3
  83. package/dist/utils/testing/runner/test-runner.js.map +1 -1
  84. package/dist/utils/testing/runner/test-runner.test.d.ts +2 -0
  85. package/dist/utils/testing/runner/test-runner.test.d.ts.map +1 -0
  86. package/dist/utils/testing/runner/test-runner.test.js +18 -0
  87. package/dist/utils/testing/runner/test-runner.test.js.map +1 -0
  88. package/dist/utils/testing/test-log-parser.d.ts +32 -1
  89. package/dist/utils/testing/test-log-parser.d.ts.map +1 -1
  90. package/dist/utils/testing/test-log-parser.js +53 -9
  91. package/dist/utils/testing/test-log-parser.js.map +1 -1
  92. package/dist/utils/testing/test-log-parser.test.d.ts +2 -0
  93. package/dist/utils/testing/test-log-parser.test.d.ts.map +1 -0
  94. package/dist/utils/testing/test-log-parser.test.js +56 -0
  95. package/dist/utils/testing/test-log-parser.test.js.map +1 -0
  96. package/dist/utils/watch/github-context.d.ts +50 -0
  97. package/dist/utils/watch/github-context.d.ts.map +1 -0
  98. package/dist/utils/watch/github-context.js +125 -0
  99. package/dist/utils/watch/github-context.js.map +1 -0
  100. package/dist/utils/watch/github-context.test.d.ts +2 -0
  101. package/dist/utils/watch/github-context.test.d.ts.map +1 -0
  102. package/dist/utils/watch/github-context.test.js +112 -0
  103. package/dist/utils/watch/github-context.test.js.map +1 -0
  104. package/dist/utils/watch/http-watch-registry.d.ts +40 -0
  105. package/dist/utils/watch/http-watch-registry.d.ts.map +1 -0
  106. package/dist/utils/watch/http-watch-registry.js +262 -0
  107. package/dist/utils/watch/http-watch-registry.js.map +1 -0
  108. package/dist/utils/watch/http-watch-registry.test.d.ts +2 -0
  109. package/dist/utils/watch/http-watch-registry.test.d.ts.map +1 -0
  110. package/dist/utils/watch/http-watch-registry.test.js +211 -0
  111. package/dist/utils/watch/http-watch-registry.test.js.map +1 -0
  112. package/dist/utils/watch/local-watch-loop.d.ts +50 -0
  113. package/dist/utils/watch/local-watch-loop.d.ts.map +1 -0
  114. package/dist/utils/watch/local-watch-loop.js +103 -0
  115. package/dist/utils/watch/local-watch-loop.js.map +1 -0
  116. package/dist/utils/watch/local-watch-loop.test.d.ts +2 -0
  117. package/dist/utils/watch/local-watch-loop.test.d.ts.map +1 -0
  118. package/dist/utils/watch/local-watch-loop.test.js +170 -0
  119. package/dist/utils/watch/local-watch-loop.test.js.map +1 -0
  120. package/dist/utils/watch/register-notify-watches.d.ts +41 -0
  121. package/dist/utils/watch/register-notify-watches.d.ts.map +1 -0
  122. package/dist/utils/watch/register-notify-watches.js +159 -0
  123. package/dist/utils/watch/register-notify-watches.js.map +1 -0
  124. package/dist/utils/watch/register-notify-watches.test.d.ts +2 -0
  125. package/dist/utils/watch/register-notify-watches.test.d.ts.map +1 -0
  126. package/dist/utils/watch/register-notify-watches.test.js +225 -0
  127. package/dist/utils/watch/register-notify-watches.test.js.map +1 -0
  128. package/dist/utils/watch/register-watches.d.ts +68 -0
  129. package/dist/utils/watch/register-watches.d.ts.map +1 -0
  130. package/dist/utils/watch/register-watches.js +221 -0
  131. package/dist/utils/watch/register-watches.js.map +1 -0
  132. package/dist/utils/watch/register-watches.test.d.ts +2 -0
  133. package/dist/utils/watch/register-watches.test.d.ts.map +1 -0
  134. package/dist/utils/watch/register-watches.test.js +576 -0
  135. package/dist/utils/watch/register-watches.test.js.map +1 -0
  136. package/dist/utils/watch/stream-watch-loop.d.ts +54 -0
  137. package/dist/utils/watch/stream-watch-loop.d.ts.map +1 -0
  138. package/dist/utils/watch/stream-watch-loop.js +282 -0
  139. package/dist/utils/watch/stream-watch-loop.js.map +1 -0
  140. package/dist/utils/watch/stream-watch-loop.test.d.ts +2 -0
  141. package/dist/utils/watch/stream-watch-loop.test.d.ts.map +1 -0
  142. package/dist/utils/watch/stream-watch-loop.test.js +392 -0
  143. package/dist/utils/watch/stream-watch-loop.test.js.map +1 -0
  144. package/dist/utils/watch/websocket-watch-stream.d.ts +25 -0
  145. package/dist/utils/watch/websocket-watch-stream.d.ts.map +1 -0
  146. package/dist/utils/watch/websocket-watch-stream.js +306 -0
  147. package/dist/utils/watch/websocket-watch-stream.js.map +1 -0
  148. package/dist/utils/watch/websocket-watch-stream.test.d.ts +2 -0
  149. package/dist/utils/watch/websocket-watch-stream.test.d.ts.map +1 -0
  150. package/dist/utils/watch/websocket-watch-stream.test.js +475 -0
  151. package/dist/utils/watch/websocket-watch-stream.test.js.map +1 -0
  152. package/package.json +7 -4
  153. package/src/args/global-args.ts +13 -0
  154. package/src/commands/batch-command/batch-deploy-command.ts +105 -1
  155. package/src/commands/batch-command/batch-test-command.ts +86 -60
  156. package/src/commands/deploy-command/deploy-init.ts +1 -1
  157. package/src/commands/deploy-command/index.ts +327 -32
  158. package/src/commands/deploy-command/select-target.ts +1 -1
  159. package/src/commands/deploy-command/version-command.ts +215 -21
  160. package/src/commands/test-command/test-command.ts +31 -22
  161. package/src/nevermore.ts +19 -0
  162. package/src/utils/batch/changed-packages-utils.ts +1 -1
  163. package/src/utils/build/base-place-resolver-factory.ts +49 -0
  164. package/src/utils/build/build.ts +13 -2
  165. package/src/utils/build/upload.ts +1 -1
  166. package/src/utils/deploy/deploy-metadata.ts +1 -1
  167. package/src/utils/job-context/base-job-context.ts +68 -6
  168. package/src/utils/job-context/batch-script-job-context.ts +18 -0
  169. package/src/utils/job-context/cloud-job-context.ts +7 -2
  170. package/src/utils/job-context/local-job-context.ts +7 -2
  171. package/src/utils/open-cloud/open-cloud-client.test.ts +133 -14
  172. package/src/utils/open-cloud/open-cloud-client.ts +131 -35
  173. package/src/utils/testing/parsers/batch-log-parser.test.ts +70 -5
  174. package/src/utils/testing/parsers/batch-log-parser.ts +141 -80
  175. package/src/utils/testing/parsers/traceback-parser.test.ts +64 -0
  176. package/src/utils/testing/parsers/traceback-parser.ts +122 -0
  177. package/src/utils/testing/runner/combined-project-generator.ts +1 -1
  178. package/src/utils/testing/runner/test-runner.test.ts +29 -0
  179. package/src/utils/testing/runner/test-runner.ts +36 -4
  180. package/src/utils/testing/test-log-parser.test.ts +70 -0
  181. package/src/utils/testing/test-log-parser.ts +80 -10
  182. package/src/utils/watch/github-context.test.ts +154 -0
  183. package/src/utils/watch/github-context.ts +184 -0
  184. package/src/utils/watch/http-watch-registry.test.ts +330 -0
  185. package/src/utils/watch/http-watch-registry.ts +341 -0
  186. package/src/utils/watch/local-watch-loop.test.ts +197 -0
  187. package/src/utils/watch/local-watch-loop.ts +190 -0
  188. package/src/utils/watch/register-notify-watches.test.ts +282 -0
  189. package/src/utils/watch/register-notify-watches.ts +226 -0
  190. package/src/utils/watch/register-watches.test.ts +696 -0
  191. package/src/utils/watch/register-watches.ts +369 -0
  192. package/src/utils/watch/stream-watch-loop.test.ts +625 -0
  193. package/src/utils/watch/stream-watch-loop.ts +411 -0
  194. package/src/utils/watch/websocket-watch-stream.test.ts +581 -0
  195. package/src/utils/watch/websocket-watch-stream.ts +403 -0
  196. package/tsconfig.json +19 -6
  197. package/tsconfig.tsbuildinfo +1 -1
  198. package/dist/utils/build/deploy-config.d.ts +0 -71
  199. package/dist/utils/build/deploy-config.d.ts.map +0 -1
  200. package/dist/utils/build/deploy-config.js +0 -164
  201. package/dist/utils/build/deploy-config.js.map +0 -1
  202. package/dist/utils/build/deploy-config.test.d.ts +0 -2
  203. package/dist/utils/build/deploy-config.test.d.ts.map +0 -1
  204. package/dist/utils/build/deploy-config.test.js +0 -126
  205. package/dist/utils/build/deploy-config.test.js.map +0 -1
  206. package/src/utils/build/deploy-config.test.ts +0 -149
  207. package/src/utils/build/deploy-config.ts +0 -259
@@ -3,6 +3,7 @@ import { OutputHelper } from '@quenty/cli-output-helpers';
3
3
  import { CompositeReporter, GithubCommentTableReporter, GroupedReporter, JsonFileReporter, SimpleReporter, SpinnerReporter, SummaryTableReporter, } from '@quenty/cli-output-helpers/reporting';
4
4
  import { getApiKeyAsync } from '@quenty/nevermore-cli-helpers';
5
5
  import { uploadPlaceAsync } from '../../utils/build/upload.js';
6
+ import { createBasePlaceResolver, createLockOnlyBasePlaceResolver, } from '../../utils/build/base-place-resolver-factory.js';
6
7
  import { createDeployCommentConfig, } from '../../utils/deploy/deploy-github-columns.js';
7
8
  import { buildDeployMetadataAttributes, gatherGitDeployInfo, injectDeployMetadataAsync, } from '../../utils/deploy/deploy-metadata.js';
8
9
  import { OpenCloudClient } from '../../utils/open-cloud/open-cloud-client.js';
@@ -10,11 +11,50 @@ import { RateLimiter } from '../../utils/open-cloud/rate-limiter.js';
10
11
  import { CloudJobContext } from '../../utils/job-context/cloud-job-context.js';
11
12
  import { runBatchAsync } from '../../utils/batch/batch-runner.js';
12
13
  import { isCI, readPackageNameAsync, readPackageVersionAsync, } from '../../utils/nevermore-cli-utils.js';
13
- import { loadDeployConfigAsync, resolveDeployConfigPath, resolveDeployTargetPlaces, toManifestPlaceInfo, } from '../../utils/build/deploy-config.js';
14
+ import { formatTargetSelector, isBasePlaceVersionKeyword, loadDeployConfigAsync, parseTargetSelector, parseWatchOption, resolveDeployConfigPath, resolveDeployTargetPlaces, toManifestPlaceInfo, } from '@quenty/nevermore-deploy';
15
+ import { registerWatchesAsync, } from '../../utils/watch/register-watches.js';
16
+ import { runLocalWatchLoopAsync, } from '../../utils/watch/local-watch-loop.js';
17
+ import { describeNotifyWatchFallback, tryRegisterNotifyWatchesAsync, } from '../../utils/watch/register-notify-watches.js';
18
+ import { runStreamWatchLoopAsync } from '../../utils/watch/stream-watch-loop.js';
19
+ import { WebSocketWatchStream } from '../../utils/watch/websocket-watch-stream.js';
14
20
  import { handleInitAsync } from './deploy-init.js';
15
21
  import { handleVersionUpgradeAsync, handleVersionPromoteAsync, } from './version-command.js';
16
22
  import { selectTargetAsync } from './select-target.js';
17
23
  const MULTI_PLACE_CONCURRENCY = 10;
24
+ /**
25
+ * Which base places a local watch polls.
26
+ *
27
+ * Deliberately looser than the cloud plan. `watch` is a GitHub workflow path —
28
+ * a dispatch address — and nothing is dispatched locally, so requiring it would
29
+ * only stop a developer hot-reloading a place that never intends to use CI.
30
+ * `"saved"` is fair game too: the service cannot poll it yet, but this machine
31
+ * has Open Cloud credentials and can.
32
+ *
33
+ * An exact version pin is still excluded, for the same reason as always: it
34
+ * means "hold this still", so there is nothing to follow.
35
+ */
36
+ async function _buildLocalWatchEntriesAsync(config, targetName, packagePath, resolver) {
37
+ const entries = [];
38
+ for (const place of resolveDeployTargetPlaces(config, targetName)) {
39
+ const basePlace = place.basePlace;
40
+ if (basePlace == null) {
41
+ continue;
42
+ }
43
+ if (basePlace.version != null &&
44
+ !isBasePlaceVersionKeyword(basePlace.version)) {
45
+ continue;
46
+ }
47
+ const versionType = basePlace.version ?? 'published';
48
+ entries.push({
49
+ label: formatTargetSelector({ targetName, placeName: place.name }),
50
+ universeId: basePlace.universeId,
51
+ placeId: basePlace.placeId,
52
+ versionType,
53
+ baseline: await resolver.peekAsync(packagePath, basePlace),
54
+ });
55
+ }
56
+ return entries;
57
+ }
18
58
  export class DeployCommand {
19
59
  command = 'deploy [target]';
20
60
  describe = 'Build and upload via Roblox Open Cloud';
@@ -62,7 +102,7 @@ export class DeployCommand {
62
102
  });
63
103
  args.command('version', 'Manage pinned base place versions in deploy.nevermore.json', (yargs) => {
64
104
  return yargs
65
- .command('upgrade [target]', 'Re-pin every basePlace to its latest published version', (upgradeYargs) => {
105
+ .command('upgrade [target]', 'Re-pin every numeric basePlace to its latest published version', (upgradeYargs) => {
66
106
  return upgradeYargs
67
107
  .positional('target', {
68
108
  describe: 'Only upgrade this target (default: all targets in the config)',
@@ -137,6 +177,24 @@ export class DeployCommand {
137
177
  describe: 'Show build/upload logs (not just on failure)',
138
178
  type: 'boolean',
139
179
  default: false,
180
+ })
181
+ .option('watch', {
182
+ describe: 'After deploying, register a cloud watch so this target rebuilds when its base place changes. ' +
183
+ 'Takes the register endpoint URL, ending in the lease: https://<watch-service>/v1/register/7d',
184
+ type: 'string',
185
+ })
186
+ .option('watch-use-gh-auth', {
187
+ describe: 'Let the GitHub CLI supply the watch token when no environment variable does. ' +
188
+ 'Off by default: registering sends the token to the watch service, so it should be one you handed over.',
189
+ type: 'boolean',
190
+ default: false,
191
+ })
192
+ .option('watch-share-api-key', {
193
+ describe: 'Share the Open Cloud API key with the watch service, so it can read a private base place, ' +
194
+ 'see "saved" versions, and report versions in the same vocabulary as the lock file. ' +
195
+ 'Off by default — the key is stored by the service.',
196
+ type: 'boolean',
197
+ default: false,
140
198
  });
141
199
  }, async (runArgs) => {
142
200
  try {
@@ -151,10 +209,9 @@ export class DeployCommand {
151
209
  };
152
210
  handler = async () => { };
153
211
  static async _handleRunAsync(args) {
154
- if (args.dryrun) {
155
- OutputHelper.info(`[DRYRUN] Would build and upload`);
156
- return;
157
- }
212
+ // Parsed before anything is built so a typo'd duration fails immediately
213
+ // rather than after a full deploy has already shipped.
214
+ const watchOption = args.watch == null ? undefined : parseWatchOption(args.watch);
158
215
  const cwd = process.cwd();
159
216
  const packageName = (await readPackageNameAsync(cwd)) ?? path.basename(cwd);
160
217
  const packageVersion = await readPackageVersionAsync(cwd);
@@ -199,6 +256,47 @@ export class DeployCommand {
199
256
  manifestPlaces,
200
257
  },
201
258
  ];
259
+ // Registering a watch is idempotent and derives entirely from committed
260
+ // config and the lock file, so it is safe to do for real on a dryrun — and
261
+ // doing it for real is the only way to exercise the watch path without
262
+ // shipping a build.
263
+ if (args.dryrun) {
264
+ OutputHelper.info('[DRYRUN] Would build and upload');
265
+ if (watchOption) {
266
+ OutputHelper.info('[DRYRUN] Registering a separate dryrun watch and firing it, to ' +
267
+ 'prove routing works. This does not build or upload here — but ' +
268
+ 'firing really does dispatch the workflow, which runs a real ' +
269
+ 'deploy on the runner. That is the half being proved.');
270
+ if (args.watchShareApiKey) {
271
+ OutputHelper.warn('[DRYRUN] Registering without the Open Cloud key, so a "saved" ' +
272
+ 'base place is skipped here even though a real run would watch it.');
273
+ }
274
+ const watchedTarget = parseTargetSelector(targetName).targetName;
275
+ // Under its own monitor name, never the one a real run owns.
276
+ //
277
+ // Re-registering replaces a monitor's entire watch list, and a dryrun
278
+ // cannot reproduce a real registration: the Open Cloud key is resolved
279
+ // after this point, so it would register anonymously — stripping the key
280
+ // from the live monitor, moving every source back to the anonymous
281
+ // driver and its content-hash vocabulary, dropping the baselines, and
282
+ // deleting any "saved" watch outright, because an anonymous
283
+ // registration skips those.
284
+ await registerWatchesAsync({
285
+ option: watchOption,
286
+ monitorName: `${packageName}/${watchedTarget}/dryrun`,
287
+ resolver: createLockOnlyBasePlaceResolver(),
288
+ useGhAuth: args.watchUseGhAuth,
289
+ triggerAfterRegister: true,
290
+ candidates: resolveDeployTargetPlaces(config, watchedTarget).map((place) => ({
291
+ targetName: watchedTarget,
292
+ packageName,
293
+ packagePath: cwd,
294
+ place,
295
+ })),
296
+ });
297
+ }
298
+ return;
299
+ }
202
300
  const publish = args.publish ?? false;
203
301
  const showLogs = args.logs ?? false;
204
302
  // Gathered once so every place in a multi-place deploy shares one timestamp
@@ -219,62 +317,86 @@ export class DeployCommand {
219
317
  if (!useSpinner && !isMultiPlace && targetAutoDetected) {
220
318
  OutputHelper.info(`Using target '${targetName}'.`);
221
319
  }
222
- const reporter = new CompositeReporter(targetNames, (state) => {
223
- const reporters = [];
224
- if (isMultiPlace) {
225
- reporters.push(isGrouped
226
- ? new GroupedReporter(state, {
227
- showLogs,
228
- verbose: args.verbose,
229
- actionVerb,
230
- ...deployLabels,
231
- })
232
- : new SpinnerReporter(state, {
233
- showLogs,
234
- actionVerb,
235
- actionContext: `to target '${targetName}'`,
236
- ...deployLabels,
237
- }));
238
- reporters.push(new SummaryTableReporter(state, {
239
- ...deployLabels,
240
- summaryVerb: publish ? 'published' : 'deployed',
241
- }));
242
- }
243
- else {
244
- reporters.push(useSpinner
245
- ? new SpinnerReporter(state, {
246
- showLogs,
247
- actionVerb,
248
- actionContext: `to target '${targetName}'`,
249
- ...deployLabels,
250
- })
251
- : new SimpleReporter(state, {
252
- alwaysShowLogs: showLogs,
253
- successMessage: 'Deploy complete!',
254
- failureMessage: 'Deploy failed!',
255
- }));
256
- }
257
- if (args.output) {
258
- reporters.push(new JsonFileReporter(state, args.output));
259
- }
260
- if (isCI()) {
261
- reporters.push(new GithubCommentTableReporter(state, createDeployCommentConfig(), isMultiPlace ? MULTI_PLACE_CONCURRENCY : 1));
262
- }
263
- return reporters;
264
- });
265
320
  const apiKey = await getApiKeyAsync(args);
266
321
  const client = new OpenCloudClient({
267
322
  apiKey,
268
323
  rateLimiter: new RateLimiter(),
269
324
  });
270
- const context = new CloudJobContext(reporter, client);
271
- await reporter.startAsync();
272
- let exitCode = 0;
273
- // Captured only for the single-place success message printed after the run.
325
+ // Captured only for the success message printed after the run.
274
326
  let publishedVersion;
275
327
  let publishedPlaceId;
276
- try {
277
- const results = await runBatchAsync({
328
+ // One deploy, start to finish. Factored out because a local watch runs it
329
+ // again on every base place change, and each pass needs its own reporter,
330
+ // resolver and job context — sharing them across passes would replay a
331
+ // finished progress display and reuse an already-flushed lock.
332
+ const runDeployPassAsync = async (refresh) => {
333
+ const reporter = _buildReporter();
334
+ // A rebuild triggered by the base place moving must re-resolve the pin,
335
+ // or it rebuilds the version it already shipped.
336
+ const basePlaceResolver = createBasePlaceResolver(client, {
337
+ frozenLockfile: refresh ? false : args.frozenLockfile,
338
+ refreshBasePlace: refresh || args.refreshBasePlace,
339
+ });
340
+ const context = new CloudJobContext(reporter, client, basePlaceResolver);
341
+ await reporter.startAsync();
342
+ let failed = 0;
343
+ try {
344
+ const results = await _runBatchAsync(context, reporter);
345
+ failed = results.summary.failed;
346
+ }
347
+ finally {
348
+ await context.disposeAsync();
349
+ }
350
+ await reporter.stopAsync();
351
+ return { failed, resolver: basePlaceResolver };
352
+ };
353
+ function _buildReporter() {
354
+ return new CompositeReporter(targetNames, (state) => {
355
+ const reporters = [];
356
+ if (isMultiPlace) {
357
+ reporters.push(isGrouped
358
+ ? new GroupedReporter(state, {
359
+ showLogs,
360
+ verbose: args.verbose,
361
+ actionVerb,
362
+ ...deployLabels,
363
+ })
364
+ : new SpinnerReporter(state, {
365
+ showLogs,
366
+ actionVerb,
367
+ actionContext: `to target '${targetName}'`,
368
+ ...deployLabels,
369
+ }));
370
+ reporters.push(new SummaryTableReporter(state, {
371
+ ...deployLabels,
372
+ summaryVerb: publish ? 'published' : 'deployed',
373
+ }));
374
+ }
375
+ else {
376
+ reporters.push(useSpinner
377
+ ? new SpinnerReporter(state, {
378
+ showLogs,
379
+ actionVerb,
380
+ actionContext: `to target '${targetName}'`,
381
+ ...deployLabels,
382
+ })
383
+ : new SimpleReporter(state, {
384
+ alwaysShowLogs: showLogs,
385
+ successMessage: 'Deploy complete!',
386
+ failureMessage: 'Deploy failed!',
387
+ }));
388
+ }
389
+ if (args.output) {
390
+ reporters.push(new JsonFileReporter(state, args.output));
391
+ }
392
+ if (isCI()) {
393
+ reporters.push(new GithubCommentTableReporter(state, createDeployCommentConfig(), isMultiPlace ? MULTI_PLACE_CONCURRENCY : 1));
394
+ }
395
+ return reporters;
396
+ });
397
+ }
398
+ function _runBatchAsync(context, reporter) {
399
+ return runBatchAsync({
278
400
  items: batchTargets,
279
401
  concurrency: isMultiPlace ? MULTI_PLACE_CONCURRENCY : 1,
280
402
  reporter,
@@ -328,17 +450,128 @@ export class DeployCommand {
328
450
  };
329
451
  },
330
452
  });
331
- if (results.summary.failed > 0)
453
+ }
454
+ let exitCode = 0;
455
+ let watchResult;
456
+ const watchedTarget = parseTargetSelector(targetName).targetName;
457
+ try {
458
+ const first = await runDeployPassAsync(args.refreshBasePlace ?? false);
459
+ if (first.failed > 0)
332
460
  exitCode = 1;
461
+ // Only after a clean deploy: what happens next records the base place
462
+ // version that just shipped, which is not a fact yet if the deploy failed.
463
+ if (watchOption && first.failed === 0) {
464
+ if (isCI()) {
465
+ // The monitor is named for the whole target, so it has to carry every
466
+ // place in that target — not just the ones this invocation deployed.
467
+ // Re-registering replaces its watch list, so a narrowed selector
468
+ // (`integration.places.hub`) would otherwise delete the sibling
469
+ // places' watches. Places that did not deploy keep their lock baseline.
470
+ watchResult = await registerWatchesAsync({
471
+ option: watchOption,
472
+ // Scoped to this package and target, so deploying one package can
473
+ // never replace the watch list another package registered.
474
+ monitorName: `${packageName}/${watchedTarget}`,
475
+ resolver: first.resolver,
476
+ useGhAuth: args.watchUseGhAuth,
477
+ robloxApiKey: args.watchShareApiKey ? apiKey : undefined,
478
+ candidates: resolveDeployTargetPlaces(config, watchedTarget).map((place) => ({
479
+ targetName: watchedTarget,
480
+ packageName,
481
+ packagePath: cwd,
482
+ place,
483
+ })),
484
+ });
485
+ }
486
+ else {
487
+ // Locally the rebuild belongs here, not on a runner, so the watch
488
+ // asks to be told rather than to dispatch. Being told beats polling —
489
+ // no Open Cloud quota per developer, and the rebuild starts when the
490
+ // change lands — but polling still works everywhere, so it is what
491
+ // this falls back to.
492
+ const localEntries = await _buildLocalWatchEntriesAsync(config, watchedTarget, cwd, first.resolver);
493
+ const redeployAsync = async () => {
494
+ const pass = await runDeployPassAsync(true);
495
+ if (pass.failed > 0) {
496
+ throw new Error('deploy failed');
497
+ }
498
+ };
499
+ const notify = await tryRegisterNotifyWatchesAsync({
500
+ option: watchOption,
501
+ monitorName: `${packageName}/${watchedTarget}`,
502
+ entries: localEntries,
503
+ useGhAuth: args.watchUseGhAuth,
504
+ robloxApiKey: args.watchShareApiKey ? apiKey : undefined,
505
+ });
506
+ // Streaming is preferred but never required: whatever the reason it
507
+ // is unavailable, polling from here still works.
508
+ let pollInstead = true;
509
+ if (notify.success) {
510
+ // Anything the stream throws is still just "streaming did not
511
+ // work", and the promise above says polling covers that however it
512
+ // happens. Letting it escape to the handler's catch would exit the
513
+ // run instead — reporting a failure for a watch that could simply
514
+ // have carried on here.
515
+ let loop;
516
+ try {
517
+ loop = await runStreamWatchLoopAsync({
518
+ entries: notify.entries,
519
+ stream: new WebSocketWatchStream({
520
+ registerUrl: watchOption.registerUrl,
521
+ }),
522
+ // The stream says a place moved; Open Cloud says what it moved
523
+ // to. The two speak different version vocabularies, and only
524
+ // this one matches what the lock records.
525
+ source: client,
526
+ monitorId: notify.monitorId,
527
+ credential: notify.credential,
528
+ redeployAsync,
529
+ });
530
+ }
531
+ catch (err) {
532
+ OutputHelper.warn('Could not hold the watch stream: ' +
533
+ (err instanceof Error ? err.message : String(err)));
534
+ loop = undefined;
535
+ }
536
+ if (loop && loop.failures > 0)
537
+ exitCode = 1;
538
+ // The service could not read any of these places — a private base
539
+ // place, say. This machine has credentials it does not, so the
540
+ // watch carries on here rather than waiting on a socket that will
541
+ // never say anything.
542
+ //
543
+ // A lapsed lease or a refused handshake ends the stream just as
544
+ // finally, and the user asked to keep watching either way — exiting
545
+ // there would report success while silently doing nothing.
546
+ pollInstead =
547
+ loop == null ||
548
+ loop.unobservable ||
549
+ loop.monitorGone ||
550
+ loop.rejected;
551
+ if (pollInstead) {
552
+ OutputHelper.info('Watching from here instead, using your own Open Cloud key.');
553
+ }
554
+ }
555
+ else if (notify.reason !== 'no_entries') {
556
+ OutputHelper.verbose(`Polling instead of streaming: ${describeNotifyWatchFallback(notify)}.`);
557
+ }
558
+ if (pollInstead) {
559
+ const loop = await runLocalWatchLoopAsync({
560
+ entries: localEntries,
561
+ source: client,
562
+ durationMs: watchOption.durationMs,
563
+ redeployAsync,
564
+ });
565
+ if (loop.failures > 0)
566
+ exitCode = 1;
567
+ }
568
+ }
569
+ }
333
570
  }
334
571
  catch (err) {
335
572
  OutputHelper.error(err instanceof Error ? err.message : String(err));
336
573
  exitCode = 1;
337
574
  }
338
- finally {
339
- await context.disposeAsync();
340
- }
341
- await reporter.stopAsync();
342
575
  if (publishedVersion !== undefined) {
343
576
  const placeUrl = publishedPlaceId !== undefined
344
577
  ? `https://www.roblox.com/games/${publishedPlaceId}`
@@ -355,6 +588,10 @@ export class DeployCommand {
355
588
  OutputHelper.hint('Use --publish to make it live in game.');
356
589
  }
357
590
  }
591
+ if (watchResult && watchResult.registered > 0) {
592
+ OutputHelper.hint('The watch rebuilds this target when its base place moves. Re-run ' +
593
+ 'with --watch to renew the lease before it expires.');
594
+ }
358
595
  if (exitCode !== 0)
359
596
  process.exit(exitCode);
360
597
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/deploy-command/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/deploy-command/index.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import inquirer from 'inquirer';
2
- import { loadDeployConfigAsync, resolveDefaultTargetName, resolveDeployConfigPath, resolveDeployTargetPlaces, } from '../../utils/build/deploy-config.js';
2
+ import { loadDeployConfigAsync, resolveDefaultTargetName, resolveDeployConfigPath, resolveDeployTargetPlaces, } from '@quenty/nevermore-deploy';
3
3
  export async function selectTargetAsync(cwd, options) {
4
4
  if (options.explicitTarget) {
5
5
  return { targetName: options.explicitTarget, autoDetected: false };
@@ -1 +1 @@
1
- {"version":3,"file":"select-target.js","sourceRoot":"","sources":["../../../src/commands/deploy-command/select-target.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,UAAU,CAAC;AAChC,OAAO,EAEL,qBAAqB,EACrB,wBAAwB,EACxB,uBAAuB,EACvB,yBAAyB,GAC1B,MAAM,oCAAoC,CAAC;AAY5C,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,GAAW,EACX,OAA4B;IAE5B,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;QAC3B,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC,cAAc,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC;IACrE,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,qBAAqB,CAAC,uBAAuB,CAAC,GAAG,CAAC,CAAC,CAAC;IACzE,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAE5C,IAAI,OAAO,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,CAAC;QACzC,OAAO;YACL,UAAU,EAAE,wBAAwB,CAAC,MAAM,CAAC;YAC5C,YAAY,EAAE,IAAI;SACnB,CAAC;IACJ,CAAC;IAED,MAAM,UAAU,GAAG,MAAM,qBAAqB,CAAC,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IACxE,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC;AAC7C,CAAC;AAED,SAAS,UAAU;IACjB,OAAO,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC9D,CAAC;AAED,KAAK,UAAU,qBAAqB,CAClC,MAAoB,EACpB,OAAgB;IAEhB,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAC5C,MAAM,SAAS,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAC5C,MAAM,cAAc,GAAG,SAAS;QAC9B,CAAC,CAAC,CAAC,SAAS,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC;QACxD,CAAC,CAAC,OAAO,CAAC;IAEZ,MAAM,OAAO,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QAC1C,MAAM,MAAM,GAAG,yBAAyB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QACvD,MAAM,UAAU,GACd,MAAM,CAAC,MAAM,KAAK,CAAC;YACjB,CAAC,CAAC,SAAS,MAAM,CAAC,CAAC,CAAE,CAAC,OAAO,EAAE;YAC/B,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,SAAS,CAAC;QAChC,OAAO;YACL,IAAI,EAAE,GAAG,IAAI,KAAK,UAAU,GAAG;YAC/B,KAAK,EAAE,IAAI;SACZ,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC;IAC9C,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAwB;QACjE;YACE,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE,sBAAsB,MAAM,MAAM;YAC3C,OAAO;YACP,OAAO,EAAE,SAAS;SACnB;KACF,CAAC,CAAC;IACH,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,gBAAgB,CAAC,OAAiB;IACzC,IAAI,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC;QAAE,OAAO,aAAa,CAAC;IAC1D,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;QAAE,OAAO,MAAM,CAAC;IAC5C,OAAO,SAAS,CAAC;AACnB,CAAC"}
1
+ {"version":3,"file":"select-target.js","sourceRoot":"","sources":["../../../src/commands/deploy-command/select-target.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,UAAU,CAAC;AAChC,OAAO,EAEL,qBAAqB,EACrB,wBAAwB,EACxB,uBAAuB,EACvB,yBAAyB,GAC1B,MAAM,0BAA0B,CAAC;AAYlC,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,GAAW,EACX,OAA4B;IAE5B,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;QAC3B,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC,cAAc,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC;IACrE,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,qBAAqB,CAAC,uBAAuB,CAAC,GAAG,CAAC,CAAC,CAAC;IACzE,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAE5C,IAAI,OAAO,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,CAAC;QACzC,OAAO;YACL,UAAU,EAAE,wBAAwB,CAAC,MAAM,CAAC;YAC5C,YAAY,EAAE,IAAI;SACnB,CAAC;IACJ,CAAC;IAED,MAAM,UAAU,GAAG,MAAM,qBAAqB,CAAC,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IACxE,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC;AAC7C,CAAC;AAED,SAAS,UAAU;IACjB,OAAO,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC9D,CAAC;AAED,KAAK,UAAU,qBAAqB,CAClC,MAAoB,EACpB,OAAgB;IAEhB,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAC5C,MAAM,SAAS,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAC5C,MAAM,cAAc,GAAG,SAAS;QAC9B,CAAC,CAAC,CAAC,SAAS,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC;QACxD,CAAC,CAAC,OAAO,CAAC;IAEZ,MAAM,OAAO,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QAC1C,MAAM,MAAM,GAAG,yBAAyB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QACvD,MAAM,UAAU,GACd,MAAM,CAAC,MAAM,KAAK,CAAC;YACjB,CAAC,CAAC,SAAS,MAAM,CAAC,CAAC,CAAE,CAAC,OAAO,EAAE;YAC/B,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,SAAS,CAAC;QAChC,OAAO;YACL,IAAI,EAAE,GAAG,IAAI,KAAK,UAAU,GAAG;YAC/B,KAAK,EAAE,IAAI;SACZ,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC;IAC9C,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAwB;QACjE;YACE,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE,sBAAsB,MAAM,MAAM;YAC3C,OAAO;YACP,OAAO,EAAE,SAAS;SACnB;KACF,CAAC,CAAC;IACH,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,gBAAgB,CAAC,OAAiB;IACzC,IAAI,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC;QAAE,OAAO,aAAa,CAAC;IAC1D,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;QAAE,OAAO,MAAM,CAAC;IAC5C,OAAO,SAAS,CAAC;AACnB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"version-command.d.ts","sourceRoot":"","sources":["../../../src/commands/deploy-command/version-command.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAexC,MAAM,WAAW,kBAAmB,SAAQ,UAAU;IACpD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,EAAE,CAAC,EAAE,MAAM,CAAC;CACb;AAiGD;;;;;GAKG;AACH,wBAAsB,yBAAyB,CAC7C,IAAI,EAAE,UAAU,GACf,OAAO,CAAC,IAAI,CAAC,CAkEf;AAED;;;;;;GAMG;AACH,wBAAsB,yBAAyB,CAC7C,IAAI,EAAE,kBAAkB,GACvB,OAAO,CAAC,IAAI,CAAC,CAuFf"}
1
+ {"version":3,"file":"version-command.d.ts","sourceRoot":"","sources":["../../../src/commands/deploy-command/version-command.ts"],"names":[],"mappings":"AAuBA,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAexC,MAAM,WAAW,kBAAmB,SAAQ,UAAU;IACpD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,EAAE,CAAC,EAAE,MAAM,CAAC;CACb;AAiGD;;;;;GAKG;AACH,wBAAsB,yBAAyB,CAC7C,IAAI,EAAE,UAAU,GACf,OAAO,CAAC,IAAI,CAAC,CA6Cf;AAyMD;;;;;;GAMG;AACH,wBAAsB,yBAAyB,CAC7C,IAAI,EAAE,kBAAkB,GACvB,OAAO,CAAC,IAAI,CAAC,CAyFf"}